It’s difficult to think of any aspect of our lives that hasn’t been changed by the invention of the digital programmable computer, just 74 short years ago. (Lavington 1998) Consequently, computing is a crucial skill in a wide range of careers across every sector of business and society. You don’t have to have studied Computer Science at University to take advantage of all the exciting opportunities provided by computing. This chapter looks at why computing is a subject for everyone. If you’re studying computing, this chapter isn’t aimed at you, unless you are struggling to stay motivated with your subject! 👨🏿💻👨💻👩🏽💻👩💻👨🏿💻
Your future is bright, your future needs computing, so let’s start computing your future.
Reading this chapter and doing the activities will help you to:
- Identify where you can get started with computing, if you’re not studying computer science as a major part of your degree
- Discuss the role of computing in society for everyone, not just those studying it at University
- Describe why NOT studying computer science doesn’t necessarily “lock you out” of computing as a career
But why should everyone be studying computing? There are social and economic arguments:
At school, everyone learns to read, write and do maths. These are sometimes known as the three Rs but:
- Why did you learn to read and write? Was it so that you could become a professional writer?
- Why did you study mathematics? Was it so that you could become a professional mathematician?
Of course not, that would be ludicrous! You learned to read and write because they are fundamental tools for expressing yourself and communicating with other people. You studied maths so that you could develop numeracy, reason about the world around you, analyse data and solve problems.
So why should everyone learn about computing? Is it so that everyone can become software engineers? Again, this is patently ludicrous.
Everyone should study computing for the same reasons everyone studies maths and english at school. Like writing, computing is one of the most creative tools for expression and communication that we have today. Just like mathematics, studying computing will also help you to solve important problems too. Sam Aaron, creator of Sonic Pi, puts exactly this case for creative computing in his TEDx talk (Aaron 2016) shown in figure 7.2.
Computing is also an intellectually stimulating and challenging subject to study in its own right. If you don’t believe me, I’m not going to make the case here. If you are a humanities student, have a look at Silvio Peroni’s free computational thinking and programming textbook at comp-think.github.io. (Peroni 2021) If you like doing Massive Open Online Courses (MOOCs), you might also enjoy CS50, with David Malan shown in figure 7.3.
So computing is for everyone, not just those with scientific, technological or engineering interests. What’s it actually all about.
The name Computer Science is a bit of a misnomer because Computer Science isn’t…
- …a science. Anything that calls itself a science probably isn’t. (Hull 2011)
- …about computers, see figure 7.4.
Computer Science isn’t a natural science like the ones you’ll be familiar with. According to Peter Denning, Computer science meets every criterion for being a science, but it has a self-inflicted credibility problem. (Denning 2005) In practice, Computer Science turns out to be blend of science, engineering and art12, see figure 6.2.
So throw away whatever misconceptions you may have had about computing. There might be more in it for you than you previously thought. Whatever you think about computer scientists, there’s no doubt that software, and whatever computers it runs on, is likely to have an ever increasing importance in your life.
Whatever future world you enter into after you graduate, there’s a good chance it has already been eaten by software. In 2011, the software engineer and billionaire investor Marc Andreesen outlined why (in his opinion, figure 7.5) software is eating the world, in The Wall Street Journal (Andreessen 2011).
Unfortunately, many people lack the digital skills required to take advantage of all the opportunities provided by software and computing. Robert Sedgwick at Princeton University has, like many others, argued that Computer Science should be a required topic of study for all undergraduate students in University. (Sedgwick 2019) We’re not there yet because computing is a subject that has historically been siloed in Computer Science Departments, but this is changing as we’ll see in this chapter. It’s not that everyone should jump ship to Computer Science, but that:
- Computing is too important to be left to Computer Scientists
- Computing is too important to be left to men (Spärck-Jones and Runciman 2007)
Whatever subject you are currently studying, adding some computing to your education will empower you with the computational thinking skills you need to be an active producer, not just a passive consumer in modern society. Computing can open up new opportunities for you and improve your social mobility.
Besides the social arguments, there are also strong economic reasons for studying computing. It’s not just software that’s eating the world, but its combination with hardware that dominates the list of the world’s largest corporations by market capitalisation, shown in figure 7.6. What use is software without hardware?
Even if you don’t want to work for any of these global oligopolies, their success is good news for all students of computing because it shows how important computation is to society, both commercially and otherwise. Another visualisation of data in figure 7.6 is shown in figure 7.7.
During 2022 and 2023, there were significant redundancies at Big Tech employers, see layoffs.fyi for examples. (Ournalist 2023) Despite this, there’s still plenty of room for optimisim because what figure 7.6 and figure 7.7 show is that computing is still eating the stock market, with and without AI. (Thornhill 2023) This means while there will always be economic boom (and bust) commercial demand for software developers is often high, comparable to teaching and nursing in terms of raw numbers. In the UK, the most common jobs for graduates from 2019 are shown in figure 7.8, based on data taken from an update on the graduate labour market in 2023 (Ball 2023)
So if you can develop software, there’s lots of choice and opportunities on offer. Although the data in figure 7.8 is from the UK, the story is the same in many other countries around the world.
Demand for developers is high, with many job vacancies going unfilled.
All this choice is a great thing but what sort of role do you want computing to play in your career? You can either be a passive consumer of computing or you can be an active producer, shaping the world of computing to get want you want from it, rather than what it wants from you. Going back to Andreesen’s eating analogy in section 7.4, sometimes the choice is to
- Be an eater or be eaten
- If you’re not at the table, you’re on the menu. (O’Toole 2020; Mieder, Shapiro, and Doyle 2012)
To use a gaming analogy, you either a player or you risk being played.
Because of its social and economic importance, computing also gives you flexible career options. If academic disciplines are playing card suits, then Computer Science is the joker in the pack shown in figure 7.9. A versatile card, the computational joker can be played with (and without) any of the traditional four suits: diamonds, clubs, hearts and spades. That’s because computing is a science and an art. It allows us to study human society and culture, so it’s part of the humanities too (see digital humanities and computational social science for example). Last but not least, computing is also an engineering discipline and a branch of mathematics too. What all this means is that the computational joker is a wild card that can be played whenever and wherever you like, making it an incredibly powerful but dangerous card, depending on the game you are playing (see chapter 6). ♣♥♠♦
The flexibility of computing as a career means you have a broad range of options on where you can apply your computational skills. You don’t have to be studying Computer Science to take advantage of these opportunities, but it helps.
Too long, didn’t read (TL;DR)? Here’s a summary:
Your future is bright, your future needs computing. There are lots of opportunities in computing but you don’t need to have studied Computer Science at University to take advantage of them.
Apple co-founder Steve Jobs likened the computer to a “bicycle for our minds”, see figure 7.10. Just as cycling is a tool we’ve invented that makes our movement more efficient, so too computing is a tool which enables us to do some cognitive tasks more efficiently. Both computers and cycles enable us to travel further and more quickly than we could do otherwise. However:
- You don’t need a degree in cycling to make a career in cycling
… and therefore by analogy:
- You don’t need a degree in computing to make a career in computing
While studying computing at University will help you ride the computational bike better, it’s not a prerequisite for riding in the first place. Steve Jobs bike can be ridden by anyone keen enough to jump on their proverbial bike and keep pedalling.
In this chapter, we’ve looked at some resources that can help you get started with computing if Computer Science is neither a major or minor part of your degree. They are accessible and often designed for people with little or no background in computing or mathematics. Some of them are specifically aimed at students from a humanities background. Whatever your background, you’ll need to be patient to learn the valuable skill of programming, according to Peter Norvig and Malcolm Gladwell it takes at least ten years (or ten thousand hours) to learn how to do it well. (Norvig 1998; Gladwell 2008)
We hope you’ve enjoyed this computational diversion, in the next part, chapter 8: Debugging your Future we’ll look at techniques for identifying and fixing bugs in your written applications so that you can maximise your chances of being invited to job interviews.
(Please note this chapter is under construction as I’m using agile book development methods, see figure 6.15)