This is, hopefully, my final evening in Dallas for a this trip. It was certainly planned to be so but there's always the nagging doubt that someone will decide that I'm not on that plane outta here tomorrow evening.
Not that there's anything wrong with being in Dallas; I've quite enjoyed it, but it's not home.
This wasn't the relaxing trip I'd hoped for; it turned out that various pieces of work that had been parcelled out weren't tested; it fell to yours truly to do the rewrites to make our software actually fit the customer specs. I think I've written more code over the past two weeks than I did in the previous year (and that's saying something). A good thing I've learned to code very defensively. Even so, I didn't anticipate every strange nuance and did a couple of minor rewrites of my own code where needed.
We've decided (that means I have decided :-)) that we're not, for the remainder of this year, going to just throw a new release over the wall in the hopes that it might match customer requirements. We're not going to email or ftp the new release; I'm going to hand carry it here to Dallas, install it on our hardware and walk our customer contact through the new features and bug fixes. When he's happy it's time to roll it out to production. That way we get to share the blame! :-)
We've also decided (meaning that I've decided) that we will never again 'think' we understand the customer requirements without face to face meetings. That way disaster lies. Y'know, I'm way too old to have fallen for that one.
You'll recall, from this[^] post that I said I was here to accomplish two tasks. The two grew to three or four but one of the original two involved 'face to face' meetings and coding sessions in conjunction with the project sponsor and a third party developer. Those sessions went extremely well; we got ourselves onto the same page within an hour or so and nutted out all the gnarly little problems that never appear in paper specs.
I'm getting a trifle tired of being the 'face' of the company for software and having to explain why such and such new feature doesn't work when I have no idea why because I didn't write it. An affliction of professional ethics and some knowledge of how business works means I can't just blame someone else; I take the blame whether it's deserved or not. That's just how it works; the customer doesn't care who stuffed up, all they know is that someone stuffed up and I am, as aforesaid, the 'face'. To be fair, they know what's going on and I don't take all that much heat but it's annoying nonetheless.
Of course, hand carrying new releases won't solve that particular problem; to solve that one I'm going to have to know what everyone's doing. Shouldn't be that hard given that the software team consists of four of us, but remember I'm talking programmers, not developers. Big note myself time; I seem to be the only one on the team who thinks about such things as maintainability and extensibility. Probably time I stopped just accepting other people's stuff ups and started making some explosive noises when that happens.
I have to fight the temptation to keep all the work to myself unless I want to become the kind of sad bastard who does nothing else but work. I did that years ago when I worked for Hewlett Packard and I won't do it again! Difficult call; if I keep all the work to myself I know it'll be done right but...
Yeah I know, that sounds like another attempt at bignoting myself. *shrug*
So I expect to be travelling here a few times this year. This isn't a bad thing.