SlideShare une entreprise Scribd logo
1  sur  18
Télécharger pour lire hors ligne
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
Module 0 : Beginning 2 of 18
CE1003/CZ1003
Introduction to Computational Thinking
Dr FU Chi Wing, Philip
Email: cwfu@ntu.edu.sg
&
Dr Michael Harold Lees
Email: mhlees@ntu.edu.sg
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
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
Module 0 : Beginning 5 of 18
Course Schedule
Red – Holidays/Recess and Blue – Lectures
Later need a
make-up lecture
due to “Union day”
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
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 on
Computational
Thinking
Programming
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
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!
Module 0 : Beginning 10 of 18
Textbook: CE1003/CZ1003
The Practice of Computing using Python
By William Punch and Richard Enbody
Addison-Wesley, 2010 (1st Ed.) and 2012 (2nd Ed.)
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/
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 read
Else… you may find 80% of your programming time for debugging
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)
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!!!
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)
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!
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.
Module 0 : Beginning 18 of 18
Last words
1. Self-motivation
2. Use time wisely
3. Make an effort

Contenu connexe

Tendances

What is Python? An overview of Python for science.
What is Python? An overview of Python for science.What is Python? An overview of Python for science.
What is Python? An overview of Python for science.Nicholas Pringle
 
Python-00 | Introduction and installing
Python-00 | Introduction and installingPython-00 | Introduction and installing
Python-00 | Introduction and installingMohd Sajjad
 
An Introduction to Python Programming
An Introduction to Python ProgrammingAn Introduction to Python Programming
An Introduction to Python ProgrammingMorteza Zakeri
 
Phython Programming Language
Phython Programming LanguagePhython Programming Language
Phython Programming LanguageR.h. Himel
 
Numeric Data types in Python
Numeric Data types in PythonNumeric Data types in Python
Numeric Data types in Pythonjyostna bodapati
 
Python Crash Course
Python Crash CoursePython Crash Course
Python Crash CourseHaim Michael
 
11 Unit 1 Chapter 02 Python Fundamentals
11  Unit 1 Chapter 02 Python Fundamentals11  Unit 1 Chapter 02 Python Fundamentals
11 Unit 1 Chapter 02 Python FundamentalsPraveen M Jigajinni
 
Presentation on python data type
Presentation on python data typePresentation on python data type
Presentation on python data typeswati kushwaha
 
Machine Learning Techniques in Python Dissertation - Phdassistance
Machine Learning Techniques in Python Dissertation - PhdassistanceMachine Learning Techniques in Python Dissertation - Phdassistance
Machine Learning Techniques in Python Dissertation - PhdassistancePhD Assistance
 
Summer Training Project On Python Programming
Summer Training Project On Python ProgrammingSummer Training Project On Python Programming
Summer Training Project On Python ProgrammingKAUSHAL KUMAR JHA
 
Python Interview questions 2020
Python Interview questions 2020Python Interview questions 2020
Python Interview questions 2020VigneshVijay21
 

Tendances (20)

What is Python? An overview of Python for science.
What is Python? An overview of Python for science.What is Python? An overview of Python for science.
What is Python? An overview of Python for science.
 
Python45 2
Python45 2Python45 2
Python45 2
 
Python-00 | Introduction and installing
Python-00 | Introduction and installingPython-00 | Introduction and installing
Python-00 | Introduction and installing
 
Python Data Types
Python Data TypesPython Data Types
Python Data Types
 
Unit1 pps
Unit1 ppsUnit1 pps
Unit1 pps
 
An Introduction to Python Programming
An Introduction to Python ProgrammingAn Introduction to Python Programming
An Introduction to Python Programming
 
Phython Programming Language
Phython Programming LanguagePhython Programming Language
Phython Programming Language
 
Programming
ProgrammingProgramming
Programming
 
Obj report
Obj reportObj report
Obj report
 
Python Session - 2
Python Session - 2Python Session - 2
Python Session - 2
 
Python final ppt
Python final pptPython final ppt
Python final ppt
 
Numeric Data types in Python
Numeric Data types in PythonNumeric Data types in Python
Numeric Data types in Python
 
Python Crash Course
Python Crash CoursePython Crash Course
Python Crash Course
 
11 Unit 1 Chapter 02 Python Fundamentals
11  Unit 1 Chapter 02 Python Fundamentals11  Unit 1 Chapter 02 Python Fundamentals
11 Unit 1 Chapter 02 Python Fundamentals
 
