One of the highlights of Bob Martin’s recent TDD class at Comcast was watching him use tests and a set of transformation patterns to evolve and transform code to eventually achieve its aims. By using a set of refactorings he called Transformations, you not only get to something that works, it will be easier to maintain, modify, and use.
Vimeo: Eyeo Festival: “Ben Fry & Casey Reas – Eyeo Festival 2011”
A short presentation where they give the background and insight into the future of a tool that has empowered artists, programmers, journalists, and story tellers in the same medium.
A great quote, from a great post, from a great blog, “Knowing and Doing: Commas, Refactoring, and Learning to Program”.
This is a great Google Tech Talk and while it may be Java-centric, I think much applies to any language you work with.
YouTube: GoogleTechTalks: “How To Design A Good API and Why it Matters”:
This is what I believe is the PDF slideshow from the above presentation.
There is a version of this presentation at InfoQ if you prefer that over YouTube and PDF.
InfoQ: Joshua Bloch: “Bumper-Sticker API Design”
Artima: Joshua Bloch: “Josh Bloch on Design”
Go read Jon Moore’s latest piece “The Power of Visualizing Iterative Waterfall”: “the most powerful reason to start visualizing the flow is that it shows you exactly what parts of your process you should change, and when. There’s nothing like being able to show a product manager that their availability is driving overall throughput to encourage spending more time with the team.”
Ambysoft: “The “Broken Iron Triangle” Software Development Anti-pattern”. Recognize it. Respect it. Be flexible, but be aware of it.