Open Source Journey
I started using Linux just after the 1.0 kernel was released in 1994 while doing my Master's in Physics. Much of my work consisted of running numerical simulations on IBM AIX machines (called pukrs1 and pukrs6), so being able to have a Unix-like OS on my desktop was, to say the least, mind-blowing. Like most people I started by dual-booting Windows (3.1 at that stage) and Slackware Linux, but completely replaced Windows after a month or so because of Linux's numerous advantages at the time. Some of these advantages included
- Rock solid stability
- Good TCP drivers - FTPing stuf from ftp.sun.ac.za in Stellenbocsh was MUCH faster, and never crashed.
- Free compilers, editors and a gazillion other scientific programs that simply weren't available for Windows. Or they were, but mostly in the form of Linux ports. So for the first time since getting my first computer (a SpectraVideo with MS Basic, followed by an Amstrad CPC-464 later) at age 11 I had as much information on programming as I could digest.
PlPlot
Since I was doing a lot of simulations, I needed to make a lot of standardized, but intricately detailed plots. After trying almost every plotting package I could find listed on SAL, now hosted at http://sal.jyu.fi/index.shtml, and ftp.sunsite.unc.edu, I settled on using PlPlot, now at http://plplot.sourceforge.net/. PlPlot? let me create high quality plots by writing short C programs and print the output on our brand new HP LaserJet? III or the older LaserJet? II.
There was only one problem - the package didn't work with those printers when I found it. Using my newfound self-taught knowledge of C to look at the PlPlot source code and found that it had an HP-GL plotter driver. The LaserJets had an HP-GL emulation mode, though, so with a little bit of HP manual perusing I found the magic control sequences to send to the LaserJet before sending it the HP-GL file. Success!
I contacted the PlPlot developer(s) about this change via e-mail and to my great delight someone responded and eventually accepted my changes in the form of a new printer driver into the PlPlot code. Just as amazing as the discovery of all that great free software was the fact that I could help make it better and share my improvement with others. The ability to give something to help many others without losing anything myself was a wonderful eye-opener to the world of what is now called Open Source software.
This process, when scaled to more and more people, produced software that evolved rapidly in both functionality and quality, as epitomized by the Linux kernel.
yPlot
TBC.
boa web server
TBC
PyOpenSSL
TBC
