What is Snakebite?
Why do we develop open source software on closed networks? Why do open source developers only have access to a fraction of platforms that their software will eventually run on? And why are the buildbots always red?!
Snakebite was created out of a desire to try and address problems like these faced by open source projects.
Snakebite is a network that strives to provide developers of open source projects complete and unrestricted access to as many different platforms, operating systems, architectures, compilers, devices, databases, tools and applications that they may need in order to optimally develop their software.
The idea for Snakebite was conceived by Trent Nelson, a Python committer, after the PyCon 2008 conference in Chicago. Frustrated with some of the limitations of Buildbot and the general difficulties involved in cross-platform development for a platform you don’t have direct access to, Trent envisioned a network of servers specifically geared towards the needs of open source projects.
Trent floated the idea around to a few Python developers and was eventually put in touch with Dr. C. Titus Brown, a newly-appointed associate professor at Michigan State University and prominent figure in the Python community. Titus liked the ideas being proposed by Trent and offered to host a few machines in his science lab. And like that, Snakebite was born.
Fast-forward to 2012: the science-lab-turned-server-room is now home to three racks, two industrial exhaust fans, six portable air-conditioners and jury-rigged ventilation and plumbing system that would make MacGyver proud:
In September 2012, Snakebite reached its first milestone. Over twenty Snakebite build slaves had been set up for the Python project on a wide variety of platforms (AIX, Solaris, HP-UX, IRIX, Windows, FreeBSD, NetBSD, OpenBSD and DragonFlyBSD) and architectures (PA-RISC, Itanium, SPARC, MIPS, x86 and AMD64).
Additionally, infrastructure was built that facilitated direct SSH access to the network for Python committers:
Snakebite needs funding to continue. This will allow Trent to continue working on the network full time. In the short term, the aim is to open up the network to other open source projects.