Lecture 5: Python - branching and functions

This lecture explains branching statements, how to define functions in Python, and all other important details of functions in Python. Branching in Python Consider the problem that we encountered in the last homework, where we defined a dictionary of people...

Lecture 5: MATLAB - operators, branching, and control statements

This lecture explains some of the most widely used operators, as well as branching statements in MATLAB. MATLAB operators A complete list of MALTAB operators can be found here. Corresponding to each operator, there is also MATLAB function that does...

Quiz 1: Solutions - Version control system

Which of the following Git commands can add all the new and modified-existing files to the staging area? choose all that apply. (A) git add -A (B) git add --A (C) git add -all (D) git add --all (E) git...

Quiz 1: Problems - Version control system

This quiz aims at testing your basic knowledge of Git version control system. Don’t forget to push your answers to your remote repository by the end of quiz time. Push all your answers to quiz/1/ folder in your Github project....

Lecture 4: Python - values, variables, and types

This lecture aims at guiding you to understand the how to of programming, the difference between programming languages and the natural languages, the type of programming errors and the meaning code debugging how to perform simple arithmetic operations on the...

Lecture 4: MATLAB - values, variables, and types

This lecture aims at teaching you the “how to” of programming, the difference between programming languages and the natural languages, the type of programming errors and the meaning code debugging how to perform simple arithmetic operations on the MATLAB command...

Homework 2: Problems - Variables, Values, and Types

♣ Due Date: Thursday 27 @ 10:30 AM. This homework aims at giving you some experience with values, variables, types, and assignments in programming. 1.  Type the following in the command window and submit the results. Briefly explain what each...

Homework 1: Solutions - Version Control Using Git and Github

This is the solution to Homework 1: Problems - Version Control Using Git and Github. <!– The following figure illustrates the grade distribution for this homework. Maximum possible points, excluding bonus questions, is 1. Maximum possible points, including bonus questions,...

Lecture 3: Python for beginners

This lecture aims at providing an introduction to Python programming for beginners, how to install it, different Python distributions available, how to write Jupyter notebooks, and how to perform simple arithmetic operations with Python. Python: a brief history Python was...

Lecture 3: MATLAB for beginners

Goals: This lecture aims at providing an introduction to MATLAB programming for beginners, how to install it, different components of the Graphical Unit Interface of MATLAB, as well as how to perform simple arithmetic operations in MATLAB. MATLAB: a brief...

Lecture 2: Programming history

This lecture aims at providing a brief history of the development of computers and computer programming languages and their mutual interaction with rapid developments in natural sciences in the 20th century. Programming glossary The following table contains some technical programming...

Lecture 1: A professional programmer uses Version Control System (VCS)

This lecture aims at providing a brief review of Version Control Systems, why they are needed, how they work, and the most prominent and popular version control software that is available today for professional collaborative programming. Some useful links for...

Homework 1: Problems - Version Control Using Git and Github

♣ Due Date: One week from the posting date @ 10:30 AM. This homework aims at giving you some experience on how to create Git branches, develop your project on multiple branches, merge them, resolve potential conflicts between different branches...

Announcement 1: Assessing your programming knowledge and interests

The goal of this survey is to assess your prior programming experience and to identify the favorite programming language for this class, as well as the language that your advisor deems essential for your research. Ask Amir to send you...

Announcement 0: Student-professor connection day

On the first day of our class, we will try to get to know each other and I will attempt to describe my research work and educational background for you, as well as what we should expect from this course....