laburu is currently certified at Journeyer level.

Name: Alex Laburu
Member since: 2005-11-03 22:46:42
Last Login: 2009-07-24 21:36:43

FOAF RDF Share This

Homepage: http://laburu.org/~alex/

Notes:

My Advogato diary contains a selection of notes and rants from my personal website that I thought may be of interest to other Advogatoans, as well as topical remarks that appear here and nowhere else. I also use the diary to make drafts of articles available for review. I welcome comments and improvement suggestions for anything and everything on my pages. Any of the entries may be promoted to article status by acclamation, kind entreaty, or (more likely) a fit of vanity on my part.

If you have sent me a review of an entry and your name does not appear in the acknowledgments, you can safely assume that I have not received it. Please, try reaching me through a different channel or means.

Projects

Articles Posted by laburu

Recent blog entries by laburu

Syndication: RSS 2.0

3 Nov 2008 (updated 5 Nov 2008 at 07:05 UTC) »

Advocating Free Network Computing

Recently, I nearly allowed myself a frenzied rush to the keyboard because I thought I had found a good way to spend the $5M grant announced by the Knight Foundation for an open-source technology-based project. The pitch was so simple in its conception and so compelling in its humanity that one could almost hear Sally Struthers delivering it. Unfortunately, Sally wasn't available for a YouTube cameo, and Stephen Fry was busy celebrating GNU's birthday, so my own rendition will have to do.

Here, in Switzerland, there are people who still live way up in the mountains, in remote locations that are very hard to reach and not at all profitable for utilities to serve beyond the level required by law. For them, fast, affordable network computing is a pipedream — or would be if they knew what benefits it brings. If this sort of scenario doesn't justify investing in the development of a "One Laptop per Person" (OLPP) device with a free software-defined radio and custom ASIC, what does?

Fortunately, I snapped out of my self-satisfied trance. I realized that, aside from looking ridiculous in a blonde wig, I was already "late" hours before the deadline, and that a project like this, when not properly executed, might have turned into a very public failure for skeptics to gloat over. And I'm telling you all this because what I figured out may well apply to you and your region, too.[0]

To start with, there is the issue of my own authority — or, rather, the lack thereof. Knight is almost certainly looking for an outfit with a track record of working successfully with local authorities to deploy this sort of solution. I contribute my time, money, and effort to various public interest causes, but I am not employed in any capacity by any of the organizations that would see the grant, and neither they nor Knight have reason to take my word that a project of this magnitude could be completed on this budget. I just don't have that kind of cred.

Also, I wondered what level of cooperation one could expect for this type of project from local institutions in a country where the government has a history of engaging in corporate welfare schemes ranging from ludicrous concessions on basic infrastructure to ill-conceived bailouts à fonds perdu. One can hardly expect these remote communities to take the leap of faith that an OLPP project would require without first having seen "free" work. Why should they damage their relationship with powerful utilities, on whose beneficence they depend, over a project that could fail?

So, instead of writing a brilliant proposal, I am doing what I should have done years ago: looking for opportunities to work with and for regional institutions to help bring affordable network computing and computer literacy to people I can assist materially, advocating whatever free solutions are available and suitable for this purpose. In other words, I am going to "sell" Luke Leighton's fully-free OLPP device locally, on a very small scale, as an abstract goal rather than as a concrete product. Because a product can be made to fail, but the dream of a free world has proved notoriously hard to defeat. And people inspired by a dream make change happen.


[0] If it doesn't, did you apply? If not, why not?


10 Jul 2008 (updated 5 Nov 2008 at 05:49 UTC) »

Enough Hot Air

