Courses

Programming in Python

In this course, you will learn the foundations of Python. After downloading and installing necessary tools,  you will start learning-by-doing to accommodate basic programming concepts as well as advanced techniques of object-oriented programming.

Object-Oriented Programming with Java

In this course, you will learn the foundations of object-oriented programming in Java. After downloading and installing necessary tools,  you will start learning-by-doing to accommodate basic programming concepts as well as advanced techniques of object-oriented programming.

Embedded Systems

In this course, you will learn the foundations of computing systems that are embedded in larger technical systems such as cars, airplanes, robots, cameras, mobile phones, etc. These systems work under conditions and requirements that are different from those of your personal computer. Embedded systems are characterized by limited capabilities in terms of computational power and memory and by an extended interface with the physical world through sensors and actuators.

robot, arm, technology

Real-Time Embedded Systems

Embedded computing systems must work perform in real-time. Some of these systems have soft real-time requirements and others have hard real-time requirements. Violating deadlines in software real-time systems is annoying but it does not render the system useless. In contrast, breaching deadlines in hard real-time systems can result in absolute failure of the system. In this course, you will learn how to design embedded systems that meet real-time requirements. This includes understanding how it comes to these requirements and how to assess an embedded system towards them.   

atlantis space shuttle, launch, reflection

Digital Logic Design

In this course, you will learn the foundations of computer hardware. How the computer adds, subtracts, or multiplies using logic gates! How data is stored! How to control the flow of program execution using sequential machines. And you will learn the basics of Hardware Description Language and more.

cpu, processor, chip