The Front Range Pythoneers is an active Python users group in Boulder, Colorado, USA.
We hold a regular monthly meeting every third Wednesday. But perhaps the best part about our group is that we don't just talk about how to use Python, we also do things together. We share our stories on what works and what doesn't at our meetings. Our presentations often have a hands-on component. And to truly make it hands-on, we sprint together often, usually the first Saturday. (At some point, we would like to make that every month too.)
Earlier this year we adopted [http://code.djangoproject.com/wiki/OracleBranch Oracle support in Django] as an ongoing project of the FRP and led by Ian Kelly. This branch, which started as a sprint last October, has now been incorporated into the trunk. Other recurring sprint topics include Jython and IPython. The forthcoming sprint on Saturday will combine them together.
Future possibilities include holding an occasional BoulderJam to play with an exciting new technology together, and helping pair mentors with aspiring Pythoneers.
Interested? Intrigued? Feel free to contact the FRP leader, Jim Baker (jbaker AT zyasoft DOT com) or our assistant leader, Matt Boersma (matt AT sprout DOT org).
You can subscribe to our [http://lists.community.tummy.com/mailman/listinfo/frpythoneers mailing list]. We also have a [http://lists.community.tummy.com/pipermail/frpythoneers/ mail archive].
Meetings and Sprints
We just happen to have the friendliest bunch of Python people coming to our meetings. So why not come too?
Date/time: Every 3rd Wednesday, 6-8 PM. Calendars [http://www.google.com/calendar/feeds/frpythoneers%40gmail.com/public/basic XML] [http://www.google.com/calendar/ical/frpythoneers%40gmail.com/public/basic.ics ICAL] [http://www.google.com/calendar/embed?src=frpythoneers%40gmail.com HTML]. Sprints are usually held the 1st Saturday of each month.
Location: [http://www.bivio.biz/ bivio Software, Inc.], 28th and Iris. Above Hair Elite in Suite S. [http://maps.google.com/maps?f=q&hl=en&q=2701+Iris+Ave.,+Boulder+CO&ie=UTF8&z=15&om=1&iwloc=A Google Maps link]
[http://picasaweb.google.com/frpythoneers/ Photos] of selected sprints and meetings.
Meeting: August 22, 2007, 6-8 PM
- Tennessee Leeuwenburg, editor of the Python Papers. Tennessee will discuss Python advocacy and getting them when young through Python in education.
Meeting: Sept 19, 2007, 6-8 PM
Sprint: August 4, 2007, 9 AM - 5:30 PM
A Jython sprint. See BoulderSprint for more details.
Meeting: July 18, 2007, 6-8 PM
We had presentations on three of the leading web frameworks for Python, Django, Turbogears, and a bit on Pylons. We heard from experienced practitioners discuss the pros and cons of these frameworks. Whether you're considering adoption, would like to hear of best practice, or would like to rant about what doesn't work ;), these were a great set of talks.
Ian Kelly on Django. In addition to first introducing Django, and how to do real work with it, he also gave us some insight into contributing to an opensource project. Ian was the lead contributor to the Oracle backend for Django, and in his talk he will lead us through the process of having the BoulderOracle branch of Django committed to the trunk. (This work on the Oracle backend commenced wtih our November 4 sprint.)
Location: [http://www.bivio.biz/ bivio Software, Inc]
Meeting: June 20, 2007, 6-8 PM
Steve Bethard presented on Python and Natural Language Processing: the [http://cslr.colorado.edu/ computational semantics group at the University of Colorado at Boulder] is interested in improving machine understanding of text by moving past the basic word-level approaches used by most commercial applications these days. Whether they're teaching computers how to tell a person from an organization, how to decide what order a set of events occurred in, or how to convert a document into a complex semantic graph, Python plays a key role in the process. Steve will be discussing a number of the uses they've found for Python, including the handling of complex data formats, modularizing their natural language processing components, and the different types of feature extraction they perform when building machine learning models.
Location: [http://www.bivio.biz/ bivio Software, Inc]
Sister Group Events
Unconference Meeting: June 16, 2007
The Front Range Users of Geospatial Open Source is organizing a [http://groups.google.com/group/geosummit/web/geosummit-2007 one-day unconference event] on June 16 in Boulder, Colorado (at Churchill Navigation):
We've already got a great mix of industry leaders, programmers, analysts, and scientists coming together to talk about topics like
- Web mapping APIs
- Spatial databases
- Climatological applications of Google Earth
- Applying the Atom Publishing Protocol to GIS
The event is not only for GIS industry types. We welcome anybody who's innovating on any aspect of geography and location: environment, transportation, geocoding, geocaching, you name it. Python is widely used in both open source and proprietary GIS software, and will certainly be a major theme at the GeoSummit.
(From a message to the FRP mailing list from Sean Gillies.)
Weather research with Python: May 16, 2007, 6-8 PM
"Linux (and Python) at 20,000 Meters Above the Sea". Joe VanAndel, from the National Center for Atmospheric Research (NCAR) will discuss the NCAR/CNES dropsonde project that investigated the hurricane formation zone off the west coast of Africa. NCAR worked with the French Space Agency (CNES) to create and carry a payload that would float west from Africa into the hurricane formation zone. The balloon floated at 20,000 meters and higher, which is above the tropopause, the altitude at which the troposphere (where most of our weather takes place) gives way to the stratosphere. The gondola consisted of a single-board Linux system and batteries well-insulated from the cold, with an array of 24 to 40 dropsondes beneath it. Each dropsonde was connected to the Linux system, which was able to heat its batteries (the atmosphere is -70 degrees C up there) and drop the sonde on command. He will present an introduction to the driftsonde project, and then discuss how Linux was used in the on-board gondola computer and explain how using the Python programming language facilitated reprogramming the gondola in the middle of a flight.
Bio: Joe VanAndel graduated from Calvin College in 1978 with a double major of mathematics and physics. He attended University of California at Berkeley where he obtained a master's degree in Computer Science. After working 3 years at Bell Laboratories in real-time operating systems, he worked for 5 years at Cadnetix Corporation, a supplier of computer aided design tools. Since 1988, he has worked at NCAR, working with weather radars and more recently with the driftsonde project.
- Mary Haley will present "Python Frameworks for Geoscience Visualization and Analysis". PyNGL and PyNIO are Python interfaces to a widely popular software package called the NCAR Command Language (NCL), a scripting language developed at the National Center for Atmospheric Research (NCAR) for the access, analysis, and high-quality quantitative visualization of geoscientific data. NCL has had a significant impact on scientific research worldwide. Mary will briefly discuss NCL’s history, and then segue into why Python was chosen for developing the next generation framework tools for file input/output, analysis and visualization. She will show an animation from a new high resolution Community Climate System Model (CCSM) run computed on a T341 grid (1024 points in longitude by 512 points in latitude) that was created using our Python interfaces to NCL and other post production utilities.
There will be a focus on some of the current projects we are working on: adding support for new scientific data formats, developing interfaces to a suite of specialized climate analysis-related functions (that need to deal with missing data), and handling large files. On the less scientific side, there will be a quick mention of issues NCAR has with supporting both Numeric and NumPy users, dealing with different versions of Python, building on multiple computer platforms, and finally, training users on this software.
IPython1 Sprint: April 28, 2007
[http://ipython.scipy.org/moin/Developer_Zone/Sprint IPython1 Beta]. This would be an excellent opportunity to learn about decorators, Twisted, and other advanced Python concepts while helping getting this shell to beta status.
Location: [http://www.bivio.biz/ bivio Software, Inc.]., 28th and Iris. Above Hair Elite in Suite S. [http://maps.google.com/maps?f=q&hl=en&q=2701+Iris+Ave.,+Boulder+CO&ie=UTF8&z=15&om=1&iwloc=A Google Maps link]
- Brian Granger
- Cary Miller
- Eric Dobbs
- Fernando Perez
- Ian Kelly
- Jim Baker
- Justin Larrabee
- Ken Kinder
- Kip Lehman
- Matt Boersma
- Robert Kern
- Steve Rogers
- Benjamin Ragan-Kelley, sprinting over IRC from Santa Clara, CA
- Brian Rosner
Meeting: April 18, 2007, 6-8 PM
Location: [http://www.bivio.biz/ bivio Software, Inc.]
Discover [http://oubiwann.blogspot.com/2007/03/python-will-rule-world.html how Python will rule the world]. In a good way, of course! Matt Boersma presented a short introduction to the One Laptop per Child project, and then allowed people to play with the [http://en.wikipedia.org/wiki/One_Laptop_per_Child green XO laptop] at their leisure. He also led us through installing and using it our own laptops. The foundation of this project is Sugar, which is programmed in Python. As local Pythoneer DuncanMcGreggor [http://oubiwann.blogspot.com/2007/03/python-will-rule-world.html points out], there's an amazing potential in children discovering the "mutability of [their] universe]" and "view source", whether it was in Basic for a certain generation, on the web, or now in the OLPC effort.
Lightning talks on testing. In an influential article, Bruce Eckel advocated for [http://www.mindview.net/WebLog/log-0025 strong testing instead of strong (declarative) typing]. What are you doing to test your Python code? And how does that fit into a test-driven culture? At the last meeting, there was a strong interest in anecdotes, so please feel free to share, with slides, at the white board, or just in informal discussion.
BoulderSprint. The next sprint will be Saturday, April 28 on the [http://ipython.scipy.org/moin/Developer_Zone/Sprint IPython1 Beta]. Fernando Perez and Brian Granger will be coaching. This would be an excellent opportunity to learn about decorators, Twisted, distributed unit testing, and other advanced Python concepts while helping getting this amazing shell to beta status.
Meeting: March 21, 2007, 6-8 PM
Matt Boersma presented "Write Less Code with XRC for wxPython": an easier way to do GUI layout using wxPython's XML-based resource system. [http://us.pycon.org/common/talkdata/PyCon2007/079/xrc4wxpy.tgz Slides , demo code, and useful base classes].
Sean Reifschneider presented "Python and vim: Two great tastes that go great together". The vim editor includes extensive abilities for customization and scripting. In addition to its own simple macro language, vim also supports calling Python code. This Python code has access back into vim for manipulating the edit buffer as well as running normal vim commands. Examples demonstrated in this talk will include automatically detecting indentation style (tabs/N spaces), automatic update of DNS "serial" numbers when editing DNS zone files, mail alias tab-expansion, and a time tracking application using a "domain specific vim" as the user interface. [http://www.tummy.com/Community/Presentations/ Slides]
PyCon: February 23-25, 2007
Matt Boersma. Presented [http://us.pycon.org/common/talkdata/PyCon2007/079/xrc4wxpy.tgz Write Less Code with XRC for wxPython]
- Eric Dobbs. Sprinted on Jython.
Brian Granger. Presented [http://us.pycon.org/common/talkdata/PyCon2007/061/ipython1_pycon_2007.pdf Interactive Parallel and Distributed Computing with IPython] and [http://us.pycon.org/common/talkdata/PyCon2007/058/ipython_pycon_2007.pdf IPython: getting the most out of working interactively in Python]
- Evelyn Mitchell
Sean Reifschneider. Presented [http://www.tummy.com/Community/Presentations/ Python and vim: Two great tastes that go great together]. And he [http://www.tummy.com/journals/entries/jafo_20070315_154951 ran the network]!
Jim Baker. Presented [http://us.pycon.org/common/talkdata/PyCon2007/028/IteratorsInActionWithNotes.pdf Iterators in Action]. Sprinted on Jython.
- Michelle Cyr
Audio and other presentation materials can be found [http://us.pycon.org/apps07/schedule/ here].
Meeting: February 21, 2007
Location: [http://www.bivio.biz/ bivio Software, Inc.]
Fernando Perez presented his joint talk with Brian Granger (not present), "IPython: Getting the most out of working interactively in Python": IPython (if you do not know it yet) is an enhanced interactive shell for Python. It provides a large number of features not found in the default shell that make interactive work in Python more seamless and convenient. [http://us.pycon.org/common/talkdata/PyCon2007/058/ipython_pycon_2007.pdf Slides].
Jim Baker presented "Iterators in Action": Using iterators well can make your code lean and your programming fun. We will distill current best practice by investigating some (mostly) useful examples of iterators in action. With the help of itertools and various cookbook recipes, we'll look at such examples as computing Six Sigma stats, parsing/collating lots of log files, and performing fast prefix lookups of the data your users most want to see (assuming you have a good relevancy scorer, of course). We will even see why Raymond Hettinger must say no so often [http://us.pycon.org/common/talkdata/PyCon2007/028/IteratorsInActionWithNotes.pdf Slides].
Other items we talked about:
- Google Summer of Code. One of our missions is to mentor Pythoneers. Does it make sense to add a local component to GSoC 2007 that could take advantage of the universities here?
Sprint: February 3, 2007
Location: [http://www.bivio.biz/ bivio Software, Inc.].
Meeting: January 17, 2007
Location: [http://www.churchillnavigation.com Churchill Navigation].
Topics and people attending include the following:
BoulderSprint. We had a great JythonSprint, focusing on design. Momentum is really building, Jython might actually get the love that Charles Oliver Nutter of !JRuby proposed. More interestingly, there's a chance for people in the dynamic language community to work together on JVM implementations.
Tom Churchill and Vinny Fiano will demo Churchill Navigation's earth-rendering engine (which looks like Google Earth, only apparently even better and faster ). Vinny (their main Python guy) will explain how they built the glue logic (and why they decided against SWIG) and perhaps some of the implications of using Python as a scripting language in a real-time (60 fps) environment, and the techniques we employed to keep the graphics pipeline from stalling when making an expensive call into their engine from Python.
Brian Granger from [http://txcorp.com/ Tech-X] will help us think more deeply about concurrent Python programming, especially as seen in a new version of [http://ipython.scipy.org/moin/IPython1 IPython]. [http://us.pycon.org/common/talkdata/PyCon2007/061/ipython1_pycon_2007.pdf Slides].
Sprint: January 6, 2007
JythonSprint. We talked about rethinking the existing compiler to converge on !CPython 2.5/trunk.
Meeting: December 20, 2006
Canceled! We were going to plan the JythonSprint and see some demos. But a blizzard intervened. Fortunately, we should be able to do all of that instead in January.
Meeting: November 15, 2006
This was a fun meeting! Even if Jill's has increasingly been high decibel. But we really can't complain about the success of our venue.
Steve Rogers showed up for his first meeting with us. He credits seeing the [http://zyasoft.com/pythoneering/ Pythoneering blog], now that it's included in the [http://www.pythonware.com/daily/index.htm Daily Python-URL]. It's good to have the visibility. With Steve had just read some of the reports from [http://sc06.supercomputing.org/ Supercomputing 2006], so we talked a lot about parallel computing paradigms in Python, among other things.
Meeting: October 18, 2006
Discussed possible proposals for PyCon2007. The basic consensus was that it was a great idea that for PyCon "we're especially interested in presentations that will teach conference-goers something new and useful." In particular, we all would like to see talks with more useful takeaway code, not just talks saying, hey we are doing great things with Python. Trust us .
Guide to Front Range Pythoneering
Jeffrey Whittaker, contributed this [http://www.scipy.org/Wiki/Cookbook/Matplotlib/Maps plot] to matplotlib for geospatial projections of data.
Yeong-Shang Log, [http://casa.colorado.edu/ CASA], is exploring space with the [http://www.stsci.edu/hst/ Hubble Space Telescope] in [http://www.stsci.edu/resources/software_hardware/pyraf/stsci_python Python].
[http://www.cs.colorado.edu/~martin/ Jim Martin], [http://www.colorado.edu CU Boulder], teaches [http://www.cs.colorado.edu/~martin/csci5582.html Intro to AI] and [http://www.cs.colorado.edu/~martin/csci5832.html Natural Language Processing] in Python. The NLP class uses the [http://nltk.sourceforge.net/ NL toolkit].
[http://www.softwaresummit.com/2005/speakers/smith_mitchell.htm Mitchell Smith] works with Python at [http://www.arraybiopharma.com/ Array Biopharma].
[http://uche.ogbuji.net/ Uche Ogbuji] keeps us honest about XML.
Joe VanAndel, [http://www.ncar.ucar.edu/ NCAR].
[http://www.jim-baker.com Jim Baker], [http://www.zyasoft.com Zyasoft] maintains the [http://zyasoft.com/pythoneering/ FR Pythoneering blog]. He also likes iterators. A [http://www.tummy.com/journals/entries/jafo_20060817_003823 lot]. Jim also co-founded Empact Solutions and [http://www.bizlogix.net BizLogix] and is now at [http://www.bivio.biz bivio Software].
[http://www.tummy.com/journals/users/jafo Sean Reifschneider], [http://www.tummy.com tummy.com, ltd.], maintains many projects, including the [http://www.tummy.com/Community/software/python-memcached/ Python client] to the ever-useful [http://www.danga.com/memcached/ memcached].
[http://www.churchillnavigation.com Churchill Navigation] in Boulder builds high-end navigation systems with a high-level Python interface.
Please help expand this local guide! (Also feel free to remove yourself from this list, if that makes sense personally.)
There are some other great groups in the area that we interact with on a periodic basis. Shared membership helps here!
[http://dim.com/~sms/bsc/ Boulder Software Club]
[http://www.agiledenver.org/ Agile Denver] organizes more formal meetings. [http://agile.meetup.com/24/ Agile Boulder] is a monthly meetup that's taken a lightning talk focus, well worth checking out.
[http://www.boulderjug.org/ Boulder Java Users Group]
[http://boulder.pm.org/ Boulder Perl Mongers]. They don't meet formally often - perhaps 2 or 3 times in the last 6 years? - but doesn't prevent other modes of meeting like hikes and disk golf.
[http://rubyforge.org/projects/bdrg/ Boulder-Denver Ruby Group]
Please add your favorite group here if it seems relevant to local Pythoneering.
We (collectively) are the maintainers of Django's Oracle support. Ian Kelly is the driving force of this support.