Presentation on python data type
Presentation on python data typePresentation on python data type
Presentation on python data type
 
Machine Learning Techniques in Python Dissertation - Phdassistance
Machine Learning Techniques in Python Dissertation - PhdassistanceMachine Learning Techniques in Python Dissertation - Phdassistance
Machine Learning Techniques in Python Dissertation - Phdassistance
 
Summer Training Project On Python Programming
Summer Training Project On Python ProgrammingSummer Training Project On Python Programming
Summer Training Project On Python Programming
 
Lecture 2
Lecture 2Lecture 2
Lecture 2
 
Python Interview questions 2020
Python Interview questions 2020Python Interview questions 2020
Python Interview questions 2020
 
Chapter 03 python libraries
Chapter 03 python librariesChapter 03 python libraries
Chapter 03 python libraries
 

En vedette

Lecture 7 program development issues (supplementary)
Lecture 7  program development issues (supplementary)Lecture 7  program development issues (supplementary)
Lecture 7 program development issues (supplementary)alvin567
 
Play with python lecture 2
Play with python lecture 2Play with python lecture 2
Play with python lecture 2iloveallahsomuch
 
Lecture 6.1 flow control selection
Lecture 6.1  flow control selectionLecture 6.1  flow control selection
Lecture 6.1 flow control selectionalvin567
 
Lecture 6.2 flow control repetition
Lecture 6.2  flow control repetitionLecture 6.2  flow control repetition
Lecture 6.2 flow control repetitionalvin567
 
Lecture 11 file management
Lecture 11  file managementLecture 11  file management
Lecture 11 file managementalvin567
 
Lecture 10 user defined functions and modules
Lecture 10  user defined functions and modulesLecture 10  user defined functions and modules
Lecture 10 user defined functions and modulesalvin567
 
Lecture 5 numbers and built in functions
Lecture 5  numbers and built in functionsLecture 5  numbers and built in functions
Lecture 5 numbers and built in functionsalvin567
 
Lecture 8 strings and characters
Lecture 8  strings and charactersLecture 8  strings and characters
Lecture 8 strings and charactersalvin567
 
Programming for Everybody in Python
Programming for Everybody in PythonProgramming for Everybody in Python
Programming for Everybody in PythonCharles Severance
 
Lecture 1 computing and algorithms
Lecture 1  computing and algorithmsLecture 1  computing and algorithms
Lecture 1 computing and algorithmsalvin567
 
Lecture 12 exceptions
Lecture 12  exceptionsLecture 12  exceptions
Lecture 12 exceptionsalvin567
 
Building the Internet of Things with Raspberry Pi
Building the Internet of Things with Raspberry PiBuilding the Internet of Things with Raspberry Pi
Building the Internet of Things with Raspberry PiNeil Broers
 
Basic concepts for python web development
Basic concepts for python web developmentBasic concepts for python web development
Basic concepts for python web developmentNexSoftsys
 

En vedette (20)

Python 3 Days
Python  3 DaysPython  3 Days
Python 3 Days
 
Lecture 7 program development issues (supplementary)
Lecture 7  program development issues (supplementary)Lecture 7  program development issues (supplementary)
Lecture 7 program development issues (supplementary)
 
Play with python lecture 2
Play with python lecture 2Play with python lecture 2
Play with python lecture 2
 
Lecture 6.1 flow control selection
Lecture 6.1  flow control selectionLecture 6.1  flow control selection
Lecture 6.1 flow control selection
 
Lecture 6.2 flow control repetition
Lecture 6.2  flow control repetitionLecture 6.2  flow control repetition
Lecture 6.2 flow control repetition
 
Python Tutorial
Python TutorialPython Tutorial
Python Tutorial
 
Mba
MbaMba
Mba
 
Lecture 11 file management
Lecture 11  file managementLecture 11  file management
Lecture 11 file management
 
Lecture 10 user defined functions and modules
Lecture 10  user defined functions and modulesLecture 10  user defined functions and modules
Lecture 10 user defined functions and modules
 
Lecture 5 numbers and built in functions
Lecture 5  numbers and built in functionsLecture 5  numbers and built in functions
Lecture 5 numbers and built in functions
 
Lecture 8 strings and characters
Lecture 8  strings and charactersLecture 8  strings and characters
Lecture 8 strings and characters
 
Introduction to WEB HTML, CSS
Introduction to WEB HTML, CSSIntroduction to WEB HTML, CSS
Introduction to WEB HTML, CSS
 
