Posted: April 2nd, 2010 | Author: Studds | Filed under: IT | No Comments »
I’ve been partially responsible for the creation of a new XML format for use at work. We’ve been working on it for around six months. It does the job- but it sure is ugly. A lot of that is because we didn’t have a nice set of standards to begin with. I wish I’d known about Google’s XML Document Format Style Guide six months ago.
The major things that leap out at me:
- Consistency. This is really grinding on me at the moment. Parts of the format are camelCase, parts are all lowercase, others just random. In parts we use venetian blind design, other places Russian doll.
- The build versus design argument: we built part, and borrowed a large chunk at the ninth hour (big part of the reason behind the inconsistency.)
I’m not completely sold that reusing an existing format would have been better. There are existing formats out there to deal with the type of data we’re using (financial services client/account details.) In this case, though, we face some unique constraints.
The schema is directly exposed to users at two levels. Firstly, through automatically generated forms from the off-the-shelf package we’re implementing. And secondly, behind the scenes, to BAs that support that package. The schema that we stole parts of was clearly not designed for this type of exposure. It focussed on machine-readability over human readability. We needed to do a lot of work to clean it up.
Tags: Design, Guidelines, Projects, Schema, Standards, XML, XSD
Posted: January 18th, 2010 | Author: Studds | Filed under: IT | No Comments »
I’ve learnt an important lesson over the last few weeks. Don’t avoid rework – make it easy to do instead.
A few months ago, we were working on the foundations for the project I’m on. We knew that if we got the foundations wrong, the potential rework would be time consuming and expensive. Needless to say, we wanted to avoid that, and so we started doing some analysis to make sure we did it right. All fair enough.
But the fear of getting it wrong led to analysis paralysis. In the end, we ran out of time. We’d only got through one tenth of the scope when we needed to deliver. For the rest, we had to guess, and we got it wrong anyway. We went through the expensive and time consuming rework that we were trying to avoid.
It was only after that experience that we sat down and thought: does this rework really need to be time consuming and expensive? It turns out, the answer is no. With couple of hours work, we were able to write a script that did the bulk of the heavy lifting. It’s still a little bit manual, and if we wanted to, we could certainly make substantial additional improvements.
Already, though, we can feel the fear of rework lifting. We’ve now got the confidence to decide, and act, without wasting time chasing an elusive perfection.
Tags: Automation, Design, Failures, IT, Projects, Rework
Posted: November 1st, 2009 | Author: Studds | Filed under: IT | No Comments »
I don’t know quite what it is, but something about test-driven development (TDD) appeals to me. Perhaps it strikes a chord with my fundamental belief that machines should do the work so that people have time to think. Or perhaps it’s because TDD appeals to my anal nature. Whatever the case is, I like any opportunity to automate things, and although I’ve never done any, TDD seems to an absolutely brilliant way to spend one’s days.
Only down side is – I’m on an integration project at the moment, and so the opportunity for TDD is limited, right? Well, it might be a wee bit harder, but we shouldn’t let that stand in the way. ThoughWorks have a whitepaper (written by Gregor Hohpe and Wendy Istvanick) that talks about their approach to TDD in enterprise integration projects.
It lays out really clearly all the component pieces needed to overcome the challenges in creating automated tests for enterprise integration solutions, and gives some pretty good advise on designing for testability – which is probably not on our radar at the moment.
Might just drop this on the test analysts desk come Monday.
Tags: Automation, Design, Development, Integration, IT, Projects, Test-driven development, Testing
Posted: June 26th, 2009 | Author: Studds | Filed under: Site, Travel | No Comments »
I’ve spent most of this week relaxing in Leuven. Riding to Mechelen, around 24 kilometres away, was a particular highlight. There’s a canal that runs between Leuven and Mechelen, and then beyond, so the riding is pretty easy. I did briefly consider riding back along the unsealed path along a nearby river that runs through Dilje, but time was short and my bike is rickity, so I rode back the same way.
At the same time as relaxing, though, I’m trying to make some headway on this site, as well as catch up on all the news and current affairs. Progress is slow on both fronts, although I am devoting considerable time to current affairs. Having the time to leisurely read the paper everyday over coffee is wonderful. The exact form that this site will take will emerge slowly. I’ve got small projects underway at the moment, and time will tell what fruit those projects bear. In the meantime, I hope you’ll bear with me.
Tags: Coffee, Cycling, Leisure, Leuven, Mechelen, News, Projects, Site, Travel