October 2002 Archives

Andy Oram

AddThis Social Bookmark Button

Every couple years somebody comes up with the idea, “Hey! let’s
license software engineers!” Committees are formed, standards drawn
up, and papers smoothed out by waiting bureaucrats–and then
everything falls apart and the software profession returns to the
status quo, because everybody realizes the plan just isn’t feasible.

I’ve been following this cycle for years, and even parodied it in the
second chapter
of my story
Code the Obscure.
But the most recent wave of calls for licensing are getting
serious. The drive this time comes from the national security
kick. Computer systems are vulnerable because of bugs, and bugs are
human failings caused by programmers, so–the reasoning is hard to
fight–let’s ensure we have good programmers through licensing.

Licensing for software engineers is no longer an arcane topic to be
considered by the existing and aspiring members of a single field.
Once you license programmers and other computer professionals, you
open the door to making their employers liable for their work.

And the converse is also true: when you demand that government “should
pass a law…Make companies liable for insecurities” as leading
security expert Bruce Schneier does in his most recent

Crypto-Gram Newsletter
of October 15,
you inevitably force those companies to set standards for their
employees. And the whole set of questions ties directly into our
national security debate.

No wonder calls for licensing and liability have been
getting louder. The only political arguments that seemed
to be aired against the trend represent the free-market
attitude, “Government shouldn’t get involved in business
matters,” which is no argument at all so far as I’m
concerned.

The unanimity of experts on this topic has made me reluctant to share
my own point of view; I did not even circulate my recent article

The National Strategy to Secure Cyberspace: a Sober Cyberassessment

very widely. But I have felt pushed to speak out since reading the
November 2002 issue of the Communications of the ACM,
published by the
Association for Computing Machinery,
one of the oldest and most important organizations in computing.

This issue of their journal take up the topic of licensing (by no
means for the first time) and offers a number of perspectives. And
once again, the ACM and its guest authors come down overwhelming
against licensing. Only one article, by the renowned David Parnas,
offered firm support. The other points of view expressed ranged from a
wavering “Well, they’ve started licensing software engineers in Texas
and it hasn’t hurt anybody yet” to an extreme suggested by the title
“Software engineering considered harmful.” While I think the title of
that article is misleading, the author does essentially convey the
idea that the term “software engineering” is an oxymoron.

(I should point out that licensing is different from
certification. Licensing is backed by government requirements and
forms a legal requirement to practicing one’s profession.
Certification is much less intrusive, being just a statement by some
organization that you have mastered certain material, such as Windows
networking.)

The software profession’s repeated refusals to countenance licensing
are impressive, because pragmatic circumstances pressure the leaders
of every profession toward licensing.

By licensing you reassure your customers of your competence. To take a
more cynical point of view, licensing creates a barrier to entry that
restricts the number of practitioners in a field and consequently
raises the salaries of those who cross the barrier. And one mustn’t
leave out the attractiveness of the mystification factor! (”We can’t
challenge what she tells us; she’s a licensed software engineer.”)

Admittedly, as one article in the ACM journal points out, there are
also disincentives to licensing. Licensing gives customers and others
a hook on which to hang lawsuits and the types of regulation called
for by Schneier and others. But these pressures exist anyway;
licensing could equally function as a way to stave them off.

The continuing evolution of the software field, which makes licensing
untenable, also dooms attempts to make companies liable for software
flaws. The problems faced are stated in my earlier-cited

article
:

But unfortunately, the state of the fifty-year-old software field is
nowhere near mature enough that we can justly hold programmers
responsible for bugs. While we have made progress in many areas–for
instance, we have programming languages that rule out the dreaded
buffer overflows responsible for most security flaws–we are always
running behind. This is because new programming techniques keep being
invented (for instance, popular languages like ASP and PHP for
building dynamic Web pages) and we cannot anticipate their security
ramifications.

Liability for software bugs would fall particularly hard on
the field of free and open source software, which ironically provides
the most robust and secure products.

The proposal for certifying security professionals may also be
misguided. Certain basic habits of good security can be delineated,
but I don’t know how well they can be formally taught or tested. The
particular vulnerabilities and attacks change so frequently that no
certification can ensure public preparedness.

My article does not rule out ratings by insurance companies
to enforce best practices, or holding companies liable
for egregious, deliberate negligence.
The particular issue of free software has also come up in
the licensing debate around
UCITA.

I highly respect the people who yearn for liability, but I
challenge them to come up with a concrete proposal for such a law that
would actually work and be fair. All I’ve seen so
far are vague demands and a lot of righteous indignation. I think the
debate should continue, because I’d like to find a solution–we just
have to look realistically at the state of software and think ahead to
the consequences of legal action.

Would licensing or liability be helpful?

Simon Cozens

AddThis Social Bookmark Button


As in certain cults it is possible to kill a process if you know its
true name.



— Ken Thompson and Dennis M. Ritchie



I’ve been thinking recently about what accounts for the HREF="http://www.cpan.org/">CPAN’s success; well, that’s not quite
true. I’ve been trying to work out what accounts for the HREF="http://www.ruby-lang.org/en/raa.html">Ruby Application
Archive and Python’s Vaults
of Parnassus
comparative failure.



There are many reasons. First, there’s a clear distinction in CPAN
between libraries and applications; the RAA the Vaults don’t have such a
thing. But I’ve come to the conclusion that a major factor, and one
which applies both to collections of software such as those we’re
looking at and the development world in general, is the way that
libraries and aplications are named. (To be fair, Ruby is getting better
at this and beginning to solve the problem the Perl way.)



