2006-09-26

A: Internet for the masses

Q: What do you get if you combine

  • an A-level blogger with numerous commendable achievements in the Real Estate business and in the Software industry,
  • a business consultant whose outstanding success in selling his first computer game product later brought him to the business unit that launched the iPaq,
  • and a Creative Commons and Free Software advocate whose earlier ventures in the Music business resulted in appearances on two Gold records?

The answer on October 1st 2006.

2006-09-25

CUPS-PDF finally works on Ubuntu

For a long time, one of my Debian packages, cups-pdf, could not work on Ubuntu, because Ubuntu runs its CUPS daemon using a low-privilege user. I'm happy to report that this issue is finally resolved: following the release of CUPS 1.2, a simple solution was discovered by Andre Klitzing.

However, I only noticed this recently, after registering myself on Launchpad to respond to Ubuntu bugs affecting my Debian packages. Sigh! Perhaps notifying me earlier, via the Debian BTS, would have been a good idea?

Anyhow, after checking that the solution wouldn't break anything on the Debian side, I committed the fix to cups-pdf 2.4.1-2. Enjoy!

2006-09-24

meme: top ten UNIX shell commands

My results for this meme:

history | awk '{print $2}' | awk 'BEGIN {FS="|"} {print $1}' | sort | uniq -c | sort -nr | head -10
     73 sudo
     67 update-web
     53 ssh
     51 nano
     44 ls
     25 dir
     21 upgrade-daily.sh
     17 cd
     13 requestsync
     13 more

Among the more unusual sightings, update-web is a Bourne shell script to update my APT repository and synchronize my homepage, and upgrade-daily.sh is another one to upgrade my whole cluster in a semi-automated way.

Meanwhile, requestsync is a really neat Python script by Martin Pitt to request the synchronisation of Debian packages into Ubuntu, automatically fetching Debian changelogs and other relevant information to justify the request.

2006-09-16

Co-Maintainers Wanted

During Debconf5, I voiced the opinion that all Debian packages with a priority Standard or higher, as well as packages with a high Popularity Contest rating and development packages with a priority Optional or Extra that many people rely upon for development work, ought to be team-maintained as a matter of Policy. I justified this by pointing out that Debian's Social Contract puts our users among our key priorities, which implies that keeping the packages that our users value the most in excellent shape ought to be the embodiment of this value, and that the best way of meeting this goal is to enforce a policy of team maintenance and easy NMU for those packages.

While my own packages are rather modest contributions to Debian's pool and few of them rate anywhere close to the top in popularity, I honestly feel like practicing what I preach is the best example I could give. Another reason is that several business ideas that I'm working on are monopolizing my time, which means that I'm not as available as I would like to be to participate in Debian. I however see this situation as only temporary, which is why I have not orphaned my packages. Instead, I am soliciting Debian Developers to come as co-maintainers. Interested parties should check my QA page for packages that might interest them and contact me for details. Thanks!

PS: in case this wasn't obvious, the whole point of enforcing team maintenance and allowing NMU on non-RC but annoying bugs is to avoid unresponsive lone wolf maintainers who let tons of bug reports pile up on their packages without fixing them or even acknowledging them. Ubuntu avoids this by allowing anyone on their development team to chip in, while Debian still clings on to each maintainer's absolute reign over their packages, which leaves users of neglected packages completely in the dust.

2006-09-15

Linux 15th anniversary conference - September 4th 2006, Helsinki, Suomi

I meant to blog something about this for the last 2 weeks but other things had precedence. Anyhow, before this becomes hopelessly outdated, I decided to simply paste my notes verbatim, as a bulleted list. Here they are:

  • Lots of Ubuntu stickers visible on laptops!

liw: how did it all start?

  • Main areas of progress have been documentation and user applications, then distributions.
  • Installation improved from manual boot sector hacking to full GUI tool.
  • Linus purposely avoids working for distributors to preserve his neutrality.
  • Major kernel developments took place between 1992-1994 i.e. ports to m68k, alpha, powerpc.
  • Acknowledgement of RMS and ESR contributions to the Free Software agenda.

