Classes

CS303 Software development/engineering Fall 2020

Semester: 
Fall

Google classroom

In this course lab, we aim to teach students how the software development cycle works. Our aim is achieved by making students form teams and collaborate to develop an app in a chosen language and framework. This year, we preferred to use javascript language and react native framework to develop mobile apps. Using the help of Github and Google classroom for education, allowed us to work remotely with students to avoid corona virus spreading.

CS428a Pattern Recognition and Machine Learning Spring 2019

Semester: 
Spring

This course is an introduction to the core concepts involved in automated pattern recognition. It is designed to be accessible to newcomers from varied backgrounds. Fundamental concepts of supervised and unsupervised learning are presented. More topics, such as mathematical background, statistical background and image processing are addressed in the course introduction.

References:

https://link.springer.com/book/10.1007%2F978-1-4614-5323-9

Cryptography

Semester: 
Spring

This course explains the inner workings of cryptographic primitives and how to correctly use them. Students will learn how to reason about the security of cryptographic constructions and how to apply this knowledge to real-world applications. The course begins with a detailed discussion of how two parties who have a shared secret key can communicate securely when a powerful adversary eavesdrops and tampers with traffic. We will examine many deployed protocols and analyze mistakes in existing systems.

Computer Graphics

Semester: 
Fall

By the end of computer graphics course, each student will be able to create a 2D /3D animation scene, 2D/3D game, or any graphics content using Java and OpenGLIn short, the goal of this class is to provide you with sufficient background to write computer graphics applications.