Reading 13: Computer Science Education

Whenever I watch Good Will Hunting, the following scene always stands out to me:

Will: “See, the sad thing about a guy like you is, in 50 years you’re gonna start doin’ some thinkin’ on your own and you’re going to come up with the fact that there are two certainties in life: one, don’t do that, and two, you dropped 150 grand on a fuckin’ education you could have got for a dollar fifty in late charges at the public library!”

Clark: “Yeah, but I will have a degree. And you’ll be servin’ my kids fries at a drive-thru on our way to a skiing trip.”

In this scene, I identify with Clark-and it scares me.  This exchange always makes me think about my and my parents’ 200+ thousand dollar investment in my Computer Science education at Notre Dame.  Unfortunately, I really do not believe that I would not be able to achieve this same level of CS competence for free.  Nowadays I wouldn’t even need a library card, I can access everything from my computer.  In fact, during my education here I quickly learned that I do not need to buy any textbooks for any class as all of them are available online.  Additionally, for many classes that I have taken I have found very similar lectures recorded from other Universities online with problems, slides, and exams as well.  Sadly I have joked with some of my friends that for a few classes I learned more from Stanford professors than I did from my Notre Dame one.  With this in mind, my education was only worth it for building connections and for the degree.

Without a degree, I do not think I would have been hired.  I’m not a prodigy and would not have been as desired without my education background.  Plenty get by without one but for my family it never would have been acceptable (and I would have been too afraid to try).  But in all honesty, I think that all of the resources necessary for a top-notch CS degree are available online for free.

I believe that Notre Dame has prepared me pretty well for my future career but at the same time, I’m not sure. I still feel uncomfortable with my CS proficiency after receiving offers from Apple and Google and I do wish that I would have been forced to code more (as much as I’d hate the extra work, I feel like I did not have to write nearly enough code while here).

Going back to the main question, I think that Notre Dame’s CS catalog fits the objectives and outlines of CS2013 very well.  Additionally I also think that the courses and education I received here match all of the ABET criteria.  My education was great, it just could have been accomplished for free with enough motivation and only missing the critical degree part of the experience.  Even teamwork could be accomplished without classmates through Open Source communities and hackathons.

Lastly, I think that a CS education is hard to define.  Reading these articles, many of them seemed vague or contradictory in what they expected from a recent CS graduate.  “What every computer science major should know” was the most specific and therefore the one that I matched the worst.  The article named “essential skills” and mandatory languages that I do not know.  However, I don’t think these really are essential.  Why do I need to know Racket, Squeak, Standard ML, Prolog, Scala, and Haskell? I don’t know these and NONE of them have been an issue yet.  Furthermore, I recently found out I will be primarily a Java developer at my first job.  I haven’t touched Java in years.  But if I know C++ I do not anticipate it being a huge problem.  Last summer I made an iOS application in Objective-C.  Prior to the summer, I had zero experience with this.  But I learned the language from a free online class and was able to excel.  To me, defining many languages/things that CS students need to learn is a waste.  What I think is fundamental is theoretical knowledge about core CS concepts, an overview of the most important practical concepts, and a lot of practice in almost any language.  After that, everything pertinent will be learned on the job.  If you can think and have a background knowledge in theoretical matters, I think that is all that matters.

Reading 13: Computer Science Education

Leave a comment