Top books for aspiring computer science students

<p>If you are a total beginner, you need to learn to code:
I would recommend avoiding SICP/Scheme, because in my personal opinion (and this is just an opinion) the book is too abstract.</p>

<p>Instead, learn Python. This is an awesome interactive online book, where you get to actually write Python code on the website:
[How</a> to Think Like a Computer Scientist — How to Think like a Computer Scientist: Interactive Edition](<a href=“http://interactivepython.org/courselib/static/thinkcspy/index.html]How”>http://interactivepython.org/courselib/static/thinkcspy/index.html)</p>

<p>You could also learn Java, but in my opinion Python is slightly more beginner friendly, and Java does not have awesome tutorials like Python does.</p>

<p>Afterwards (or if you already know how to code):
Since you’re not in college yet (I assume), avoid theory - you’ll have plenty of time for that in college.
Learn “practical” skills - you won’t have as many opportunities to practice them in college. The best way to learn skills is to learn by doing - read up a tutorial/short book on the topic, then start coding and read more / google your questions as you go.
There are tons of interesting areas out there: web programming (not HTML/CSS, but JavaScript, and server-side languages like Python/Ruby/PHP), iPhone programming, Android programming.</p>