I know a lot of people in this business do not have computer science degrees. While some do, I suspect it’s a minority. I’m certainly curious, so if you want to share your education experience in a comment, tell me if you have a degree and what the focus was, as well as answer a few other questions.
At DevOps Days in Minneapolis recently, professors Fox and Sen from Macalester College talked about their computer science curriculum for growing the next generation of professionals. Along the way, they also asked the audience these questions:
- what were you required to learn?
- what courses were key?
- what topics were the focus?
- what was the teaching style?
- what was missing?
While these are good questions for any curriculum, these are interesting points to reflect on for any sort of learning. If you learned about technology in the military, on the job, or by yourself, what did others (or you) think was important and required? What did you feel was left out of your learning?
Of my small group of 4 that chatted about this, only one of us had a CS degree. I started in CS, but I actually have an economics degree. I switched to business, sensing more opportunity in the 80s there. However, I’ve continued to learn, even taking some classes post-graduation, that helped me learn more about computing.
It was an interesting look at a modern CS major, with lots of comments from the audience. The professors left us with their questions about how to look to the future, address AI, and even if they should teach an operating systems course, something both feel is missing from Computer Science at their college.
I think computer science is important for the world to advance how we build systems, but a lot of the deep theory on topics isn’t something that many of us need to learn. I would like to see a software engineering major come about that emphasizes more of the knowledge we’ve learned about building software, with emphasis on version control techniques, software design architectures, and process flows. While DevOps has been amazing, a lot of that knowledge could be used to better teach people how to build software in different ways. Distributed systems, database theory, performance measurement, and even different ways of managing code are things that need deep treatment, not just a module in another course.
Let me know today what you think of your education in computers.
Steve Jones
Listen to the podcast at Libsyn, Spotify, or iTunes.
Note, podcasts are only available for a limited time online.


This is a good question (c’mon, Steve, you were in the CS department at SU with me for a couple of years!), and I need to think about this! It probably doesn’t help that my undergrad years were (*coughcough!*) years ago, so my memories of what I experienced are somewhat hazy, and I’m sure that CS curriculums are vastly different from when I was an undergrad.
For me, personally, what I remember is that there seemed more emphasis on the theoretical back-end and not much on the practical front-end. It was great that we were offered courses in artificial intelligence, assembler, and CPU processing, which is great if you’re going into hardcore low (CPU)-level programming, but not so much if you’re just looking to write higher level code.
Granted, at the time, I was still trying to figure out what I wanted to do with my life, and I didn’t know then what I know now. I still don’t know how I managed to graduate with my CS degree in four years, but I did it. I will always be proud of my degree. But that said, if I knew then what I know now, I likely would’ve majored in something other than CS.
LikeLike