“I should have been a CS major.” If I had a nickel ... Now that the hiring fairs, networking events and career advice sessions are done — and, more importantly, now that college is a few days from being little more than a memory, I can’t help but think of what I and all the other graduating seniors have gotten out of our time at Cornell.
Most of what a student gets out of a university, of course, depends on his or her own initiative. The tired, hackneyed, irritating phrase “college is what you make of it” still rings true after four years, much as I might be loathe to admit it. There are, though, important parts of an education that the university does control. Required courses are one them. Earlier this semester I wrote a piece about how Cornell should change some of its curriculum requirements — having now seen first hand what many employers want, I’d like to revisit the issue.
Distribution requirements, core curriculums and other academic hoops that universities put in place are basically designed to ensure that English majors know a little biology and that conversely biology majors know a couple of Shakespeare plays. O.K., let’s be honest, what really happens is that humanities majors take Why the Sky is Blue and engineers take History of Rock Music. The intention of the requirements is often flaunted by the stronger desire for easy A’s. Nonetheless, these broad requirements at least seem directed at one of the crucial purposes of a college education: the general edification of students so that they can appreciate and think about the world we live in through different lenses.
There is, though, another goal of a college education: preparing students for the job market. And while, as many parents are quick to admit, 40 years ago almost any college degree gave you a good shot at a job, today that is far from the case. Higher education is currently doing a pathetically poor job of preparing its graduates for the world they face upon leaving. To lean on some statistics: 53.6 percent of college grads under the age of 25 were un- or underemployed in 2011.
So, while general education and the ability to think about the world in different ways are worth focusing on, colleges (and yes, even ones like Cornell) should put more of an emphasis on preparing students for the job market. Often the tension between these two goals is mapped onto “sciences versus humanities.” This is understandable given that technical jobs are experiencing the most growth at the moment and that many employers are complaining that there is a shortage of highly trained and skilled employees. On the other hand, this is a simplification of the picture. The trio of basic sciences (physics, chemistry, and biology) are not particularly highly sought after by employers either. Rather, employers are looking for specific, applied skills. To be more specific: Employers want people who can write code, who can develop web applications.
Cornell should therefore ensure that every student who graduates knows how to code in at least a couple of languages. Think of it like a beefed up, but more directly applicable language requirement. Instead of taking Math and Politics, Music majors will have to learn how to write in Java, or Python or whatever. And instead of taking that laughably ineffective one-credit transition course where half the students don’t learn anything anyway, engineers would actually have to learn how to write in java, or another language deemed more useful.
Certainly, I am not advocating that everybody become a software engineer. But coding is the one skill that in today’s job market guarantees you a job. It’s sort of like the social safety net of education. Students would be able to pursue their majors as they do now but would graduate having a directly applicable skill. They could potentially pursue jobs that they are genuinely passionate about outside of tech — journalism, research assistants, N.G.O.s etc. — and if they are not successful they would have a fallback to an industry where there are plenty of jobs available.
This all might sound vague — what do you mean learn coding? and how would you structure this part of the curriculum? So let’s get specific. The goal is an intermediate level comprehension of a couple of programming languages. While you might think this might seem daunting — Swahili and Spanish aren’t exactly related after all — computer languages aren’t so different from each other. Essentially, through this series of courses, students would need to understand the algorithmic thinking common to all of them and then learn how to use such thinking in two specific languages.
In a series of four or so courses, which in Arts and Sciences (to give one example) might replace the four PBS / MQR courses that are often used by students to pursue easy and inapplicable science and math courses, students would be introduced to computer science through one language, take a couple of courses that would be modeled after the current CS 2110 and then learn the specifics of another widely used language. Perhaps there could even be a course that teaches certain families of languages (C, C #, C++ for example). The content should be left up to the CS department but the purpose of the courses would be to ensure that those who take them come out with enough knowledge to secure entry level coding jobs. Not at Google or other tech giants (most CS majors don’t even make the cut there) but maybe at smaller firms or firms that need programmers even though they are not in the tech industry.
I understand that I will probably be accused of falling into the cult of the software engineer. Or alternatively accepting Cornell’s current obsession of becoming a tech school. Instead, I think this would be an easy way for Cornell to use its resources in the applied sciences to benefit the whole student body. If we’re going to require certain courses we might as well make them stringent and useful.
Harry DiFrancesco is a senior in the College of Arts and Sciences. He may be reached at email@example.com. Stirring the Pot appears alternate Mondays this semester.