OSDC day 2 kicked off with Rasmus Lerdorf talking about security problems on the web. Highlights so far are:
Andrew Bolt presented very calmly on Insiders on Sunday, and I thought, “Hooray! The culture wars” are over. But no. Today Andrew Bolt is back denying the Stolen Generations.
In summary, his argument is that, because Robert Manne couldn’t name ten people out of the 100,000 in the Stolen Generations, the Stolen Generations must be a myth. And because of that myth, Aboriginal people don’t trust the government to take their children away, even when it’s obviously the right thing to do.
Great argument, except that the Stolen Generations are real. Many, many children were really, in actual life, taken from their families for no reason apart from a smug, racist belief that it would be better to raise them in White culture.
It got my blood boiling. I wrote a Letter To The Editor:
I was stunned to read Andrew Bolt deny the tragedy of the Stolen Generations. If Aboriginal communities have lost respect for their government, it is because of actual mistreatment suffered by older relatives and friends, not because a bunch of latte-sipping, academic, city dwellers told them a reconstructed history.
As Andrew Bolt points out, lack of respect for the government is hindering the intervention. Regaining that respect will be a long process, but it must start with acknowledging past wrongs and apologising for them. Saying “sorry” is the first step toward helping these little children.
The sooner people like Andrew Bolt start to ground their rants in reality, the better off we’ll all be.
And while I’m at it, I’d just like to point to an interview with Alexander Downer in which he describes the Northern Territory intervention in terms that the uncharitable might take to mean that it was just grubby vote-grabbing.
Well, it’s after lunch, and straight into The Consumer View of Technology by Steve Ellis and Cherie Carbines from OpenMedia, a New Zealand company that’s build a MythTV based PVR.
There seems to be problems around communicating with customers. Both explicit and implicit communication needs to be clear.
BYAG means “Because You’re A Geek”. Consumers are your bread and butter, not the geeks.
Great talk. Valuable content that can be applied to online apps too.
Tom Adams’ Better testing through Behaviour on the topic of Behaviour Driven Development. BDD is an offshoot of “Test Driven Development” and Domain Driven Development. The central idea is that you first specify the behaviour that you’d like your code to have, in the form of tests, and then implement that specification.
Tom presented a bunch of examples from his Instinct Java test framework. Instinct differentiates itself from JUnit by paying a lot of attention to producing readable test cases – readable in the sense that you can make sense of it in English. Because of this, the test cases end up more like specifications. In the example on the Instinct website, he has a class named “AnEmptyStack” that tests the behaviour of empty stacks. This class has a method named “mustBeEmpty” that tests that the stack’s isEmpty() method returns true. You would read this as, “An empty stack must be empty”.
In comparing to TDD and JUnit some of the points (I think I heard) Tom made were:
I think I’d like to try Instinct on one of my home projects, then perhaps use it in the office.
OSDC just started. Great to catch up with Keith and Mark. It’s great that Google could support the conference by sponsoring the dinner, but it feels little weird having “Sponsor” on my name badge.
The conference opened with a nice little speech by Scott Penrose, chair of last year’s OSDC committee, passing the baton to Arjen Lentz and the new committee.
Then it was straight into a keynote, Rusty Russell explaining what it is that he likes about C, that it is close to the machine. By way of enticing the PHP, Perl and Python programmers in the audience, he also demonstrated that C can do shell scripts too, by way of the Tiny C Compiler, tcc. I found the talk an interesting insight into hard-core C development.
Right now I’m listening to Ian Clatworthy of Canonical explaining why I might want to use a distributed VCS. I can see that there might be advantages, and I can see how it better fits the open source development model. I’m not sure there would be overwhelming benefits in the environments where I do most of my work. He’s saying that he sees a market for only three big distributed VCS systems – Bazaar, Mercurial and git – but that they all have “maturity” issues at the moment, and don’t yet have the kind of tool support many developers expect. Oh, and Bazaar is just a few weeks away from a 1.0 launch.