TL;DR author discovers there is little overlap between EE and CS.
Hardware and software are called different things for a reason? I do agree that tinkering with the hardware always needs to be in-step with the lesson at hand. You can't just state KVL/KCL and move-on, you need to have the student build a circuit and play with it for a day or two.
The build part was really helpful for me when I really struggled with EE. My program only ever made us build things for very first semester "build a circuit to light up the LED" type labs. Once we got to even the most basic of components it all became on paper. I really struggled with some of the mental models to the point where I made a habit of going out of my way to build a lot of circuits that I was just supposed to solve on paper. Getting everything correct felt no different to getting things completely wrong in a paper problem until I actually built out the circuits and suddenly "correctness" actually became a real thing that I was tangibly experiencing. I wish my program would've at least taught SPICE a little more to at least scratch the ability to simulate things a little better.
No? There's plenty of overlap. I studied computer engineering in undergrad, which is similar to the author's original major. There are a lot of subjects that straddle the boundary, like computer architecture, embedded systems, and digital signal processing.
Obviously yes, if you're doing heavy analog/power/RF stuff you're going to be pretty far from software, but EE is a really broad field.
In all of my EE or computer hardware classes at uni, we had weekly labs that required hands on building circuits. Often the labs were the most challenging part of the class. Is that not common?
I had the same experience, every EE class had a lab component even the intro ones. At my school, the labs for junior and senior classes were all scheduled 6PM to 10PM and almost all of them took that long or longer to complete.