Are you an Incompetent Developer?

One of the most interesting parts of software development, are the group dynamics that form to complete the task at hand. This congregation of individuals compromise many different areas of expertise, personality and skill. Neil Green has created this fantastic website describing these personality patterns that arise in software projects. The reasons these personalities exist,…

A Hackathon Guide – What to do, How to do it & Who to do it with?

Definition: Courtesy of Wikipedia, A hackathon (also known as a hack day, hackfest or codefest) is a design sprint-like event in which computer programmers and others involved in software development, including graphic designers, interface designers, project managers, and others, often including subject-matter-experts, collaborate intensively on software projects.[1] The goal of a hackathon is to create usable software or hardware with the goal of creating a functioning product by the end…

Code Review Checklist

Code reviews are necessary to ensure your application is consistent. We live in an age of copy-and-paste craftsmen, so making sure that the bits that do get copied are correct is imperative for this approach to keep on working! There are many articles out there telling you why code reviews are important, why you should…

Coding Concepts – Cyclomatic Complexity

Cyclomatic what? Even spell check doesn’t recognise the word, but it’s a super useful software metric for understanding how your software works. Having read about it a few years ago, it apparent use seems to have deteriorated. I feel it’s a very valuable tool in a developer’s arsenal, and something that should be used in…

No Frills Keyboard Shortcuts (with Gifs) every Developer Should Follow

Shortcuts for me are the most productive thing that a developer can add to their repertoire that will aid them through their entire career. Learning how to use your system and tools will improve your productivity and in general make traversing all your windows and apps a breeze. The mouse is a great, tool, but…

Coding Concepts – Reflection

Reflection is a term thrown around every now and again, but do you really know what it means? Why and when it should be used, and what are its main strengths?

Coding Concepts – Anonymous Methods

Anonymous functions have been present in programming languages since Lisp debuted in 1958! My examples will once again be demonstrated in JavaScript.

Coding Concepts – Understanding Generics

I’ve been fascinated with Generics for a while, they can be quite hard to grasp, understanding why and where they should be used. The main motivation for the use of generics is to provide meaningful type constraints between members, Generics or Parametric Polymorphism, are used in most programming languages, and although they can be harder to understand, there are 5 main benefits to using them.