Enrolled: 2010. Exit: 2016.
Note: This is the first time in a life, a project I took (completing studies) took more than usual time. I didn't miss the final deadline. I made it. I worked full time completing studies and it was very hard for me. I did the whole degree under $1000 and I was also able to build several companies etc. along the way.
- Applied Physics: Applied Physics: Knowing the deep physics required to pull off something like a diode and a bipolar transistor. The physics guys started Computers.
- Calculus: Capturing the rate of change.
- Applied Chemistry: When you build a chip board, you need the green thingy. That's a green silicon. For building it a lot of Chemistry comes into play.
- Applied Thermodynamics: Computer emit heat, and need a certain degree of temperature management and cooling knowledge. The heat in and heat out is really great to know.
- Pakistan Studies: Pakistan has Prime Minister, President, 1973 is the constitution, we have Senate and National Assembly. We got a certain process of how the elections work. This course helps figure out how this system runs. How people are elected, the budgets built and forwarded to smaller orgs.
- English: This course helped me become a great communicator.
- Electronics 1: Resister, Power, Voltage, Breadboard, IC, Diodes, Transistors, Ohms law and several other laws.
- Fundamentals of Electrical Engineering: 3 Phase systems, Single Phase Systems, Kirchhoff's circuit laws.
- Computer Engineering Workshop. Practically building networks, connecting wires, and other DIYs.
- Fundamentals of Computer Engineering. Everything you would want to know about computers. For beginners think of it as learning the difference between a router, switch and bridge. They are not the same.
- Programming Languages: How to write syntax, how to convert it using a compiler or interpreter. The basics (variables/constant, conditionals, loops, data types, pointers and struct.)
- Engineering Mechanics: How force is applied on an object.
- Complex Variable and Fourier Analysis: Fourier analysis is used in signals to find signals and break them down to their basic signals and not combined signal. Could be used for example for noise cancellation.
- Linear Algebra: There a dozen stories and each story has hints and some hidden. If you put all the stories on top of each other, you get the whole picture.
- Linear Algebra and Ordinary Differential Equations: Several stories pulled together bringing a picture.
- Islamic Studies and Ethical Behavior: A lot of learning about Pre-Islamic pagan practices and how Islam challenged them. From basic fundamental that there is one God to further improving the processes of everyday life.
- Electronics II: Dig deeper on how to build electronic gadgets. Understood the greenboard, breadboard. There is hand based board and there is machine built board. The machine built board requires $6B to build a factory and is very nano (just open your computer of mobile today and see the amazing green thing in it. That's the marvel of chip development.)
- Engineering Economics: Demand and supply, Price and value, Book keeping, Compounding, Forecasting.
- Electrical Machines: Transformers, DC Motors etc.
- Instrumentation: Measuring the physical quantities of machines. Think of it as a thermometer for machines. Or a fart counter for a person that tells how much he farted and how stinky they were. But just for machines.
- Discrete Structures: Learning how to build the data structures. The science behind it.
- Data Structures and Algorithms: Stack, heap, arrays. Several complex datatypes. Algorithms like Bubble sort, merge sort. Calculating their Big O (complexity.)
- Logic Design and Switching Theory: The digital gates and how they transform a time series signal into digital signal and make rationality in it.
- Object-Oriented Programming: The functional programming was very limiting in picking a real world scene and transforming to digital world. The object oriented programming is a series of very elegant concepts the make you jot down real world in digital world, like a pro.
- Computer Architecture and Organization: Moore's Law (computers get complex and smaller with time.) 6 Principles of building a good system etc.
- Communication Systems: Signal vs Noise.
- Probability and Statistics: Quantifying things. Predicting the likelihood of things to happen.
- Business Communication and Ethics: Presenting and pitching and 7 Cs of communication.
- Digital Electronics: Building gadgets. This is the third course in the electronics thing.
- Electromagnetic Fields: There are different fields in action. Say electrical and magnetic signals in the same spectrum. Now if they both are in same place it causes confusion for the other and its not good for the signal transmission. OK let me please give an example. Steve Jobs is presenting in a huge hall in 2010-12. There are 5000 bloggers present and all of them are wearing digital gadgets. Suddenly the Internet stops working. Now he calls the engineers abusing them of what the hell is going wrong. Actually with a huge number of devices operating the same spectrum the losses become very high as all these are very concentrated. This knowledge helps analyze and solve these problems.
- Circuit Theory: The world of AC, DC, Ohms law, Kirchhoff's Law. My second course on the electrical signals thing.
- Computer Communication Networks: Handshake protocols of the Internet. Strength and weaknesses. A good subject on how the computer networks work.
- Database Management Systems: Learning SQL, NoSQL etc.
- Software Engineering: If you build a real estate project that project is built in front of the customers. The customers can see it, touch it. Even someone who doesn't know anything can figure out a building is being built. For software's you can't show it until a big amount of work is being done and the requirements clients give are vague and has lots of ambiguity. Think of this subject as helping software engineers learn to take requirements, delivering expected, under budget with resources, understanding stakeholders. Figuring out which process to use to keep client happy (extreme programming, lean, agile etc.)
- Microprocessor Based System Design: Microprocessor (can be programmed several times. The one we use for mobile phones, laptops, PCs etc.), Microcontroller (Programmed once and used for dedicated devices. Machines which do very narrow jobs and don't require a lot of other knowledge. Say a traffic signal device.)
- Numerical Methods: Quantification for engineers.
- Parallel Processing. Historically computers used to process a single thread a time. With advancements it is able to run several threads ands several computers in a single computer. Previously if you remember in 1998 Windows 98 days if you ever opened to many apps the computer hanged. It fooled it into believing it was doing many things while it was doing one a time. 2012 was the year Parallel processing made it big. The technology was there but it was not mainstream.
- Digital Signal Processing: I will give you an example. You sing a really great song. Now you want a machine to understand it or atleast store it. For you its a blackbox magic that happens for you. For engineers we understand how that time series signal got converted into a digital signal and howcome its details of time and space were preserved. If you need to clear out the noise, how did that happen.
- Computer Systems Modeling: How do you pick a problem and build a 'computer' way of solving it. How do take a real problem and convert it into a digital solution. For example in the old days cash was kept behind safe space and if you go to a bank a person would manually go and bring your cash to you. Today we have ATMs. The ATM replicates the same experience but removing humans from the loop. So how do you design a system that serves the need of people smartly, timely and delivers expected results. This is the challenge.
- Information Theory: The science of data transfer and what factors affect it. For example bandwidth.
- Internet Computing: Request and Response cycles. Very complex Internet (things like if you are moving on a phone the IP changes, on computer its same and several details of the game.)
- Operating Systems. Kernel, file system etc.
- Computer Engineering Final Year Project. 100 hours invested in pulling together a really cool hardware first project to life.
- VLSI Design: The elegant process of scaled bulk chip design and development.
- AI and Robotics: AI, Robotics, Neural networks and weight calculations etc.