JavaScript Fatigue

In the last 10 years, the web has grown quickly from a document-only platform to full-scale applications. A good chunk of the applications which are now being developed are no longer native, and are instead relying on the web.

Read more

Experimenting with Clojure for a day

Ruby really is my favourite programming language, I love the clean syntax and the freedom that it gives you. Beyond debugging meta programming in gems far far away, I have no real trouble with solving problems in it. Many people say that it is too slow, but I have found that effective caching and background processing negates this for the majority of typical web apps.

Read more

8 Ways to Foster a Vibrant Company Culture

Culture is a word that is thrown around so much within our industry that it has become a parody of itself. From bizarro world news stories such as Dropbox’s cafeteria gaining a Michelin star, to the ping pong tables that are eternally associated with a tech office, it is often assumed that tech companies, and in particular startups, are innovative by default.

Read more

Technical challenges with adopting Continuous Delivery

I spoke last time about the organisational challenges of adopting Continuous Delivery. One of the key takeaways was the importance of blurring the boundaries between team ownership in order to facilitate better adoption. This time around I want to zoom in a bit and focus specifically on the challenges faced by specific parts of the pipeline. Depending on how far through adoption you are, you likely no longer have dedicated teams for each of these functions, though the problems outlined here can still exist and derail even the most cross functional of teams.

Read more

Overstacked? The journey to becoming a full stack web developer

At first glance, it is easy to believe that programming as a profession is one which is both in rude health, and for which the future is incredibly bright. Increased automation, the mind bending world of machine learning, and the ever more intuitive ways in which software impacts our lives all suggest that programming is the career to be in, and one of the few careers which one can safely guarantee will still be around in 50 years irrespective of automation or many of the other issues that threaten the future workforce.

Read more

When to avoid the DRY principle

The Don’t Repeat Yourself principle is probably one of the most widely recognised software design patterns out there; most beginners in the industry will have heard of it, and more seasoned engineers will have taken it further and see its use in other design patterns such as Service-Oriented Architecture, Inversion of Control and Composability over inheritance.

Read more