Ben H, Oxford, Mathematics

Casebooks Ben H

As a Mathematician I had quickly become bored with maths and discovered that programming was a far more enjoyable use of my time. So when the internship-hunt came round, I was looking for programming opportunities and Ensoft quickly made its way onto my list of possibilities.

Encouraged by the simplicity and efficiency of the application process (a couple of emails and one interview session (aka pleasant programming chat with tea and biscuits)), I arrived at the beginning of the summer optimistic but not really sure what to expect.

My fears of sitting in a darkened room proof reading documentation and making cups of tea were quickly banished. After meeting my fellow intern Sam and the Ensofters I'd be working with, I was immediately set to work on Endroid, an online chat-bot written by some of the previous interns. After a brief tour of what the software did and a couple of targets to aim for, I was let loose on the code and told to get my hands dirty.

Six weeks, many features and one humorous plugin later, Endroid was released in an internal beta (prior to a public open-source release). After a short bug-fixing period I was tasked with updating the web-frontend of Panda, another piece of software written by previous interns.

This involved learning javascript and turned out to be less of an update and more of a re-write as my fellow intern Sam had been busy restructuring the internals of the software and the web-frontend was a year out of date. However help was always readily available, and after only a moderate amount of muttering and tearing out of hair over javascript's 'this' keyword, I was able to make progress.

Progress enough, in fact, to arrive at the end of my ten weeks with the web frontend working, the Endroid bug reports quietened down, and my javascript knowledge extensive enough for me to be able to definitively say that javascript would be better if it was Python! Thanks to the friendliness and support available at Ensoft, I had been able to learn a huge amount about programming in a professional environment, the effective use of version control systems, and coding as part of a team.

On top of that I been go-karting, consumed a number of company breakfasts and pub lunches, gone climbing almost every week, played one (embarrassingly poor) game of table tennis, and generally had a great time!