Well, I'm back from vacation, so it's probably a good idea to post some stuff! Luckily I've got a backlog of interesting links to farm. :)
This article mostly relates to Lean Startup concepts and introduces some new ideas on how to build an MVP ('Minimum Viable Product') that will capture the essence of a new application idea.
This article points out a common issue I've noticed in PHP codebases. It seems that for codebases of a certain vintage (e.g., pre-2010), classes are used in one of two ways: Collections of functions, or tightly coupled "objects" that are difficult to maintain. That's not true OOP.
A lot of time is wasted when maintaining such codebases, and I've found that it's often easier to come up with a plan to gradually reorganize the architecture from the inside out. Sort of a chrysalis effect: effort is made to decouple the code and then improve it as a patchwork, and eventually you end up with a flexible and easy to maintain butterfly - er, true OOP codebase. And it really helps if you can find a way to add unit/functional/automated testing as early as possible, because that safety net is a great early warning for when you've horrendously broken something.
Speaking of unit testing: Chris Hartjes, aka "The Grumpy Programmer", is a vocal advocate for unit testing in PHP applications. He's written two books on the subject, and now they are available as a bundle! For $40, you can unlock vast riches of information on building testable applications and leveraging the power of PHPUnit.
Well, that's all for now. Thanks for checking in!
- Excerpts, Summaries, and Breakpoints in Sculpin
- Late Night Links
- Don't Forget the Catfood
- My First Ruby Steps
- Porting Silex to Slim