&gt; We have absolutely no idea what consciousness is or how it works.<p>We know what it is, we just don&#x27;t know how it works.<p>Self-awareness comes in stages. We generally move through those stages throughout our daily lives. Animals display wide variations in qualities of self-awareness as well. So we can define consciousness as the sum of all of these qualities.<p>What I think is going to happen is that we&#x27;ll start separating out lots of aspects of consciousness and explore them in software, adding more and more of them in as the state of the art of hardware gets better. The consciousness algorithms will slowly, over time, shed complexity.<p>Eventually, well before we get to even human-level self-awareness, we&#x27;ll run into hard physical limits and realize that biology is way more effective at making the sort of compact, yet incredibly complex evolved system than any design process could be.<p>Biology has an advantage we don&#x27;t have, it does not have to understand what it is doing, and it works ceaselessly. It can simply try over and over again over millions of years.<p>I predict that getting machines to become truly self-aware will be more trouble than it&#x27;s worth, and that then you&#x27;ll be choosing levels of comparatively-lower self-awareness for each individual component of a software system as part of architecting it. In fact, we have that tradeoff now. Do I really need to pull out ML to write a shell script?