The content on this page is the work of Professor Glenn Blank.
Be advised that Professor Blank is no longer on the active faculty at Lehigh.
This content continues to be available as a courtesy, but it may not be maintained or current.

CSE 15: Introduction to Computing

Professor: Glenn David Blank           Phone: 758-4867                  E-mail: glenn dot blank at lehigh dot edu
Hours: TTh
3:10-4PM WF 2:10-3PM Office: 328 Packard Lab

Prerequisites: none (that=s right, none!)
Textbook: Glenn D. Blank, Robert F. Barnes and Edwin J. Kay, The Universal Computer:
                A Multimedia Introduction to Computer Science
(McGraw-Hill/Primis, 2003), UC

                Glenn D. Blank, A Multimedia Introduction to C++ (McGraw-Hill/Primis, 2003), C++

              David Barnes and Michael Kölling, Objects First With Java (first chapter), Java


Homework/programming assignments/project:                                              45%
6-weeks & final exam:                                                                                          15% and 30%

Class attendance, quizzes and participation (lectures and labs):                 10%

Extra credit in assignments


  Date          Topic                                                                                                 Reading; assignments (tentative due dates)

M 8/25    Objectives; syllabus;

W 8/27   Turing machines, virtual machines                                                   Read UC chapter 1

Lab         Introducing the Universal Computer; misconceptions

M 9/1      Bits and bytes                                                                                      Assignment #1 due 9/1 (UC chapter 1)

W 9/3     Problem solving; Knobby’s World                                                   Read UC chapter 2

Lab         Problem solving; Knobby’s World                                                  

M 9/8      Programming language syntax, interpreters and compilers           Read UC chapter 3

W 9/10   Simple C++ programs                                                                          Read C++ chapter 11, sections 1-2

Lab         Programming languages, A Taste of C++ (Hello, World)              Assignment #2 due 9/8 (UC chapter 2)

M 9/15    C++ arithmetic, characters, program structure                                Read C++ chapter 11, sections 3-5

W 9/17   Objects and classes in Java                                                               Read Java, chapter 1, sections 1-10

Lab         Finish A Taste of C++, Objects and classes (in Java)                   Assignment #3 due 9/19 (UC 3 & C++ 11)

M 9/22    Classes in C++ (Abstract Data Types)                                             Read C++ chapter 12, sections 1 and 2

W 9/24   LOOKOUT class library                                                                      Read C++ chapter 12, section 3

Lab         Classes: an outside look                                                                     Assignment #4 due 9/29 (Java 1, C++ 12)

M 9/29    Software life cycle (and review)                                                         Read UC chapter 4, sections 1-2                                                      

W 10/1   6-weeks exam, in class                                                                        UC chapters 1-4.2, C++ chapters 11-12

Lab         Software engineering, pair programming & debugging                                                                

M 10/6    Software engineering methodologies                                               Read rest of UC chapter 4

W 10/8   Boolean expressions and control structures                                   Read C++ chapter 13, sections 1-3

Lab         Loops                                                    

M 10/13 No class (Friday classes meet)                                                           Assignment #5 due 10/16 (UC 4 & C++ 13)

W 10/15 Getting loops right                                                                               Read rest of C++ chapter 13

M 10/20 Peeling the onion: computer architecture                                         Read UC chapter 5

Lab         Architecture; functions control & syntax                       

W 10/22 Function control, return types & scope of variables                     Read C++ chapter 14, sections 1-4

M 10/27 Parameters and prototypes                                                                 Read rest of C++ chapter 14

Lab         Function parameters & prototypes; operating systems                Assignment #6 due 10/30 (UC 5 & C++ 14)

W 10/29 Operating systems                                                                               Read UC chapter 6, sections 1-4

M 11/3    Networks and security                                                                        Read rest of UC chapter 6

Lab         Networks; strings

W 11/5   Strings and subscripts                                                                        Read C++ chapter 15, section 1

M 11/10  Arrays                                                                                                    Read rest of C++ chapter 15

Lab         Arrays, sorting and searching, algorithms                                      Assignment #7 due 11/14 (UC  6-7 & C++ 15)

W 11/12 Algorithms                                                                                            Read UC chapter 7

M 11/17 Implementing classes (an inside look)                                              Read UC chapter 16, section 1

Lab         Usability and HTML; Classes: an inside look

W 11/19 User interface and web design                                                           Read UC chapter 8

M 11/24 Social, ethical and professional issues                                             Read UC chapter 9

Lab         Flash animation and Actionscript; Social and ethical issues

M 12/1    Artificial intelligence                                                                           Read UC chapter 10

W 12/3   Wrap-up and review                                                                            Assignment #8 due 12/5 (UC  8-10 & C++ 16)