I’d like to give a couple of principles for naming software.


  • Definitive names discourage wheel reinvention


  • Perl’s modules are generally given simple, definitive names. If I
    want an XML parser, I head for XML::Parser. It’s that
    simple. (Of course, if it’s not that simple, I head for
    XML::Simple which is.)
    If I want to write a module for parsing XML and I know that
    XML::Parser exists, I’m forced to choose a name which
    correctly denotes what sets my parser apart; I have to do something
    new, and hence I’m not reinventing the wheel.


  • Descriptive names are best for libraries


  • There’s a temptation to make up cutesy names for software projects.
    However, when it comes to libraries, this is more of a hindrance
    than a help. When I see a module called XML::Parser I
    know exactly what it does. It doesn’t require any more description.
    If, on the other hand, it had a cutesy name - Expat - I
    would have no idea. Similarly, good naming helps me quickly locate
    the library I need. If I’m writing C code to deal with Unicode, I’d
    look for a libunicode. And behold, there is indeed a
    libunicode which does what I want and I need look no
    further. That would not have been quite so easy if it had been
    called libgeoff. Cutesy acronyms don’t help either -
    you might know that libgail is the GNOME Accessibility
    Implementation Library, but at first sight, that might have been
    called libgeoff too. Why not, say,
    libaccess, or libgaccess if you must have
    the g for GNOME.


  • End-user projects can have non-descriptive names


  • There is a place for cute naming, and that’s in applications and
    other end-user projects; this is because there’s more space for
    competition. You’d never get away with calling a web browser
    “webbrowser”, so “Mozilla” is as good a name as any. However, if
    you’re building that as a Perl module, then
    Web::Browser (or Tk::WebBrowser) would be
    just fine. This should remind you that some things that you think
    are applications can turn out to be libraries, and vice versa -
    consider spamassassin as an example. Thankfully, that has both a
    catchy and a descriptive name, so turns out to work very well as
    both a library and an end-user tool.




Shamans have long known the value of the correct and definitive
naming of things; programmers of libraries and modules would do well to
rediscover it.

David Sklar

AddThis Social Bookmark Button

Related link: http://www.nytimes.com/2002/10/25/nyregion/25DECA.html

Perhaps I’m playing into their sinister “building brand awareness” at any cost strategy by highlighting it here, but Microsoft doesn’t seem to have any boundaries at all when it comes to advertising.

Two weeks ago, they couldn’t find anyone actually admit they switched from a Mac to Windows XP, so an employee of their PR firm had to pose as a Windows user.

Now, while burdening the world with a new version of MSN (what does a new version of MSN include? More modems to take your calls? More animated paper clips?) they coated the city with their annoying decals.

The New York Times article has some funny “claim you’re right, actually do the research later” quotes from a Microsoft PR flack, like “There are permits for everything”. I’m going to try that the next time Timothy Hutton and I are putting the finishing touches on a new “Turk 182″ mural in the West Side rail yards — “We have a permit for this, officer.”

To be fair to Microsoft (aren’t I broad-minded!) they are not alone in the world of illegal city-defacing PR. Nike recently put down some illegal decals in New York. Other companies have done it in the past, whether it’s decals or spray-painted stencils.

AOL is releasing a new version of their service now, too. Maybe next week AOL stickers will blanket Redmond.

Kevin Bedell

AddThis Social Bookmark Button

Related link: http://jakarta.apache.org/struts

Who says submitting patches for open source projects can’t get you a paycheck? If you’re working on the Struts Web Application Framework it can.

With the 1.1 release of Struts looming, Vic Cekvenich of BaseBeans Engineering wanted to help out. He knew the Struts developers were doing their best to close the last bugs that were in the way of the release, but he also knew that it would go faster if more people helped out. So his company decided to offer a “Bug Bounty”.

The bounty was introduced by this post:

<Vic’s Original Message>

List: struts-dev
Subject: Bug reward $
From: “V. Cekvenich”
Date: 2002-10-21 0:03:09

I will send via pay pal $135 to each person that fixes at least one bug and e-mails me that they did + a link to bugzila, up to the first 6 real bugs, which is about 10% of bugs. (maybe a few more companies help focus funds on the release). I know it’s not much, but support can start someplace, I think a lot of companies would like to be the “Covalent” of Struts as would baseBeans … at least if you are just sitting home an have half a day to kill.

There are about 46 bugs for Struts 1.1. I do not need a release of 1.1 but I would like to sponsor some fixes, related to it, so don’t think it to cheesy.

NOTE: you do not need to be a committer for this, you must submit the diff to bugzilla, but I will not have time to test, so I wish you good karma that you do test the fix. (A committer can then… commit should the code be acceptable)
Any simple text DTD or doco fixes don’t count, and also I reserve the right not to pay for any reason (I did sponsor prior some work by at least several others)

I probably won’t list the people that do e-mail me that they did a patch, and do not have time to answer more questions.

BeanUtils: 12728, 13596

DBCP: 12047, 12400, 12733, 12869, 13155

Digester: 12534

Pool: 12841, 13649, 13705

Validator: 13030, 13472, 13539, 8787

</Vic’s Original Message>

