The other day Audrey Watters, one of my favorite contrarians, posted Why Are Coding Bootcamps Going Out of Business? which focused on the failure of some coding bootcamps and the consolidation of others. Today I read A Tech Bubble Killed Computer Science Once, Can It Do So Again? also posted in the last few days. Articles like these make on think about the future of CS education. Well I think about that a lot anyway but mostly I travel in upbeat circles. CS education is seeing growing interest and is being taught to more students. All good right?
Both of these articles focus on CS education as a way to get jobs in software development. While that is probably a good reason to study CS it is not the only one. Of course we have seen lowering demand for CS professionals decrease interest in studying CS drop in the past. SO it is something we do have to look at and think about.
Part of the problem here is getting a clear view of the demand for CS professionals. Many companies say there is a shortage of skilled developers. The contrarian view is that there is a shortage of people willing to do the job for the money being offered. Those people see the calls for more H1B visas as a way to keep salaries low more than as a way to fill a real shortage. I suspect the way the Trump administration looks at foreign workers (see the H2B visa shortage this summer) may give us a chance to find out. On the other hand some people predict that tech companies are headed for a bubble burst so there is that as well.
If tech companies do falter that may indeed cause a drop in interest in CS education. I’m not quite ready to predict an eminent bubble burst there though. It really feels to me like a lot of things are moving forward very strongly and very widely across industries for that to happen soon. We’ll have to keep an eye on what this means for jobs though. While it looks like starting salaries for recent university graduates are up slightly (Salaries for 2017 College Grads Hit All-Time High) tech like many other industries has this tendency to hire young and squeeze out older more expensive workers. I hear lots of stories of how hard it is for experienced professionals in their 40s and 50, let alone 60s, to get jobs in tech.
Personally I still maintain that learning CS is important for people in all lines of work and that becoming a professional software developer is not the only or even the best reason to teach CS to everyone. Even if there is a drop in people majoring in the field if there is an increase of people learning some CS we’ll be better off. The hard part is convincing all these other people that the reasons we teach all HS students Physics and Biology are just as valid, if not more so, for computer science. We need to go beyond the vocational idea of CS education. If we can do that we can continue to see CS education grow to the benefit of us all.
Terrific post.
ReplyDeleteThanks for this, Alfred.
ReplyDeleteWhy is CS the only subject that we should teach because it (may) lead to a good job?
We don't hear that we should teach more chemistry because we need more composites materials engineers, or math because we need more actuaries.
Why is CS singularly held up as a subject that must be taught because of its career potential?
Fred makes an interesting point. Could it be we are comparing CS to the wrong subjects? Wouldn't a closer comparison be to metal and auto shop? CS a trade! Looks like it. CS teachers are mostly intellectual geeks so this may go against their grain but the comparison is unavoidable.
ReplyDelete