Systems Programming using C Language – (Fall 2014)

C language is used everyday and everywhere. Whether your goal is to learn how to program small microcontrollers with small memory and power, like arduino or develop complex games and mobile apps, knowledge of C language would prove very helpful. C can even help you better understand other programming languages better.

This course is designed to help students with little programming experience or computer background learn the basics of computer programming. Moving quickly over the basics, we advance deeper into computer programming using the hugely popular C programming language as our language of choice. The course help student understand their device hardware better. As part of the course, we shall learn features like arrays, functions, structures, pointers and linked list of C through several programming exercises, LAB sessions, quiz and two major capstone projects as midterm and final exams.

Reference Text(s)
  1. C Programming – A Modern Approach by (K.N.King). 2nd Ed.
  2. The C Programming language by (Brian Kernighan & Dennis Ritchie), 2nd Ed.


Computer Communications and Networks – Spring 2014

This is an intermediate undergraduate course for third year students providing general idea on four major concepts of data communications, networking, protocols and standards as well as networking models. Some of the core topics discussed in this class include the data communication component, layers in the OSI model, TCP/IP protocols, network addressing, data and signals, network security, among others. The class involve several homeworks and class exercises.

Reference Text(s)
  1. Data Communications and Networking, 5th ed. (Behrouz A. Fourouzan)