Given that he limited his exposure to the first 6 bugs reported closed, Vic’s risk wasn’t really that high - especially given the potential for improvements in the project. Plus, you never know what contributions might be made in the future by people who got involved because of the bounty. After all, Craig McClanahan - the original author of Struts and an early, core developer for the Jakarta Tomcat project - first got involved with open source trying to ‘help out’ with getting a release of the Apache JServ project out the door.

What will the impact be from Vic’s bounty? Who knows… More importantly, what would happen if firms everywhere took the same approach? The sky’s the limit.

How does your company contribute to Open Source?

David Sklar

AddThis Social Bookmark Button

Related link: http://support.microsoft.com/default.aspx?scid=kb;en-us;Q131109

At least the bug status says:

Microsoft has confirmed this to be a problem in Explorapedia, World of Nature, version 1.0.

And not something about a bug in Earth’s angular momentum.

AddThis Social Bookmark Button

Related link: http://history.perl.org/PerlTimeline.html

According to the Perl timeline, Perl 5 was released on this date eight years ago. That’s eons, in software years. Back then, there was no CPAN (yet) and many of the good programming practices now taken for granted (strictures, warnings, lexical scoping, references) were shiny, new, and unexplored.

Eight years after its replacement, I still occasionally run across Perl 4 code. Yikes. Eight years after Perl 6 comes out, I’ll still probably run into Perl 5 code. Maybe it’ll seem like Perl 4 does now. I think 5.8.0 (and 5.10) will prove to age much better, though.

Happy 8th, Perl 5. Here’s to many good years ahead.

Matthew Langham

AddThis Social Bookmark Button

If you’ve read Gerald Weinberg’s book “The secrets of consulting”, then you will know what the orange juice test is. if not - it doesn’t matter - but get the book.

When talking to people (vendors, consultants etc.) on the subject of web services it is often difficult to make out the facts from the fiction. Here is the solution: The web service orange juice test. Make sure you ask the following question:

“Please tell me what a web service is in one sentence. And please do not use any acronyms“.

Then sit back and wait. It’s harder than it may seem. Here is my go at it.

Give me your one sentence defintion of a web service - without acronyms!

Schuyler Erle

AddThis Social Bookmark Button

Related link: http://www.linuxjournal.com/article.php?sid=6299

A PPP connection at 2400 baud over the HF band isn’t fast enough for web browsing, but it’ll sure do e-mail — and HF hasn’t got the line-of-sight constraints you find at higher frequencies, like the 2.4 GHz band that 802.11b inhabits. As seen on Slashdot, a Linux Journal article tells all about how the International Rescue Committee has been unwiring Guinean villages for e-mail. Linux to the rescue, once again!

Kevin Bedell

AddThis Social Bookmark Button

Related link: http://www.oetrends.com/cgi-bin/page_display.cgi?109

I’m a big proponent of using Web Services. I’m convinced that they are just a better way of getting certain things done. In particular, I think that Web Services provide a great way of integrating two systems that are built using different technologies.

But there’s a problem. Some applications require very high
reliability for individual transactions. Soap over HTTP is limited in this type of application. The basic problem is that HTTP itself just doesn’t provide guaranteed delivery. It wasn’t designed to and it doesn’t look as if, without modification to the protocol, it ever will. (In fact, href="http://www-106.ibm.com/developerworks/library/ws-phtt/">the
HTTPR proposal from IBM is designed to meet this challenge. Unfortunately it is still just a proposal…)

One way that companies are beginning to get over this challenge is by running SOAP over JMS. What is SOAP over JMS? There are a couple answers to this question.

The first answer lies in using JMS as a replacement for HTTP as the underlying transport for SOAP communications. Using Apache Axis, this means sending messages using the Axis API’s, but having the actual communications to the SOAP server be processed using JMS instead of being sent over HTTP. This is a great improvement in reliability for mission critical applications.

The second answer (for Axis again) is using HTTP for communications between the SOAP client and server, but having the SOAP messages be persisted in JMS inside the Web Service client before they are sent; this way they are persisted until the HTTP communications return successfully. In a different situation, it could also mean persisting the SOAP Messages using JMS inside the Web Service server application once they are received. These two features still allow for integration with other Web Service architectures, such
as .NET, but provide additional reliability by using JMS.

One approach to enhancing the reliability of Web Service
communications is to use JMS as the underlying transport directly when communicating inside your enterprise (on the ‘Intranet’), and then bridge from JMS to HTTP at the ‘edge’ of the enterprise (when going to the ‘Internet’ or an ‘Extranet’).

These features are either already a part of Axis 1.0, or are on the horizon. For more information see href="http://www.oetrends.com/cgi-bin/page_display.cgi?109">this
article recently posted on the Open Enterprise Trends site or the Apache Axis site at http://xml.apache.org/axis .

David Sklar

AddThis Social Bookmark Button

Related link: http://www.nytimes.com/2002/10/15/obituaries/15CHAP.html

He published a Human Factors textbook in 1946 and is one of the reasons why your phone pushbuttons are arranged the way they are.

Kevin Bedell

AddThis Social Bookmark Button

Related link: http://www.microsoft.com/insider/opsystems/windowsxp_setup.asp

Turns out that Microsoft is finding people who have switched from the Mac to Windows XP. Or are they?

Certainly, it’s probably just a coincidence that the picture that graces Microsoft’s story about a person who switched from a Mac to Windows XP is virtually identical to a stock image of a model that is available for graphic artists to use royalty free when creating marketing materials.

