Hey guys, I think I can say i've achieved a high degree of understanding with computer programming. I am now coding kernel drivers and other types of high-end software. But I would like to my skills to good use. I want to start learning about digital circuits so I am able to create my own circuits, and then put code in them. For instance, I want to eventually start off by creating my own clock, then calculator and so forth. I remember my computer engineering teacher telling me that towards the end of the six month course (in high school) they created logic gates from scratch and made a basic device for the game rock, paper scissors. I thought that was cool but I was curious as to how they managed to be able to grasp enough knowledge to create their own circuit from scratch and create a basic electronic device in just six months. I posted a few questions about transistors and logic gates and I was told that it takes many months, even years to be able to understand it to that degree. So my first question is what type of transistors can you think of that my teacher had his students create to assemble their own logic gates and how were they able to understand how to create that within a short duration? My second question is does this faculty (understanding and creating digital circuits on your own/in companies) all fall under electrical engineering? My final question is where do you write your computer code in the digital circuit you've assembled and how is it written? How does the circuit remember your code that you've written to it?