Once upon a time in the not-too-distant past, a hacker I know blogged about using object-oriented C to implement a lightweight imitation of some of C++'s features for his latest project; almost immediately, somebody saw fit to reward this charming piece of acceptably self-congratulatory writing with a stern and quite public deconstruction. Does this scene seem familiar? Why does this keep happening? And what, if anything, can we do about it? We can hardly hope to appease all of hackerdom's malcontent — but we can at least try to avoid stepping on each other's toes. Accordingly, this article will waste no time on a platitudinous condemnation of the surf-by put-down; rather, I wish to take a moment to reflect on what the hacker did to earn it, and to consider what he might have done (or, rather, not done) instead.

Let me start by stating for the record that I think the hacker's solution was meritorious as such; that is, it solved the problem he formulated, so I approve of it on the grounds of its workingness. The techniques employed in this approach are simple and effective, and were considered best-practice C in the eighties. Some people found this style long-winded, though, and facilities were soon devised to address the awkward verbosity of the incipient object-oriented C idioms. The pre-processors that implemented these and other improvements to C went on to become distinct languages (namely, C++ and Objective C) and communities formed around them.

Or perhaps it was the other way around, says the sociologist looking over my shoulder — but that is neither here nor there for our purposes. The point I want to make is this: one can reasonably expect the people who embraced these solutions to wince when someone promotes the use of the very idioms their community has so laboriously abstracted away. Did the hacker really not anticipate this response? If he did, why did he preface the presentation of his solution with an explicit rejection of C++?

Whatever his motivation was, it's fair to say he paid for it. Indeed, justifying one's work by scorning a mature system on which one is not an expert works against the legitimate goal of being lauded for one's skills. It puts people off, and will only earn one points with the weenies who happen to agree. Moreover, it is likely to elicit overt retaliation from vigilantes (mostly the weenies who happen to disagree) and a spot on someone's idiot list. Indeed, in the aftermath of such a gaffe, any subsequent plea aimed at demonstrating compunction and competence – however unassailable and incontrovertible – is likely to be shrugged off as so much prejudiced ignorance and answered with a curt dismissal.

So here's my twopence-worth of unsolicited advice for programmers who desire the recognition of their peers: share your wins (and your FAIL) and toot your own horn if you like, but try not to steal the wind from another's sails when you do. Because there's more than enough hot air to go around already — certainly enough for every foghorn blowing at C.


I wish to acknowledge the contributions of Nathan Myers, Luke Kenneth Casson Leighton, and R. Steven Rainwater, whose suggestions and encouragement helped make this a better article. Any remaining flaws are my sole responsibility.

This essay started life as a diary entry, but was rewritten and submitted as an article in response to Luke's lamentation. The canonical version of this document may be more up-to-date than the version here.


10 Feb 2008 (updated 5 Nov 2008 at 00:32 UTC) »

Why Hackers Write Free Software

Free software has long been celebrated by some as

a highly effective vehicle for the transfer of wealth from the industrialized world to developing countries
How the Tech-Poor Can Still Be Software-Rich

and denounced by others as

a transfer of wealth from the programmers who created it to the corporations who use it without payment
Support for open source software is based on several misconceptions

but all of this high-stakes talk can give people the wrong idea.

I would prefer that the general public not think of people who choose to write free software as visionary philanthropists or – worse still – the unwitting victims of corporate exploitation. In fact, I suspect a lot of free software is produced for the noblest of reasons: it pleases the programmers who write it.

In support of my claim, I hereby present the following list of CPAN modules:

Lingua::Tolkien::BURL
an Orkish scripting language
Acme::MetaSyntactic::lotr
The Lord of the Rings theme
Date::Tolkien::Shire
implementation of the calendar used by the Hobbits (via Stefan Nesbitt)
DateTime::Fiction::JRRTolkien::Shire
(re-)implementation of the calendar used by the Hobbits

What, I wonder, might the capital value of this software be to someone in a developing country or to a corporation looking for code it can use without payment?

When I think of free software programmers, I think of the so-called birds of paradise — each indulging in its uncommon, seemingly gratuitous[1] display of beauty and grace[2]

simply because it is possible.

