One thing that used to blow my mind was the difference between logical circuit design in CS vs CE/EE.
E.g. if the task was "Build a circuit to do X logic using these components AND, OR, XOR etc"
- In CS, it was " Please use the common shapes for each component"
- In CE/EE, it was "Please use the EXACT part code for EACH and EVERY component you use!"
I remember thinking: "Isn't the key lesson to learn the logic flow design vs being able to lookup each and every party number?? Is the EE department trying on purpose to get rid of people?"
You could make the argument that forcing people to do the detail but boring work is a good filter for people who are REALLY serious about EE but I would argue that there have to be better ways to do that.
If you just use theoretical perfect lossless and timeless components you completely miss and forget about a huge portion of EE which is not just designing the logic but actually implementing it in reality. It sounds like the EE program was setting people up to take the real world and imperfections into account while the CS version of the same course makes the valid assumption an electrical engineer has already provided the hardware platform so you can focus on the logical implementation.
>Isn't the key lesson to learn the logic flow design
In CS yes, in EE no. In EE that is only one of many key lessons, and without interlocking with other key lessons necessary to pick the real world components you end up with a circuit that either works purely out of luck, only in low-speed designs in noiseless environments, or not reliably.
https://www.digikey.ca/en/products/detail/texas-instruments/...
But my logic labs were also done on FPGAs.
Yes, I think now it's mostly the 74AHC, 74ALVC, some 74ALS/74HC families (maybe others) Depends on the application https://en.wikipedia.org/wiki/7400-series_integrated_circuit...
(using the fpga is fine, but I'd probably want to focus on the circuit itself ant not something like VHDL at first)
The professor was simultaneously the founder of a company that made FPGA boards for EE students. They also made a little microcontroller board that was basically Arduino before Arduino; we used that in another class where we made robots and programmed them in AVR assembly.
It's actually something that an EE may end up using in their career quite often if they're doing board design.
Though, we normally use CPLDs for that kind of stuff now, but if you can get away with a few logic chips, maybe it can simplify the design.
Sounds virtually identical to my experience from high school on, across almost every subject. Thankfully I retained >0, but still not what I should’ve. Instead, what I learned is I could JIT memorize what I needed to know just to pass the test. Took me years after school to unwind that and deeply learn topics again (outside things I had an interest in learning, those were never a problem).
Even on CE, we had for first 2 years tons of absolutely mandatory EE courses which had 0 relevance to software development. One (Theoretical electrotechnics II) was especially hardcore due to 1) math used was tougher than actual dedicated math courses we had at that time; 2) the professor was an absolute a-hole, I mean proper evil twist in his personality... everybody on whole university hated him, I mean teachers, management, everybody, students were properly scared of him. He was so well known even people on other universities knew him well. But he had some good expertise in some topics so he was tolerated, and he served as biggest student filter on whole faculty.
He literally fired people from whole school (as in last attempt to pass this mandatory course, 2 attempts per year, if failed could repeat next year) in their 3rd year at uni, because of a single dot in whole equation calculation (which was at least 1 A4 per exercise). Dot was just above given variable in equation to give it different meaning than non-dot ones, and pens did often fail us back then (so after solving an example we all tripple-checked all dots were visible where they should be).
He often told girls they shouldn't study EE since its not for them, guys that had long hair that they should get back to their moms, people with hungarian-sounding names that they should go to Hungary etc... He was fired eventually.
If it hadn't been for him, EE would be above-average difficulty but definitely manageable subject. As it was done, one basically done university for CE degree once passing him. And the best thing of all this - he was consistently given only to teach and examine CE people only. EE people had such an easygoing professor that everybody passed it.
Needless to say, I loathed anything EE-related for quite some time. Schools have ways to effectively discourage even good topics to folks like me.
I did a CE degree as well. Reading all the comments saying that it's super hard at university makes me feel like my university was really shit.
The difficulty in EE exams came from having to solve stupidly long and complex equations by hand in an exam with significant time pressure. Pretty much every single exam question was look at problem, identify equations to use, solve them by hand. And all the exam questions were close enough to stuff that was solved in lectures/tutorial.
In a way, that made it easier because everything was basically the same. I only had to get good at solving equations quickly and then I could get an A in an exam after just looking at all the tutorials/lecture notes the day before the exam. There are entire subtopics of my degree that I had 0 interest in (high voltage, electromagnetism), skipped all the lectures and then still got an A. I had/have 0 understanding of those topics, I just pattern matched questions to equations and then solved them like I solved everything else.
For some reason, the CS exams never had this sort of "difficulty". They were much harder to bullshit through with 0 understanding, but if you did understand the material, were much easier. I remember in a computer graphics exam they did force us to solve some matrix multiplication by hand, it was so absurdly trivial compared to the shit in EE exams that I almost laughed. But a lot of my pure CS peers really struggled because they didn't practice solving hundreds of much nastier problems by hand.