NOTE: Since I drafted this entry, the page is no longer available on the MS Site. It is still, however, still in Google’s cache.

Also, ZDnet posted a summary of the story this morning.

Kevin Bedell

AddThis Social Bookmark Button

Related link: http://biz.yahoo.com/ap/021011/microsoft_macintosh_1.html

The General Manager of Microsoft’s Mac business has decided to go to work for XBox.

With sales of Office v. X for the Mac below expectations, Rob Helm, Research Director for the independent research firm Directions on Microsoft, says “It’s just not at the moment a great career move to be running the Mac unit.”

Matthew Langham

AddThis Social Bookmark Button

Earlier this week I introduced Calendar blogging (clogging) as the next step on the weblog path.

Yesterday Robert Scoble picked up on this and introduced the “clog:” protocol. Which in turn made me think.

Wouldn’t it be really neat if I could post new dates, appointments to my weblog and link them with the “clog:” protocol. Then, would-be worshipers of my calendar could download my calendar and then subscribe to individual new items as I publish them.

ClogThis: Later this afternoon I will be at the recording of a German late night talker.
ClogThis: My Birthday. :-)

Apple, listen up.

What do you think of clogging and the clog: protocol?

Andy Oram

AddThis Social Bookmark Button

Related link: http://www.nytimes.com/2002/10/09/business/09BIZC.html

Privatization was supposed to be easy. Give assets to a bunch of
entrepreneurs, loosen the old regulatory bonds, and away they go! But
in case after case, courts and regulators have had to stick around a
lot longer than they expected.

I like privatization in many instances. It promotes competition and
all kinds of innovation that were unimaginable before. But it can be
carried out only where real opportunities for competition exist–not
where there are historical or physical conditions that subtly enforce
monopoly.

It happens that one place where a natural monopoly exists is
spectrum. When Congress legislated the auctioning of
spectrum–arguments over the degree of scarcity in spectrum
notwithstanding–it was clearly dividing a finite resource among
numerous firms, each of which owned a monopoly on a piece of a
resource.

When two many pieces of a finite resource get tied up, it hurts.

Now on to the NextWave license case, which has just reached the
Supreme Court. It’s big enough to merit news stories not only in tech
publications like
Wired
and
C|NET
but major news media outlets like the
New York Times
(cited at the top of this weblog).

What the news stories don’t say–and what the lawyers might not be
telling the courts–is that NextWave is the Enron of the radio-magnetic
spectrum. Not that NextWave has been accused of illegal accounting
activities. But its business model, and the humiliating failure of
that model, mirror Enron’s uncannily.

When Congress mandated a big auction of spectrum back in 1996,
NextWave was one of the biggest buyers. It promised a cool
4.7 billion dollars to buy up 63 licenses.

What kind of service could a small, unknown company
like NextWave possibly be planning to offer with 63 licenses? And
where did it plan to get the billions of dollars it promised to pay
the government?

Answer: a leveraged scheme like Enron. NextWave hoped to
sublet its licenses to other companies. As Enron did with electricity,
NextWave expected such a high demand for cellular phone service that
it would be able to pay back its debts and walk away with a cool
profit without actually creating value or putting anything into the
economy.

NextWave was humbled by the telecom bust (which to some extent
preceded the rest of the dot-com bust–and many cynics say the 3G
initiative was a bust from the start), but like arrogant CEOs in
so other companies with meritless business plans, they won’t accept
their chastisement. To wit, they won’t give up the licenses they’re
sitting on like dogs in the manger.

So the FCC quite properly sued, and lower courts sided with it.
NextWave is hoping to bamboozle the Supreme Court into reversing the
decisions.

How could it succeed? I don’t pretend to understand all the legal
complexities and precedents, but it is arguing that “licenses” can’t
be revoked in a bankruptcy.

The fallacy in their argument is that possession of a spectrum is not
just a “license” like the license to drive a car or operate a hair
salon. The spectrum they’re sitting on is a limited resource that
could–and should–be put to productive use by others. The New York
Times seems to think that the Supreme Court will reward these schemers
with the assets they are trying so hard to hold on to; other news
reports think the Court is more balanced.

What the NextWave scandal points up is the poor thinking that lay
behind Congress’s spectrum auction in the first place. Dividing up a
resource that way has two consequences:

  • Only large, established companies (or those hoping for leveraged
    schemes like NextWave) can afford the large sums required to win the
    auction; promising young technologies like spread-spectrum are
    excluded.

  • The spectrum becomes artificially subdivided and fenced off. If a new
    application that can make efficient use of a large part of the
    spectrum emerges (spread-spectrum, once again), the resource cannot be
    reclaimed for that purpose.

But as I said, let’s not give up on privatization. Let’s just make it
authentic.

If there’s a silver lining, it’s a ruling being considered by the FCC to
allow
radio stations to broadcast digital content
.
Although this is being considered a modest innovation to broadcast
music with less distortion and a little bit of accompanying
information (rather like digital broadcasting on television) you know
what happens when a channel gets digitized. The whole world opens up
and becomes fair game. If you’d like an amusing projection of what
digital spectrum use could be like, see my skit

The Opening of the Channels
.

What’s the best use for spectrum? Does anybody know?

Matthew Langham

AddThis Social Bookmark Button

Clogging

