To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyses reviews to verify trustworthiness.
McConnell geht in diesem Buch auf den schon im Titel genannten Programmierprozess ein und fasst dazu Erkenntnisse aus über 30 Jahren zusammen. Die Bandbreite der behandelten Themen reicht dabei von der Benennung von Variablen bis zur Aufwandsschätzung für Großprojekte.
Leider ist dieses Buch auch schon wieder 9 Jahre alt und lässt daher (logischerweise) Einsichten in die seit den letzten Jahren entstandenen Trends vermissen. Ich hätte gern mehr darüber erfahren, ob und wie verteilte Versionskontrolle und öffentliche Plattformen wie Github oder Google Code den Entwicklungsprozess verändert haben.
Alles in allem aber eine sehr umfassende Beschreibung aller wichtigen Themen rund um die Softwareentwicklung mit gut gepflegter Bibliographie - allein schon deshalb ist das Buch zu empfehlen.
Code Complete 2nd Edition is one of the books a programmer should probably have at least skimmed through once in his life. As such, I'm happy to call this book my own now.
The condition could've been a bit better (It was new, but it did not look completely "mint", as the cover and back had a tiny amount of dents on the edges), but as this is a book I wish to get information out, and not to look pretty, I'm still satisfied.
Here’s another book I read during the earlier years of my Software Engineering career a few years back. Being a remote worker early on in my career meant that it was hard for me to actually get good actual mentorship and advice from fellow engineers. To compensate, I picked up Code Complete 2nd Ed. as a recommendation online.
It’s a dense book, but all is worthwhile information for the developer who is just getting started in the industry. The material spans across all areas of “software construction” — that is, the process of implementation of the software project itself. Areas are not limited to the following: writing high quality methods/functions, variable naming, how to write clear loops, refactoring, debugging and being practical on trade-offs of performance and style (a short debate on GOTO is talked about here) during implementation.
There is a lot of material, and I won’t really spoil it all here. Just keep in mind that it isn’t a book where you would have to read cover-to-cover. I think it’s best read in pieces. Pick out the topics that interest you the most. For me, it was debugging. The scientific method type of approach to debugging described in this book has been my approach to debugging for years now… It has made me effective in fighting bugs and has made me a better team member in a software team overall.
For the early-career developer, this is what I would almost consider, required reading.
Now, is this the book to read if you have lots of software development experience? Well, that depends. Ask yourself honestly… do you have 10 years of the same 1 year of experience? Or, do you have 10 years of cumulating experience where year-after-year, you are constantly improving yourself? If you are the former and look to moving onto the latter, then definitely read this book.
I've been programming in data analysis roles for a long time, but without a formal background in computer science or software engineering. I found this book to be a really nice introduction to fundamental software design principles, and it has definitely improved my programming. Some people say that data science / machine learning programming is too different from traditional programming to benefit from the same principles, but I disagree. If you do not have a formal background in software engineering, this book (along with Head First Design Patterns) will make you a better programmer.
I gave 4 stars instead of 5 because I would have liked to see more real-world examples of some of the concepts; also there is a good chunk of the book that is not all that relevant for my work. But overall I would still highly recommend this to those that program in their daily work but don't have a formal CS / software engineering background.