Bwah hah ha ha!
This evening, I acquired a commit bit for the Typo project. I’ve been chucking the occasional big patch and ideas at Scott Laird, the most active of the current maintainers, but he’s been busy doing all sorts of stuff, and he just started working at Google (go Scott!) so he doesn’t have quite as much copious free time as before.
So, this evening I asked for, and received, my very own commit bit. Which means I can make changes to Typo without needing to funnel them through a maintainer — I’m now part of the funnel.
Of course, responsible programming means I’ll still run big changes by Scott and the other maintainers, but it’s also useful to be able to make the kind of small changes that sometimes need to be made without it blocking on a busy man.
Wish me luck.
Testing Your Assumptions
One of the joys of writing applications using Ruby on Rails is the way the framework is constantly evolving better ways of doing stuff. It’s one of the dangers too.
Each release of Rails brings new and groovy features to the table, so it’s nice to stay close to the edge. However, when you do that, a change in the framework can bring your whole app crashing down because a key assumption you made turns out not to be true any more.
This is especially common when the assumed behaviour is undocumented, or a surprising consequence of behaviour that is documented.
When this happens, your test suite can have failures everywhere; it’s hard to work out precisely what the underlying problem is.
So, what to do?
Testing Is Good
If you’ve hung out with extreme programmers, the Perl 6 crew, a large subsection of the Perl community, or, well, almost anyone who’s given it any thought, you’ll know that having a good test suite is essential.
But how good is good enough?
Thinking aloud about Typo
Unless you’re interested in the internals of the Typo blogging engine and a possible rejigging of it, don’t bother reading the rest of this.
Version Control
The trouble with version control systems is that, if you’re not careful, it’s almost as bad as having no version control at all. I’m currently juggling about 4 active branches of typo: the local development branch, the production branch and a couple of branches that isolate some of the local changes so I can make clean patches for the typo developers.
So far, I’ve managed to upload about 5 patches, and I’m still not sure if the patches that are up on the Typo tracker are sane. And back porting the clean new system’s been a complete nightmare.
Still, it could be worse. I could be still trying to understand the inner workings of Moveable Type.
