

Ask HN: What 5 classes would you recommend for electrical engineering education - josephpmay

I&#x27;m in a unique program at my university that combines design, business, and engineering education in a single degree. There is a set &quot;core&quot; curriculum that every student takes that covers basics in coding, entrepreneurship, design, prototyping, etc. Each student also chooses two &quot;emphases&quot; in the areas he&#x2F;she wants to focus in. The current emphases are: technology (practical CS), visual design, audio design, venture management, communications, and mechanical engineering. Going into the program, I told the administration that I would like to take an electrical&#x2F;computer engineering emphasis, and they are happy to accommodate this. The only issue is that the university&#x27;s EE department doesn&#x27;t want to officially participate in this, so I basically have to design my own curriculum.<p>I need to figure out what four-five courses to take to get a foundational understanding of computer engineering&#x2F; electrical engineering. I came to college having taken four years of CS classes, so I have somewhat of a background in data structures and algorithms (I know Java, Swift, and JavaScript).   However I have no education in pointers, memory allocation, etc. which I know is necessary for higher-level CS and any EE. I also took a graduate level Fourier optics course this semester, so I know the basics of linear systems and Fourier transforms. I have not taken any linear algebra or multivariable calculus.<p>To give you an idea, this is the mechE emphasis curriculum:<p><pre><code>    (A one semester course that&#x27;s supposed to cover all of physics and calculus using Matlab) 
    Statics
    Strength of Materials
    Mechanical Behavior of Materials
    Dynamics
    Computer-Aided Analyses for Aero-Mechanical Design


</code></pre>
And this is the technology emphasis:<p><pre><code>    Coding basics and Android app development
    iOS app development
    Mobile Development for Content and Media
    Advanced Coding
    Cloud Architecture and Applications</code></pre>
======
MichaelCrawford
For EE make sure you study at least some analog. At UCSC I took the analog
class that was taught by the Physics department, with the aim of teaching us
to build our own instrumentation for physics experiments.

Dr. Dorfan pointed out that analog wasn't required for a EE degree. He said "I
can see how they can design digital chips, but I can't understand how they get
them to actually work."

Consider problems like capacitive coupling, and hot spots due to frequently-
used parts of your digital circuit being close together.

Learn the assembly code of at least one instruction set architecture. Pointers
will make a lot more sense then. These days I would advise that you learn ARM;
Steve Furber's ARM System-on-Chip Architecture is quite good.

Intel assembly may have more widespread application however it is far harder
to make sense of than ARM.

------
Kliment
I don't know what your university offers, but here is what I'd recommend in
terms of material:

\- A basic analog electronics course

\- A computational logic course

\- Some introductory material on high-speed/RF signal propagation

\- A lab course involving design/layout/implementation

\- An embedded programming course

