Open Source Developer and Organizer
I believe Open Source collaboration is critical to present day innovation. My passions include Linux, Open Source, and Web Technologies. Some of those I do for my day job, the others I dabble in as hobbies or side projects.
My contribution history to Open Source projects has been varied, both by project and language, over the last 15 years. I am a quick study in new environments, and am always up for learning something new. (Further details can be explored at my Ohloh.net and github.com profiles.)
Hewlett-Packard (Apr 2014 - Present)
Part of HP Cloud Team working on OpenStack upstream. Focus areas include Nova Compute, the Upgrade story in OpenStack, the upstream QA toolchain, the OpenStack API, and overall interoperability between OpenStack implementations.
Created the microversion API approach to provide a discoverable way to evolve OpenStack APIs over time. Helped implement this in Nova, as well as worked with other teams to bring this approach into their projects. Maintained the Created a new approach for API documentation with the os-api-ref effort, that has enabled OpenStack teams to vastly improve the quality of their documentation.
Created plugin interface to Devstack to make it easy for projects to plugin into the Devstack interface for building custom development and test environments. Devstack plugins by OpenStack project teams now nearing 100.
Maintained the Grenade upgrade testing toolkit which ensures basic upgrade hygene in core infrastructure projects. Created a multinode model for running Grenade that allows testing mixed versions of software to simulate a rolling upgrade. Built a plugin interface to allow a wider range of projects to use this infrastructure for upgrade testing. Been one of the strongest advocates for the upgrade story in OpenStack.
Created and ran the OpenStack Bootstrapping Hour, which provided onboarding videos for people diving into OpenStack.
Samsung Research America (Nov 2013 - Apr 2014)
Part of the emerging Open Source Group in Samsung Research America. Focused on OpenStack upstream leadership and collaborating with teams with Samsung Electronics on OpenStack related projects.
International Business Machines (1998 - Nov 2013)
Over 12 years of development and leadership at IBM's Linux Technology Center. Specializing in getting engaged in nascent Open Source projects, and helping projects grow to be sustainable communities. Focus on clustering, virtualization, and cloud technologies across a myriad of language and execution environments. Prior to that I was a developer in IBM's Global Services team specializing in web technologies, and part of the IBM Sydney Olympics 2000 effort.
OpenStack (2012 - present)
First IBMer with code accepted into the OpenStack project. Spear headed the IBM engagement with the OpenStack community moving us from virtually non existant in the Essex Release (Apr 2012), to 7th overall in the Folsom Release (Sept 2012), to 3rd overall in the Grizzly Release (Apr 2013).
Core contributor (having approve or reject authority on patches) on Nova (compute service), Devstack (opinionated installer for developers), and Tempest (integration tests), and a number of smaller efforts.
Project Technical Lead (PTL) for the OpenStack QA Program (Jun 2013 - April 2014). Consistently in the top 20 contributors to OpenStack and top 5 reviewers of code submissions to the project.
Directly lead team of 12 within the LTC in our engagement in the upstream OpenStack project, creating focus areas around QA, Upgradability, and API stability. Consulted and mentored an additional 50 - 100 IBM developers throughout various organizations (Tivoli, Systems Group, Websphere, Software Group Standards, IBM Global Services, IBM Research) in both their OpenStack upstream engagements, as well as their use of OpenStack within IBM products and services.
Worked with large IBM customers (gov and financial) on early stage OpenStack prototypes. Provided support around Nova configurations for POCs.
NFS Ganesha (2010 - 2011)
NFS Ganesha is an alternative user space NFS server, written in C. Led a team to evaluate and harden NFS Ganesha for the IBM Storage products. NFS Ganesha was a very small project with only a couple of contributors, so this effort also required working with the maintainer to restructure the project so that it could become a self sustaining
community. Developed GPFS (IBM parallel filesystem) plugin for the Ganesha project. Orchestrated a very tricky set of re-licensing, requiring local legal team in France, from CeCILL-C to LGPL to allow for production inclusion. Lead team of 4 IBM members to become a key part of the Ganesha community, and attract other organizations into
the fold. Ganesha is now a vibrant Open Source project.
OpenSim (2007 - 2009)
OpenSim is an Open Source implementation of the Second Life protocol written in C#. It can run under .NET or on the Mono environment in Linux. Engaged community at inception (project was < 4 months old) upon direction of an IBM Virtual Worlds Emerging Business Group. Became one of the founding 4 and grew project to a 20 person open source development community. Developed optimization for data store paths to multiple databases. Established internal OpenSim grid to showcase technology within IBM. Developed prototype molecular visualizer with IBM research. Established continuous integration system in the community.
Xen (2005 - 2007)
Led team for building management and other value add extensions to the Xen hypervisor, including innovative copy on write storage layer, physical to virtual migration, and verification system which enabled Xen 3.0 to ship on time with a quality level suitable for IBM. Proposed and led Speed Team project for more tightly integrating Xen with IBM hardware. Development largely done in python.
Carrier Grade Linux Tech Board Member (2004 - 2006)
I was IBM's Technical Representative to the Carrier Grade Linux working group of the OSDL from 2004 - 2006 as an additional part time responsibility on top of my technical role. I took over the Serviceability subsection of the specification and worked to ensure a
vendor neutral specification that could be implemented by Linux vendors.
OpenHPI (2003 - 2005)
Participated in design and implementation of open source implementation of SA Forum Hardware Platform Interface specification (a C shared library that provides hardware control and reporting in an abstract way). Led a cross divisional team within IBM to develop both infrastructure and hardware specific plugins for the OpenHPI project.
SystemImager / OSCAR (2001 - 2003)
Joined LTC in open source clustering and high performance computing. Merged existing IBM LUI open source project with SystemImager (massive Linux cluster installation tool). Extended SystemImager to work on IA64 and PPC platforms. Development largely
done in Perl.
Created installation component of OSCAR, open source HPC in a box project. Developed graphical front end and packaging approach for OSCAR which is still used today in the project.
Founder and President until disposed - MHVLUG (2003 - present)
Created the Mid-Hudson Valley Linux and Open Source Users Group in 2003 to serve as an information sharing resource in the Mid-Hudson Valley. Currently the most active local technical group, drawing 25 - 45 people per monthly meeting. Has provided a platform for other local technical groups, such as the Squidwrench hacker space, to springboard from. Also developed and maintained the Drupal based website used for the group.
Spare Time Hacking
Additional Notable Personal Projects - Active
- node_announce - Drupal Module to send emails out for upcoming events. Written to simplify mhvlug.org management.
- meetup_events - Drupal Module to synchronize events in a Drupal system to Meetup.com site using the Meetup API
- pyhome - (not yet published to github) - home sensor network based on rfxcom receiver and Oregon Scientific sensors. Version 2 rewrite in python designed to run on a raspberry pi.
Additional Notable Personal Projects - Dormant
- icalendar.rb - took over maintainership of icalendar.rb library for 3 years, most active icalendar library for Ruby, helping integrate community patches and fixes. Recently handled project over to another maintainer to ensure longevity of project.
- Where is IO - Android application implementing Astronomical Algorithms to show the location of Jupiter's moons over the next 72 hours to aid with observations. One of the first Astronomy application on the Android market. Now largely defunct due to far more professional programs in the market.
I've been an active public speaker since 2001, presenting at many conferences and technical forums over the years. Beyond the myriad of internal forums I present at, my recent (since 2009) public speaking engagements include:
- Minimal OpenStack - MHVLUG
- Minimal OpenStack - Cloud Open North America
- The Big Tent - A Look at new OpenStack Governance (co presented with Thierry Carez) - OpenStack Liberty Summit
- Juno Summit Update - OpenStack NY Meetup
- "When will then be now?" - Time in Software - MHVLUG
- OpenStack in 10 Minutes with Devstack - Cloud Open North America
- Elastic Recheck - Tools for Finding Race Conditions in OpenStack - OpenStack Juno Summit
- Life as an Open Source Developer - Hudson Valley Tech Meetup
- Software Engineering 2.0 - Invited Lecture at Vassar College as part of the Asprey Lecture Series
- Soup to Nuts: how an idea becomes an OpenStack commit - OpenStack Havana Summit
- OpenStack Overview - Opening of IBM's Wallstreet KVM Center of Excellence
- Deploy KVM in your Datacenter Today - Panel Member at Linux Foundation End User Summit
- Open Cloud in the Enterprise - Panel Member at Linux Foundation End User Summit
- Open Source the OpenStack Way - Cloud Open North America
- Towards an Open Cloud with OpenStack - MHVLUG Meeting
- Getting Involved in Open Source - MHVLUG Meeting
- Introduction to Python - Vassar CS Student Requested Talk
- Distributing the Future, the hows and whys of being a Tech Volunteer - Poughkeepsie Chapter of the ACM
- OpenStack - Panel Member at Open Source Software Institute
- Solar System in your Pocket, and introduction to Android Development - Poughkeepsie Chapter of the ACM
- Building a Community Site with Drupal - MHVLUG Meeting
- Adventures in Android Development - Central PA Open Source Conference
- Git - MHVLUG Meeting
- Open Source Development - Poughkeepsie Chapter of the ACM
- A Decade of IBM's Open Source Involvement - Ohio Linux Fest
- OpenSim - Ohio Linux Fest
- Ruby on Rails - MHVLUG Meeting
- Puppet - MHVLUG Meeting
Master of Science in Computer Science - 2009
Marist College, Poughkeepsie, NY
Bachelor of Arts in Physics - 1998
Wesleyan University, Middletown, CT