Amy Blankenship
2 min readMar 24, 2022

--

I'm going to preface this by saying I do not have a CS degree. But my first programming jobs were programming eLearning, and in one of those jobs it fell to me to pull information out of SMEs and format it so that people could learn from it (ie create storyboards for myself to work from). I also have a fair amount of learning theory through training dogs as a hobby.

I think the problems you list are not unique to CS. But think how hard it actually is to put together a useful/meaningful CS curriculum for high school grads that come to college with various amounts of preparation.

First, even if college professors are working in the industry, it's likely part-time. So even those doing the most to understand what skills are really needed only have the vaguest idea what those are. And, assuming the professor knows what those skills are, being able to break them down into their component parts and present them in a way that will make sense both to the graduate of a STEAM magnet school and someone who comes from an area that thinks taxation is theft and so if the computers work half the time, it's a miracle (and so almost by definition the teacher in charge of teaching anything about computers does not have much time to prepare). And then there are all the liberal arts skills needed, such as logic, which you allude to (I'd argue that philosophy may be a better prep for programming than most math) and aesthetics (if you don't hate nasty messy code in your soul, you will produce it).

Then when you have a bunch of thought leaders on the blogosphere telling kids that actually that best practice they're being taught is unnecessary (it's not, but telling people what they wish were true gets a lot of likes), and it's just tough.

Then graduates get out of school, and they get tossed into these nasty spaghetti codebases and learn that that's normal (unfortunately it is, and that's self-perpetuating) and they struggle to produce or get any better.

--

--

Amy Blankenship
Amy Blankenship

Written by Amy Blankenship

Full Stack developer at fintech company. I mainly write about React, Javascript, Typescript, and testing.

Responses (1)