[p2p-research] Fwd: [Autonomo.us] ... and freedom into a loser?

Michel Bauwens michelsub2004 at gmail.com
Wed Jul 22 06:54:25 CEST 2009


on chrome and free software

---------- Forwarded message ----------
From: Thomas Lord <lord at emf.net>
Date: Wed, Jul 22, 2009 at 3:26 AM
Subject: Re: [Autonomo.us] ... and freedom into a loser?
To: "Benj. Mako Hill" <mako at atdot.cc>
Cc: "autonomo.us discussion mailing list" <discuss at lists.autonomo.us>


On Thu, 2009-07-16 at 22:01 -0500, Benj. Mako Hill wrote:
> <quote who="Luis Villa" date="Sat, Jul 11, 2009 at 02:21:26PM -0400">
> >
http://www.freesoftwaremagazine.com/columns/why_google_chrome_os_will_turn_gnu_linux_desktop_winner
> >
> > Seems ripe for deconstruction on autonomo.us.
>
> Done: http://autonomo.us/2009/07/chrome-os-and-autonomy/
>
> Thanks for the prompting Luis!


Benjamin, I'm not sure you're looking at
this in quite the right way.

Regardless of anything that Google does or does
not do, W3C is pretty darn far along in specifying
a new OS.   We could, for the sake of this conversation,
dub that new OS to be w3cOS.

w3cOS, somewhat like the Hurd, can be regarded
as a "micro-kernel".  The interface to system
facilities is (mostly) through message passing
(such as HTTP requests).  WebDAV provides one
possible file system API.   Process control is
ad hoc, depending on the context, but generally
speaking URLs identify contexts in which processes
might exist.

The one big difference from the message-passing
micro-kernel design is in the area of user
interaction in GUIs.   In that area, programs
can have limited control over a GUI terminal by
replying to requests with HTML content, image files,
and so forth -- but more dynamic forms of interaction
are handled through W3Cs taxonomy of events for input
and through the DOM model of a GUI display list.
Probably, someday, this difference will begin to
disappear.  For example, the interface to the DOM
can be expressed as HTTP GET and PUT requests.
An event stream can be modeled as the multi-part
reply to an HTTP GET request.

w3cOS, in other words, is converging on the design of
a pure microkernel in which - at least abstractly -
HTTP primitives are the only system call.  I say "abstractly"
meaning that it isn't literally necessary for an HTTP API
to translate every request and reply into HTTP bytes
on a wire;  some calls can be optimized to take a shorter
path.

So the picture you can see coming together for
w3cOS has some interesting features in common
with the GNU Hurd.  Both are operating systems built
around a message passing primitive.  Both allow
"user space" programs to pick and choose how various
OS capabilities - like file storage - are provided.
This is really a great deal of freedom for users.

Nobody has yet fully implemented a "self contained
and complete" w3cOS.  The closest approximation is
probably javascript on browsers.    If we switch
from Javascript to, say, C, then programs might well
have HTTP available and a DOM display-list and an
API to w3c events -- but something like Posix systems
calls will also be exposed and essential.  In the future,
though, I think that is likely to change and we'll have
very general programming environments that are more
like javascript in a browser, with only w3cOS interfaces
to services provided outside of the program.

That's an attractive architecture for an OS for well
known reasons.   One reason that is gaining a lot of
attention today through examples like "google docs",
is that the message passing interface to basic
OS functions means that applications can be split with
the UI running on one machine and the database or
file system running remotely.  So, a user can have his
documents on some server on the web but access them
and edit them from nearly any w3cOS terminal, anywhere
in the world.   It is hard to see this as anything
but either neutral or a boon to users' software freedoms.

By the (scant) accounts, it sounds as if ChromeOS
is not a fully self-contained, complete w3cOS implementation
but that it is a lot closer to such a thing than
conventional GNU/Linux systems.  And that's it's main point.

I suspect that ChromeOS will be a set-back for standard
GNU/Linux systems in this way:  I suspect that Google will
not leave "user space" in anything quite like a traditional
or compatible form.   I don't know how radical they will
be but I don't have trouble imagining them going so far as
to, say, ditch /bin/sh  (probably not in the first release,
though).   To the extent I'm right, it will probably contain
lots of GNU code but it won't be anything like an ordinary
GNU/Linux system.   We already know it has a "new window
system" and so, of course, OpenOffice and friends will be
second class citizens if they run on ChromeOS at all.

