The worst thing in our Scala code: Futures

Author’s note: this isn’t an argument against Futures, there’s nothing wrong with them as such!  This article is about good abstraction and proper separation of concerns when using them.

The aims of functional programming are much the same as any other discipline of software engineering: modularity, abstraction, low coupling, high cohesion, and so on. While the techniques and terminology are often new to developers, the goals and benefits are expressible in very familiar language because it’s all software, and we’re trying to achieve the same thing! (Read SICP for more background on software engineering fundamentals expressed with functional ideas).

Continue reading

How We (Mostly) Survived The Stormy Apocalypse!

It’s not news to anyone any more, so I’m sure everyone knows Amazon Web Services (our major cloud infrastructure provider) suffered an outage within one of their availability zones on Sunday June 5th. AWS is split up into various geographic regions, and within each region, a number of availability zones. I’m going to assume most readers know about this, but if you don’t, check out Amazon on how they describe these things. On Sunday one of these availability zones suffered a “power event”, owing to Sydney’s wild weather on the weekend, bringing it to its knees. Lots of Australian based websites had major problems.

Continue reading

REA at the Big Day In

The Big Day In is an event designed for both High School (Years 9-12) and University students interested in careers in technology. Over 6,000 young people will attend events around the country to hear about the ICT industry.

“We’re looking for passionate speakers who have something valuable to say to students who are contemplating a career within ICT. ” 

-John Ridge AM, Executive Director of the ACS Foundation

Sign us up!

Continue reading

This is a desk. And we’re here to help. But we aren’t a Help Desk!

REA’s Enterprise Technology Services team sent a delegation on a trip to the US recently to engage with other internal IT Support teams. We swapped notes and benchmarked ourselves against some of the best in the business (think Box.com, Zendesk, Okta, et al). We learned plenty about ourselves and certainly one thing which we are not is a help desk. I published the following blog internally at REA to contextualise and articulate to the business who we are, what we do and where we are going—and we why aren’t a help desk!  Enjoy the read. Continue reading