The Computer in My Pocket

An updated version of this article was published in the FSF‘s Fall 2009 members’ bulletin. Additionally, the article was translated into Spanish by Carolina Flores Hine.

If we’ve kept up with projections, by the end of this year, the world will be home to 3 billion mobile phones. That’s nearly one phone for every other living human being. Although these phones open up a world of important new opportunities in communication, creativity, and cooperation — and it’s important not to understate this fact — they also represent a step toward a sort of technological dystopia not unlike Stallman’s Right To Read. Phones represent one of the most locked-down, proprietary, and generally unfree technologies in wide distribution. The implications for software freedom and technological empowerment are dire.

But despite the fact that mobile phones represent what may be the greatest threat to software freedom today, the free software community has — with a number of notable exceptions that I want to both thank and draw increased attention to — been mostly silent on the issue.

I know passionate advocates of software freedom who work tirelessly to rid themselves and the world of a handful of binary blobs in the Linux kernel — important work that we all benefit from. And yet, even some of these "hardliners" don’t seem to hold their phones to their same standards as their laptops. Ubuntu’s decision to ship a new binary driver remains more controversial than the fact that the vast majority of the world’s computer using population knows nothing other than phone-based computers that remain almost unthinkably unfree and which remain almost entirely unfreeable when compared to personal computers. For most of the world’s computer users’, there is no option of, and essentially no hope for, freedom on their current devices.

It shocks me that anyone, especially free software advocates, would happily put up with such non-free computers.[1] I think part of the reason lies in the fact that most users of mobile phones, and even most phone users that care about software freedom and technological autonomy, don’t think of their phones as computers. Thinking that our phones as computers will not solve any of the problems I’ve alluded to. But doing so remains an essential first step toward any solution. Although we must still work to build viable, widely accessible, and compelling free phones, we must first convince both users and developers that this is an important goal. Reminding people that our phones, both free and non-free, are powerful general-purpose computers remains an important and still largely unfufilled part of this process.

We must find ways to remind ourselves and others of the fact that modern phones are powerful computers with powerful interfaces that are useful for a unimaginable variety of arbitrary applications. We must focus on the fact that these computers have microphones, sensors, and other sensors and that we trust them with our closest secrets and most sensitive data. We must not forget that, in almost all cases, these computers remain controlled, completely and ultimately, by companies that very few of us trust at all.

I’m not sure how we will accomplish this task. But more of us need to think long, hard, and creatively about this problem. I’ll be calling my phone "my computer" as a first, very personal, step. I have done this over the last week and it has led to some conversations with slightly confused acquaintances. Of course, this doesn’t make my phone any less free. But it does mean I’m talking more about the non-freeness most of us have put up with too silently. At this stage, that seems like progress.

[1] Like many free software advocates, my phone is also a computer running a combination of free and non-free software. I use it unhappily and am doing what I can to change this.

