PyClass: Difference between revisions
Line 43: | Line 43: | ||
# [https://github.com/PyClass/PyClass-lesson-plans/blob/master/1_json_module.md JSON format, Python Types, and the JSON Module] | # [https://github.com/PyClass/PyClass-lesson-plans/blob/master/1_json_module.md JSON format, Python Types, and the JSON Module] | ||
# [https://github.com/PyClass/PyClass-lesson-plans/blob/master/5_control_statements.md Control Flow and Exceptions] | # [https://github.com/PyClass/PyClass-lesson-plans/blob/master/5_control_statements.md Control Flow and Exceptions] | ||
# [https://github.com/PyClass/PyClass-lesson-plans/blob/master/3_functional_and_control.md | # [https://github.com/PyClass/PyClass-lesson-plans/blob/master/3_functional_and_control.md itertools, and Functional Programming] | ||
# [https://github.com/PyClass/PyClass-lesson-plans/blob/master/4_builtintypes_stringservices.md Built-in Types and String Services] | # [https://github.com/PyClass/PyClass-lesson-plans/blob/master/4_builtintypes_stringservices.md Built-in Types and String Services] | ||
# | # [https://github.com/PyClass/PyClass-lesson-plans/blob/master/10_rot13.md Coding a module: rot13) ] | ||
# | # [https://github.com/PyClass/PyClass-lesson-plans/blob/master/6_socrata_matplotlib_workshop.md Matplotlib Workshop (using Socrata API ] | ||
# | # [https://github.com/PyClass/PyClass-lesson-plans/blob/master/11_server_side_dev_flask.md Flask - Installfest & Basics] | ||
# | # [https://github.com/PyClass/PyClass-lesson-plans/blob/master/9_numbers.md Working with numbers in Python) ] | ||
# | # [https://github.com/PyClass/PyClass-lesson-plans/blob/master/13_games.md Programming Mastermind (the game] | ||
# | # [https://github.com/PyClass/PyClass-lesson-plans/blob/master/14_unittest.md Unit Testing and Python's unittest Module] | ||
# | # [https://github.com/PyClass/PyClass-lesson-plans/blob/master/15_classy_OOP.md OOP in Python] | ||
# | # [https://github.com/PyClass/PyClass-lesson-plans/blob/master/16_keywords_and_control_flow.md Keywords & Control Flow] | ||
# [https://github.com/PyClass/PyClass-lesson-plans/blob/master/17_polygon_abstraction.md Project: Calculate Angles of a Polygon] | |||
# [https://github.com/PyClass/PyClass-lesson-plans/blob/master/18_unittesting_more.md Project: Unit testing our projects ] | |||
# [https://github.com/PyClass/PyClass-lesson-plans/blob/master/12_functions.md Functions] | |||
# [https://github.com/PyClass/PyClass-lesson-plans/blob/master/2_git_module.md Git - incomplete] | |||
# [https://github.com/PyClass/PyClass-lesson-plans/blob/master/3_functional_and_control.md) Functional Programming in Python] | |||
# [https://github.com/PyClass/PyClass-lesson-plans/blob/master/7_built-ins_and_idioms.md Some Idioms for Python Builtins] | |||
== OS / Environment / Versions == | == OS / Environment / Versions == |
Revision as of 20:18, 22 October 2014
PSAs and Events
PSA 8-19-14: The noisebridge wiki and github readme files now have parity to each other.
PSA 8-16-14: The new curriculum for the Noisebridge PyClass is a crash course in the Python standard library, also touching on modules that are popular but not quite part of the standard modules. Scroll down to see the course list.
Scheduled Weekly Meeting Times
- Tuesday 7:00 - 9:00 PM PST - 'Turing' Classroom
- Wednesday 7:00 - 9:00 PM PST - 'Church' Classroom
Mailing List
Sign up for this to hear updates and conversations regarding the course!
Class Description, Goals, and Ideal Student
The pace of the courses will be fast, and the materials will be available online 24/7. We plan to frequently repeat modules with new twists as we iterate over course materials.
A major PyClass is to break down the courses into independent units. In other words, you won't fall behind if you miss a week. Sounds good, right?
To best experience the course, spend a short time reviewing the course materials before you come in. If you wish to know this week's courses, please join the mailing list and send an email out to PyClass@googlegroups.com
The ideal student for this course can grasp the following code (feel free to use web resources to look up anything you don't understand):
<source lang="python">
word_frequency_dict = {} word = "noisebridge"
for letter in word:
times = word_frequency_dict.get(letter, 0) times += 1 word_frequency_dict[letter] = times
</source>
Course List
The order of the following courses has not yet been determined.
Please ask on the mailing list if you want to know what courses are coming this week!
- JSON format, Python Types, and the JSON Module
- Control Flow and Exceptions
- itertools, and Functional Programming
- Built-in Types and String Services
- Coding a module: rot13)
- Matplotlib Workshop (using Socrata API
- Flask - Installfest & Basics
- Working with numbers in Python)
- Programming Mastermind (the game
- Unit Testing and Python's unittest Module
- OOP in Python
- Keywords & Control Flow
- Project: Calculate Angles of a Polygon
- Project: Unit testing our projects
- Functions
- Git - incomplete
- Functional Programming in Python
- Some Idioms for Python Builtins
OS / Environment / Versions
This section is under development.
For the sake of our sanity we use Python 2.7.1+ for this course.
Emergency Python Command Line: http://repl.it/languages/Python
Installing Python with The Hitchhiker’s Guide to Python!
We accept refugees using all operating systems. You will be politely prodded in the direction of solutions that are closer to posix standards: http://en.wikipedia.org/wiki/POSIX#Mostly_POSIX-compliant
Emergency Python Command Line: http://repl.it/languages/Python
Some routes:
- Install a linux virtual machine on another computer using virtualbox.
- Use the command line in your apple machine.
- Explore POSIX for windows: http://en.wikipedia.org/wiki/POSIX#POSIX_for_Windows
Another critical tool is git:
- Windows: http://git-scm.com/download/win
- Mac: http://git-scm.com/download/mac
- Linux: (use your package manager)
Legacy Materials 2011-2014 (Liz & Kellan's Class)
The following material is old material from Kellan and Liz's long-running PyClass:
Come learn Python!!
See our awesome website for both PyClasses at Noisebridge Learning Python
After 9pm Tuesdays, we'll have open hacking time and time for questions for those that are kicking so much ass they just can't go home yet, or even for those that may have gone to Mondays' Front-end Web Development class and want to come back for more. If you have problems from work or home, feel free to bring them after 9 and everyone can help each other.
Semi-Official Intro to Python Class Texts
- Think Python: How to Think Like a Computer Scientist
- Learn Python The Hard Way - A good introductory text with lots of exercises written by prolific programmer Zed Shaw
- PEP 8 -- The highly recommended Style Guide for Python Code
Other Intro to Python Texts
- A Byte of Python
- Learn Python - Free Interactive Python Tutorial
- How to Think Like a Computer Scientist: Learning with Python 2nd Edition
- The Python Tutorial - written by Guido van Rossum, creator of the Python programming language
- Python 2.x.x Documentation download - Contains Python Tutorial & other docs in various readable formats
PyClass Githubs
- PyClass Organization
- Invent with Python Textbook Code <404 Error>
- https://github.com/noisebridge/Intro-Python / Kellan Jacobs Notes
- https://github.com/noisebridge/web2py-noiselist
- https://github.com/noisebridge/flask-noiselist / E Leddy
- https://github.com/tachang/django_noiselist
[Old] Class Slides
Other Helpful PyClass links
- Main Python.org site
- Python in a Nutshell - an older but handy reference
- Pygame
- Invent Your Own Computer Games with Python - written by Noisebridger Al Sweigart, free to download here or here