return of branching

We’ve ultimately decided to bring ‘branching’ back into our development cycle. The best part is that we’ve managed to improve the quality of commits from about a 5/10 to about a 8/10 in my opinion. We’ve been dealing with very few production defects. On the flip side, it’s tied our hands when we need to deploy fixes to things like these and we know about problems in the trunk of our software.

We will be ressurecting branches in a very limited capacity. When we do a release (about once per week) we’ll create a branch in our code. This will allow emergency bug fixes to be done without forcing deployment of code that hasn’t been reviewed. It’s not that the code can’t be deployed when in fact we’ve had litte/no issues deploying untested code. However, with the inclusion of QA in our process, we now have resources to eliminate regression by better verifying our releases.

By coordinating the official releases with the end of our sprints we’ll gain the insight of the Sprint Review process to approve the work done during the sprint.

Getting Closer to the Zend Framework

I’ve subscribed to the mailing list for the new Zend Framework. It’s been quite enlightening to be thrown into a community of the highest-caliber PHP developers (aside from my team of course).

I look forward to contributing more and more to the discussion and ultimately contribute patches and code going forward.

For example, in the preview release, I’ve been working with the Zend_Controller and found a number of things that it lacks. This in and of itself is no problem. The framework is supposed to include some of the best solutions for the most common problems. The aspect I’d like to improve is to allow the framework to be a bit more extensible. For example, there’s no easy way to change the parsing of the actual URL. Even by overloading the functions I still have to pass the URL in via a global variable.

It’s very lucky that we just finished rewriting our front-controller. We learned lots of lessons in the process, but ours solves a specific problem and wouldn’t be for everyone.

[tags]zend, php, framework, front controller, design[/tags]

php|tek report

Alan, one of my development managers, and I attended php|tek last week. We had a great time in Orlando and learned a lot about PHP. Lots of great people were at the conference. We met with Rasmus Lerdorf, Scott Johnson, and John Coggeshall to name a few.

We found about half of the talks to be valuable. Each of these contained valuable nuggets of information on PHP internals, web services, and databases.

The other half of the presentations were very disappointing. Alan and I left a number of these presentations feeling that we’d be far more qualified and in some cases have given talks of more interest on these topics.

The most interesting part of the conference was the conversations between Alan and I regarding the architecture of IntelliContact, the way we can start to integrate web services into the application and enable our clients to utilize email marketing to the fullest extent.