Posted on

ScaleConf Wellington 2017

I went to and presented at ScaleConf in Wellington last week and was really impressed with the topics and info shared. Here’s a quick round up of my highlights from ScaleConf, a one-day conference with a focus on building and running large scale web apps.

All of the presentations were excellent and I learned a great deal from all the speakers, there were four that were real highlights for me that I wan to call out specifically and make some notes from:

Sarah Dapul-Weberman, Engineer from Pinterest
Sarah described her project at Pinterest transpiling Python code to Javascript. For a site with 100’s of millions of users, this sort of migration is seriously hard and Sarah had such a cool approach to basically writing a throw-away tool to convert the code, then a second tool to test the result using shadow traffic (a technique I’d not heard of before) until the re-written code generated the same responses and actions as the original.

Kumar Srinivasamurthy, Tech Lead from Bing.
Being the second largest search engine means serious scale, Kumar shared some fascinating insights into what it’s like behind the scenes of 100,000 server data centres, I particularly liked his anecdote on how hard it is to actually turn off a datacenter, with redundancy even at the utility level.

Andrew Schofield, CTO from Timely
Andrew gave a good overview of the growth of Timely, the phases they went through and challenges. I was inspired by what Timely have created both for software and team/work environment and culture. If we can build A2X up to that level, and create the same team, I’d be very happy.

Pam Rucinque, Engineer from ThoughtWorks
Pam detailed here project for a production mobile backend using AWS Lambdas, so it was very close to my own interest in server-less architecture. Having built a few Lambda functions for internal projects, I was really interested to see the sort of challenges that go into making it a fully production ready platform. The tool support for setting up the functions has improved a lot too, I think this is going to be a very interesting area of computing over the new few years.

If you’re interested, my slides are here, I presented A2X and our architecture on Google App Engine, what I liked about it and how it helped us go from prototype to 1000’s of users.

This is me presenting an entirely made up quote:


If you’re building a fast-growing or at-scale web app, I’d recommend checking it out next year! Thanks to Christian and the team of putting it together.

Posted on

Generating Barcode Numbers and EAN barcode artwork with GNU barcode

Just a quick little post to remind myself how I did this in a few years time! Given a range of barcode numbers, generate the EAN number and artwork for them on the command-line using GNU barcode.

So we have a range like: 934955400000 - 934955400999 and we need to add the check digit and then generate the artwork.

Firstly we need an actual input file representing all of the barcodes in the range. For that we can just use a bash loop (or several).
Continue reading Generating Barcode Numbers and EAN barcode artwork with GNU barcode

Posted on

On 2013

It’s that time of the year, the end, when I tend to get a bit introspective and think about the big things that happened and the milestones reached, and not reached, in these past 12 months. So here it is, more for my own sake than yours, the year-end reflections of

On Magento

I’ve felt a bit out-of-the-loop within the Magento ecosystem this year, missing the Imagine conference, and not keeping abreast of developments with Magento 2. My involvement has been constrained to working on my own products and services, and periodic blog posts and tweets. As an outsider looking in, I see Magento maturing as a company, the ecosystem is growing. I think the challenge will be maintaining the wonderful developer community around the product as the open source edition takes a back seat to the enterprise sales machine that is ebay/paypal.

2013 has been a year of milestone near misses. This little blog has racked up not quite 1 million pageviews since it’s inception. My new Magento extension MageSend has had nearly 100 sales.

Although it’d have been great to hit these nice round numbers, it’s still a satisfying result on both counts and I’ll elaborate more on my experiences with both below. At the same time, there’s been a lot of good things happening with business, and personal achievements this year, 2013 has been good to me.

November 2013 was the 5 year anniversary, birthday if you will, of I can say categorically that starting a blog has been the best move I’ve ever made professionally. If you haven’t started one, go do it, right now.
Continue reading On 2013

Posted on

Accessing the Xero API for Public Applications in Java

In this post I’ll quickly run through accessing the Xero API using Java and the super simple, elegant Scribe library. There’s a support page dedicated to Java + Xero API but I found it a bit light on help for those setting up a public application for the first time in Java, so the below steps should help others wanting to get up and running. For the actual access to Xero we’ll be using Ross Jourdain’s excellent Xero library, which handles mapping the XML into Java objects for you. I’ve made a couple of tweaks to it to support App Engine, and Scribe. I have also set up a XeroApi and XeroExample in the Srcibe format, for use with the library.

The other reason you might like these instructions rather than the default, is that we run our apps on Google App Engine for Java and so we had to make a few changes to the way we access Xero in order to meet the GAE requirements. The Scribe library supports GAE out of the box.

Why am I mucking about with the Xero API, anyway? We’re working on an app that connects Xero with Amazon for merchants to import accounting data automatically. I’m not quite ready to tell the world about it, but if you’re interested in trying it, get in touch.

Let’s get started with the Xero API, a public application, and Java!

Continue reading Accessing the Xero API for Public Applications in Java

Posted on

Thoughts on Auckland Startup Weekend 2013

This past weekend I entered the Auckland Startup Weekend. It was an excellent experience and I wanted to share it here, because if you have an opportunity to do a start-up weekend, in Auckland or anywhere else, you should – you will not regret it.

The whole event would make an interesting social experiment, as complete strangers are thrust together around a half-baked idea and given 50-something hours to turn it into a pitch-able, feasible business. I’m going to share my experience of the weekend here, so if you’re interested in what a Startup Weekend is like, and what happens, read on…

Continue reading Thoughts on Auckland Startup Weekend 2013