This course presents an overview of computer science (CS) with an emphasis on problem-solving and computational thinking through 'coding': computer programming for beginners. Other topics include: organization of hardware, software, and how information is structured on contemporary computing devices. This course is pre-requisite to several introductory core courses in the CS Major. The course is also required for the CS minor. MATH 12500 or higher is strongly recommended as a co-req for intended Majors.

The course has lectures on Tuesday mornings and recitation sections offered throughout the week (you must register both for the lecture and a recitation section).

Course Coordinators:

Tutor/UTA Coordinator:

Lab Hours: There is a dedicated computer laboratory, North 1001E for this course:

Lecture & Recitation Instructors:
Sections: Time:Instructor:E-mail:
LectureT, 11:10-12:25pm, North 118Dr. Katherine St. Johnkatherine stjohn AT hunter cuny edu
Dr. William Sakassakas AT hunter cuny edu
1R01W, 9:45-11am, North 1001E Mr. Jiaxing Tanjtan AT gradcenter cuny edu
1R02M, 11:10am-12:25pm, North 1001E Ms. Katherine Howittkghowitt AT gmail com
1R03M, 1:10-2:25pm, North 1001E Ms. Basak Taylanbtaylan AT gradcenter cuny edu
1R04M, 2:45-4pm, North 1001EMs. Basak Taylanbtaylan AT gradcenter cuny edu
1R05M, 4:10-5:25pm, North 1001EMs. Basak Taylanbtaylan AT gradcenter cuny edu
1R06M, 5:35-6:50pm, North 1001EMs. Basak Taylanbtaylan AT gradcenter cuny edu
1R07M, 7-8:15pm, North 1001EMs. Xiaojie Zhang xz326 AT hunter.cuny.edu
1R08T, 9:45-11am, North 1001EMs. Ekaterina Kistanovaekistanova AT gradcenter cuny edu
1R09T, 12:45-2pm, North 1001EMr. Minh Nguyenmnguyen AT gradcenter cuny edu
1R10T, 2:45-4pm, North 1001E Mr. Gwenael Gattoggatto2 AT gmail com
1R11T, 4:10-5:25pm, North 1001E Mr. Gwenael Gattoggatto2 AT gmail com
1R12Th, 1:10-2:25pm, North 1001E Ms. Katherine Howittkghowitt AT gmail com
1R13Th, 2:45-4pm, North 1001E Ms. Katherine Howittkghowitt AT gmail com
1R14Th, 4:10-5:25pm, North 1001EMr. Xiaoke (Jimmy) Shenjim morris shen AT gmail com
1R15W, 11:10am-12:25pm, North 1001EMr. Jiaxing Tanjtan AT gradcenter cuny edu
HC1RM, 9:45-11am, North 1001EMr. Subhadarshi Panda spanda AT gradcenter cuny edu

Useful Links:

Outline:

 Week:                        Topics:  Handouts:  Quiz Topics:  Reading:
