8
votes
Do you know of a complete textbook for teaching databases?
I've taught a lot of people SQL in person (over 3000), and I've had to cobble together materials out of a bunch of resources to do it.
For Exercises:
http://sqlzoo.net
http://pgexercises.com
https://...
8
votes
Java: The Complete Reference, which edition to follow
The fundamental question is, whether your goal is to learn programming (in which case the language doesn't matter at all … theoretically at least) or to learn Java.
If you want to learn programming, ...
8
votes
Accepted
What and where should I study for competitive programming?
If your aiming for the IOI, the first step has to be figuring out how to get onto your country's delegation. In the USA (where I am), that means USACO. If not, then you will have to determine what ...
8
votes
Book to substitute "Compilers: Principles, Techniques and Tools" by Ullman et. al. (popularly known as the red dragon book)
The "problem" with the dragon book is that it is so complete; intentionally so. Over its lifetime there have been tremendous advances in the theory and practice of building compilers. If you ...
7
votes
Textbooks: Yes, no, roll your own?
This is difficult to answer in general. I have personally used a lot of different solutions depending on the course. For low level courses it may make less difference, but maybe not. I still have many ...
7
votes
Paper Books or eBooks?
It is impossible to say which is best, but here are some things to consider.
Some factors: paper books vs e-books
Paper books can be passed on (sold) to pupils in the next year.
E-books can be ...
7
votes
Paper Books or eBooks?
I would recommend a mixed strategy. There are two sorts of books that are appropriate for e-books, I think. The first category is books that you need now, but wouldn't intend to keep. This includes ...
6
votes
What and where should I study for competitive programming?
Ben's answer on how to find and join a team is spot on. I'll address what you should be studying.
Competitive programming generally is about correct use of algorithms and data structures. There are ...
6
votes
Reference request for resource with difficult programming exercises
If he wants to have a blast biting into some very fun and challenging problems, Project Euler is fantastic, and entirely language neutral.
He may find that certain problems are out of his grasp until ...
6
votes
Reference request for resource with difficult programming exercises
Although the question is asking for a book, looking a "Project Euler" mentioned in another answer, I would like to suggest Codewars might be what you are looking for. On codewars you choose ...
5
votes
Textbooks: Yes, no, roll your own?
My school district does not buy textbooks anymore. That has been a policy for at least the last five years. I do have a very old set of books for Programming I that I will refer to myself, and that ...
5
votes
Accepted
What non-programming book is vital for learning the CS mindset?
The hardest part of determining anything in computer science is the requirements first. If you don't know what the program should do, then there is no way to do it correctly.
Thus, Winnie the Pooh ...
5
votes
Textbooks: Yes, no, roll your own?
In my experience, students will try to avoid reading even a single full page if they can get away with it. It has also been my experience that most students don't really know how to learn from text, ...
5
votes
Paper Books or eBooks?
I have read E-books since 2008 (completed one today) and found them useful in:
Save the Trees
Easy/Quick Transportation
Multiple copies enable you to comment out etc.
Searching, etc. is very easy.
...
5
votes
Study the book "Computer Architecture- A quantitative approach" (3rd Edition) for the first time
I think you first need to decide what your goals are. Are you interested in computer architecture because:
You want to design computer hardware and so need to understand it at a fundamental level?
Or ...
5
votes
Java: The Complete Reference, which edition to follow
For a student, any recent edition will be fine. Don't overthink it. The first task is to become thoroughly familiar with the mental model required of a Java programmer. Or even, for the very ...
5
votes
Java: The Complete Reference, which edition to follow
I'll try to give a few actual textbook recommendations.
If the goal is to learn Java for regular programming, I would avoid like the plague any Java book that doesn't at least go through Java 5, at ...
5
votes
Book recommendation on human "computers"
It is not clear to me what exactly OP is looking for, but one relevant book is: David Alan Grier, "When Computers Were Human", Princeton University Press 2005. The author served for several ...
5
votes
Reference request for resource with difficult programming exercises
The International Olympiad in Informatics is an international competition for gifted young amateur programmers. The tasks from past editions are available online, including detailed problem ...
4
votes
Could you recommend books on concurrent programming?
Concurrent programming is easy, synchronisation is hard.
Have a look at this video for an alternative to synchronisation: https://www.youtube.com/watch?v=2yXtZ8x7TXw
When you have to synchronize
Use ...
4
votes
Paper Books or eBooks?
Based on my experience, printed textbook is still the best learning materials. You'll gain maximum benefit for reading comprehension, recite and knowledge understanding from traditional paper based ...
4
votes
Accepted
Paper Books or eBooks?
Cost can be a HUGE burden on a student or school with textbook prices being absolutely ridiculous.
I think one has to consider how the student will actually be using the book(s). How many times does ...
4
votes
Accepted
Teaching OOP in Java, to students who already know Java
I'm going to jump the gun a bit here and make a suggestion with less than complete information. Assuming that the students have seen a fair amount of Java and its libraries and also assuming that the ...
4
votes
What non-programming book is vital for learning the CS mindset?
The timeless way of building — Christopher Alexander (https://www.patternlanguage.com/patterns/justsostory.html)
This is a 3 volume book that includes A Pattern Language. This set of books is ...
4
votes
Textbooks: Yes, no, roll your own?
While I like and upped Buffy's answer, I think there's a bit of a pattern that I follow that I'd like to share.
Unless hardware is specifically involved, or the course is heavy on theory, I prefer to ...
4
votes
Principles of Compiler Design v/s Compilers: Principles, Techniques and Tools by Aho, Ullman
Although it is not quite what you are asking, I deprecated these two books when teaching compiler design as many otherwise capable students are finding them tough going. I started to focus on more ...
4
votes
Operating System Concepts by Silberschatz and Galvin, how much down the edition timeline can I go to safely understand the core-concept
I don't know this book in particular, but I do know Computer Science text books in general, and offer this advice:
Consider the title: Operating System Concepts. It is about basic and fundamental ...
4
votes
Best book and video lecture series to follow for an "object oriented programming" course for advanced undergraduates
Two books come to mind. Both build a project and you learn about object-oriented program design and testing. However, both assume at least a good grasp of basic Java. Nether will cover all of the ...
4
votes
Book to substitute "Compilers: Principles, Techniques and Tools" by Ullman et. al. (popularly known as the red dragon book)
I last taught the Compiler course in 2008, that's a longtime with probably newer books have appeared. (ie sorry if the answer is somehow outdated)
But I did had the same complains from the students, ...
3
votes
Textbook on Optimization
My standard answer for this is the following, copied from another answer I've given here.
If you want a thorough study of how to approach and develop algorithms, get a copy of:
David Gries, The ...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
textbook × 39resource-request × 19
self-learning × 15
java × 4
compiling × 4
programming × 3
algorithms × 2
object-oriented-paradigm × 2
introductory-lesson × 2
labs × 2
mathematics × 2
careers × 2
operating-systems × 2
concurrency × 2
lesson-ideas × 1
curriculum-design × 1
student-motivation × 1
best-practice × 1
teaching-analogy × 1
project × 1
python × 1
exercises × 1
adult-education × 1
functional-programming × 1
databases × 1