...
Show More
Yay! Finally done.
If there is a book that does justice to its name, it is this one! It is indeed Code complete. No matter how small or insignificant the topic, it gets full attention and discussion in the book. Small details discussed with loving care. :D
This is a book that I read at least 10-12 years too late! One reason is of course that so much of the content of the book I have discovered via diverse online sources in bits and pieces but also because so much of it has now become part and parcel of being a decent programmer. In that sense, there is not many eye-opening insights in those 900 odd pages. But it is a pleasure to see many things that you have adopted over years being systematically analyzed and supported. I have a visceral disliking for comments on the code lines. But if you asked me, I would probably just chalk it up to personal choice. But this book discusses them and clearly articulates why they are a bad idea.
The thing I got out of working through those 900 pages is that it provided words to express scattered ideas and practices. Software construction is about managing complexity. A programmer's journey can begin only once he has accepted his inability to conquer the complexity and has thus started looking for ways to manage it as best as he can.
The book mostly takes examples from Java, Visual Basic and C/C++. Some of the material is also specific to those languages. If your primary language is Python, you may start feeling a bit left out as the book progresses. It would be lovely for someone to write a distilled version of this with a interpreted language at the center.
If there is a book that does justice to its name, it is this one! It is indeed Code complete. No matter how small or insignificant the topic, it gets full attention and discussion in the book. Small details discussed with loving care. :D
This is a book that I read at least 10-12 years too late! One reason is of course that so much of the content of the book I have discovered via diverse online sources in bits and pieces but also because so much of it has now become part and parcel of being a decent programmer. In that sense, there is not many eye-opening insights in those 900 odd pages. But it is a pleasure to see many things that you have adopted over years being systematically analyzed and supported. I have a visceral disliking for comments on the code lines. But if you asked me, I would probably just chalk it up to personal choice. But this book discusses them and clearly articulates why they are a bad idea.
The thing I got out of working through those 900 pages is that it provided words to express scattered ideas and practices. Software construction is about managing complexity. A programmer's journey can begin only once he has accepted his inability to conquer the complexity and has thus started looking for ways to manage it as best as he can.
The book mostly takes examples from Java, Visual Basic and C/C++. Some of the material is also specific to those languages. If your primary language is Python, you may start feeling a bit left out as the book progresses. It would be lovely for someone to write a distilled version of this with a interpreted language at the center.