Maddog: changing, ruling and saving the world.

  • While at Drexel university, a teacher told him "No one will ever make a living writing software". Nowadays, the comment is rephrased about free software.
  • Parallel with 15-year olds that code amazing stuff being used for special effects, medical research, forensics, etc.
  • Parallel with what a 15-year old can learn from previous generations, from own early mistakes, from siblings, from dealing with bullying, etc.
  • In some countries, 15 is the age of consent or passage to adulthood.
  • Creative Commons embodies a society that enables read-write interaction.
  • Linux is already outselling Apple on the desktop.
  • Linux is shipping on over 1/3 of new servers.
  • The thin client market is completely Linux-based.
  • Social Networking and Peer Mentoring foster a creation of acceptance.
  • Malaysia's Computer Science graduates are 70% women and, surprise, it is a Muslim country.
  • Free Software enables localization for niche markets; this is a software freedom.
  • A shoe manufacturer that Maddog met on a plane had a domino Windows license upgrading effect that made him miss a whole production cycle. No longer supported Windows versions had to be replaced with new computers ...On which their custom software did not work anymore, while they worked fine on older Windows releases offering a DOS shell. He wanted to know how he could switch to Free Software and finally rid himself from slavery to Microsoft's licensing schemes that often impose costly hardware upgrades by turning previous hardware investments into unsupported obsoleteness.
  • Driving new standards are: FSG, ODF.
  • Generating local jobs adapting Free Software for local needs. The same cannot happen with closed-source software, because we're stuck with the vendor's limited offering.
  • Showing examples of excellent source code is the best way to teach programming. This is easily done with Free Software; not so with closed-source software.
  • The key to Free Software: have fun!
  • Remember: Software Freedom Day

This was followed by presentations from local Finnish players in the Free Software field. One point of interest: Timo Jyrinki, who is the founder of the Finnish Ubuntu community, emphasized that contributing to Ubuntu really meant contributing to Debian.

Videos are available (in Finnish, except for Maddog's presentation) on the server of the University of Helsinki. Sadly, the media format used is non-free... *sigh* When will they ever learn?

Clean Slate

There are moments in life when I keep on noticing that, no matter how much I try to keep up with whatever I missed while something else momentarily required my undivided attention, there simply is no way I can catch up. That's when a painful and yet eminently elegant solution imposes itself: discard and start on a clean slate.

Today was such a day.

Back a few months ago, when Deviant Art was crawling because of its outdated and blatantly inadequate infrastructure, I had to give up trying to keep up with the latest creations from my favorite Deviants. Recently, having heard that the infrastructure had been overhauled, I went back to have a look. Low and behold, nearly 6000 Deviant Watch notifications were waiting in my inbox! After spending a couple of days trying to catch up, reality dawned onto me: there's simply no way in hell that I can possibly skim through so many images. So, I used DA's nifty tool to delete all Deviant Watch notifications at once. There. Empty. No more deviation to review and therefore no endless white night ahead. Ah! Now, that wasn't so difficult, was it?

Granted, this wasn't so catastrophic. At worst, I missed a couple of truly remarkable works. Anyhow, those Deviants are gonna create yet more magnificent work, so I can rest safely knowing that the best of DA is yet to come. However, there have been other circumstances where the clean slate approach felt infinitely more painful:

Last year, the server which hosted my homepage and mailbox went belly up. Because the friends who own the server had more urgent matters to attend to, resuscitation had to wait for a couple of months. During that time, mail kept on piling up on their delivery host. By the time the server was back online, more than 7000 messages suddenly flooded my inbox. Again, same procedure: first spending nearly a week trying to skim through the From and Subject lines of the index, to attempt locating potentially important messages that needed an urgent though obviously belated response, only to realize that I simply could not make enough time to go through it all. The scary part is that I had been expecting various important messages during the blackout e.g. feedback from job interviews, certification test questions to answer within a specific time, etc. Still, someone can only stay awake for so many days before loosing focus, so I had to make the cruel decision to empty the inbox. Gulp! There. Gone. No more sleepless nights. Cross your fingers and hope you didn't miss any message of crucial importance...

There are yet more circumstances I can think of where the decision of starting on a clean slate imposed itself, despite the fear of perhaps missing out on something cool or important, or of giving up too soon despite clear signs of a dead-end coming. Eight years ago, my decision to relocate to a distant country that offered better career opportunities and a healthier lifestyle was one of those circumstances. What I'm carefully planning over the next few months is an equally important, though noticeably less dramatic step.

Still, I cannot help but wonder if I'm making the right choice?

Starting on a clean slate offers the obvious advantage of getting rid of dead weight. This is clearly a liberating sensation. However, it simultaneously requires letting go of elements that, despite their obsolescence or shortcomings, each contributed something useful at one point or another, which is very painful, because all those elements represent personal or monetary investments that often span several years. Think of retiring your very first computer, leaving your companion of many years or abandoning your homeland. Each element represents a lifetime of blood, sweat and tears, through shared learning experiences, through joy and pain. At the same time as you realize that it is now time to turn the page, you cannot help but remember the good times and yet wonder if you gave up too soon.

They call this perpetual state of reminiscence, growing pains. Ah! That explains it, I guess...

PS: I'd like to take this opportunity to thank the friends who used to host my homepage and mailbox, as well as the one who currently does. I might not often mention it, but rest assured that it's genuinely appreciated. I'd also like to apologize to all the Deviants whose great artwork I missed during the last few months and to anyone whose message got lost in the clean slate that followed the server crash last year.