Python GUI Course Summary - 7 Modules
Python GUI Course Summary - 7 ModulesPython GUI Course Summary - 7 Modules
Python GUI Course Summary - 7 Modules
 
Training Google Drive and Hangouts.pptx
Training Google Drive and Hangouts.pptxTraining Google Drive and Hangouts.pptx
Training Google Drive and Hangouts.pptx
 
Python - Lecture 1
Python - Lecture 1Python - Lecture 1
Python - Lecture 1
 
Programming for Everybody in Python
Programming for Everybody in PythonProgramming for Everybody in Python
Programming for Everybody in Python
 
Lecture 1 computing and algorithms
Lecture 1  computing and algorithmsLecture 1  computing and algorithms
Lecture 1 computing and algorithms
 
Lecture 12 exceptions
Lecture 12  exceptionsLecture 12  exceptions
Lecture 12 exceptions
 
Building the Internet of Things with Raspberry Pi
Building the Internet of Things with Raspberry PiBuilding the Internet of Things with Raspberry Pi
Building the Internet of Things with Raspberry Pi
 
Basic concepts for python web development
Basic concepts for python web developmentBasic concepts for python web development
Basic concepts for python web development
 

Similaire à Lecture 0 beginning

Intro-InstallingTool-FirstProgram
Intro-InstallingTool-FirstProgramIntro-InstallingTool-FirstProgram
Intro-InstallingTool-FirstProgramssusere19c741
 
Introduction.pptx
Introduction.pptxIntroduction.pptx
Introduction.pptxSamar954063
 
2CPP01 - Intro to Module
2CPP01 - Intro to Module2CPP01 - Intro to Module
2CPP01 - Intro to ModuleMichael Heron
 
1-Lec - Introduction and Course Objectives.ppt
1-Lec - Introduction and Course Objectives.ppt1-Lec - Introduction and Course Objectives.ppt
1-Lec - Introduction and Course Objectives.pptAqeelAbbas51
 
Learn to Code with MIT App Inventor ( PDFDrive ).pdf
Learn to Code with MIT App Inventor ( PDFDrive ).pdfLearn to Code with MIT App Inventor ( PDFDrive ).pdf
Learn to Code with MIT App Inventor ( PDFDrive ).pdfNemoPalleschi
 
Essentials for a Better ICT Student in Palestine
Essentials for a Better ICT Student in PalestineEssentials for a Better ICT Student in Palestine
Essentials for a Better ICT Student in PalestineJafar Hajeer
 
Write code and find a job
Write code and find a jobWrite code and find a job
Write code and find a jobYung-Yu Chen
 
Workplace Simulated Courses - Course Technology Computing Conference
Workplace Simulated Courses - Course Technology Computing ConferenceWorkplace Simulated Courses - Course Technology Computing Conference
Workplace Simulated Courses - Course Technology Computing ConferenceCengage Learning
 
Lecture 1 Chapter 1 Introduction to OR.pdf
Lecture 1 Chapter 1 Introduction to OR.pdfLecture 1 Chapter 1 Introduction to OR.pdf
Lecture 1 Chapter 1 Introduction to OR.pdfVamshi962726
 
Phm 1.1.5(Harman S. Gahir)
Phm 1.1.5(Harman S. Gahir)Phm 1.1.5(Harman S. Gahir)
Phm 1.1.5(Harman S. Gahir)Harman Gahir
 
INTP-362 Course Introduction.pptx
INTP-362 Course Introduction.pptxINTP-362 Course Introduction.pptx
INTP-362 Course Introduction.pptxPrinceBansal40
 
Practical engineering
Practical engineeringPractical engineering
Practical engineeringAshwith Rego
 
Course plan os
Course plan   osCourse plan   os
Course plan osrupalidhir
 
Course plan os
Course plan   osCourse plan   os
Course plan osrupalidhir
 
Course plan os
Course plan   osCourse plan   os
Course plan osrupalidhir
 
Topic1CourseIntroduction.ppt
Topic1CourseIntroduction.pptTopic1CourseIntroduction.ppt
Topic1CourseIntroduction.pptKalsoomTahir2
 

Similaire à Lecture 0 beginning (20)

Intro-InstallingTool-FirstProgram
Intro-InstallingTool-FirstProgramIntro-InstallingTool-FirstProgram
Intro-InstallingTool-FirstProgram
 
Introduction.pptx
Introduction.pptxIntroduction.pptx
Introduction.pptx
 
