Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Can you guys recommends which books are best, to learn what's taught at most undergraduate and graduate computer science programs. Specially by the specific areas (like AI, Software Engineering, etc).

I'm very interested in learning everything i can. And i hope this help other people that are interested like me. Thanks for any help you can give - i really appreciate it.

share|improve this question

closed as not a real question by ChrisF Jul 22 '11 at 9:34

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center. If this question can be reworded to fit the rules in the help center, please edit the question.

How about free video provided by many top university in US ? –  Sarawut Positwinyu Jul 22 '11 at 8:06
that helps too. but i'm looking more for books. a list of books to learn the common curriculum from would be very helpful. –  user848374 Jul 22 '11 at 8:15
This is way too broad, and probably covers hundreds of thousand of books, since you ask for every area. –  user1842 Jul 22 '11 at 8:20
i'm asking for books that a computer science student reads and can learn from throughout undergrad and graduate school (masters level). i think the main areas are algorithms and data structures, computer organization and architecture, software engineering, artificial intelligence, databases, computer graphics, networking, operating systems, theory of computation and complexity theory, and programming languages. And im guessing you learn math - not sure exactly how much math. i'm guessing you learn discrete math, linear algebra, statistics & probability, and calculus at most schools? –  user848374 Jul 22 '11 at 8:43

2 Answers 2

As you're asking for books about computer science, I can recommend some books with basic knowledge which is unlikely to get outdated too soon.

Algorithms & Data Structures:

The Algorithms Design Manual

Structure and Interpretation of Computer Programs (as suggested by Daniel Roseman, freely available)




The GoF's Design Patterns

Head First Design Patterns (to start out)

The Mythical Man-Month (it takes experience to truly understand it)

Code Complete (covers nearly all aspects)

Domain Driven Design


Clean Code

Operating Systems:

Tanenbaum: Modern Operating Systems

share|improve this answer
The Dragon book is perhaps a bit heavy for self study. –  user1249 Jul 22 '11 at 8:28
Feel free to recommend a better one. –  Falcon Jul 22 '11 at 8:33
@Thorbjørn I taught myself compilers from that edition of the Dragon book, it was great. Self-study of compilers is always going to be heavy, don't you think? –  MarkJ Jul 22 '11 at 8:35
@MarkJ, depends on what you know before you open the book. –  user1249 Jul 22 '11 at 9:01
@Falcon, any recommendations here must take the skills of the OP in consideration. –  user1249 Jul 22 '11 at 9:46

To add to Falcon's excellent list, don't forget the standard text on algorithms, Structure and Interpretation of Computer Programs (SICP), which is available as a free download from MIT's site. It's hard going, but worth it. There are also various lectures to accompany the book which you can find on YouTube.

share|improve this answer
+1: For the book. Would you mind if I included it in my list? –  Falcon Jul 22 '11 at 9:37
@Falcon Not at all. –  Daniel Roseman Jul 22 '11 at 9:51

Not the answer you're looking for? Browse other questions tagged or ask your own question.