Canadian students *do* see computing as cool, just not worthwhile

June 23, 2009 at 1:38 pm 3 comments

There’s an article circulating a lot on the Internet yesterday and today suggesting that IT careers aren’t cool enough for Canadian students. Mike Hewner thought it was weird that the article was comparing apples-and-oranges.

Nearly 77 per cent of students believe ICT jobs offer average or above average pay; 74 per cent believe ICT jobs offers average or above average job security; and 37 per cent believe ICT jobs are above-average in terms of creativity. However, 34 per cent believe ICT jobs are difficult and complex; 31 per cent believe ICT jobs are not fun; and 25 per cent believe ICT jobs are not cool.

Why tell us the positives on creativity and the negatives on coolness?  Why not give us the positives and negatives on each?  So Mike looked up the original report data, and sent me this summary:

Here’s what students said…both “above average” (4s and 5s on their scale) and “below average” (1s and 2s on their scale):

creative 37
cool 23
interesting 30
fun 22
very easy 16
big impact on the world 39
high paying 44
very secure 35
not creative 20
not cool 25
not interesting 27
not fun 31
very difficult 34
no impact on the world 14
low paying 9
not secure 11

So yes, 25% of students thought that computing was “not cool,” but 23% said that it was “cool.”  Is 2% a meaningful difference?  The article seems a little one-sided.

What is still striking to me about these data is that these students generally see computing as paying well, creative, and difficult — and still not interesting as a career choice.  My bet is that US students would rank the results similarly.  Does this mean that they think that there are easier jobs that are creative and pay well?  Or that there are other jobs that pay even better with similar characteristics?  Or is that job prospects really don’t play much role in what 9th and 10th graders are thinking about when considering their future majors?

Entry filed under: Uncategorized. Tags: , .

Computing For Evil! Isn’t Education a “Good”? Future of Computing Education Summit: A New Computing Education Organization!

