Coding Concepts – Hoisting

Hoisting is the behavior of moving declarations to the top of the current scope. This is the default behavior in JavaScript when using the var keyword but using the new let and const keywords means this does not occur. Hoisting in Action. Here we can see that the variable is declared after it’s been used, so…

When to start looking for your next role?

When is the right time to start looking for your next job? You’ve been at the same place for a one/five/ten years now. Have you progressed? Are you learning anything new? Do you feel undervalued by your current employer either financially or with your efforts not being recognised? What should you do? Are there any…

Imagine code that produces code! Good Code!

I think we should write more code, that writes code for us! Let me explain why. We love coding, we try to write as much code as possible. LOC is the ultimate measurement of your awesomeness. But how many of us write code that creates code for us? We love using tools/frameworks etc to aid…

The Art of Debugging

As a developer, a major part of your day-to-day responsibilities will entail needing to deal with bugs, finding a problem, replicating it, and fixing it.

Let’s look into how to do that.

Any questions?

It’s the end of a presentation and those famous words are spoken once again, having heard this numerous times, very often the speaker/you are met with silence. You’ve just spent a week preparing a presentation, a post or a new tool for people to use, and nobody has any questions about what you’ve just explained! Faces are blank, and people make a swift exit. Why is this?

Coding Concepts – Cargo cult programming

Cargo cult programming is a style of computer programming characterized by the ritual inclusion of code or program structures that serve no real purpose. Cargo cult programming is typically symptomatic of a programmer not understanding either a bug they were attempting to solve or the apparent solution

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…