Stuff done and learnt over the summer

So with the nights drawing in, and having started a new job several months ago, I thought I’d do a quick recap of the productive stuff I’ve done when not catching rays and enjoying the good weather:

Working on several internal and public search applications for a range of customers, using the Twigkit technology to produce first-class user experiences

Adding features and support for new search platforms to a well-architected framework

Working on building a portal for developers using Twigkit technology with searchable documentation, a component gallery and features to easily generate and work with Twigkit applications

Contributing to some open source projects. This is something I started an effort to do more of a while ago but I’m especially appreciative to be able to spend time as part of my job at Twigkit contributing back to open source software we use.

Helping Nator Designs get into the final throes of developing a full referral based job search web site, implementing the following along the way:

Nator Design’s referME job search

Nator Design’s referME job search

- A web-app single sign on framework

- Real-time notifications

- Super quick, fully asynchronous, search functionality

- Graph based database opening the potential for interesting analytics and visualisations

(OK so the above has been in the works for a long time but its finally coming together!)

Getting to grips with Angular.js – an impressively mature JS development ecosystem

Keeping an eye on the development of Elixir, fast becoming a contender for the language of choice for scalable software development in future

Working increasingly with the Elasticsearch platform

All these newer technologies have been interesting to work with, though I feel the more general Javascript techniques I’ve learnt are more important in the long-term as well as currently. Many of these technologies, while coming of age are likely more transitory. Something you gain by working on new projects is the ability to try different approaches and think about all the aspects of a piece of work that need to be considered to make life easier for everyone later on. This is so often neglected when writing Javascript, but is now becoming more essential due to the continued growth of the client-side web.

While it is a monolith of a language, I kind of hope Javascript doesn’t become completely ‘enterprisified’. I think applying simple tried and tested software engineering practices (transferable between programming languages) definitely makes sense to bring some order to the Wild-West JS has always been, without taking away from one of the key attractions of it which is some of the visibly cool things anyone can learn to do with the web.