3 Comments Add your own

  • 1. Mark Miller  |  June 24, 2009 at 12:48 am

    I found the comments to the article more interesting than the article itself. A lot of the people who left comments were saying that they themselves considered their IT job boring, with dim future prospects, “but for now it pays the bills.” The theme of the article may have drawn the audience. So it’s hard to say, but it matches with comments I’ve seen from IT professionals since the dot com bust (though I haven’t seen an article that says “IT is exciting!” since then).

    The article said what I’ve increasingly heard, again, since the dot com bust. Businesses want people with domain skills, not just technical skill. They want them to have some business sense. “General IT” is not as desirable. This isn’t to say that a general education in CS is bad, IMO, but what I think it does mean is that a technical degree is not enough anymore for that sort of work.

    I’ve been questioning the role of CS in IT. People with CS skills are desirable for some positions in the field, but my own experience, plus that of some others, shows that CS is becoming increasingly irrelevant to the task. We are no longer asked to build systems from scratch. Increasingly the role of IT technicians is to “plug things together”, or provide some “glue” (interfaces) between systems. This takes technical skill, but a CS degree is overkill for this sort of work, and I don’t think people with a CS background particularly like it. It’s time for something new, and it seems to me there are potentially more exciting opportunities in CS research.

    • 2. Mark Guzdial  |  June 24, 2009 at 1:51 pm

      Mark, I wonder if biology and medicine is a useful analogy to CS and IT work. We want our medical doctors to know a lot about biology, the theory behind what they do. Nurses should have a lot, but not as much. Physician assistants don’t need as much, but still need some. Occupational therapists need biology, but a different slice than a nurse or doctor. Perhaps we’ll eventually come up a sense of similar categories of IT work, and the need for general computer science for those categories.

      • 3. Mark Miller  |  June 28, 2009 at 6:36 am

        Interesting analogy. The context of our current reality in IT doesn’t allow for that, I don’t think. It’s not a great analogy (as most aren’t), because doctors have been in the business of “maintenance and repair”. “Creating” is more of a specialty, in fertility clinics, and even that is just helping the natural process along.

        I think what you were getting at though is a physician has access to “the internals” of a patient, and has the knowledge and expertise to change those “internals” so that the system works as desired. Other personnel have lesser skills with less access to those “internals”, less authority, with more of a supportive role.

        IT is really an engineering activity. This includes “creating” where the medical field doesn’t so much. In engineering you have some or all of the following: planners and architects, suppliers (fabricators and testers), foremen, and skilled builders. So there’s a hierarchy there, too. This is backed up by different sciences, chemistry and physics in particular.

        CS used to be helpful in IT because some IT developers were working with very simple materials (less powerful operating systems, languages, and runtimes) that needed to be fashioned into more robust structures with an eye towards efficiency of operation (think of it kind of as a “fabrication on site” scenario). In the last several years this aspect of CS has been pushed into the background by a couple factors. OSes and runtimes (VMs) became more powerful, along with their standard APIs. A consequence of this is that developers have had barriers put in front of them to the internals, and less of an incentive to delve into them. There’s more “area” in these systems that is closed source–“hands off”–that actually gets used by applications built on top of them. In short the kind of thinking that used to be exercised by workers trained in CS has been “baked in” to infrastructure that’s now in use. So the thinking goes that they don’t need people with that knowledge. It’s already in the machinery. There’s a different mindset in the Linux/open source world (“Dig in all you want!”). But there, C/C++ is the Lingua Franca for that sort of work.

        If you look at what knowledge is being used in IT now I think what some would say they need is people with knowledge of existing architectures (frameworks), and in some cases skill in how to build new architecture. This includes a sense of what makes a good algorithm, along with a few sophisticated ideas such as understanding the difference between a straight iterative approach vs. a recursive one. I think they’re less interested in knowledge of data structures as an isolated subject, since frameworks have largely adopted that knowledge. But mostly it seems like IT isn’t even looking for these skills. They’re “nice to haves” but no longer necessary. They’ll settle for knowledge of specific frameworks and corresponding configuration knowledge, and they’ll feel lucky to get that.

        What I’ve seen, and heard is happening is that a lot of what’s being constructed now is from prefabricated components and runtimes. There’s more “plugging together” and configuring of “off the shelf” systems than writing something from scratch. Picture “pre-fabbed” homes vs. custom homes. My own sense is this has always been where industry wanted to go. They’ve wanted to get away from writing software because they couldn’t understand what it was, and why software projects behaved the way they did. They just wanted to build a product or service quickly and get it to market. If you think about it from an economic perspective it makes sense. It’s a sign of a maturing field. My own opinion is that it’s matured around a weak model, but that’s a different discussion.

        So the “creating” aspect of the engineering has been increasingly sequestered to companies/institutions that specialize in creating operating systems, languages, runtimes, different types of servers, applications, services, and frameworks/APIs. They either provide the service “in the cloud” that customers can subscribe to, or they produce a standardized “shrink wrapped” product. There’s some maintenance in companies that use this software/service, but like I said above it’s more of a configuration or “tweaking” activity. There is probably some programming involved, but nothing on the level that would require a CS degree.

        From the sound of it the employment opportunities for being involved in the “creating” activity have been decreasing due to industry consolidation, while the opportunities for working in configuration/”tweaking” scenarios are more plentiful, and a lot of CS grads end up going into those positions. I haven’t looked at what service providers/vendors are looking for as far as skill level, but perhaps they’re looking for people with more advanced degrees, which would fit your tiered professional model. The difference is the tiers interact less than they used to.

        I think you talked about this in an earlier post on your Amazon blog that there’s more demand for “software laborers” than there is for architects or “scientists”. I’m not saying this is a bad thing, but it seems to me there’s a mismatch that’s been growing between the skills that CS graduates have and the work they’re being hired to do. The work is underdemanding. I can’t say what the solution is. Maybe if students would stay in school longer they’d get to work on projects that are commensurate with their skills. Maybe undergrad CS is insufficient now. I had the thought that maybe a masters in CS would work as a track. Then again there’s what I was talking about earlier. What might be more rewarding is CS AND something else.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Trackback this post  |  Subscribe to the comments via RSS Feed

Enter your email address to follow this blog and receive notifications of new posts by email.

Join 9,005 other followers


Recent Posts

Blog Stats

  • 1,878,939 hits
June 2009

CS Teaching Tips

%d bloggers like this: