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 10+13/14: Introduction to Computing

Professor: Glenn David Blank           Phone: 758-4867                                   Office: 328 Packard Lab
Hours: TWTh
2:45-3:45 PM               E-mail:"glenn dot blank at lehigh dot edu"        http://www.cse.lehigh.edu/~glennb

Prerequisites: none (that=s right, none!)
Textbooks: Glenn D. Blank, Robert F. Barnes and Edwin J. Kay, The Universal Computer:
                       A Multimedia Introduction to Computer Science
, 2002, available only from Prof. Blank.

                    David Barnes and Michael Kölling, Objects First With Java:
                       A Practical Introduction Using BlueJ
, 2002 (first five chapters), from Prof. Blank.
Requirements:

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

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

Note: all students in CSE10 must also be enrolled in a multimedia laboratory, either CSE13 or CSE14.

Syllabus:

  Date          Topic                                                                                                 Reading; assignments (tentative due dates)

Tu 8/27   Objectives; syllabus. What is computing?

Lab         Introducing the Universal Machine; DOS, ftp                               Introducing … the Universal Machine

Th 8/29   Turing machines, virtual machines                                                  The Universal Computer (UC) chapter 1

Tu 9/2     Problem solving                                                                                  UC chapter 2

Lab         Problem solving; Knobby's World                                                  #1 due 9/3: UC chapter 1

Th 9/4     Problem solving; Knobby's World programming                          #2 due 9/8: UC chapter 2

Tu 9/9     Programming languages and their translators                                UC chapter 3

Lab         Objects and classes with BlueJ                                                        Objects First With Java (OF) chapter 1

Th 9/11   Programming languages                                                                    #3 due 9/15: OF chapter 1

Tu 9/17   What is in an object? (state, instance variables)          

Lab         Programming languages and their translators

Th 9/19   Understanding classes                                                                      OF chapter 2

Tu 9/24   Simple Java applications                                                                    UC chapter A.1-A.3

Lab         A Taste of Java                                                                                    #4 due 9/27: OF chap 2, UC chap 3

Th 9/26   Review and continue chapter A                                                       UC chapter A.4-A.5

Tu 10/1    6-weeks exam, in class (416PL)                                                       UC chapters 1-3, A.1-A.5, OF chapters 1-2

Lab         Java arithmetic and character manipulation                                     UC chapter A.6-A.9, A.11

Tu 10/8   The software development life cycle                                               UC chapter 4

Th 10/10 Testing and debugging; extreme programming                              OF chapter 3.12

Lab           Software engineering

Tu 10/15  Abstraction and object interaction                                                  OF chapter 3

Th 10/17  Peeling the onion: computer architecture                                       UC chapter 5

Lab           Computer architecture                                                                       #5 due 10/18: UC chap A and 4, OF chap 3

Tu 10/22  Control structures: boolean expressions                                        UC chapter B.1-B.2

Th 10/24  Control structures: loops                                                                  UC chapter B.3-B.6 (B.7 optional)

Lab           Boolean expressions; loops

Tu 10/29  Collections                                                                                           OF chapter 4

Th 10/31  Arrays                                                                                                  UC chapter C

Lab           CSc13: Applets;  CSc14: Strings and Arrays                                 #6 due 10/31: UC chaps 5 and B

Tu 11/5     Searching and sorting                                                                       UC chapter 6.1

Th 11/7     Analysis of algorithms                                                                      UC chapter 6.2

Lab           Operating systems and networks

Tu 11/12  Operating systems                                                                             UC chapter 7

Th 11/14  Java libraries, documentation and interfaces                                 OF chapter 5

Lab           CSc13: Usability design;  CSc14: C++                                            #7 due 11/15: UC chap C,6-7, OF chap 4

Tu 11/19  Usability and web page design                                                       

Th 11/21  A Taste of C++                                                                                   Universal Machine C++ chapters available

Lab           Social and ethical issues

Tu 11/26  Social and ethical issues                                                                   UC chapter 8

Tu 12/3     Artificial Intelligence                                                                         UC chapter 9

Lab           Artificial Intelligence        

Th 12/5     Wrap-up and review                                                                          #8 due 12/6: UC chap 8-91, OF chap 5