Skip to main content

For me, nitty gritty digital development is very much a means to an end. Just as I’m probably never going to build my own house (but enjoy being able to put up a shelf), I also doubt I’ll ever develop anything from scratch (but I do like having a tinker now and then.)

My tinkering, however, gets me to the extent of HTML, CSS and – via WordPress – the occasional nugget of PHP. As the digital world has evolved, this barely seems comparable even with DIY’ing a shelf. Perhaps I’m patching a hole in my mud hut, whilst the neighbours watch sympathetically from their glazed penthouse.

I still feel no particular urge to build that glazed penthouse for myself (I’m talking about perhaps an Android app, or an e-commerce site). I would, however, at least like to know how someone did it.

So I’ve decided to get to grips with the coding world. I want to see where my current knowledge gets me, what the building blocks are for development in 2016, and if there’s anything in particular that would be worth picking up.

Happily, I quickly found a pleasing answer to my first question. HTML and CSS – together with Javascript, which I’m at least aware of – hold a confident, central position in the world of coding. They are, however, just one small part of the ‘tech stack’, comprising everything else.

In fact, they’re about the only constant. HTML, CSS and Javascript are the first pieces of knowledge any new developer should pick up. They are fundamental.

The rest of this ‘tech stack’ (a combination of code, tools and techologies – imagine it like all the ingredients, utensils, hardware, fuels and tableware required to serve a meal) is, conversely, a wide open field. Choices abound, which is incredible for flexibility, but undoubtedly fraught with controversy, confusion and complexity.

Development tech stacks are comprised of loads of components. There are code languages – often built into frameworks, libraries, databases – built with coding tools, cloud platforms, deployment servers, front-end visualisations, intelligent analysis and security systems.

For each area, there are a myriad of choices, ranging from those developed by tech corporations (Microsoft, Google, IBM) to those created by collaborative communities. Variance includes ease-of-use, scaleability, security, features, integrations, availability of skilled developers. And the options are expanding exponentially.

Amazon visualises a development tech stack like this:

Screenshot 2016-01-02 at 1.43.18 PM

But considering the pace of change and complexity, I think it could be comfortably represented like this:



By which I mean, “constructed by a detailed process of human collaboration, and achieving new heights by upgrading and implementing components to achieve new heights.” And also “seriously precarious.”

My research into ‘what is a tech stack made of’ therefore led me only to the conclusion that there are no hard-and-fast rules – that judgement, craft and belief are all part of the selection process, and that each stack is the answer to a specific problem.

I could leave it there, but in the interests of avoiding full-on wishy-washyness, I intend to proceed with exploring at least the following:

  • What are the core components of a tech stack?
    • What are they, broadly?
    • What are the most widely used examples?
    • How do they fit together?
  • Where do languages come in?
    • Which programming languages are used in 2016?
    • How do they form into frameworks / libraries / etc?
    • Where are they best used?
  • What does the future hold?
    • (There seems to be little point looking at now – development’s pace of change requires a years-ahead approach.)

HTML, CSS and PHP were my mud hut. It’s time to get myself a house.

ps. There are also loads of other types of tech stack. This ‘supergraphic’ of marketing tech in 2015 offers one particularly intimidating example of what else is out there. (And note how it tucks ‘dev’ into just two small boxes at the bottom!):



Leave a Reply