Self teaching basic computer science

Join the discussion
Registration is free. Ask a follow-up in this thread, or start your own.
4 replies · 34K views
captain
Messages
163
Reaction score
0
I wanted to teach myself computer science, but I don't know any great beginning books that give a solid introduction. I am a complete novice. Could someone provide some names? I am trying to learn C. And is windows good for doing C or is another operating system more preferrable?

Appreciate the help thanks in advance.


On a sidenote: I wasn't sure where to put this whether it should be in the science book review since I am asking about a book or i the computer science section.
 
Physics news on Phys.org
C is very good for learning how computers work. If you want to simply learn to program to do stuff I would pick something a little more high level like python or javascript.

Computer science is completely different from programming and deals with things like algorithms and data at a much more abstract level.

It doesn't really count as computer science but one of the best intro computer books is 'code' by windows programming guru Charles Petzold.
 
You should try the free online textbook http://www.htdp.org" . The printed version sells for about $60 US I think. It teaches to program with Scheme, which is basically a dialect of lisp. It doesn't have much (if any) commercial value, but the language allows you to understand the fundamentals of computer science, whereas a language like C 'hides' certain core ideas because of the way it's implemented. And the person above me pointed, CS isn't about programming, it's about the logical structure that all programming languages possess.
 
Last edited by a moderator:
If you are prepared to learn scheme then the classic course is Structure and Intepretaion of Computer programs, the book and video lectures are freely available on line http://mitpress.mit.edu/sicp/
 
Squeak: Learn Programming with Robots by Stéphane Ducasse

Smalltalk will get you programming with objects from the get go, and then you can take your good habits to C++, Java, or even C (if you must). This guys a smalltalk guru and has even pestered publishers to give away free out of print books on his website (great move):

http://stephane.ducasse.free.fr/FreeBooks.htm

"Squeak by Example" is a great place to start. Followed by:

Smalltalk by Example: the Developer's Guide Alex Sharp

Then, if you want to get *real* serious:

Object-Oriented Implementation of Numerical Methods: An Introduction with Java & Smalltalk by Didier H. Besset [not free]
 
Last edited by a moderator: