I am looking to see if anyone knows a site or book that teaches the basics(the foundation) of programming. I've noticed that most of the programming code I have read seem to have very similar pieces.
Basically I would like to learn basics of Booleans , Variables, Loops, Arrays, etc and the fundamentals of programming. Any books on this subject would be good, I always find with myself that learning the basics of anything(such as music theory when learning a instrument) tends to speed up my process.
Also, is Computer Science any good at teaches these things?
I don't have a book to suggest, but I can thoroughly recommend Udacity's introduction to computer science course. It goes through all the fundamentals that you mentioned, teaching you to build your own simple search engine. You learn via a series of short videos, quizzes and programming exercises. The course is taught using Python, but the concepts can easily be carried across into other languages (and Python seems to be gaining in popularity these days).
I know python well and used it for many years. It is very object oriented and the new python 3 more so. Its syntax is a bit quirky in places for OO access modifiers compared to say Ruby but I've never regretted that and I don't think that would do much damage to an initial OO learning experience.
I recommend the book "Think Like a Programmer" written by V. Anton Spraul and published by No Starch Press Inc.It covers a lot of the basics of programming theory that I have not seen even mentioned in any book or site that deals with a specific programming language or languages.
The information in this book is the theory that goes with using ANY programming language. It introduces the 50% of what programmers need to know that all the other books and web sites leave out.
Awesome thank you everyone, I stumbled across MIT's Corseware Computer Science Intro course. The course uses Python so I think I'm gonna dig into that and same with the other suggestions that everyone posted.
This topic is now closed. New replies are no longer allowed.