Skip to content

Triangle Python Users Group: TriPython (formerly TriZPUG)

Sections
Personal tools
You are here: Home » Boot Camps » Python Web Programming Workshop 2013

Python Web Programming Workshop 2013

Document Actions
University of North Carolina at Chapel Hill Department of Marine Sciences hosts the inaugural Python Web Programming Workshop. Previously taught as a one semester course at the University of Washington as part of the UW Certificate in Python Programming, this five day workshop emphasizes network-based programming and Web applications, how they work and how to program them in Python. Explore the underlying principles and their expression in the Python libraries. Learn contrasting approaches in creating applications: programming with the low-level libraries versus using highly integrated frameworks.
Noted expert Cris Ewing is your guide to Python web programming.

Register Now!

When and where? • How to register? • What to expect? • What is this workshop? • What will you learn? • What will you build? • What will you need? • Who is your workshop guide? • Who is coming to the workshop?

For more information, please email cris@crisewing.com.

When and Where

  • WHEN: Monday through Friday, August 5-9, 2013
  • WHERE: Classroom 332, Phillips Hall, 120 East Cameron Avenue, The University of North Carolina, Chapel Hill, NC.

This workshop takes place in a state of the art high technology classroom. Wired Ethernet networking and AC power are provided at every seat. A video projection screen monitors the presentation computer at the front of the room. The seating is conference style where you can spread out. Restroom facilities are just down the hall.

Check-in occurs at 8:30am on the first day. Class starts at 9am each following day. Class runs until 5pm each day.

How To Register: Register Now!

Registration schedule:

  • Complete by Friday, June 28 for early bird registration ($275).
  • Complete by Friday, July 19 for regular registration ($300).
  • Complete by Monday, July 29 for late registration ($350).
Classroom 332 Phillips Hall - view from seats.

Classroom 332 Phillips Hall - view from podium.

What To Expect

This one-week course will cover the fundamental concepts of networked programming in Python. You'll learn everything, starting from the protocols that power the internet and the sockets that enable communications between processes and machines, right up to the full-stack frameworks that enable developers to build rich applications efficiently.

Along the way, you'll learn through a combination of lecture and activity. Historical information will be combined with exercises designed to help you learn the Pythonic way to create programs that interact with each-other across networks. Each module will include reading lists for more information and ideas for projects you can use to help cement the lessons you learn after the the class is over.

What This Workshop Is:

The goal of the course is to give students a solid grounding in the fundamental underpinnings of network programming. In addition, you will gain a basic understanding of a broad range of Pythonic tools and learn to choose the right tool for a given task.

What This Workshop Is Not:

There are other training courses available that will teach you a web framework in depth. This is not one of them. You will learn basic usage for the frameworks covered as well as the choices and compromises that shape them.

You Will Learn:

  • The TCP/IP stack
  • The sockets module
  • Communications protocols like SMTP, IMAP and HTTP
  • Network API tools like XML-RPC, SOAP and REST
  • Dynamic network applications using CGI and WSGI
  • Data persistence models including the filesystem, SQL databases and Object Stores
  • Template systems like Jinja2 and Chameleon
  • Framework programming, including Flask, Django and Pyramid

You Will Build:

  • A fully functional, basic HTTP server
  • A "mashup" application combining several online APIs
  • Three iterations of a simple web application using Flask, Django and Pyramid

You Will Need:

Basic Python Programming Skills
This is not a beginning Python course. A basic understanding of the fundamental syntax and structures of Python will be required.
Basic Knowledge of HTML
You should know enough to be able to create a page with headers, lists and forms
Working Knowledge of a Text Editor
You must to be able to create, edit, save and delete files quickly and comfortably
Working Knowledge of the Command Line
You must be able to change directories, run commands and manage files (create, copy and remove)
A Network Enabled Laptop Computer
We will be fetching resources from the network regularly. Wired network access is available in the room, but you will need to be able to troubleshoot any connection issues for your own machine
Python 2.6 or 2.7
Although some of the tools we will cover have been ported to Python 3.x, not all have. We will also use some language features that were introduced in 2.6, so that is the minimum viable version for this class.

Your Workshop Guide

Your workshop guide is Cris Ewing, a prolific open source programmer. Cris Ewing has been working with Python web programming long enough to know where the stumbling blocks and blind spots are. He has managed projects of all sizes, from small community sites to large sites with thousands of pages. Cris has nearly two decades of teaching experience and has delivered lectures, taught courses and mentored students and programming teams across the US, in Mexico and in China. His 14 years of experience as a professional web programmer stretch from static websites and CGI to today's most cutting-edge dynamic web technologies.

Participants

See the participant list updated daily.