22 thoughts on “The Computer in My Pocket”

  1. I ended up buying an N900. Still keeping my Freerunner active though, running Android again now (though I tried SHR in December).

    I refuse to describe the N900 as a phone. I explain to people, “that would be like calling a house a bed, because you can sleep in it.”

  2. Have called my smart-phone a “communicator” for a number of years now, so I am in agreement that the term phone can be replaced with a term that more aptly describes the device function.  In fact, the word “phone” literally translates to “voice”, and “telephone” translates to “remote voice”.  Saying “phone” makes as much sense as describing the device simply on the SMS-messaging function.

  3. Well, I also own a openmoko hone, and while It may not be as smooth as others phones, the whole ecosystem is moving quite fast, and there is very mature solution such as qtmoko ( qtopia community branch, rebirth from ashes as a community project after nokia orphaned it ).

    And the whole project remind me of desktop free software 10 years ago ( or even before ). People were telling that you were crazy to use something that looked so primitiv, and that they prefered use Windows or MacOs, because it was more polished.

    In the same idea, some interesting stuff could be done if we had the firmware of a wifi chipset ( like running a tiny embedded os for creating mesh network, like OLPC do. We can (probably) use embedded real time kernel, such as Ecos or TinyOs ). The same could be said of most firmware, from BIOS ( coreboot anyone ) to software counted as firmware ( such as the OS running a networked printer ).

  4. Mako, I’ve translated your article into spanish. As we have talked in the past, this is a very important issue. I really like when you say “the computer in my pocket”.

    About OpenMoko, I don’t know if this is gping to work, bu maybe you would like to read about Brazil’s opportunity http://lwn.net/Articles/341063/

    And just to make sure I translated it well I would like to point two things: you wrote
    “have microphones, sensors, and other sensors” Is that correct “other sensors”?
    “Of course, this doesn’t make my phone any less free” Any less or more?

    PS: Microwaves are not computers… and doesn’t compromise people’s freedom.

  5. @Graham: Someone else can correct me if I’m wrong, but I believe the FSF generally distinguishes between devices that you’d normally install software on.

    Typically, you don’t install software on a microwave or a washing machine, even though those devices may very well be running software. It might be cool to be able to re-program them, but it wouldn’t be a challenge to your freedom to use your microwave if the software wasn’t free because using a microwave doesn’t typically mean running code on a microwave.

    Same goes for old school phones.

    But “phones” are now “smartphones,” which are really just handheld computers. They have app stores. It’s an expected and encouraged behaviour to run software applications on a mobile computer — thus, the freedom to use your mobile computer requires that the software be free.

  6. I own an OpenMoko Neo Freerunner, and I’ve been using it daily since March. It’s not great, but it works, and it’s a step in the right direction.

    I don’t have a ton of hope for the future of the project though, either.

    But, it’s been a great temporary phone. I’ve been able to run the OM2009 distribution, as well as give Android a try.

    But I’m most interested in Maemo right now. Seriously considering buying a Nokia N900. The Replicant Project sounds interesting (hadn’t heard of it), but Android is “Open Core” style software. Maemo seems to be a realization of what OpenMoko had hoped to be.

    (Someone’s actually working on porting Maemo to the Freerunner, but it doesn’t seem like that’s coming along too quickly… it’d be nice to try it out.)

  7. Playing devil’s advocate here – What about your microwave? Are you going to start demanding the schematics for that as well as the source code for whatever programs it has on its ROM chips? You can extend the lunacy forwards to any device that contains a microchip or even a circuit board. I’d be very interested to hear where some people think the line is….

  8. Excellent post. Thank you for pointing out something so important.

    As an anecdote, when I purchased my most recent (phone) computer, my #1 requirement was that it not be running anything from Microsoft (or Apple for that matter). Perhaps that’s a fairly easy thing most people can do. It doesn’t make it free, but it does vote against the two biggest problem vendors.

    Looking forward to the day when (phone) computers are free in the true sense.

  9. For a long time in the US, the only phones you could get with both multitasking and root were WinCE.  I didn’t hear much enthusiasm from the hacker crowd about this….

    Root was a big deal for US carriers.  It’s not as strong as “arbitrarily reflashable”.  The iPhone has neither officially but both in the grey world (seems like a big waste of human effort).  And Apple isn’t threatening to sue yet.

    I’d say the next step up from arbitrarily reflashable is legally remixable factory firmware.  If Google’s Android business unit is going to be jerks about this, I…I don’t know what I think.  It just makes me really tired.  And the harder they push people into building a DFSG stack, the sooner the anonymous Chinese hardware houses really start shipping unlocked commodity phones.  Seems like a negative outcome for Google’s hardware partners.

    If it’s the partners pushing for this, well, score another brilliant tactical decision in the history of mobile telecommunication.

  10. I am a bit surprised that the Replicant project isn’t mentioned in the main post (although it is in Graziano’s comment).  It’s the only project dedicated to creating a fully Free Android stack.  Currently we have only one developer actively working on it, although others are interested, particularly since the Open Android Alliance got started and interested.  I see Mako’s comment that he doesn’t want to back a specific project, but the main problem for all of us is relative obscurity and nearly no developers, so it seems that a post like this would do well to list projects and recruit developers.

  11. http://etbe.coker.com.au/2009/10/18/mobile-phones-are-computers/

    Some of the newer phones do a fairly poor job at core telephony functionality.  In the above blog post I satirise the state of the market by suggesting that they sell phones that can’t make phone calls (it’s the logical next step).  I expect that as phones become more focussed on functions other than telephony it will become increasingly obvious that the phone is a computer – and should be a general purpose computer controlled by it’s owner.

  12. You might be interested in seeing what Nokia is doing and how its evolving into ‘open’ ever since it bought Trolltech.
    I won’t argue its open right now, though the newest Maemo is close but there certainly is a trend, a change visible already. Big company, slow change.

    See; http://bit.ly/Btc9e
    With Qt (open source) the applications that run on the phones became open too. You can replace the apps with open source ones, which is a direct user visible change at least.
    See; http://www.koffice.org/news/office-viewer-for-maemo5-based-on-koffice/ for example.

  13. With OpenMoko still not quite ready for use as a stable primary phone, and its future somewhat up in the air, the current “most free” usable phone looks like the N900.  Unlike the Pre and the Android non-developer phones, it doesn’t need hacking or jailbreaking or unlocking.  It still has a handful of proprietary software on it, but most of that proves avoidable or uninstallable with the exception of drivers.

    I personally want to use entirely Free Software, but at the same time I’ll take the pragmatic position of running something more Free rather than something less Free.  To make a historical analogy, before a fully Free Software system existed, I’d have run the GNU userspace on top of a proprietary UNIX system, and tried to do what I could to replace the remaining proprietary bits.

  14. I hear ya, but I suspect that until some of Googles binary parts are replaced and its fully free, the choice seems to be a custom Android image and partial freedom, or MAYBE one of the alternatives.

    Yeah its a shame moko kinda fizzled. So much potential. I tell ya tho. When WiMAX starts becoming more prevelant, theres an opening there for a phone that uses WiMax + Sip as its comms substrate with all free software and open hardware designs. Smash the telcos!

  15. I want an Android phone that can make calls over WiFi using XMPP, MSN, or Skype, or use TracFone minutes where no WiFi connection is available.

    Does such a thing exist?  The other thing I was considering was a jailbroken iPod Touch..

  16. I use an openmoko as my daily phone its almost free as in freedom as there are still some blobs regarding gsm drivers as I have been told. But for the majority its free and runs debian on it. Google for hackable:1 an ongoing project revolving around running free software (debian in this case) on the freerunner.

  17. Russell: I appreciate the Freerunner but it seems that the platform has little in the form of a future ahead of it with OpenMoko out of the picture.

    There’s several interesting projects to build free as in autonomy Android builds and phones around them. I’m not picking a horse in this race but I’m thrilled that there are people working on this and I’m excitedly awaiting progress.

  18. Exactly! That is why even though it has it’s huge technical problems I am a proud owner of an OpenMoko Neo Freerunner. If you want freedom then it is perhaps the only chance.

    Nokia Palm and Android are not quite as open as advertised. All are disappointments as far as my rights are concerned.

    Posted from a Neo.

  19. I think calling it a computer instead of a phone just confuses people. Apple’s already done more than that to make people realize their phones are computers, too. They just did it in a way that involves a tightly locked-down, DRMed platform.

    On the other hand, it also has a standards-compliant browser, and is able to run Javascript/HTML-based “web apps” …

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>