The comparison to these animals, several species of which are on the brink of extinction, is not capricious: ultimately, programmers write free software not only because they like it, but also because – despite the relentless lobbying and legal maneuvering of some corporations, and thanks to the tireless vigilance of some organizations[3] – they still can. Let's not take that for granted.


[1] I know, I know: Eric Raymond claims that our exotic plumage and behavior (like the birds') are actually the product of natural selection and, not coincidentally, improve our chances of mating well, often, or at all. OMG! Does that mean I can hack my way to evolutionary fitness? Sweet! *hack* *hack* *hack* *hack*. Uh… no.

[2] I am talking about the "beauty and grace" to be found in program source code, of course; the free software programmers themselves can be as hard to find in broad daylight as the aforementioned Paradisaeidae! [See the foregoing endnote for a possible explanation and an egregious example of FAIL.]

[3] Here are, in no particular order, some of the organizations that make it possible for hackers to continue writing free software:

Now would be a fine time to show your support.


[canonical version]


4 Oct 2007 (updated 5 Nov 2008 at 00:41 UTC) »

An Uncontroversial Reason for Sharing Source Code

In Software Tools, Kernighan and Plauger said that

[g]ood Programming is not learned from generalities, but by seeing how significant programs can be made clean, easy to read, easy to maintain and modify, human-engineered, efficient, and reliable, by the application of common sense and good programming practices. Careful study and imitation of good programs leads to better writing.

This, I think, is a good argument in favor of sharing source code. One cannot easily study and imitate another's program without access to its source code, so we share our code with the reasonable expectation that others will correspond — whereupon, our altruistic behavior would yield a benefit.

24 May 2007 (updated 27 Mar 2008 at 22:23 UTC) »

A friend of mine (who wishes to remain anonymous on the web) pointed me to Leslie Lamport's unpublished paper on Buridan's principle and expressed her disagreement over the following statement:

[I]f the ball is positioned randomly, random vibrations are as likely to keep it from falling off as to cause it to fall.

I would love to know what “randomly” means here, since we're evidently constrained to placing the ball on the edge of the knife. Does it mean “not symmetrically about it”? In any case, I agree that random vibrations will not keep the ball on the knife's edge: it seems highly unlikely that the effect of a first de-stabilizing impulse on the ball will be subsequently countervailed by a sequence of corrective impulses that keeps the ball on the knife's edge, and even more unlikely that this continues indefinitely.

So, while I grant that it's possible for the ball to remain on the knife's edge in the presence of random vibrations, I also think it's unlikely that it will. Unless we've misunderstood what Leslie is saying here, it seems plausible that this claim about the "ball on a knife's edge" is partly responsible for the paper's rejection, as it is bound to trip most physicists' wires.

3 older entries...

 

laburu certified others as follows:

  • laburu certified bonzini as Master
  • laburu certified laburu as Apprentice
  • laburu certified StevenRainwater as Master
  • laburu certified apenwarr as Master
  • laburu certified chalst as Journeyer
  • laburu certified fzort as Journeyer
  • laburu certified Omnifarious as Journeyer
  • laburu certified lkcl as Master
  • laburu certified ncm as Master
  • laburu certified mattl as Master
  • laburu certified ted as Journeyer

Others have certified laburu as follows:

  • laburu certified laburu as Apprentice
  • chalst certified laburu as Journeyer
  • vpiff certified laburu as Apprentice
  • cloud certified laburu as Apprentice
  • bonzini certified laburu as Apprentice
  • StevenRainwater certified laburu as Journeyer
  • fzort certified laburu as Journeyer
  • Omnifarious certified laburu as Apprentice
  • badvogato certified laburu as Journeyer
  • mattl certified laburu as Journeyer

[ Certification disabled because you're not logged in. ]

New Advogato Features

FOAF updates: Trust rankings are now exported, making the data available to other users and websites. An external FOAF URI has been added, allowing users to link to an additional FOAF file.

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!

X
Share this page