I'm not going to make excuses as to why I haven't updated my blog in the last seven months. No one really wants to know anyhow. :-)
I'm back with a new focus on Java free software. I will be working with Java free software on the job and in other professional level projects, so there will be a lot more free software news coming from me now. I'll write about that at some other time.
Now moving right along...
The pond just got a whole lot bigger for the little folks...
I find Red Hat's leaving the consumer operating system market to concentrate on the enterprise market awesome news for the growth of Linux, but it's a bit sad. It marks the end of an era and the start of a new one for Linux. The most famous Linux distro is leaving its roots behind, maybe not in spirit, but at least in writing. :-)
The interesting thing is, this now leaves room in the consumer market for Mandrake to come back from bankruptcy. Now that the big fish has moved to other waters, suddenly there is a huge market gap to fill.
Of course, Mandrake now has even more competition than before, with Lindows and Xandros also positioning themselves in the consumer Linux market. Lindows goes for the computer newbie, while Xandros goes after the early adopter hardcore gamer that doesn't want to leave Windows games behind, doesn't know how to hack Linux either, they just want to move to this Linux thing because it's the cool new thing. I'm not sure which one has the higher market, but as Mandrake is the closer one to what Red Hat was, it may be the one to gain the top spot. I think Lindows and Xandros are positioning themselves in really narrow niche markets.
As for Fedora, I hope it turns out regular releases that compare in stability to the "old" RH Linux. I also hope it stays a volunteer-run project and doesn't go commercial. The world needs a showcase volunteer-run distro that doesn't require one to be a hard-core Linux hacker.
Disclaimer: I myself use Gentoo and Linux-From-Scratch for my development servers, so I'm not bashing hard-core distros. All I'm saying is that there are a lot more mainstream Linux users than hard-core Linux users, and I'd like Fedora to be there for the mainstream Linux users the way Red Hat's consumer Linux used to.
My best wishes to Red Hat and Fedora in the years ahead.
A little over a month has gone by since my last post. I got swamped with work from my job, and barely had any free time for hacking. Things have been back to normal for a week now.
Here's the summary:
Free Software in Puerto Rico Government
During this last month, the March 12-13 conference promoting broader free software use in the Government of Puerto Rico, was scaled way down in scope, because of lack of financial support. Now that this has passed into history, I am starting to plan a 'real' conference for some undetermined time in the future.
But first, I am exploring commercial sponsorship possibilities from the green-lizard and rouge-thing-on-the-head free-software companies, as well as the two-lettered computer hardware company and the three-lettered computer hardware company.
Mono and Gnome Hacking
I cleaned up some documentation in The Mono Handbook and began adding content to the introductions of the various ECMA standard .NET namespaces.
I am having a blast rewriting Same Gnome in Gtk# and Glade2. I didn't know Gnome2 programming could be so easy! :-) I am documenting my effort, to be included in The Mono Handbook as a case study of Gnome programming in Mono.
After I'm finished with Same Gnome, I'm converting GnomeCalc. :-p
Hacking the Linux kernel
My only solace during this last busy month was reading Understanding the Linux Kernel, Second Edition, during my lunch break and before bedtime. I also located a copy in good condition of Linux Core Kernel Commentary (aka LCKC) with the CD-ROM, which is now out of print. Finding this last book in good condition was a waste of time, because after only a week of use, the spine broke and the pages started coming unbound, which seems to be the fate of all LCKCs in existance. :-/
Good hardware is so cheap these days, I went and built a new spare PC, installed Debian GNU/Linux on it, plus the source of the last three releases of the 2.4 series kernel, some of Con Kolivas' patches and his contest benchmark. I grabbed the last three releases from the 2.5 series kernel as well, to keep track of the latest development. I also have installed LXR cross-references to all this source on my XBox Apache server.
It seems in my overenthusiasm, I misunderstood my invitation to the free software in government conference. I was asked to 'participate', and I assumed that meant that I was asked to speak. More details later.
Hacking Gates, Da Man
I suddenly decided some weekends ago that I needed a new file server, immediately. I didn't want to wait for another pay period to buy it, so it had to be really cheap. I would be the only one using it, so it didn't have to be blindingly fast or powerful. But it had to be adequate for NFS and SAMBA file sharing, and for learning Apache, MySQL, and PHP.
So I bought a used XBox, put in a solderless modchip, bought an 80 GB IDE hard disk, and installed Debian GNU/Linux 3.0 r0 with a modified 2.4.20 kernel on "Da Beast." I did not install X or sound drivers on it, and I've configured it to run headless; if / when I need to, I log in through SSH.
Cost of 733 MHz Pentium III, 64 MB RAM, 80 GB HD Linux file server? $308 US
Rise, Phoenix, from your ashes ...
Now that I have plenty of extra storage space on NFS, I can hack again on my old and long-neglected Sega Dreamcast and Broadband Adapter. :-)
I have a Sega Dreamcast with Broadband Adapter, which I bought in February 2001, to hack around with game programming on KOS. It was not getting a lot of play time lately, so I looked into other uses for it. Wonderfully, there are Dreamcast ports of eCos and RedBoot, Linux (here and here), and NetBSD. There are also two homebrew operating systems for Dreamcast: NewOS and KOS, which I already mentioned. NetBSD/Dreamcast and KOS are the most active at the moment.
I burned a CD-R with RedBoot, with which I interact through the Dreamcast's serial port. From RedBoot, I can load eCos, Linux, or NetBSD from NFS. I configured these to run without X and sound drivers. Once loaded, I interact with the OS through the serial port or through SSH.
Note: RedBoot, eCos, Linux, and NetBSD on Dreamcast can be configured to use the TV or VGA adapter output and a Dreamcast keyboard for the console, but I am not interested in that.
My Dreamcast is to be used in learning operating systems programming. Before, when I only had one computer available for hacking, I took things easy because I didn't want to cripple my one and only system. After all, I have other things I want to hack on besides operating systems.
With the Dreamcast, I can experiment and break things all over the place and not worry one bit. I am keeping two copies of each operating system's root filesystem on NFS (that's why the XBox NFS server has an 80 GB hard disk, although it is still overkill). If I break something, I can just reboot from the stable copy, figure out what I did wrong and fix it.
In order to continue to contribute to the Mono documentation effort, I am writing a few Gtk# mini-applications, and I am documenting the process through which I am constructing them. This documentation will appear as case studies in the GNOME.NET section of the Mono manual.
One of the mini-applications is, surprise, surprise, a Gtk# rewrite of GNOME Calculator. :-) The version of the code which will be used for Mono's documentation will not use GNOME Calculator's fixed precision math engine. But I will eventually break out GNOME Calculator's math engine into a shared library, and interface with it from the Gtk# GUI with P/Invoke.
Learning Apache, MySQL, and PHP
I bought two O'Reilly PHP books, Programming PHP and Web Database Applications with PHP and MySQL. I devoured these really fast and started to modify the code samples, scripting little test pages to my heart's content. PHP has been the easiest and most fun web server scripting language I've ever worked with. I can definitely see why there are so many PHP-based sites out there.
The purpose of this detour into PHP is two-fold: my free software projects are going to need a homepage of their own if they're going to contribute to free software world domination. I am learning PHP so I can maintain these homepages. The other purpose in learning PHP is that I am helping out a few free software organizations with the upkeep of their web sites, and some of them use PHP extensively.
New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.
Keep up with the latest Advogato features by reading the Advogato status blog.
If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!