No-one seems to have come up with this yet - so here it is from me. Calendar Blogging or “Clogging”. When Apple brought out iCal they really started a new wave of “blogging”. Sites such as icalshare.com are springing up where you can subscribe to calendars of such interesting things as public holidays or sports events. And you can publish your calendar there. At the moment these are “generic” calendars.

But the next step - and this is what clogging is all about - is the “worship my personal calendar” aspect. Famous people (me included - yeah right) will publish their own calendars containing dates and things they find interesting.

“Followers” then subscribe to the calendar of their star and can celebrate such things as their star’s birthday or when the calendar author has a dentist appointment. Imagine postings to weblogs following say Doc Searls with such notes as “remember, check your Doc Searls calendar - today he his having his wisdom tooth out at 10 am Pacific.”. Wow - the mind boggles. Ok, so perhaps Doc doesn’t have a wisdom tooth left to be pulled (joke). Another example: My calendar entry for today would read “1:15 pm - Pick up kids from school”. All my fans could subscribe and then send me emails of sympathy at 1:00 pm :-). Imagine the clogging entry for Linus Torvalds “10th November - 10:00 am - new Kernel version. 10:30 am - another new Kernel version”. And we would know and light candles at 9:45. On IRC we could then meet at 9:55 and count down the remaining minutes.

It will happen. Must rush - I have a calendar to author.

Clogging - when will you publish your calendar for us?

David Sklar

AddThis Social Bookmark Button

Related link: http://www.revolution-os.com/

I’ve always kept an eye out for ways that movie makers feature technology that isn’t boring in a movie. Because typing and scrolling text are pretty boring in a movie. The dishwasher that said “Wash. Rinse. Agitate. Explode. Die!” in Ghost in the Machine was a highlight, but usually all we get are the e-mail clients with big fonts and dramatically opening cartoon envelopes, like in Disclosure or Mission Impossible.

I don’t expect any cartoon envelopes or VR filing systems in Revolution OS, but I am curious to see how the “inside story” of the Open Source movement translates to the big screen. Although, even if the movie is no good, at least Richard Stallman now has a Bacon Number of 3.

I wonder what happens when a copy of the movie shows up on Gnutella?

Andy Oram

AddThis Social Bookmark Button

The Internet never looked this way from Harvard Square before. The
2002 annual meeting of
Computer Professionals for Social Responsibility
this past Saturday left the 75 participants enlightened and wildly
excited about giving control over information to poor people all around
the world. I arrived home at ten o’clock at night and told my wife,
“You’re lucky I didn’t sign up to spend a month in Malawi installing
Linux.”

The title of the annual meeting was
“Shrinking World, Expanding Net”,
a title that nimbly conveyed the dual (and perhaps dueling) trends
within an Internet that is quickly becoming a commodity.

On the one hand, Internet access is being extended to geographic
regions and demographic groups where recently it was considered
unfeasible. As access spreads, the new nodes take on characteristics
totally foreign to the original users in the developed world:
characteristics adapted to poor connectivity, low bandwidth, problems
with literacy, and a diversity of cultural conditions.

On the other hand, as people realize the Internet’s importance,
pressures increase to impose some predictability on it, while the
pursuit of democracy and community development online gains support.

Here is a summary of the day’s events, including the ceremony awarding
the annual
Norbert
Wiener Award

to networking engineer and ICANN Board member Karl Auerbach:

The workshop was expertly assembled and carried off in the belly of
the beast, Harvard University’s Kennedy School of Government, by
Kennedy School professor L. Jean Camp and a dozen student
volunteers. (To their credit, the Kennedy School co-sponsored the
workshop.) If anything on this weblog makes you interested in working
with CPSR, check our
list of topics or
membership page.

Development

Elsewhere, perhaps, debate still rages. Do poor people need
advanced information technology? Can they make proper use of it? Is it
possible to deploy it in remote areas?

At the annual meeting we went beyond these questions. Instead, people
who actually spent time in India, in Malawi, in the Dominican
Republic, and elsewhere discussed what they learned about the value of
communications and computers, and how they brought these things to
local residents in meaningful ways. Throughout all the speakers talks
ran the critical thread: understand your users and their
needs.
Work with these needs in creative ways.

Liby Levison, for instance, while stationed in the capital of Malawi,
experienced frequent telecom failures and pitifully slow connections.
She learned here an interesting piece of meta-design: that
underdeveloped areas need entirely different technologies for
information retrieval. There limitations made it unfeasible to use the
information retrieval strategy that we use in the developed world day
after day: enter a search term into a search engine, browse a few
dozen results, request a home page, follow a link to a resource,
etc. In rural Malawi, the Internet connection would be down before you
were half done.

To respond to the needs of Internet users in these areas, Libby
developed a deliberately low-tech system with deep ramifications. Her
TEK (for “time equals knowledge”) system works a bit like Web2mail,
making use of the store-and-forward aspect of email to provide
robustness in a non-robust environment. A person enters a search term
and is emailed the Web pages corresponding to the most
promising search engine results.

There are more interesting design choices in this system than meet
the eye. TEK strips out graphics (depending on the user’s choice),
information-poor pages such as portals or home pages that have mostly
links, duplicate pages, pages in inappropriate languages, and so
on. It also deals with lost mail through a protocol that acknowledges
received mail and retransmits lost mail after a timeout.

