Thursday, July 21, 2005

My Future Dev Projects...

... I want to make them *all* in the PEAR fashion.

"What? Why? Are you crazy?"

No, random passer by, I don't think I am at all. You see, I'm sick of breaking shit from the CVS on the live site. I'm sick of 18 classes all interacting with each other that break because I forgot a single use of $foo when I mean $bar.

And basically, I want to hot-sex-good ease of deployment that is built right into PEAR.
Roll out the new accounts system?

pear install http://www.privatehost.com/packages/accounts-0.0.1.tgz

Upload a few controller pages and perhaps a few lightway adapter classes, and that's it. The heavy work is all in the packages. Which have unit tests. That pass.

If I break one component, I can roll it back. Never bloody worry again. And most importantly: multiple projects on the same machine all get upgraded at once.

I need to look at all of my existing code and reorganise, because code reuse is great in a single project: but why not in many? I've been guilty of a few copy and paste habits when I want to get something rolling straight away. So what would make a killer app for this?

A nice little application that generates my documentation, runs unit tests, and does DIFFs: CVS tools meet a package creation tool.

What would you want in your ultimate code deployment tool?

No comments: