Skip to main content

Small Scale Revelations

This weekend, I had some minor revelations.

Revelation 1: Watching the fractocumulus clouds roll in over the lake, and talking to Cam about software development, it dawned on me that the default state for software teams is to not produce software. This seems a bit strange, but having worked on various teams in both public and private sectors, I'm convinced it's true. People assume that you can just leave the project in the hands of nerdy software geniuses, and that the final result will be the software solution of their dreams. This is really, really, really not true most of the time. If you do that, you end up with developers who "Go Dark" and end up doing something that nobody understands. And by then there's nothing you can do about it...You've spent heaps of cash and you end up throwing good money after bad. This happens all the time. I often get calls from recruitment agencies that go something like:

BodyShopChicky: "Hi Gordon, I've got a great opportunity for you - can we talk?"
Me: "Yeah, sure"
BodyShopChicky: "Well, there's a 3 month contract with possible extension on a really exciting project with
Me: Uh-huh...
BodyShopChicky: Yeah! Doesn't that sound great! Anyway, they've written all the code, and they just need somebody to help them finish it off, and manage the user acceptance testing and deployment! So, I thought it looked just like the kind of thing you could help them out with?
Me: (sound of mobile being thrown out of car)

Jim McCarthy gets picked on for writing a very depressing book about software development . But the reality is that you need get a team out of this default state before it will be able to ship anything.
At the whack-o-the-diddly-o end of the scale, that's what The Core is all about. On Project Tremble (my current project at TOWER) I'm doing my darndest to build a team that doesn't depend on anything but itself - and one that has functioning dynamics that mean that when things get really horrible and hard (which will happen in a few months) - we'll be able to communicate, get through it without going dark, and ship something great at the end of it all.

(In a few months - Once the schedule really starts to bite, and we start to realise that there's no time, and then we stress out and work late and sulk. Then we end up throwing all our favourite features out the window like pants at a nudist convention if we want to ship anything, ever. This is how it seems to work on most projects.)


Revelation 2: You can fix the fuel system on a 1990 Hyundai Excel with a wine cork and some insulation tape. These things are really worth knowing. Thanks TC.

Comments

Popular posts from this blog

Easter at Blackhead

Camping out on the headland, miles from anywhere. Big swell, off-shore winds, clear crisp nights and smoke from the wood fire. Sometimes it's so rewarding to get out from under the pressure of your life and just be a family of humans.

How to rename an XML Node in C#

This was driving me crazy - here's an easy cut and paste solution to not being able to use the DOM to rename a node for lazy developers like me: public static XmlNode RenameNode (XmlNode node, string namespaceURI,string qualifiedName) { if (node.NodeType == XmlNodeType.Element) { XmlElement oldElement = (XmlElement) node; XmlElement newElement = node.OwnerDocument.CreateElement(qualifiedName, namespaceURI); while (oldElement.HasAttributes) { newElement.SetAttributeNode(oldElement.RemoveAttributeNode(oldElement.Attributes[0])); } while (oldElement.HasChildNodes) { newElement.AppendChild(oldElement.FirstChild); } if (oldElement.ParentNode != null) { oldElement.ParentNode.ReplaceChild(newElement, oldElement); } return newElement; } else { return null; } ...

Democracy in Action...

I have to vote in the US Senate Election Tomorrow. Okay, I don't have to vote, but being an Australian American, voting is something we do. Australia has compulsory voting, which I am overwhelmingly supportive of. People often assume that the point of compulsory voting is to somehow educate people about politics - to force them to have an opinion. The reality has nothing to do with voters, and everything to do with ensuring good governance - By forcing politicians to care about every voter, rather than just the ones who can be bothered to go down to the poll both and vote, it means that politicians are consequently forced to address the needs of all the citizens in the country. Under a non compulsory voting system, it's mainly the wealthy and educated who vote. I was a little shocked to find out that part of the aim of the campaign advertisements that have been confusing me for the last month on TV is not to encourage voters to vote for one candidate or another, but to discou...