One of the fundamental problems with the 2016 online census was the architecture. Not the building the ABS works in, but the way the computer system built to handle millions of Australians was designed. Turns out two uni students designed a better way to do it in just 54 hours on the weekend – at a cost of just $500.
If there’s one thing a computer programming student loves, it’s a hack-a-thon. Now, for the uninitiated, this is not an event where smart people hack innocent people’s computers over and over again – it’s a concentrated period of time within which teams are required to come up with an idea and build it.
Pizza is a vital ingredient, as is a lack of sleep.
But for two Queensland first-year uni students, the idea was simple – Make Census Great Again.
Austin Wilshire and Bernd Harzer are both from the Queensland University of Technology. Austin studying IT, Majoring in Computer Science, while Bernd is studying Creative Industries and Information Technology.
They teamed up and set to work on their Trump-like goal for the failed 2016 Census.
And their approach – vastly different to the ABS and their contracted developer IBM.
Scale. That’s right, Austin and Bernd wanted to design for scale.
The traditional approach to designing web services is “on-premise” – this means that somewhere there are a bunch of computers all built to serve up the content – in this case, census forms. This is what IBM and the ABS did with the actual Census.
But at the Code Network “winter hack-a-thon” on the weekend, these two smart cookies went for a “cloud-first” design which can quite simply “infinitely scale”.
What this means is, you use a service like AWS (Amazon Web Services) and the software is built to simply grow, as load increases, it re-deploys itself to continually be able to cope with the demand.
Think about it – does Amazon.com go down often?
They built the site, and even “load tested” it – remember the ABS spent almost half-a-million dollars on Load testing their failed site? In addition to the $9.6million to design and build it?
On the weekend “Make Census Great Again” was load tested to 4 million page views per hour. And 10,000 submissions per second – insane numbers.
The ABS proposed and tested their site for 1 million per hour. The magic “260 submissions per second” they keep banging on about. Their testing? $469,000. Testing for “Make Census Great Again” – $0.
That’s right, there are open source (ie: Free) load testing solutions out there, which – ironically, were also designed in just two days like this very project.
How would it cope with a Denial of Service attack though? “Fine” – “it would have racked up a bill, but it would have survived”
And that bill – nothing compared to the budget the ABS has spent on Census 2016.
This proves a couple of things. Firstly, innovation is alive and well in Australia.
Secondly, Governments have a habit of over-engineering everything, and it’s that simple thing which ruined Census 2016.
$500. And 54 hours of development time by two young first-year Uni Students. Take that Malcolm Turnbull – Take that ABS. Perhaps worst of all – take that IBM.
54 hours? That’s the time allowed at the Code Network Hack-a-thon, it’s also pretty damn close to the amount of time the Census site was down for too.
For the record, Code Network is a volunteer student-run organisation based at the QUT. It was founded last year and it’s aim is to help produce the best software developers on the planet and has 1500 members.
We all know who to ask for help on the next big government project don’t we.
As for Austin and Bernd – they won a Microsoft Surface Pro 4 donated by event sponsor Technology One.
Photos by Mathew Taylor