Has anyone read any of these books? Are they worth reading? This first is available at my library. I would have to buy the rest.
I found this list and the descriptions on this story on digg.
Code Complete
by Steve McConnell
Some will say that the majority of the knowledge in this book is common sense, which reminds me of the quote, "Common sense is instinct. Enough of it is genius." by George Bernard Shaw. It covers just about every aspect of programming. McConnell is a great writer. Although the book is large, it's easy to read and understand.
The Pragmatic Programmer: From Journeyman to Master
by Andrew Hunt, David Thomas
I really can't decide if I like The Pragmatic Programmer or Code Complete better. They are both similar books in that they cover a lot of general programming practices. Andy and Dave have a very down to earth writing style. The book, like Code Complete, is very easy to read. This book is fully of practical advise, that for some reason just does not seem to get taught in computer science courses. If every computer science graduate was required to read this book before graduating, I think the world would be a better place.
Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development
by Craig Larman
Don't be mistaken by the title of this book. This is THE book for learning object-oriented analysis and design. Larman goes through each step of the process, taking an application from concept to completion. It covers requirements gathering, creating use cases, agile development, iterative development cycles, testing, and of course UML. The code examples are in Java, but you don't really need to know Java to understand what is going on.
Design Patterns: Elements of Reusable Object-Oriented Software
by Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides
If you're a programmer I'm sure you've heard of this book. It's one of the most famous software engineering books ever written. This book is a tough read. The examples are in C++, which might be why I had such a difficult time with it. It's well worth it though. Recognizing and using software patterns is an important part of being a good programmer.
Refactoring: Improving the Design of Existing Code
by Martin Fowler, Kent Beck, John Brant, William Opdyke, Don Roberts
If you're a professional coder, more than likely you're going to spend a large part of your time fixing/modifying code that someone else wrote. It's the nature of the beast. This book is a catalog of common problems in code, and the best way of Refactoring them. Reading this book will greatly increase your ability to detect bad code and fix it.
Thanks for the post. I have a couple of these books already but I'm always up for more.
Better to reign in P&C than serve in Everything Else. - Tanglebones
Free-to-play games are free so that the people who pay money for them have someone to play them with. -Cloquette
Which do you have? Worth reading? I'm thinking about checking some of them out.
Only furries play Druids.
I have Code Complete and Applying UML and Patterns. Both very good.
Better to reign in P&C than serve in Everything Else. - Tanglebones
Free-to-play games are free so that the people who pay money for them have someone to play them with. -Cloquette
Code Complete and Design Patterns are my two favorites of the books listed. A few others I'd recommend:
The Mythical Man-Month
Joel on Software (Link is to Spolsky's site where you can pick up his books)
Peopleware
Any extreme programming/agile book - you may not agree with the methodology, but there are bits and pieces that can really help you with one of the more crucial tasks, estimation.
I never minded piracy. Anyone who minds about piracy is full of sh*t. Anyone who pirates your game wasn't going to buy it anyway! -Warren Spector
GWJFFL Pro 2010 Champion
I have Code Complete and Pragmatic Programmer. Both definitely worth a read.
Ditto on the Pragmatic Programmer. A lot of it is stuff you'd think is common sense, but at least you'll have a reference for it when your boss asks about your crazy ideas
Code Complete isn't the only McConnell book that is a must-read.
Rapid Development belongs right next to, not beneath, Code Complete.
What Code Complete is for coding, Rapid Development is for the software development process (managing everything that goes around coding)
You should follow me on Mastodon: @[email protected]
You should follow me on Bluesky: @legion.bsky.social
"The golden shower threw me off." -- garion333
Thanks for all the great advice guys. I've been out of college now 7 years, and haven't really read any programming books since then. But, they sounded quite interesting. So, I thought I might give them a try.
Only furries play Druids.
I hate reading programming books. Am I the only professional and hobby programmer who does?
Certis: Quintin is both smart and attractive.
Fedaykin98: Good lord, I wouldn't have expected brilliance like that from that nemeslut Quintin Stone!
Yonder: It's weird to say this, but Quintin Stone may be the wisest person here.
Excellent list. If I were making a list for people who don't have CS degrees, like myself, I would add a data structures and algorithms book to it over Larman's.
Code Complete really made a difference in my early career. I haven't picked up the second edition yet but I'm looking forward to seeing how it's been updated.
Design Patterns isn't a book to read from cover to cover, it's really dry, but I would say it's an essential reference. Not only will it make you a better developer, but I ask interview questions based on this book and I am far from alone in this practice.
Refactoring is one of those books that would make my life easier if I could get all of my co-workers to read the damn thing
Right now I'm reading Lakos's Large Scale C++ Software Design, and it's an excellent resource. My last project was a nearly 1MLOC beast - and we benefited greatly from some of the same approaches he describes. At the same time, it's probably not the best book for the fresly minted graduate - it requires a bit of perspective to appreciate.
I was also going to recommend The Mythical Man-Month and Peopleware as well, but Minase beat me to it.
From the original list, Code Complete and Design Patterns are my favorites. Pragmatic Programmer is on my list. And as for Refactoring - I didn't like it very much, mainly because I thought they describing common knowledge. But I could be wrong.
Well, the prospect of reading about programming doesn't sound much appealing next to reading about people getting chopped to pieces. But I really should give this a try, I'll go and ask my boss if he will fund it. It would be way better to get these books for free.
I don't watch, I interact!
Oh how I wish it were. Although there's probably a ton of consultants who are glad it isn't
That's a pretty good list. I'm not familiar with the Larman, but everything else there is good.
The Mythical Man-Month is great, in part because it's so old, but still so relevant.
The Tao of Programming. Old School.
The two sides to every story are true and false, not yours and theirs. Facts are not political; lies are. - Deven Green (Mrs. Betty Bowers)
For the java programmers: Effective Java
Everyone that programs in java should read at least chapter 3 (free at the linked site).
I'll to that.
Thanks for these suggestions.
[quote=Jolly Bill]Just start making decaf in all the machines. Do that for 2 to 3 weeks, until everyone's kicked the habit. Then pour in the double espresso and watch the fun. - on how to deal with coworkers who don't refill the coffee pot
I hate it, but it's like medicine: it tastes bad but in the end it's good for you.