Thanks to: João Chrisóstomo and Yazeed Alrubyli
Artoriuz, yazeedalrubyliOpen-Source Electrical Engineering Curriculum
This repository consists of a series of online courses and textbook recommendations that together cover most of the basic Electrical Engineering knowledge, similarly to a bachelor’s degree.
While I strongly recommend going to an actual university, nowadays we have a wide array of extremely high quality online education resources. Deciding what to study on your own might be difficult when the catalogues are long, and I hope I can at least guide you if you have no idea where to start.
For those of you in the path of obtaining an actual BSEE degree, this might still be useful since it can complement your education.
The curriculum is based on my personal experience completing a BSEE at the Federal University of Rio Grande do Norte, which was a 5 years long programme, but revised to fit into 3 years due to the strong inspiration I got from ETH Zürich’s and MIT’s curriculums.
Naturally, the actual time you invest highly depends on how many hours a day you put on the online courses and how many of them you want to go through. The textbooks themselves are all good on their own, and valuable resources by themselves if you’re good at self-learning.
Structure
The curriculum is split into 2 parts, a mandatory core and several electives. The core aims to cover the basic knowledge every electrical engineer should know (even if you’re not a specialist), opening the doors to the more specific knowledge. Some universities allow you to choose a specialisation, focusing on a single part of EE, which is exactly how the 5th and 6th semesters are designed here.
Core
The core is divided into 4 knowledge areas: - Mathematics: Calculus, Linear Algebra, Statistics, etc. - Electricity: Electromagnetic Theory, Electric Circuits, Electronics, etc. - Computing: Boolean Algebra, Logic Circuits, Programming, etc. - Signals: Signals and Systems, Control, Communications, etc.
The “Mathematics” subjects are the very first pillars engineers needs to build in order to sustain the rest of our knowledge, you’ll need calculus to understand electricity, linear algebra to understand robotics, statistics to understand communications, etc.
The “Electricity” subjects are related to the physical aspects of electromagnetic waves and electronics, which are used in clever ways to build everything else in EE.
The “Computing” subjects cover the logical parts of digital electronics, an area of knowledge that ended up giving birth to IT, CS, CE, etc.
Finally, the “Signals” subjects cover what might be the most unique knowledge in EE, being able to understand what the frequency domain is and how we can design things outside the time-domain. Signals and Systems will lead the way to all knowledge related to control systems, communications systems, computer vision, etc.
1st Semester
Introduction to Electrical Engineering
I strongly recommend checking YouTube videos about electronics, hardware, software, etc. See if they interest you. Recommending a textbook is extremely difficult since what you want is an overview of what EE is all about, but that doesn’t mean cool casual books don’t exist. Brian Kernighan, the author of the quintessential C language book, wrote something very interesting aimed at people who don’t work in the technology field but who’d still want to understand the basics of computing and the digital world. It was never meant to be read by engineering students, but it can be a good introduction since it gives you a showcase of many concepts without delving too deep into technical details.
Recommended book:
Understanding
the Digital World - Brian Kernighan
Trustworthy resources:
AnandTech
EEVblog
ElectroBOOM
Computerphile
Calculus
Recommended textbooks:
Calculus
- Gilbert Strang
Trustworthy resources:
Calculus
1A - Differentiation
Calculus
1B - Integration
Calculus
1C - Coordinate Systems and Infinite Series
Linear Algebra
Recommended textbook:
Linear Algebra -
Gilbert Strang
Linear
Algebra Applications - Steve Leon
Trustworthy resources:
Introduction
to Linear Models and Matrix Algebra
Linear
Algebra: Foundations to Frontiers
Differential
Equations: Linear Algebra and NxN Systems of Differential
Equations
Boolean Algebra and Logic Circuits
Recommended textbooks:
Digital
Design - Frank Vahid
Digital
Design RTL VHDL Verilog - Frank Vahid
Trustworthy resources:
Computation
Structures Part 1: Digital Circuits
2nd Semester
Probability Theory and Statistics
Recommended textbooks:
All
of Statistics: A Concise Course in Statistical Inference - Larry
Wasserman
Grinstead and
Snell’s Introduction to Probability
Trustworthy resources:
Fundamentals
of Statistics
Statistics
Probability
Statistics and
R
Electricity and Magnetism
Recommended textbooks:
Electromagnetic
Field Theory - Markus Zahn
Trustworthy resources:
Electricity
and Magnetism Part 1
Electricity
and Magnetism Part 2
Electricity
and Magnetism: Electrostatics
Electricity
and Magnetism: Fields and Forces
Electricity
and Magnetism: Maxwell Equations
Programming Logic and Algorithms
Recommended textbooks:
C
Programming Language - Brian W. Kernighan, Dennis M. Ritchie
C
Programming A Modern Approach - K. N. King
Trustworthy resources:
Introduction to Computer
Science
Introduction
to Computer Science and Programming
Basics
of Computing and Programming
Linear Systems and Signals
Recommended textbooks:
Linear
Systems and Signals - Lathi
Signals
and Systems - Alan V. Oppenheim, Alan S. Willsky, with S.
Hamid
Discrete-Time
Signal Processing - Alan V. Oppenheim, Ronald W. Schafer
Trustworthy resources:
Signals
and Systems Part 1
Signals
and Systems Part 2
Differential
Equations: Fourier Series and Partial Differential Equations
Discrete
Time Signals and Systems Part 1: Time Domain
Discrete
Time Signals and Systems Part 2: Frequency Domain
Discrete
Time Signal Processing
3rd Semester
Discrete Mathematics
Trustworthy resources:
Mathematical
Modelling Basics
Computational
Thinking for Modelling and Simulation
Introduction to
Programming with MATLAB
Electric Circuits
Recommended textbooks:
Fundamentals
of Electric Circuits - Matthew Sadiku
Trustworthy resources:
Circuits
and Electronics 1: Basic Circuit Analysis
Digital Systems and Computer Architecture
Recommended textbooks:
Computer
Architecture A Quantitative Approach - David A Patterson and John L.
Hennessy
Computer
Organization and Design RISC-V Edition: The Hardware Software Interface
- David A Patterson and John L. Hennessy
Digital
Design and Computer Architecture - Harris and Harris
Digital
Systems, Global Edition - Tocci
Digital
Design RTL VHDL Verilog - Frank Vahid
Logic
& Computer Design Fundamentals - M. Morris R. Mano, Charles R. Kime,
Tom Martin
Trustworthy resources:
Nand2Tetris
Part 1
Nand2Tetris Part
2
Computation
Structures 2: Computer Architecture
Computation
Structures 3: Computer Organization
Control Systems
Recommended textbooks:
Control
Systems Engineering - Norman Nise
Modern
Control Systems - Richard C. Dorf
Trustworthy resources:
Introduction
to Control System Design - A First Look
Dynamics and
Control
Introduction
to State Space Control
4th Semester
Power Systems Analysis
Recommended textbooks:
Power
System Analysis - Hadi Sadaat
Electric Machines
Recommended textbooks:
Fitzgerald
& Kingsley’s Electric Machinery
Electronics
Recommended textbooks:
Microelectronic
Circuits - Sedra
Microelectronics
- Razavi
Electronic
Principles - Malvino
Trustworthy resources:
Circuits
and Electronics 2: Amplification, Speed, and Delay
Circuits
and Electronics 3: Applications
Principle
of Semiconductor Devices Part I: Semiconductors, PN Junctions and
Bipolar Junction Transistors
Principle
of Semiconductor Devices Part II: Field Effect Transistors and
MOSFETs
Communication Systems
Recommended textbooks:
Modern
Digital and Analog Communication - Lathi
Trustworthy resources:
A
System View of Communications: From Signals to Packets (Part
1)
A
System View of Communications: From Signals to Packets (Part
2)
A
System View of Communications: From Signals to Packets (Part
3)
IoT
Networks and Protocols
5th and 6th Semesters
This is where the core principles of Electrical Engineering are completely covered. The student should freely choose the remaining subjects based on personal interests and the preferred knowledge area. I won’t bother specifying specific courses since by now you’re probably used to edx and coursera.
Power Systems Subjects
Power Systems II
Power Substations
Power Protection
Electronics Subjects
Power Electronics
Nanoelectronics
RF Electronics
Electromagnetic Compatibility
Semiconductor Physics
Optoelectronics
Digital Electronics Subjects
VLSI Design
Functional Verification
Design For Testing
Embedded Systems
Computing Subjects
Operating Systems
Machine Learning
Computer Vision
Computer Networks
Control Subjects
Adaptive Control
Non-Linear Systems
Communications Subjects
Digital Signal Processing
Advanced Compression and Coding
Antennas
Optical Communications
Wireless Communications
Prerequisites
The following image illustrates the “flow” in which subjects should be studied in order to facilitate them.