Computer coding has always been something of a misunderstood artform.
In the early 1980s, it was the preserve of geeks – people who’d rather type laborious reams of program code into a machine than load a pre-prepared version from a cassette tape.
Specialist magazines published code listings in full, enabling you to create your own utilities or games to run on the hardware of the day.
More creative individuals could modify source code at will, or even produce original programs from scratch.
Your correspondent created his first computer program in his early teens using the BASIC programming language used by (among others) the Sinclair Spectrum home computer.
By this point (the early 1990s), computer coding was already being elevated from a niche hobby to a professional artform, as coding firms grew and expanded their output.
Today, some of Britain’s finest creatives work in coding, crafting the software packages, apps and games that underpin modern life.
Being a coder is now comparable to being an author, film director or musician. You’re creating multimedia content which will be enjoyed around the world, for years to come.
Coding is a lucrative career which commands global respect – a far cry from its geeky origins…
Bits and bobs
It’s important to remember that all digital devices are binary.
They only recognise two states – on or off – which are represented as either zeroes or ones.
(We covered this in depth a few years ago, in a guide to bits, bytes and bandwidth speeds).
In essence, every program, app, utility or function conducted by any electronic device relies on this binary data.
When Gran Turismo depicts a crash, Alexa reports a parcel delivery, Chrome loads a webpage or Instagram’s app displays your feed, vast collections of zeroes and ones make it happen.
Programming languages translate zeroes and ones into something more meaningful to us.
Vast arrays of binary data wouldn’t make sense to a human, any more than an English-based list of instructions (IF this AND that THEN display the other) would make sense to a computer.
We use programming languages to translate our instructions into binary code which machines around the world can interpret.
Mind your language
To date, almost 9,000 different coding languages have been created. That’s considerably more than the total number of spoken languages in the world.
Some languages have fallen by the wayside, while others are still ubiquitous (HTML is the programming language used to display most internet content).
A few languages have become mainstream (Java, Python, C++), while others remain strictly niche (Rust, TypeScript, F#).
While English is the dominant programming language around the world, and therefore underpins many coding languages, others were created with foreign audiences in mind.
Hedy supports languages which use Arabic numerals, Scratch’s variables can easily be translated, and Kalaam is a dedicated Hindi programming language.
Yet regardless of their origins or underpinnings, these platforms still share many of the same basic functionalities.
They support loops, classes and responses to inputs – which ultimately drives all software, whether the inputs happen to be database fields, keystrokes or simply the passage of time.
Is computer coding essential?
It’s imperative. Without program code passing on binary instructions, no digital device would be able to do anything.
However, different computer coding languages have varying benefits.
Taking HTML as an example, each generation of this iconic programming language has been laboriously developed by a global partnership of experts.
Consequently, you can read this article on any device, regardless of its operating system, age or display interface, who manufactured it or how fast its internet connection is.
A key aspect of computer programming is ensuring compatibility and minimising conflicts with other software platforms.
That’s why new programs, apps or utilities are tested before they’re launched – and why system updates are rolled out to correct errors that are subsequently discovered.
From Steam to malware packages, from operating systems to broadband routers, any device reliant on a steady stream of 0s and 1s may periodically require updating or revising.