Shortly after graduating, I had a lot of thoughts on my educational experience. Specifically, as I began to start working in an actual engineering job, I had thoughts about the ways I was prepared for the real world and the ways I wasn’t.
I came in with useful tools, like knowing how to generate a truth table for a logic function or how to work in a small group. I also came in with an encyclopedia of useless knowledge, like how to calculate the cross product of two matrices, determine the Thevenin Equivalent of a resistor circuit, and calculate a Fourier transform by hand. It made me wonder how many people had to switch majors because they weren’t able to grasp those latter concepts. How many would-be engineers switched their career trajectories because they failed to master unhelpful skills?
Engineering school should not just be boot camp for smart people. The focus should and can be on teaching a trade, instead of layering theory on top of theory in an effort to induce a third of the student body to wash out.
The question that nobody asked, yet I feel compelled to try to answer, is “what would you do, Dean Emperor Keith, if you could design the course plan yourself?”
My awesome former classmate Kyle was able to find a course plan for BU Electrical Engineers in the class of 2008. This was the year after mine, and I was in Computer Systems Engineering, so a bit of it was unfamiliar to me. But most of it was recognizable. Also, it was bright pink; I’ve taken mercy on you, dear reader, and rendered it in grey scale. Here’s the starting point.
I posit that we can make it better, mostly by removing a lot of content. I’ll try to justify each of my picks below, both in terms of why classes were cut, or they were not. In some cases, I combined classes together.
To make life easier, here’s the finished product, which I’ll also post down below.
Non-Engineering Classes Kept or Merged
English Composition – Communication is a part of basic engineering competency.
Calculus (Merged) – I agonized over this a bit. I think cramming Calc I and Calc II into a single semester might be aggressive, but if you simply focus on the essentials (basics rules of derivatives and integrals) you can create enough of a foundation for future calculus-based classes like Physics and Mechanics.
Differential Equations – Probably the most applicable topic to most engineering work in terms of higher level math courses.
Chemistry – This one’s on the bubble. It’s not directly applicable to most forms of engineering unless you’re really looking to focus on material sciences. But the Periodic Table is too important to skip.
Physics (Merged) – Cover mechanics (Physics I) and electromagnetics (Physics II) in one course. There are future courses that go deeper into these topics, so keeping the material cursory.
Waves and Modern Physics – Way too important and interesting to skip. I might be biased.
Non-Engineering Classes Scrapped
Multivariate Calculus – The most interesting portions of this class, partial derivatives and multidimensional integrals, are better covered elsewhere and aren’t even that interesting. Plus I really hated this class. Again, I might be biased.
Introduction to Linear Algebra – I don’t know why this class exists.
Elementary Probability – This topic is interesting but had very little direct applicability to working in the industry.
All Non-technical Electives – This might seem controversial but I have a very specific idea in mind here for what this program can accomplish, and liberal arts electives get in the way of it. If you really are curious about Eastern Religions, read a book. Read lots of books! But don’t make us spend our tuition money on it.
Preamble: Theory vs. Practical
Before I move on to changes to the core engineering courses, I wanted to address a fundamental question. What amount of theory is necessary and sufficient? My gut wants to say “almost zero, stop worrying and learn to love abstraction.” But I’m going to try to be balanced here.
Take Electric Circuit Theory as a case example. The class is meant to introduce the fundamentals of circuit analysis and design. It is incredibly important, but spending an entire semester studying only three passive circuit components (resistors, capacitors, and inductors) is a waste. Spending most of that time doing hand-analysis of complicated circuits means you have less time to learn how to use the simulation tools that actual engineers rely on. The goal with this, and all, courses should be to stay in theory for just long enough to build a fundamental sense of the physical and mathematical mechanisms at play, and pivot as quickly as possible to the next level of abstraction and automation.
ECT, as it is currently taught, makes this pivot far too late. Making it earlier allows the course to be merged with Electronics, to introduce active components (diodes and transistors) into the mix. Again, this can only be accomplished if the Electronics syllabus is stripped of the months spent doing pen-and-paper analyses of rectifiers and inverters.
Engineering Classes Kept or Merged
Engineering Computation – This is intro programming for engineers. Essential.
Engineering Mechanics – Deeper dive into the mechanics side of physics. This is what allowed us to merge Physics I and II. Add more design projects, though.
Intro Electromagnetics – The same as above but for the electromagnetics portion of physics. I did not take this class so I can’t speak to its merits.
Signals and Systems – This class is beneficial because, at the end of the day, many fields of engineering can be abstractly thought of as “systems” to the point where Systems Engineering is a thing people can get a Masters in.
Senior Design Project – A long-term capstone project is valuable and provides the closest approximation to what working in the industry actually looks like. The name might need to change, for reasons to be made clear shortly.
Electronics and Computer Electives – I see these as the part where students begin to specialize in higher level topics of interest, some of which are graduate level classes, and many of which are project-focused. For example, during my time at BU the most relevant course to my actual career was a chip design project course, VLSI II. At the conclusion of the semester, the professor told me that I was the first undergraduate to take it. I used to be proud of that, but now I just think it’s a shame.
Engineering Classes Scrapped
Engineering Seminar – This was a fluff class. It wasn’t worth any credits anyways.
Introduction to Engineering – Same as above, this was a semester-long rotating tour of several electives and I’m not sure why it was necessary.
Systems Elective – As justified above, useful content should have already been covered in Signals and Systems
Technical Electives – There are already enough “technical” electives captured above. This many is excessive.
Engineering Classes Added
Unfortunately, we can’t just fix the inadequacies present here by removal alone. We also need to add some content.
Almost half a dozen of these classes have a strong coding requirement inherent in them, but none of them spend any time teaching you how to use a decent text editor. This is the intellectual equivalent of giving carpentry apprentices a year of training on the metallurgical makeup of nails but forgetting to teach them how to swing a fucking hammer. What’s more, you can’t be an electrical engineer in the 21st Century without having a firm grasp of build automation (“Make,” for example) and version control systems, but this topic is left to TAs to explain to bewildered students just to allow them to get through their homework assignments. So I’ve added a course I called “How to program.”
I went through my four years at BU without using a higher level interpreted scripting language like Perl or Python to perform simple functions. These are the power tools of the tech industry and every graduate from an engineering program should have some experience with them. So I’ve added a course called “Scripting languages.”
So, after all that, I’ll visualize the changes again.
Now, let’s condense.
Even after adding two courses, look at what we’ve got here. You can fit this program into two and a half years.
This isn’t enough credits, of course, to net you a Bachelor’s Degree. I’d love to live in a world where this is no longer important, that even electrical and electronics engineering education can be treated as a trade program. A more compact and focused program could be utilized for either a lower-cost secondary education or a quick worker retraining program, both of which are desperately needed right now.
This is, of course, all just fun and games. I’m not actual Dean Emperor Keith. I have no authority to make any of this a reality, and nobody who does really pays much mind to what I think. But as far as thought experiments go, this was a fun ride. Thanks for taking it with me.
Eh, maybe. But I think that college is the last chance we will have to strongly encourage (force?) folks to learn something outside their trade. For instance, I would love to see a course on child development. I would push a course on the history of social organizations — the everyday ones, like the Elks, or bowling leagues, or, gasp, maker spaces. Macroeconomics. There are a few others. We just need to have smart people have some perspective on these topics. They are intellectually interesting; there are well-curated bodies of knowledge, and so on.
And, just to open eyes, a course in the history of African philosophy. Yeah!!
Thoughts????