Lec 01 introduction
Lec 01   introductionLec 01   introduction
Lec 01 introduction
 
2CPP01 - Intro to Module
2CPP01 - Intro to Module2CPP01 - Intro to Module
2CPP01 - Intro to Module
 
1-Lec - Introduction and Course Objectives.ppt
1-Lec - Introduction and Course Objectives.ppt1-Lec - Introduction and Course Objectives.ppt
1-Lec - Introduction and Course Objectives.ppt
 
Learn to Code with MIT App Inventor ( PDFDrive ).pdf
Learn to Code with MIT App Inventor ( PDFDrive ).pdfLearn to Code with MIT App Inventor ( PDFDrive ).pdf
Learn to Code with MIT App Inventor ( PDFDrive ).pdf
 
Essentials for a Better ICT Student in Palestine
Essentials for a Better ICT Student in PalestineEssentials for a Better ICT Student in Palestine
Essentials for a Better ICT Student in Palestine
 
Write code and find a job
Write code and find a jobWrite code and find a job
Write code and find a job
 
Workplace Simulated Courses - Course Technology Computing Conference
Workplace Simulated Courses - Course Technology Computing ConferenceWorkplace Simulated Courses - Course Technology Computing Conference
Workplace Simulated Courses - Course Technology Computing Conference
 
0. CSE205 (3).ppt
0. CSE205 (3).ppt0. CSE205 (3).ppt
0. CSE205 (3).ppt
 
Lecture 1 Chapter 1 Introduction to OR.pdf
Lecture 1 Chapter 1 Introduction to OR.pdfLecture 1 Chapter 1 Introduction to OR.pdf
Lecture 1 Chapter 1 Introduction to OR.pdf
 
Phm 1.1.5(Harman S. Gahir)
Phm 1.1.5(Harman S. Gahir)Phm 1.1.5(Harman S. Gahir)
Phm 1.1.5(Harman S. Gahir)
 
Course plan mp
Course plan   mpCourse plan   mp
Course plan mp
 
INTP-362 Course Introduction.pptx
INTP-362 Course Introduction.pptxINTP-362 Course Introduction.pptx
INTP-362 Course Introduction.pptx
 
Practical engineering
Practical engineeringPractical engineering
Practical engineering
 
Itecn453 lec01
Itecn453 lec01Itecn453 lec01
Itecn453 lec01
 
Course plan os
Course plan   osCourse plan   os
Course plan os
 
Course plan os
Course plan   osCourse plan   os
Course plan os
 
Course plan os
Course plan   osCourse plan   os
Course plan os
 
Topic1CourseIntroduction.ppt
Topic1CourseIntroduction.pptTopic1CourseIntroduction.ppt
Topic1CourseIntroduction.ppt
 

Dernier

Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...amber724300
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsYoss Cohen
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
A Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxA Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxAna-Maria Mihalceanu
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Nikki Chapple
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Nikki Chapple
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sectoritnewsafrica
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integrationmarketing932765
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024TopCSSGallery
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfAarwolf Industries LLC
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...itnewsafrica
 
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...itnewsafrica
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkPixlogix Infotech
 

Dernier (20)

Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platforms
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
A Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxA Glance At The Java Performance Toolbox
A Glance At The Java Performance Toolbox
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdf
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
 
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App Framework
 

Lecture 0 beginning

  • 1. 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
  • 2. Module 0 : Beginning 2 of 18 CE1003/CZ1003 Introduction to Computational Thinking Dr FU Chi Wing, Philip Email: cwfu@ntu.edu.sg & Dr Michael Harold Lees Email: mhlees@ntu.edu.sg
  • 3. 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
  • 4. 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
  • 5. Module 0 : Beginning 5 of 18 Course Schedule Red – Holidays/Recess and Blue – Lectures Later need a make-up lecture due to “Union day”
  • 6. 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
  • 7. 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 on Computational Thinking Programming
  • 8. 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
  • 9. 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!
  • 10. Module 0 : Beginning 10 of 18 Textbook: CE1003/CZ1003 The Practice of Computing using Python By William Punch and Richard Enbody Addison-Wesley, 2010 (1st Ed.) and 2012 (2nd Ed.)
  • 11. 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/
  • 12. 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 read Else… you may find 80% of your programming time for debugging
  • 13. 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)
  • 14. 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!!!
  • 15. 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)
  • 16. 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!
  • 17. 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.
  • 18. Module 0 : Beginning 18 of 18 Last words 1. Self-motivation 2. Use time wisely 3. Make an effort