Iqbal Quadir, as a financial executive in New York, decided to try to
provide cell phone access to the poor in his native Bangladesh. To
find a base for action, he approached the
Grameen Bank,
which is
famous for its microcredit for poor entrepreneurs (mostly
women). Iqbal persuaded the bank, with some difficulty, that a cell
phone could be just as useful as a cow or a generator in forming the
engine behind a successful business. Cell coverage is now offered to
30% of Bangladesh’s territory, reaching 50% of the population.

Across the subcontinent on the West coast of India, Daryl Martyris of
World Computer Exchange
distributes recycled computers running GNU/Linux to schools throughout the
state of Goa. Hardware costs (as well as software costs, of course)
are cut to the minimum by hooking minimal clients up to a central
service running
Linux Terminal Server Project (LTSP)
software. After-hours use by paying adults is popular. Of course,
fixing broken systems is a problem, but a small coterie of students
has been trained to fill WCE’s needs.

Hani Shakeel described a research project in the Dominican Republic,
which happens to have amazingly advanced communications and computing
equipment in hundreds of villages around the island, thanks to a
former president’s effort to win popular support. In the village Hani
chose, these centers are very popular with school-age children, who
use the visual aspects of Web sites to overcome any limitations they
suffer in understanding languages.

Hani designed an asynchronous bulletin board so that people could come and
go at their convenience. He also integrated text, graphics, and voice
in such a way that people could use whatever medium was most
convenient. He even used a text-to-speech synthesizer to allow
illiterate people to hear text messages.

As we heard the various needs of people in different areas and stages
of development, we became increasingly receptive to Judy Brewer,
director of the W3C’s
Web Accessibility Initiative,
as she talked about accessibility. This is not simply a matter of
accommodating the disabled (although even that could open up the Web
to another ten or twenty per-cent of the public); measures taken for
the disabled always have value for other populations too, especially
poor people who deal with literacy problems, low bandwidth, poor
equipment, or other limitations. Measures that promote accessibility
also promote device-independence, a common concern in modern design.

A framework for understanding the growth of communications
infrastructure in underdeveloped areas was offered by Annalee
C. Babb. First one has to provide a physical
infrastructure. This allows information acquisition and communications
such as email. Next one needs to provide a financial
infrastructure with legal guarantees, and then a security
level offering privacy, secure transmissions, and authentication. Now
the people can develop online markets. The fourth layer is an
administrative that attempts to protect intellectual property
rights where appropriate “without stifling new intellectual property.”

So far, we have familiar aspects on online life. But Annalee went
further and offered one more levels of access. Operational
access reflects people who are creative, who can exploit the telecom
infrastructure to produce something unique to their culture and
hopefully of value on the world market. This is level where democracy
and power reside.

A good note on which to leave the issue of universal access is to ask
“Who gets to collect and use information?” The ramifications of this
subtle question were laid out by Calestaous Juma, founder of Kenya’s
African Centre for Technology Studies. He pointed out that Western
agencies collect an enormous amount of data about Africa that would be
of value to local people there, such as rainfall patterns. This
information is stored, however, in Washington. The people most
affected by the data do not decide what to collect and do not get the
information in a timely fashion (if at all). In addition to
eliminating the barriers of cost and technical access, agencies have
to consult with local users and figure out the best way to collect and
disseminate information.

Human rights

The highlight of the day for me was Dr. Patrick Ball’s keynote on the
use of Information and Communications Technologies (ICTS) for human
rights. It was so eye-opening that I am saving a description of it for
an upcoming article. The talk was a true revelation for those who
never previously saw a relationship between free software and human
rights; it was informative even for those who did.

Robert Guerra described
Privaterra,
the relatively new CPSR project he started to link computer experts
with human rights groups. He described it as “bringing the people with
the knowledge together with the people with the needs.”

Privaterra reflects the key insights of the day: that one cannot help
people simply by dropping technology in their laps, but should
evaluate their organizations holistically and design specific
solutions. Along these lines, Privaterra helps human rights groups set
up encryption, firewalls, VPNs, and backups. It also brings back
lessons from developing countries to the developed world.

Global representation

Doug Schuler is a long-term CPSR member dedicated to representation
and community-building; he has initiated more such new types of
representation than most members have even thought of joining. Doug
has written about community networks and played a key role in the
Seattle Community Network,
coordinated conferences on

participatory design
,
and developed
working groups at CPSR.
Over the past couple years he has focused on pulling together
discussion, community building, and giving a voice to the previously
silent through his
Public Sphere Project.
What all these things have in common is people participating in
decisions about their future.

But CPSR cannot entirely lose itself in the idealistic construction of
new public arenas, it also to deal with existing ones. Thus, Robert
Guerra described how we joined with some 80 other non-governmental
organizations from around the world to present issues of public
interest to the World Summit on the Information Society, a meeting
started by the
International Telecommunication Union
and approved by the U.N.

CPSR itself has gone global over the years. While we always had a few
members outside the United States, we’ve just recently had the
resources and visibility to start some chapters in other countries. We
heard from a Peruvian member, Katitza Rodriguez, about their
initiatives in providing wireless Internet access to rural health
clinics, promoting Internet access to public information, and leading
the debate on the .pe domain. A Japanese member named Nobuo Sakiyama
reported on that chapter’s intervention into the National ID debate, a
Carnivore-like device that intercepts email, and a government-funded, national Internet filtering system with a license that rules out reverse engineering or criticism.

ICANN

Because it controls such a central Internet resource, and because this
year’s Wiener Award went to one of its most prominent critics,
ICANN deserves its own section.

