…that is the question.

A JavaScript Semicolon

One of the most common JavaScript questions I am asked by students (apart from “Why??”) relates to the semicolon as a line terminator. Many websites and tutorials will briefly state that the use of semicolons in JavaScript is optional, which can leave the learner confused — should semicolons be used or not?

In this article, I’ll state my personal preference (feel free to disagree with me). But, first, where did all this semicolon business come from?

The short answer: semicolons are used so that the compiler or interpreter knows where the end of the statement is…


This game programming competition has run every year since 1996. What is it and what is the point?

Now in the 24th year since its inception, it’s probably vying for the title of one of the world’s longest-running programming competitions. In nearly a quarter of a century, it has developed its own folklore and a multitude of in-jokes. The prizes are, at best, poor and, at worst, non-existent — even by the standards of the Great British Bake-Off (Baking Show for our US friends), and the accolade of “winner” is dubious, since it often comes with the responsibility of hosting…


Secure passwords are difficult for us to remember, but can be easy for computers to guess (XKCD). How can we increase security while still being able to remember our password?

The use of passwords to confirm identity is nothing new. In a Biblical account regarding civil war in Israel, the men of Ephraim who were fleeing from the Gileadites were asked for a password. In the book of Judges chapter 12 and verses 5 and 6 the account says:

“The men of Gilead would ask each one, ‘Are you an Ephraimite?’ When he would reply, ‘No!’ they would say to…


Code Snippets #1. In the first of a regular series of shorter articles around programming, I explain the not-so-obvious reason why copying and pasting code from the web is a bad idea.

Don’t copy and paste code, kids. From reddit.com/r/ProgrammerHumor

It’s the subject of countless memes and programmer jokes: the concept of developers sitting around, drinking coffee, and copy-pasting code from Stack Overflow. I’ve even seen it (ironically) called Copy-Paste Driven Development. I’ve even ranted about, what I call, Frankenstein Code — code mashed together piecemeal from various different sources — in a previous article.

The perils are clear. Only copy code if you understand what it is…


Twenty Years after the hype and fear surrounding the Y2K bug, what actually happened and what have we learned?

Just after 7:00 am on Saturday, January 1st, 2000 my work phone started ringing beside my bed. This was unexpected. Most of my clients would not have started work yet after the Christmas holidays, and the ones who had paid for 24/7 cover would not call me directly.

The Y2K Bug (sorry, I don’t have a source for this image)

The screen on my phone showed that it was the general manager of a local manufacturing company. …


I’ve been interested in esoteric programming languages for a long time. Partly because of the challenge of learning them, but also because of the realisation that almost anything can be a programming language. I’m planning another article dedicated to my favourite esoteric languages, although I’ve always had the idea that alcohol is a chief component in their design.

One evening, I was reading the Rockstar language specification with a convenient glass of Teelings Single Batch Irish whiskey. I was amused at how it was specifically designed to troll recruiters (the programming language, not the whiskey) who advertise for “rockstar developers”…


About 30 years ago, back in early 1990, I read an old Scientific American article from 1984 by A.K. Dewdney. In it, he laid out the specifications for a game he called Core War. The basic premise was that two players would each write a “battle program” (known as a “warrior”) in a kind of pseudo-assembly language that he called Redcode. Each program would be loaded to a random location in a memory array (or core) with the express intention of finding and eliminating the other. …


Sometimes it’s hard to believe that we were able to create code without the help of Stack Overflow and other programming support forums. I have a personal pet peeve about, what I call, “Frankenstein” code where projects are patched together piecemeal from Stack Overflow comments and forums resulting in a Frankenstein’s monster-style codebase. My coding approach has generally been to try and work out the solution to problems myself. I say “generally” because we all need help from time to time, and there’s no shame in asking for it.

For 2019, my suggestion is to try and work out some…

Matt Rudge

Senior Developer, dinosaur, lecturer and mentor in full-stack development.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store