There’s been a lot of talk lately about how agile dev practices are hurting more than they’re helping. People complain that things like unit testing, TDD, CI, pairing, and code reviews limit developer creativity and create unnecessary work. This is of course ironic since agile processes emerged precisely because people felt that non-agile processes which […]
Software development is a craft and those who practice it are craftsmen. As with any craft, this one demands a set of skills from its practitioners: Be Good With Your Hands To code, you must type. To code well, you must type fast. Although this sounds weird, it’s quite important. Fred Brooks once said that software […]
I’ve put together a short list of books any software developer would greatly benefit from. Enjoy! Clean Code: A Handbook of Agile Software Craftsmanship, Robert Martin Maintainability is arguably the most important aspect of good software. If you don’t understand why that is, please read this book. From naming conventions to OO principles, “Uncle Bob” Martin covers […]
There are two challenges in building software: building the right thing and building the thing right (yes, I love alliteration). Build the Right Thing Building software that users want is hard because most people don’t know what they want. You may be surprised to find that people don’t know what they want, but it’s true. […]