ICANN is many things: a trough at which lawyers and consultants line
up to slurp greedily from public funds, a madhouse where complex
subdivisions of subdivisions of organizations strive to make their
voices heard and are indulged or ignored at the Board’s whim, and–not
least–a powerful standards-making body whose decisions have a
long-range policy impact on the use of the Internet.

CPSR chair Hans Klein, in an afternoon presentation, pointed out that
ICANN had turned the Law of the Ungovernable Internet into the Myth of
the Ungovernable Internet. Although he said that the board’s recent
elimination of public representation was a classic case of a public
body being captured by a private interest, he was cautionary but not
totally pessimistic on the question of whether ICANN could be opened
up (or replaced).

At his evening talk, Wiener Award winner Karl Auerbach, one of the few
people who has the honor of getting on the ICANN board through public
election (and even the election is the butt of semantic quibbles)
talked about the ways ICANN has frittered away legitimacy and support,
such as by fighting ridiculous battles with national governments. He
described its sheer incompetence in managing the major resource
entrusted to it (the Domain Name System) as well as in its basic
actions as a business entity.

More fundamentally, Karl described the ambiguous position ICANN
occupies in between a public and private organization, possessing
governmental functions but run like a corporation. Although the
U.S. Department of Commerce could rein it in or dissolve it, they are
stymied by their confusion over its claim to by a private corporation
(and the ideology that says governments should not interfere with
private corporations). He also laid out his suggestion for breaking
ICANN into four parts along natural fault lines: one part for IP
address assignment, one for protocol numbers, one for technical
administration of the Domain Name System, and one for policy issues
related to the Domain Name System.

Miscellaneous

On a day like Saturday, everything seemed to fit together. But in
writing up the day, some fine presentations didn’t seem to go in any
particular category.

Tu Tran, winner of CPSR’s annual student essay contest, delivered a
quite professional talk about computer forensics, looking at it from
many points of view. Courts are increasingly allowing searches of
computers for evidence related both to crimes and to civil suits.

Not all searches require a warrant: the court may allow a search
without a warrant if the person did not have a “reasonable
expectation” that the information would remain hidden. You could lose
this “reasonable expectation” through something as trivial as sending
the information to a colleague over email; now another party can
demand the information. Of course, some critical safeguards remain:
they have to show probably cause that the information pertains to a
case and give a precise description of the item to be found.

And how easily can information be found? Everyday encryption programs
are good for most purposes, but can be cracked by a determined
opponent. This includes, obviously, the U.S. government, when a
journalist in Afghanistan got his hands on a computer and hard disk
formerly owned by an Al Qaeda member. Thousands of files were
retrieved, although Ms. Tran did not reveal the contents of those
files. (Soft porn? Metallica songs?)

Deleting files, as most administrators know, offers practically no
protection against retrieval. Zeroing out a disk is little better
(although it’s pretty good when done twice) and even reformatting
removes just pointers to files rather than the files
themselves. Tran’s recommendation: if you want to prevent data from
being retrieved, drill a hole in your disk.

Carlos Osorio presented research questioning the very foundations of
software licensing. Far from being a form of piracy, the spread of
unlicensed software in new markets creates a bigger market for
licensed versions.

This is not simply a matter of familiar network effects. Native users
offer the best possible marketing. Why spend hundreds of thousands of
dollars exporting marketing staff and a canned strategy to a place
with a different culture, when end-users copying your software can
talk it up with all the friends and colleagues for you?

While Carlos suggested several ways proprietary software companies can
make their licenses more appealing–such as offering good customer
service or releasing new versions frequently–he ultimately
recommended the ultimate approach as the most natural approach to
gaining markets: distributing free and open source software.

The conference was long but never tedious; tiring but not
exhausting. Several of us came away with new energy as well as new
ideas of where to apply it. I felt great pain thinking that many of
the areas where good work is being done may soon see it all swept away
by the storms and floods caused by global warming. But as much as we
can bring people to the Internet and the Internet to the people, we
can increase discussion of this and other critical issues facing us
today.

What could you do to make a difference in the world?

AddThis Social Bookmark Button

Related link: http://kerneltrap.org/node.php?id=444

My biggest gripe with proprietary software is that it inhibits my rights. The most important of these rights is Freedom Zero: the right to use the software as you see fit.

While there are some proprietary software companies that have acted in good faith, I’m still concerned about this tension where freedom is involved. Do I have the right to use the software if the copyright holders somehow find me objectionable? Do I still control my data? Do I have the right to switch to a competing product, or to cease using the product at my convenience?

That’s why I’m saddened by the actions of BitMover, the company behind BitKeeper. That’s why I’m saddened by the “false pragmatism” that’s led open source developers to use this tool.

BitMover exists to make money. That’s fine. It offers a useful product and service to the Linux kernel developers in exchange for visibility, status, and a steady stream of bug reports and feature requests. That’s also fine.

BitMover makes free (as in price, not freedom) BitKeeper binaries available to developers under the BKL (BitKeeper License). The problem is, in my mind, threefold. First, the licence may be amended at any time. So it has. Second, using the product requires you to submit your project history (”Metadata” in BK terms) to a BitMover-approved server. Third, reportedly, the “free” binaries are upgraded automatically when they contact the server — effectively pushing down new license terms.

I don’t intend to single out BitMover as the Bad Guy of the Day. Putting source control and change management in place for the Linux kernel was very important, and it’s been positive overall. However, the friction between proprietary interests and freedom will never go away.

