On Life At Ephox
By Adrian Sutton
Rob posted about his second month at Ephox and it made me realize it’s been a while since I’ve taken the time to reflect on how things are going for me. Warning, lots of rambling ahead with no attempt at editing.
Towards the end of last year it had gotten too long between holidays and I was getting stressed out and generally sick of work in general. Fortunately, if you haven’t taken holidays for a long time you also have a lot to take, so I took all of January off to recuperate. Since then I’ve been working on my own for the most part with the rest of the team tied up with other projects. I must admit, I quite enjoy going off and coding stuff on my own, still doing TDD and all the other XP practices except of course pairing. It does however tend to let the odd thing slip through and we’ve seen a few issues crop up that we’ve had to fix. Fortunately, since we run the latest builds internally the problems were caught before clients saw them. I’m really not sure if a pair would have picked them up anyway, but it may have helped.
Last week we got the major features of the next release completed and I settled in to clear out some of the bug backlog that’s built up. We still haven’t got defect management settled into our XP process, but at least we’re not introducing as many as we used to so hopefully in time the defect rate will be so low that management becomes simple. There’s something quite satisfying about churning through open bugs and getting them fixed. Particularly when each morning you can check the open bug chart and see it plummet downwards.
Today, at last, we freed up another member of the team to come and pair with me on the bug fixes – keep me honest and get some experience with this code base. There seems to be something about having a pair that makes me lazier. I had been really good about always adding tests for every bug, but today I tried to dodge that a few times for some reason. Fortunately Jack’s a stickler for the rules and pulled me back into line. It was good having someone there to challenge my assumptions, but I need to get a lot better at navigating instead of trying to drive all the time.
I realized on the way home this afternoon that it would be really good for me to work on a code base that I have no idea about with a pair that’s an expert in it. I’ve worked at Ephox long enough that I have a really strong knowledge of our editor’s code and the general technology around it, so even in areas that I haven’t seen before I tend to feel pretty comfortable. Even our various integrations center around EditLive! so much that they don’t go far enough outside my comfort zone to really challenge me. Maybe I should pair with Andy next time he has to work with EditLive! for Windows – a bit of VB should make me feel humble pretty quickly. Alternatively, since I’m heading over to JavaOne this year, maybe I should track down someone from a random open source project that wants to pair on something…
Overall things are going well, getting back into pairing will be a big challenge for me but one that I’m keen to tackle. I’d like to pay more attention to some of the fledgling community projects like LiveWorks!, but I’m not entirely sure where they should be going or how to get them there just yet. Working with upper management to get a clearer idea of those things should be interesting too.