Resume: Ian Bicking

Objective

I want to do my best work.  That means finding a place where:

Skills

With ten years of experience in a variety of situations and working with many systems and environments, a complete list of skills is difficult.  Some particular skills:

Python: my primary programming language, I have used it for a wide variety of tasks and I have written many popular open source libraries.

Javascript: while seldom the primary language for projects, I have considerable experience, and don't shy away or avoid Javascript.

HTML: though I am not a designer, I have considerable experience with parsing, scraping, and manipulating HTML (exemplified in lxml.html and Deliverance).

HTTP: I've read the HTTP/1.1 spec multiple times and in WebOb and other libraries have encoded that knowledge in libraries.  This gives me a strong basis for REST, WebDAV, and other HTTP-based technologies.

Google App Engine: I have produced libraries for App Engine, my code is included in App Engine (WebOb), and I have written code that is included in the base system (httplib).

PHP: though not a preferred language, I have read and modified PHP applications in many situations when it was the appropriate or most expedient solution to a problem.

Experience

August 2006 - January 2010. Senior Developer, The Open Planning Project, New York.

Projects have included:

November 2003 - July 2006. Senior Programmer, Imaginary Landscape Web Design, Chicago IL.

Reporting directly to the company partners, my duties and initiatives have included the following:

July 2000 - November 2003, Independent Consultant, Chicago IL
Working for a variety of clients on web development projects, both subcontracting and direct consulting. Typical jobs have included both design and implementation, starting from defining requirements and continuing through maintenance.

August 2000 - January 2002. Programmer, Fitzroy Dearborn Publishers, Chicago IL (In 2002 Fitzroy Dearborn was acquired by another publisher and dissolved)

October 2000 - January 2001, Programmer, Norphans.com, Chicago IL
Programming and web page design for online toy company, using PHP and MySQL.
November 1999 - April 2000, Distributed Support Services Consultant, Northwestern University, IL
Provided phone and on-site support for faculty and staff.
June-August 1999, Computer Instructor, Bloomington Public Schools, MN.
Designed and led a class in web design for students, grades 5-8. Led adult volunteers. Supervised computer use in after-school program.

Open Source Projects

Work products

(I still need to compile a list of products and projects implemented at The Open Planning Project)

Major products and projects implemented at Imaginary Landscape:

Presentations

Talks

Some talks and presentations I've given:

Misc. Presentations

Testing with py.test (a unit testing framework).

Packaging with Setuptools, a quick introduction to a packaging system.

SQLObject and Database Programming in Python

One Laptop Per Child - an overview of the project, given at UniForum Chicago

There's some other stuff in my Subversion home directory.

DjangoCon 2009 Keynote

Towards A New Self-Definition Of Open Source

PyCon 2010

Not yet presented, but I am again an invited speaker, and will be speaking on The Subject Of Source Code

From PyCon 2009

Invited talk: Topics of Interest

From PyCon 2008

HTML Processing in Python (slides not available, but there is a retrospective post, a post on HTML accessibility, and most substantive a post on HTML parser performance)

PloneConf 2008

Using Deliverance To Theme A Website

From PyCon 2007

WSGI: a series of tubes

From PyCon 2006

Building Pluggable Software with Eggs

All about web programming (except programming). Steve Holden wrote up a summary as well.

SQL-API, a lightning talk about the SQL-API project.

From PyCon 2005

WSGI Middleware and WSGIKit; my main presentation. WSGIKit was renamed to Paste.

Why Web Programming Matters Most (which I didn't get to present, but then posted about on my blog)

A Simple Metaclass (which also became a post)

From PyCon 2004

Dealing with stale code in long-running processes Webware's Shotgun Approach
This is from a lightning talk.  This pattern has been ported from Webware to Paste (by myself), Django, and CherryPy.

PyLogo: the Logo Language implemented in Python
From a lightning talk, a very brief introduction to PyLogo.

From PyCon 2003

The Web Framework Shootout
Out of date, but just for the record.

Education

Earlham College, Richmond IN, 1995-1998
BA, Computer Science and Mathematics