But the good news, apparently, is their promise that
ChromeOS will be free software.  That's a big win for
the software freedom of users IF you believe that
w3cOS is important, desirable, and unavoidable.  It means
that before a proprietary OS vendor has even a partial
approximation of a w3cOS self-contained and complete
system, a good free software approximation - a good starting
point - will be publicly available.

There is another way in which reusing the Linux kernel
to approximate w3cOS is a win for people everywhere:

w3cOS, aside from the convenience of its distributed
nature, is "green tech" in a sense.   Data centers
(when well designed) are very efficient.  Low-capability
terminals (mobile devices, etc.) are efficient.  They
both (can be) comparatively inexpensive compared to
traditional desktop machines, workstations, and
office server racks - so this is also a more democratizing
architecture.

The *only* problem for software freedom in this whole
arrangement comes from how certain people are inclined
to use this new architecture.  And by this I mean the
technical style of software that people write for it
and the business models people build on it.

A good example of an abuse of user freedom might
be, just to pick on a famous target, Twitter.
So, why do I say Twitter is an "abuse"...

When freedom loving hackers set out to build
something in the vague space of "instant messaging"
they took the approach of Jabber and designed
a decentralized, distributed, peering-based protocol.
When Twitter was invented, as Dave Weiner will be
happy to tell you about at great length, RSS
already existed, could be adapted to provide the
same functionality (he's doing so today), and
was decentralized, distributed, and peering-based.
(If you think Weiner is a fool, and really, who doesn't
(kidding ;-) then how about Google Wave?  Eric
Schmidt has already commented, re Twitter, that
he regards the distributed, decentralized Wave
architecture as, in part, a superior replacement.)
So, it was obnoxious to write Twitter the way it
was implemented.

Why did they do such an obnoxious thing?  Because
of how the investment community (VCs and such)
currently think about business models.

Past generations of proprietary software makers
(think, Gates - DOS) went "proprietary" in order
to be legally entitled to collect rent on
every copy of their programs.   The new generation
is thinking that, what with this new Interweb thing,
they'll instead maintain exactly one copy of
the program.  Instead of collecting rent from
users, they'll leverage the fact that all users
must use that one copy.  They'll leverage that
control over users by spying on users and selling
derivatives of the surveillance data they collect
and by forcing the users to put up with a
bombardment of advertising, with ad space
also sold to third parties.

It is that business model - not w3cOS and not
ChromeOS which is the real threat to user freedom.
Nothing in w3cOS or ChromeOS makes that business
model necessary and there are better styles in
which to write better w3cOS programs.  There are
probably good wholesome ways to make money
while so doing.

Our attitude, I think, should not be that we ought
to resist or discourage use of or otherwise
be "against" ChromeOS.  It's a fine thing assuming
that we really do receive it as free software.

Rather, our attitude should be that we must fight
against bogus business models like Twitter and
against bogus software architectures like Twitter.

Suppose that, in 5 years, quite inexpensive
mobile computers running ChromeOS are very common.

The free software movement will be in good shape
if, at the same time, it is offering up web
service infrastructure that provides all essential
functionality but that is distributed, decentralized
(and under user or user-community control), and
peering based.   I think that these are problems
the free software movement best addresses with
hacking, data center provisioning and sublets,
and education.

ChromeOS, if they did a good job and if it is
in fact provided as free software, is a boon:
it has a good opportunity to save the rest of us
a lot of work.

-t



_______________________________________________
Discuss mailing list
Discuss at lists.autonomo.us
http://lists.autonomo.us/mailman/listinfo/discuss



-- 
Working at http://en.wikipedia.org/wiki/Dhurakij_Pundit_University -
http://www.dpu.ac.th/dpuic/info/Research.html -
http://www.asianforesightinstitute.org/index.php/eng/The-AFI

Volunteering at the P2P Foundation:
http://p2pfoundation.net  - http://blog.p2pfoundation.net -
http://p2pfoundation.ning.com

Monitor updates at http://del.icio.us/mbauwens

The work of the P2P Foundation is supported by SHIFTN,
http://www.shiftn.com/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listcultures.org/pipermail/p2presearch_listcultures.org/attachments/20090722/8147859e/attachment-0001.html>


More information about the p2presearch mailing list