<p>If I'm considering the aforementioned majors without any background in any (programming, circuits, material research), am I at a disadvantage?</p>
<p>Generally, the curricula for these majors do not assume previous knowledge in those specific subjects for frosh coming from high school. A possible exception is in CS courses, where those with programming experience may be able to start in a more advanced or accelerated version of the introductory CS courses.</p>
<p>ucbalumnus’ information is reassuring.</p>
<p>Any spare time you have, try to read around these subjects. It doesn’t necessarily have to be text books. Books on the history of the subjects or biographies of distinguished scientists will give you a great overview of the subjects real world applications.</p>
<p>CS has a lower barrier to entry in terms of getting pre-college experience, compared to most engineering and science subjects that are not normally taught in high school (computers are common and inexpensive compared to labs and materials used in the other subjects).</p>
<p>You can check out these CS courses and do the examples and exercises on your own computer:</p>
<p>Overview of CS, suitable for non-majors and those with no previous CS experience:
[CS10</a> : BJC (The Beauty and Joy of Computing) | UC Berkeley EECS | Fall 2013](<a href=“http://www-inst.eecs.berkeley.edu/~cs10/fa13/]CS10”>CS10 : BJC (The Beauty and Joy of Computing) | UC Berkeley EECS | Fall 2013)</p>
<p>First CS course for CS majors:
[CS</a> 61A Fall 2013: Structure and Interpretation of Computer Programs](<a href=“http://www-inst.eecs.berkeley.edu/~cs61a/fa13/]CS”>CS 61A Fall 2013: Structure and Interpretation of Computer Programs)</p>