Linus and several other kernel developers chose to go with what they perceived to be “the best tool for the job”. In doing so, they’re taking several risks:

  • that the licence will not be amended to terms with which they disagree in the future
  • that they will have access to and control of their metadata in the future
  • that they will not be forced to accept amended licences by being forced into upgrades
  • that, even if the current copyright holders act in good faith, they will never be replaced by a somewhat harsher entity

Time will tell if the BitKeeper situation resolves this friction.

It’s never worth giving up these freedoms, though. That’s why I say it’s a false pragmatism. Surely the “best tool for the job” is a tool that won’t make your life harder in the future. Only truly free software can make that guarantee.

Kevin Bedell

AddThis Social Bookmark Button

Related link: http://xml.apache.org/axis

It likely that users of Apache Soap and other soap implementations will begin migrating to Axis now that it has matured to this level. Axis had its first Alpha release over a year ago and has been through 8 additional release cycles since then.

One of the goals for this release was to communicate to the Web Services and Java communities at large that Axis has matured significantly and should now be considered as a viable alternative for Web Service applications written in Java.

Axis is already in wide use in a variety of application areas. For example, it provides the soap engine behind the JRun and Cold Fusion servers as well for JBoss.NET.

In addition to using it for production applications, Axis provides a great way for Java programmers to learn Web Services. The sample applications included with Axis are good and they can all be run using Tomcat (or any number of Servlet containers).

This is a significant milestone for Web Services technology and Open Source. Congratulations to the Axis team!

Matthew Langham

AddThis Social Bookmark Button

The past few weeks have seen me out and about visiting various large companies here in Germany and talking about the open source work we do (mostly to do with Apache Cocoon and related projects). Working in this area has given me some interesting insights into the relationships between customers and “suppliers” (meaning software companies like ourselves).

Two years ago when we started on this interesting journey, we were faced with having to argue why we use and work on open source software: “if it’s free then it can’t be any good”. Now, we are often met with the comment of “oh, we use that here as well”. So the times have definitely changed.

On the other hand it still surprises me, how low the profile of open source solutions such as Cocoon actually is. Once you get the possibility of actually being able to speak on and demonstrate what these open source projects are capable of, you can really see the wheels starting to turn in the heads of the people attending. But it’s getting “in” that is really still the problem.

There is no lobby, there is no initiative. It’s hard work! Ok, for Linux this is different. Companies such as SuSE or IBM have are increasing the visibility of Linux every day. But what about the other zillions of open source projects out there?

We need to increase the visibility of the open source projects and make sure people are aware of them. Here are some ideas of what you can do:

  • Speak up on the fact that you are using open source! Make it public. I know of several companies that are using open source “but aren’t allowed to say so”.
  • Support open source initiatives or start one in your particular area of work.
  • Write articles or books on your favorite open source software - or on how you are using it.
  • Don’t just talk about a certain open source project - get involved! Everyone can “give back” - not just programmers. Write documentation, send in your performance test results, bug the developers to add what you need.
  • When looking for a particular solution check whether an open source project can do what you need - if not - let them know what’s missing.
  • Help Steve out with OSDIR.com. He is building a catalog of open source solutions.
  • Bug Tim to put on more OSCONs! Especially in Europe :-)

And probably much more. Let me know how you are increasing the visibility for open source solutions.

What other ways are there of increasing the visibility of open source solutions?

David Sklar

AddThis Social Bookmark Button

Related link: http://wwwac.org/main.html#ossig

At a meeting last night of the WWWAC Open Source SIG, Tom Clarke of Union Square Internet Development gave a talk on how his company moved Sesame Workshop from a proprietary platform to an open one.

The motivation for using Open Source products came from within Sesame Workshop and it was not ideological — it was financial. The ongoing costs of licensing and maintenance for StoryServer, Oracle, and their Sun hardware was too much to bear, especially with a decreased IT staff.

In 4 or 5 months, Sesame Workshop’s sites were rebuilt using PHP and PostgreSQL, running under Apache and Linux on Intel-based hardware. The new sites also use add-ons popular in the PHP community: PHP Accelerator for caching compiled scripts, JPCache for caching generated pages, and ADOdb for database access and query caching.

The success of this project is a reminder that ideology aside, sometimes Open Source is just better for the bottom line.

AddThis Social Bookmark Button

A recent thread on the Portland Perl Mongers list asked the question “Why, if good programming practices are well-described and well known, do so many programmers and shops not follow The Rules?”

Several people responded, and we each have our opinions. After detouring through a clever (read trick) question about efficiency, one member floated an interesting proposal.

Why not get together, read a good book (like Andy and Dave’s The Pragmatic Programmer), and discuss a section or two? A small group of working and hobbyist coders would have time to do some code review and to share real-world experiences.

I’ve long argued that most professional software development lacks any kind of mentoring. Open source development (and not just Free Software development) can provide some of that — but we don’t go far enough.

I’m not sure what’s holding us back. Maybe it’s the general lack of discipline (as kicked off the thread). Maybe it’s cultural, based on a cowboy-frontier ethic. Perhaps the uncertainty surrounding intellectual property and idea ownership makes things tense.

Whatever the case, it’s nice to see that others recognize the need to improve the nature of software development and to discuss things as peers. Hopefully this idea will work out.

Are you involved in peering or mentoring? What’s your experience?

Advertisement