I was asked by the Guardian University Guide in the UK to write something about why it's worth studying computer science at university, and I thought I would share it here ...
Try to imagine a world without computers. There would be no PCs or laptops, and so no
word processing or spreadsheets, no communication using the web, no online shopping or photo enhancement. There would be no mobile phones or digital cameras, because these are computers at heart. There would be no internet or phone system. There would be no modern cars, trains or aircraft: computers control how they work and guide their safety on rails or in the air. There would be empty shops: all their stock is computer-controlled. There would be very few goods: many are made by robots, which themselves are computers. Food would be scarce: supermarkets' distribution systems rely on computers and computers often control food production itself.
Computer science teaches you how to use computers to make the world work as it does. You will learn how to make a computer behave how you want -- this might be making a robot move something from one end of a room to another, it might be making a calculation which saves someone's life in a medical ward, or it could be creating a whole new world through building pictures or sound or building a computer system so that other people can do this.
You will learn how computers work together in building networks like the internet, how teams of people build systems worth hundreds of millions of pounds, and how computers can be made to behave like people, among many other topics. You will also learn about how to work together in groups, and what your professional responsibilities are to your colleagues, clients, and society.
Many of you will join universities' industrial partners on "sandwich" placement schemes, where you work with a company for a year during your degree, putting the theory into practice.
At the end of your degree you will be equipped with lifelong skills that you can use in a whole variety of jobs: from management to consulting, from programming to information systems administration, from IT companies to any company, large or small.
Print
Listen
By
Hi Simon, I know this is just a blog post but I can't help picturing this being shared whilst amongst a group of O'Reilly readers, non-virtually sitting in a pub, beers in real-life hands, light-heartedly teasing each other mercilessly and wonder what reaction you'd get. I can only imagine the same kind of blank mocking stare you'd get giving a "Why study law" talk at the next legal convention or "Why study medicine" at the next medical conference.
Cheekiness aside, I was actually interested in this article as I'm one of the many people working as a programmer with no formal computer science education. One of those that suffers from the ongoing insecurity that someone will discover they don't have their "papers".
However, aside from being a little erh, junior, for something on an O'Reilly site, it really doesn't explain why we should study for a degree in computer science rather than learn by stacking up on a bunch of books (O'Reilly of course!), read tech sites, etc., like an awful lot of those working in computing do. For example, considering how many figureheads of computing did not themselves study computer science, I wanted to read about the benefits of formal CS training versus self-training, etc.
Hello Simon,
First of all imagining a life without computers makes me shudder. I LOVE technology. I work for a summer computer camp-so we are committed to the same goal. Technology education. We hope that our students will be inspired at a young age to pursue a career in technology. I had one student who was 12 who knew that she HAD to be a computer programmer - she just loved code and solving problems (and was already looking at colleges). One of the benefits I see to formal CS training is simply the social, teamwork aspect of being in a group of like minded individuals. The image many people have of programmers is the stereotype of a hacker down in the basement, a loner with no social skills. This is simply not the case - teamwork is necessary. And it is promoted with formal CS training. My two cents.