SNAPPIX: Aspirin for the neophyte open source developer

by Kevin Shockey

Open source software offers many benefits over traditional proprietary software. However, many of these benefits may be beyond the reach of a majority of people that have the interest and the motivation, but may lack the time and ability to reap the benefits. Thanks to the dedication and unrelenting passion of many contributors around the world, open source software is advancing at a rapid pace. Unless we devise strategies to minimize the ramp-up time required to start learning and using open source software, we risk excluding a large portion of the computing community.

Now perhaps I should clarify this assertion. I think I can best illustrate my point with a story. Earlier this year I was preparing my laptop for an article I was researching. I tried the installation of this particular development language and environment myself several times with no success. I enlisted the help of a good friend and we started making progress. Then after about three weeks and about 40 or so hours of effort invested in the installation process, my Linux filesystem was made read only and I lost all of my time when my only recourse was to reinstall Linux and start over. This would be devastating under any circumstance, but imagine this happening to someone new to the open source project. What do you think their motivation might be like to continue investigation? What do you think their perception of the open source project might be?

Certainly, you could chalk this up to experience and keep pressing forward. I am typically not a glutton for punishment. Fortunately for the greater computing community there are just such people. While they are willing to invest hundreds of hours learning and mastering a new technology. This is not a realistic expectation for most within the greater computing community. I think this goes beyond plain usability. This includes the whole experience itself. What we need are strategies that help soften the dramatic impact to new enthusiasts from the trails and tribulations of installing, configuring, and learning new software. We need to reduce the burden necessary to manage the ever changing software builds and dependencies required for some software to function correctly

This article will present one such strategy, it provides an easy to use alternative for learning about open source software development, with special attention focused on open source Java. With the recent announcement and incubation approval of the Apache Harmony project, many Java developers around the world have a new found curiosity about open source Java. We at the SNAP Development Center believe that we have an alternative to satisfy their curiosity.

A little over a week ago, the SNAP Development Team released SNAPPIX 0.7. SNAPPIX is the first of its kind Linux Live CD focused on easing the tasks necessary to begin learning and using open source Java, Perl, and Python. Future versions of SNAPPIX will also include integration of PHP and Jython. Using SableVM, GNU Classpath, and Jikes SNAPPIX is the first Live Linux distribution with a fully open source implementation of the J2SE standard. This Live Linux CD contains full support of the Eclipse integrated development environment as well as support for the Apache Jakarta Tomcat servlet container. Finally, the CD includes KDevelop with full support for the Perl and Python programming languages.

SNAPPIX inherits from the Knoppix 3.8 release full support for floppy drive and USB Flash drive read and write capabilities. Think of it as a lightweight learning laboratory that you can take anywhere with you. With minimum operating requirements, the Live Linux CD will boot from most modern personal computers. The biggest requirement to use SNAPPIX is the ability to boot from the CD Drive. Once you have booted SNAPPIX from the CD Drive, and assuming your machine has the capacity, you can optionally install SNAPPIX to your hard drive.

So, are you like me? Have you struggled installing, configuring, and never really getting around to learning and using different open source software development tools. Have you wandered lost within the maze of dependent libraries and packages? Have you struggled to figure out how to make and configure the endless supply of libraries to get your tools fully operational? How has this affected your productivity? How has it affected your motivation? Did you continue to feel optimistic banging your head against a configuration issue that remained elusive. Have you also felt that sinking feeling that you get as you finally grokked what was happening with a new library and felt near completion only to discover that there was yet another dependency or new piece of software needed? Would you be interested in an alternative way to get started and stay productive as new releases continually appear? Well, if you have ever felt that way about open source Java, Perl, and Python, then would you consider trying SNAPPIX?

We in the SNAP Development Center believe that SNAPPIX provides a new approach to this problem. By using a Live Linux CD, we remove many of the obstacles that appear when attempting to use open source software development tools. We believe that SNAPPIX ushers into the community a more easy alternative to learning and using these tools. By simply using the latest version of SNAPPIX, an aspiring open source software developer has only to boot from the latest SNAPPIX CD or simply install the latest CD on top of a pre-existing SNAPPIX partition. SNAPPIX eliminates the hours of wasted time trying to install, configure, and maintain the leading open source software development tools. With future plans to add additional tools, more documentation, sample programs, and tutorials, learning to use these tools may never be the same.

To learn more about the SNAPPIX Live CD, please visit the SNAPPIX Product home page at To download the latest release visit our Sourceforge project home page. From the summary page you can download navigate to the latest release by following the links to the files list. From the SNAPPIX package, you can find the SNAPPIX 0.7 "FISL-Brazilzle" release. The release is available as an ISO CD image and as a BitTorrent seed. For information regarding the SNAP Platform please visit the SNAP Platform home page.

What else should we include in SNAPPIX?