lecture 0 beginning

18
Module 0 : Beginning 1 of 18 1 of 15 Introduction to Computational Thinking Module 0 : Beginning Asst Prof Chi-Wing FU, Philip Office: N4-02c-104 email: cwfu[at]ntu.edu.sg

Upload: alvin567

Post on 12-May-2015

56 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: Lecture 0  beginning

Module 0 : Beginning 1 of 181 of 15

Introduction to

Computational Thinking

Module 0 : Beginning

Asst Prof Chi-Wing FU, Philip

Office: N4-02c-104

email: cwfu[at]ntu.edu.sg

Page 2: Lecture 0  beginning

Module 0 : Beginning 2 of 18

CE1003/CZ1003Introduction to Computational Thinking

Dr FU Chi Wing, Philip

Email: [email protected]

&

Dr Michael Harold Lees

Email: [email protected]

Page 3: Lecture 0  beginning

Module 0 : Beginning 3 of 183 of 15

Course Syllabus

• Computing and Algorithms

• Introduction to Python

• Basic Syntax and Semantics

• Variables, Data types, and Operators

• More on Numbers and Built-in functions

• Flow Control: Selection and Repetition

• Program Development Issues (supplementary)

• Strings and Characters

• Composite types

• User-defined Functions and Modules

• File management

• Exceptions

FU Chi Wing

Michael Lees

Page 4: Lecture 0  beginning

Module 0 : Beginning 4 of 18

Course Structure

• Lectures – around 13 Weeks

– About 26 lectures: 2 Hrs/week (check holidays)

• Tutorials

– 1 Hr/week

– Start from week 3

• Laboratory – 5 Lab Sessions

– 2 Hrs/session [Software Project Lab (N4-b1b-11)]

– Start from week 3 or 4

* Check your OWN lab./tutorial schedule

Page 5: Lecture 0  beginning

Module 0 : Beginning 5 of 18

Course Schedule

Red – Holidays/Recess and Blue – Lectures

Later need a

make-up lecture

due to “Union day”

Page 6: Lecture 0  beginning

Module 0 : Beginning 6 of 18

- Lecture slides, tutorial questions, and lab

questions will be available in Edventure.

- Lecture slides: You can print them out from

Edventure before lectures.

- Tutorial questions: Some tutorials you are

expected to try before, others require group work.

- Lab questions: You are required to do

programming with documentation.

You should start learning how to access Edventure

http://edventure.ntu.edu.sg/

Course Material

Page 7: Lecture 0  beginning

Module 0 : Beginning 7 of 18

Focus on this course

• This is more than a programming course

• Though we talk about and teach Python, but we indeed use Python as a tool

• Rather… We hope that you can learn computational thinking so that you know how to apply computers and

programming as problem solving tools!!!

Problem Algorithm Program

Run onComputational

Thinking

Programming

Page 8: Lecture 0  beginning

Module 0 : Beginning 8 of 18

Learning Outcomes

• Understand how algorithmic solutions may be used to solve numerical and textual problems

• Capture requirements in a methodical fashion and derive an appropriate algorithm

• Implement algorithms using a high-level programming

language

• Be able to understand and use appropriate

file management techniques

• Plan for testing of programs

• Acquire and adopt good programming practice

Page 9: Lecture 0  beginning

Module 0 : Beginning 9 of 18

Our Course Practice

• University Students …

– Be considerate to others: including your

fellow classmates and me

• Switch your phone(s) to quiet mode

• No talking during the lecture

– This is a huge class!

Page 10: Lecture 0  beginning

Module 0 : Beginning 10 of 18

Textbook: CE1003/CZ1003The Practice of Computing using Python

By William Punch and Richard Enbody

Addison-Wesley, 2010 (1st Ed.) and 2012 (2nd Ed.)

Page 11: Lecture 0  beginning

Module 0 : Beginning 11 of 18

Reference Material

– Python Programming: An Introduction to Computer

Science, 2nd Ed., by John Zelle, Pub. Franklin, Beedle & Associates Incorporated, 2010, ISBN-13: 978-1-59028-241-0.

– Practical Programming: An Introduction to Computer Science Using Python, by Jennifer Campbell, Paul Gries,

Jason Montojo, and Greg Wilson, Pub. The Pragmatic Programmers 2009, ISBN-13: 978-1-93435-627-2

– http://en.wikibooks.org/wiki/Python_Programming

– http://www.tutorialspoint.com/python/index.htm

– http://docs.python.org/tutorial/

– http://docs.python.org/py3k/tutorial/

Page 12: Lecture 0  beginning

Module 0 : Beginning 12 of 18

Begins Early

• Good Programming Style!!!– http://en.wikipedia.org/wiki/Programming_style

– http://www.python.org/dev/peps/pep-0008

Program is not just for computer to run, but also for human to readElse… you may find 80% of your programming time for debugging

Page 13: Lecture 0  beginning

Module 0 : Beginning 13 of 18

Assessment

• Assessment

– Examination

– Coursework

• Examination

– Answer All 4 questions

• Coursework

– Quiz x 2 in Labs 3 & 5

– Programming assignment x 2

(a simple looping problem and a simple game)

Page 14: Lecture 0  beginning

Module 0 : Beginning 14 of 18

Academic Honesty

• Unless otherwise noted, worked turned in

should reflect your independent capabilities.

• Plagiarism (Copying of part/complete

assignment) – considered as cheating.

You may be expelled because of it.

• Both source and copier could be penalized.

• A certain system will be used to check

your programs for plagiarism for your lab

submission.

This is a foundation course in CS/CE!!!

Page 15: Lecture 0  beginning

Module 0 : Beginning 15 of 18

How to Study? • Lectures:

– Attend lectures -> learn!

– Read lecture notes

– Read textbook (and reference material)

• Tutorials:

– Work out tutorials; don’t just listen -> learn and practice!

– Try your tutorial questions and verify them

• Labs:

– Work out all lab questions yourself -> practice! practice!

– DO lab assignments yourself (this is an intro course)

Page 16: Lecture 0  beginning

Module 0 : Beginning 16 of 18

Self Study

• No one becomes an expert in 24-26 hours!

• You should understand lectures are to

introduce/refresh material.

• The responsibility lies with you!

• What is necessary vs. good vs. ideal.

• This is the start of the journey – it just begins when

you have finished and passed this exam!

Page 17: Lecture 0  beginning

Module 0 : Beginning 17 of 18

Interaction

• Talk to each other…

• Learning from more experienced students.

– This helps the helper, explaining a concept really makes it clear in your mind

– This helps the helped, they can understand!

– This helps us, distributed learning.

• Learn to deal with others!

– Lab partners, tutorial classes.

• Talk to us and smile at us! We need to know of issues.

Page 18: Lecture 0  beginning

Module 0 : Beginning 18 of 18

Last words

1. Self-motivation

2. Use time wisely

3. Make an effort