Class 1 what this course is about
1 / 18

Class 1: What this course is about - PowerPoint PPT Presentation

  • Uploaded on

Class 1: What this course is about. Assignments. Reading: Chapter 1, pp 1-33 Do in Class 1: Exercises on pages 13, 14, 22, 28 To hand in in Class 2: Exercises on p 33. In a nutshell. This course is about writing computer programs which solve problems

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about 'Class 1: What this course is about' - marisol-castro

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript


  • Reading: Chapter 1, pp 1-33

  • Do in Class 1:

    • Exercises on pages 13, 14, 22, 28

  • To hand in in Class 2:

    • Exercises on p 33

In a nutshell
In a nutshell

  • This course is about writing computer programs which solve problems

    • First step: ‘grok’ the problem. (Look up the meaning and origin of ‘grok’.)

    • Second step: write the program

    • Third step: make sure the program correctly solves the problem

What is an algorithm
What is an algorithm?

  • An algorithm is an unambiguous, step-by-step procedure for solving a problem

  • A recipe is an example of an algorithm

  • An algorithm provides the design for a computer program

What is a computer language
What is a computer language?

  • A computer language is a notation for writing down algorithms

  • ‘High level’ languages are readable, like natural human languages

  • Computer languages are precise enough to be executed by (unthinking) machines

  • All computer languages are fundamentally equivalent in their expressive power

What is a program
What is a program?

  • A program is a set of instructions written in a computer language

  • A program implements an algorithm

  • A program written in a high-level language may be translated into a low level language (the natural language of a computer)

What is a computer
What is a computer?

  • A computer is a machine that executes programs (unlike a lawn mower)

  • A computer can execute any program (unlike a CD-player)

  • Since computers are Universal Machines, they are all fundamentally equivalent in computing power

How do you write a program
How do you write a program?

  • A computer can execute programs that are tools for creating programs

  • The programmer’s everyday tools are:

    • editor

    • interpreter or compiler

    • debugger

  • A suite of such tools is called an integrated development environment (IDE)

  • We are using the Idle IDE for Python

The editor
The editor

  • An editor is used to write programs

  • Programs are written in plain text

  • The file containing the program in a high-level language is called the source file

  • A Python source file has the extension ‘.py’

The interpreter
The interpreter

  • An interpreter translates from a high-level language to the computer’s language (instruction set)

  • The Python shell interprets line by line.

  • A line of computer code can not be translated and executes unless it is syntactically (grammatically) correct


  • Just because you’ve written some code doesn’t mean you’ve solved your problem.

  • Testing is the process of trying to discover errors in your program.

  • Debugging is the process of fixing errors you discover.

  • (The sentence ‘Colorless green ideas sleep furiously’ is grammatically correct, but what does it mean? Look in up on the Web.)

Panic abatement advice
Panic abatement advice

  • Expect to spend lots of time

    • Programmer wisdom: it always takes longer than you think

  • Expect things to go wrong

    • Murphy’s law of computers: anything that can’t go wrong, will

    • Don’t panic: every bug has a fix

Tips for success
Tips for success

  • Start every assignment early

  • Don’t fall behind

  • Ask if you don’t know

  • Do your own work

Getting help
Getting help

  • Use the online help system

  • Every CA and instructor has office hours

  • Sign up for one of the study/homework sessions (hint: best right after class)

  • Learn to work with a partner or team as well as to tackle problems on your own.


  • Homework (almost every class) 15%

  • Roadmap projects 15%

  • Midterm 1 20%

  • Midterm 2 20%

  • Final 25%

  • Misc 5%

  • All sections have same work and tests

  • Course is graded on a curve


  • Lecture attendance is mandatory (you are asked to sign in). Five absences will lead to withdrawal


  • HWs are handed in paper (hard copy) and electronically

  • No late HWs will be accepted

  • Every HW hard copy must be neatly printed and stapled

  • Every HW must have student name and ID, date, HW # and section #


  • Cheating on an exam will result in failing the course

  • You may discuss HW problems with each other

  • You may not take credit for something you did not do