by Kyle Banker
One of the challenges that comes with moving to MongoDB is figuring how to best model your data. While most developers have internalized the rules of thumb for designing schemas for RDBMSs, these rules don't always apply to MongoDB. The simple fact that documents can represent rich, schema-free data structures means that we have a lot of viable alternatives to the standard, normalized, relational model. Not only that, MongoDB has several unique features, such as atomic updates and indexed array keys, that greatly influence the kinds of schemas that make sense. Understandably, this begets good questions: Are foreign keys permissible, or is it better to represent one-to-many relations withing a single document? Are join tables necessary, or is there another technique for building out many-to-many relationships? What level of denormalization is appropriate? How do my data modeling decisions affect the efficiency of updates and queries? In this session, we'll answer these questions and more, provide a number of data modeling rules of thumb, and discuss the tradeoffs of various data modeling strategies.
by Dora Maria Abreu
STEM defined. What is STEM and what you can do to increase the STEM knowledge every where!
by Dan Crosta
Love Django, but hate schema migrations? Need to scale to more than a few gigabytes of data? Tired of flattening your data, only to have your code rebuild the hierarchy? This talk will show you how you can leave JOINs behind and embrace MongoDB for your next Django project. MongoDB's hierarchical document-oriented design makes it a natural fit for web development, and when coupled with Python's easy-going nature, using MongoDB with Django is a breeze. In this talk, learn about MongoDB, the most popular NoSQL database; MongoEngine and friends, the Djangonic MongoDB adapter; and watch as we build a highly-scalable online game before your very eyes.
by Mike Bayer
In this talk I'll walk through some highlights of SQLAlchemy internal design and methodology, based on the upcoming chapter for the "Architecture of Open Source Applications" book. We'll have a little bit of SQLAlchemy philosophy, an overview of the Core, and then a 500-ft view of how the ORM goes about things, with plenty of cool looking diagrams.
by Annina Rüst
I will talk about software as art and software and politics using some of my own art+tech projects. This will be followed by an audience participation segment.
by Alexander Gaudio
This is a two part class aimed at expanding a developer's toolset with both tmux and IPython. In the first half, we will learn about tmux. I will first explain its client-server model and general architecture, compare it to GNU screen, and show some use cases. Then, we will start using it, create a customized profile, and solve a simple distributed computing problem with tmux. In the second half of this class, we will start using IPython. I will first explain what it is and review different use cases. Then, we will start using some basic commands, customize our profile and aliases, integrate python and shell scripting into the same code, and, time permitting, see some of the interactive scientific computing and interactive distributed computing possibilities.
If you have one, bring a laptop with tmux and IPython already installed.
This intermediate-level talk will teach you techniques using the popular NoSQL database MongoDB and the Python library Ming to write maintainable, high-performance, and scalable applications. We will cover everything you need to become an effective Ming/MongoDB developer from basic PyMongo queries to high-level object-document mapping setups in Ming.
by Lukas Blakk
The PyStar program is a workshop designed to teach all women (including trans women) and their friends who are looking to learn how to program in a friendly non-alpha-geek environment. The material on the http://pystar.org/ site was originally developed by the Boston Python Workshop which was held March 4/5, 2011. Currently PyStar events use a mix of badges from the PyStar site and their own curriculum. As this project continues hopefully this site will be a hub of learning materials geared at all levels of Python learners, with a focus on teaching people in a safe and supportive manner.
by Paul Winkler
OpenBlock (http://openblockproject.org) is an open-source (GPL) hyperlocal news website / service built on Django. This talk would be an overview of the project: what it does, how it works, its history and future. And a brief live demo.
by Julie Steele
Have lots of data? Want to turn it into pictures to help you better understand it or explain it to others? This session will address best practices for encoding information through design, and will look at a few ways of doing this in Python.
by Keith Avery
A talk about the uses and implementations of Markov models in Python, with an emphasis on Markov chains. A Markov chain program for generating a language glossary from corpora will be discussed as an example application.
16th–17th September 2011