#1 Lecture:
30 January
Syllabus & Class Policies, Introductions,
Introduction to Python: definite loops, simple output, primitive data types, overview of objects & modules;
What is an algorithm?
Syllabus,
Programming Assignments,
Hello, World,
Hexagon example,
Fancier hexagon,
Lecture Notes
Think CS: Chapter 1 & Chapter 4
Recitations:
29-31 January, 1 February
Getting started with Python & IDLE;
Using modules and definite loops
Lab 1 Academic Integrity
#2 Lecture:
6 February
Strings & Lists: looping through strings, console I/O, ASCII representation Loop Puzzle 1,
Loop Puzzles 2,
Caesar Cipher example,
input() example,
Lecture notes
Think CS: Chapter 2 & Chapter 3
Recitations:
5-8 February
String methods; Problem solving and the design process (simple parsing and translating) Lab 2 Loops & Turtles
12 February No Classes: Lincoln's Birthday (observed)
#3 Lecture:
13 February
Files & 2D Arrays, Hexadecimal notation
CS Survey: Prof. William Sakas (computational linguistics)
Slicing Challenges,
Color Challenges, Lecture notes
Think CS: Section 8.10 & Chapter 11,
Numpy tutorial (DataCamp)
Recitations:
13-15,20 February
Arrays and images in numpy, hexadecimal representation of colors (image processing) Lab 3 Strings & Lists
19 February No Classes: Presidents' Day
20 February Classes follow Monday schedule
#4 Lecture:
27 February
More on Lists & Arrays; Decisions;
CS Survey: Citi Bike's Bike Angels Team
Loop & Slice Challenges,
Decision Challenges,
turtleString.py,
Lecture notes
Think CS: Chapter 7 & Chapter 11
Recitations:
21-22,26-27 February
Programming with decisions & files (flood maps) Lab 4 Colors & Images in numpy
#5 Lecture:
6 March
Logical Expressions, Circuits;
Open Data Week
Types & Decisions Challenges,
Logical Operators Challenges,
Basic Gates,
Circuit Challenges,
Lecture notes
Think CS: Chapter 7,
Burch's Logic & Circuits, Explain Logic Gates
Recitations:
28 February, 1,5-6 March
More on Decisions (snow pack);
Circuits & Logical Expressions
Lab 5 Decisions & Color
#6 Lecture:
13 March
Accessing formatted data; Functions
CS Survey: Prof. Katherine St. John (computational biology)
Arithmetic Challenges,
List/String Challenges,
Lecture notes
Think CS: Chapter 6,
10-minutes to Pandas Tutorial,
DataCamp Pandas Tutorial,
Ubuntu Terminal Reference Sheet
Recitations:
7-8,12-13 March
CSV files via pandas (population change);
Shell Scripts
Lab 6 Circuits, Truth Tables, & Logical Expressions
#7 Lecture:
20 March
More on Functions & Open data;
CS Survey: Mitsue Iwata, NYC Open Data Team
Motto Challenge,
quarterImage.py,
Hello with main(),
Prep #1.2,
Total & Tax Challenge,
Lecture notes
Think CS: Chapter 6,
10-minutes to Pandas Tutorial,
DataCamp Pandas Tutorial
Recitations:
14-15,19-20 March
OpenData NYC (shelter data);
Using main() functions;
Python from the command line
Lab 7 Formatted Data & Shell Commands
#8 Lecture:
27 March
Parameters & Functions;
CS Survey: Anna Whitney, Storage Infrastructure Team, Google NYC
Greet Example,
Happy Example,
Jam Example,
Decisions & Functions Example,
Foo example,
Sisters Example,
Lecture notes
Think CS: Chapter 6
Recitations:
21-22, 26-27 March
Binning data (parking tickets);
Top-down design (herd of turtles);
github
Lab 8 Functions & More Pandas
30 March - 6 April Spring Break: No Classes
11 April Classes follow Friday schedule
#9 Lecture:
10 April
Programming with Functions & Decisions, Top-down Design, Code Reuse Dessert Exam Questions,
num2words example,
Koalas,
Lecture notes
Think CS: Chapter 6,
folium tutorial
Recitations:
28-29 March, 9-11 April
Folium/leaflet.js (mapping CUNY locations); Finding errors;
command line git
Lab 9 Parameters & Functions
#10 Lecture:
17 April
Indefinite Loops; Simulations
CS Surveys: Prof. Susan Epstein (machine learning)
Distance Check,
Nums & While,
Max Num,
Search,
Random Walk,
Lecture notes
Think CS: Chapter 8
Recitations:
12,16-18 April
Program design with indefinite loops; Writing functions; unit testing (simple recommender system); Lab 10 More on Functions & Top-down Design
#11 Lecture:
24 April
Machine Language Overview WeMIPS Emulator,
Lecture notes
U Idaho reference sheet, MIPS Wikibooks
Recitations:
19,23-25 April
Simplified machine language Lab 11 Indefinite Loops & Simulations
#12 Lecture:
1 May
Introduction to C++: program structure, data representation and I/O. cin/cout example,
convert example,
loops example,
growth example,
nested loops,
Lecture notes
Cplusplus Tutorial,
C++ Tutorials Point,
The Rook's Guide to C++
Recitations:
26,30 April, 1-2 May
Using gcc Lab 12 Simplified Machine Language
#13 Lecture:
8 May
C++ control structures Decision example (C++),
Logical Expressions (C++),
Input Checking (C++),
Input Checking, II (C++),
Growth Example (C++),
USGS Hawai'i Earthquakes, Turtle Quakes Demo
NYC Urban Forest: Street Trees,
Lecture notes
Cplusplus Tutorial,
C++ Tutorials Point,
The Rook's Guide to C++
Recitations:
3,7-9 May
Control Structures in C++ Lab 13 Introduction to C++
#14 Lecture:
15 May
Review Final Exam Information
Recitations:
10,14-16 May
Review End-of-semester Survey
Tuesday, 22 May 2018
9:00 - 11:00 am
Final Exam
(This file was last modified on 8 May 2018.)