Writing SQL with HAVING vs WHERE clauses

UGH! So apparently I need one of those Matrix-style brain implants to help me remember SQL.

I'm writing this down now as both a personal reminder... and maybe I'll save you from the same fate. When writing the archive for this blog, I wanted to create friendly URLs, so that /blog/archive would display all posts, /blog/archive/2006 would show all of the posts from 2006, and finally /blog/archive/2006/11 would show all of the posts from November of 2006. Simple enough right?

Server Testing

The new release (0.7) of BambooInvoice has been written for days now. Probably the most significant addition is an installation script that runs through the tasks of setting up your database tables and entering your admin password, etc. I’ve also written a nice (well, I think its nice) installation guide to walk non-programmers through the process. So that’s all well and good. So where is the new release?

I’m bogged down in trying to make the system work as easily on as many possible environments as possible. This is a surprisingly complex process! It isn’t the PHP versions that’s killing me. Its the server configurations! Some servers have .htaccess disabled. One I tested on enables .htaccess, but disables mod_rewrite. Who’s ever heard of such things? Create a new folder on the server… sure I can do that. OH, you wanted to write something into that folder… just a minute, all the hoops you’re going to need to jump through are in the back?

Adoption of Bamboo is probably its highest compliment (well… aside from the actual compliments that is : ) but a major barrier to adoption is all the possible variations of a hosting environment! I hope I get it sorted out soon. Now then, for an example of how to do installation scripts right, take a look at Wordpress. My hat is off to you guys!


"Helps out where you want help, then gets the hell out of your way". That is the highest compliment I can think of. If you are a PHP programmer, and you haven’t taken a moment to look at some of the various upcoming PHP frameworks, do yourself a favour and stop reading now, and go to codeigniter.

PHP has other promising frameworks, but for my money, Code Igniter is the best. Yes Rails has gotten a lot of hype lately (most of it deserved in my opinion), but if you’re looking for a no-fuss, no-muss framework to help you get stuff done in PHP - check out Code Igniter. In addition to a mature framework (it’s built on top of the excellent Expression Engine code), it is actively developed and improved (thank you Rick Ellis), and has a vibrant, active and helpful community built around it.

When I started writing BambooInvoice, I began the project using the Zend framework. It was nice(ish) but clearly unfinished. Then I discovered CakePHP. Now Cake is a very impressive piece of work, but it still felt to me too much like I was programming in "Cake", and not in PHP. Code Igniter is like Linux, it helps me do what I need to do, and trusts that I know what I’m doing.

So there you go, I've officially added my vote to the growing legions.