-
Notifications
You must be signed in to change notification settings - Fork 2
CYFI Curriculum
Insaida edited this page Jun 29, 2016
·
5 revisions
- Know the basic parts of the computer and their functions
- Intro to the Windows OS and some application software (Paint, Text Editor, Calculator...)
- Introduction to directories (e.g create, save, edit) a file and folders
- Learn how to install and run a software (SublimeText or pycharm and Python will also be installed, also install a fun typing tutor for the typing assignment)
- Explain: "Why SublimeText over Notepad?"(Some tasks can be achieved with different tools from different vendors)
- Learn file editing operations: Save/Save As, Open, New, Print, Close
- Introduction to Microsoft word
- Introduction to the internet (Google, Wikipedia, ...)
- A typing assignment to get students comfortable with typing on the keyboard
- An internet search assignment to get students comfortable with searching the world wide web for information
- Browse www.python.org and read up to your fill
- Recap of previous weekend's work
- Help students with challenges from home tasks
- Complete setting up Python (if need be)
- Meet the command line (Basics: cd, mkdir, ren, copy, del, help)
- Intro to computer programming
- Learn the basic flow of a program (Instructions are executed step-by-step)
- Explain: 'Why Python?' (Name some common programming languages)
- Write your first program: "print ('Hello World')"
- Introduction to Scratch (or Turtle) and implementing a basic flow diagram and playing a game using the drag and drop features on Scratch
- A typing assignment to get students comfortable with typing on the keyboard
- Take home assignment on Scratch (or Turtle)
- Recap of previous weekend's work
- Help students with challenges from home tasks
- Print to stdout (print)
- Introduction data types: strings, numbers, floats, booleans
- Introduction to variables and assignment
- Introduction to operators and operations
- Control: loops and conditionals
- Read from stdin (raw_input, input)
- Write a simple guessing game.
- Play around with the command line: mkdir C:\projects
- Recap of previous weekend's work
- Help students with challenges from home tasks
- 1-2 lightning talk(s) explaining how programming is used
- Data-structures (Part 1): Lists, tuples, dictionaries
- Data-structures (Part 2): Dictionaries, JSON
- Functions
- Modules, imports...
- Exceptions
- OOP, classes and methods
- Highlight different application domains for the Python programming language
- Check for the difference between JSON and dictionaries
- Students will have a week to pick an area of interest in the application of Python
- Recap of previous weekend's work
- Help students with challenges from home tasks
- Students watch inspiring videos of the different things that can be done with Python
- Students are grouped and introduced into their chosen areas of interest
Groups:- Web development
- Data Science
- Internet of Things (IoT)
- Game development
-
- Explain: 'How websites work?'
- Explain: 'Servers vs Clients (Browsers)'
- Explain: 'Database, what it's used for, and how it works'
- Client-side Tools: Intro to HTML, CSS, JS
- Build a web page that will generate a page displaying:
(
Hello, My name is XYZ
XYZ
being the student's name)
-
- This tutorial lets the students tell a story with code. It demonstrates the simple use of if/else statements to evaluate user input and generate a cute fairy story. This is a fun way to get started with Python programming that lets you really use your imagination and storytelling abilities! -Ref (https://www.raspberrypi.org/learning/storytime/) At this point some subtle concepts in data science would be highlighted
-
- In this resource students will explore the virtual world of Minecraft Pi, the special edition of Minecraft made for Raspberry Pi.You will learn how to control the player, manually build with blocks and use the Python interface to manipulate the world around you. -Ref (https://www.raspberrypi.org/learning/getting-started-with-minecraft-pi/)
- Recap of previous weekend's work
- Help students with challenges from home tasks
-
- Intro to the Flask web development framework
- Requests and Response
- View functions
- Template Rendering
- Configuration
-
- Build a flask app that will generate a page displaying:
(
Hello, My name is XYZ
XYZ
being the student's name) - Browse for sqlite database and learn more about it
- Learn about database table, row, relationships
- Build a flask app that will generate a page displaying:
- Learn by building:
-
-Using sensors and output devices is a great way to make computer programs more interactive. The Raspberry Pi Sense HAT contains a whole set of sensors that can be used to detect movement, which will be used in this activity to take a digital pet for a walk. -Ref (https://www.raspberrypi.org/learning/pixel-pet/worksheet/)
- Learn by building:
-