Facebook location vs the ACLU

Ben Werdmuller — August 19, 2010

A lot has been said about Facebook’s new location feature, which is available via its iPhone client or HTML5 mobile web app. It’s a shrewd move, to be sure, and by now it’s clear that the company has ambitions to be the next decade’s tech behemoth. While Microsoft has a grip over stand-alone computing, Apple over mobile devices, and Google over search, Facebook has managed to become the de facto gateway for social information.

One indication of how powerful it is comes from the following article:

Places allows your friends to tag you when they check in somewhere, and Facebook makes it very easy to say “yes” to allowing your friends to check in for you. But when it comes to opting out of that feature, you  are only given a “not now” option (aka ask me again later). “No” isn’t one of the easy options.

This warning doesn’t come from a computer security forum, the EFF, or a group of interested hackers. It comes from the ACLU, the groundbreaking organization that aims to protect Americans’ civil rights. In other words, Facebook privacy is now being watched by the same group pushing for the closure of Guantanamo Bay. A powerful place to be – but perhaps an indication that Zuckerberg needs to re-assess his take on privacy?

In some ways, it doesn’t matter. Software projects like Status.net and Cliqset (Youtube link) are establishing a resilient, decentralized network where privacy is in users’ hands by default. These new applications are easy to use, accessible and ready for both private individuals and enterprises to pick up – and as such, represent the real future of social data on the web.

For your consideration at SXSW Interactive

Ben Werdmuller — August 11, 2010

I’ve submitted a talk for South By Southwest 2011:

Building the User-centered Web

By establishing a general standard for social application interactions, the services and technologies used to make connections become less relevant; the Internet is people, one big social network, and users no longer have to worry about how they connect. We can all get on with communicating and collaborating in contextually appropriate ways. In this talk, I’ll discuss how to build a decentralized, user-centered web using existing and emerging technologies. I hope you’ll join me.

If you’d like to see this at the next SXSW, please visit this page to vote.

Paul Adrian also has submitted a talk, this time about the future of journalism, and how technology can help:

Technology Can Create a Press for the People

I believe it is time for a “news” revolution. A new press should produce comprehensive streams of rigorously non-partisan original reporting on the issues that are most important to our lives. Once informed, we the people should have a space where we can discuss the important issues of our times without having to submit to intolerance, deceptive campaigning and fear-mongering. Through the use of technology and new business models, news innovators can provide more credible information and space for civil discussions. The goal is to empower citizens by providing access to superior reporting and the platform for community organization necessary for the People once again to become powerful participants in democracy.

As well as being an award-winning journalist and technology entrepreneur, Paul is an inspiring speaker who is worth listening to. You can vote for his talk over here.

Blowing up markets

Ben Werdmuller — July 6, 2010

The Red VicBanning sublets

Last week, the State of New York passed a bill that bans short-term rentals: specifically, no homeowner or renter may sublet their home for less than a month. The target is sites like AirBNB, an up and coming website that allows travelers to eschew pricey hotels – and their accompanying hotel room occupancy tax – in favor of private homes.

If the governor chooses to pass the legislation (as opposed to veto it), AirBNB will effectively be outlawed, and with it, a grassroots marketplace economy for short-term accommodation. New York State will have cemented hotels and bed & breakfasts as gatekeepers to the city for travelers who can’t stay with friends or relatives.

To me, this is an interesting reaction: it shows, once again, that established gatekeepers are terrified of the Internet. We’re used to that by now in the context of media content – we already know that newspapers, publishers, record companies and movie distributors aren’t as important as they were – but this is a scarcity-driven marketplace. It used to be that finding a safe, clean room in a strange city was a hard problem, so we turned to hotels as a trusted source. Running a hotel is in itself an expensive, tough business, and as a result there were a limited number in any given city, and the price went up according to demand. Although the hotel business is a ruthless game, it’s always been hotels competing with other hotels.

Now, though, we can visit websites like AirBNB and Couchsurfing, where private citizens can offer their homes to travelers, and the site will let us know who we can trust based on other peoples’ experiences. The marketplace has been blown wide open, and it turns out that a lot of us would rather go for a cheaper, friendlier option. I wouldn’t put money on New York blotting out short sublets for long.

Power to the people

We’re going to be seeing a lot more of this, in all kinds of market sectors. We’re already seeing ridesharing sites become popular, for example, blowing up the market previously owned by taxicabs and making it available to anyone who happens to be driving somewhere. Effectively this formalizes hitchhiking, making it both safer and more efficient.

It all comes down to one simple rule: People want to be free.

The Internet is opinionated: as a medium, it inherently works to empower people and eliminate hierarchies in society. It shouldn’t be a surprise that the most popular Internet companies hail from California; their philosophies are direct descendents of the civil rights activism that took place there in the sixties and seventies. In many cases, it’s even the same people. (Or – and here I put up my hand as the son of Berkeley “radicals” – their children.)

Gatekeepers – companies, structures or processes that act as exclusive barriers or filters – are not long for this world. Where gatekeepers exist, they do so because the alternative was inconvenient at the time when the gatekeeper became established – not because they’re inherently better than an empowered population. Those organizations, companies, and even governments, need to look at themselves very carefully and figure out what needs to be changed, before those things are changed for them.

Write real-time web applications with XMPP, PHP, and JavaScript

Ben Werdmuller — June 25, 2010

I’ve written a tutorial for writing XMPP-based web applications over at IBM DeveloperWorks:

Real-time web applications are networked applications, with web-based user interfaces, that display Internet information as soon as it’s published. Examples include social news aggregators and monitoring tools that continually update themselves with data from an external source. In this tutorial, you will create Pingstream, a small notification tool that uses PHP and JavaScript to communicate over the Extensible Messaging and Presence Protocol (XMPP), a set of XML technologies designed to support presence and real-time-communications functionality.

You can read the whole tutorial here. IBM have made it a featured article, commenting, “bet you have it up and running before lunch.” I hope you find it useful. (And don’t forget to check out my introduction to Activity Streams, also written for IBM.)

Photo: IBM by antonfortunato, released under a Creative Commons license.

An introduction to Activity Streams

Ben Werdmuller — June 22, 2010

I’ve written an introduction to the Activity Streams standard for IBM DeveloperWorks:

Enter Activity Streams, an evolving standard that extends Atom for expressing social objects. Although it is a young standard, Activity Streams is fast becoming the de facto method for syndicating activity between web applications. For example, MySpace, Facebook, and TypePad all now produce Activity Streams XML feeds. But this technology isn’t just for the consumer web environment. As corporate intranets and internal software become more social, solid business reasons support implementing Activity Streams as a feature. This article describes Activity Streams in detail, considers its potential uses in enterprise environments, and provides some examples for interpreting Activity Streams feeds using PHP.

The full article is over here.

My pro web apps: June 2010

Ben Werdmuller — June 8, 2010

I thought I’d list the third-party web applications I use on a daily basis to do my job. There are plenty more that I use for fun (Flickr) or find useful (Twitter) – but these are the things that have become integral to how I make money. I’d be interested to hear yours: if you post them to Twitter with the hashtag #myprowebapps, or leave them in the comments, I’ll do an update in a future post.

My apps, then:

  • Gmail (email). I used to be a die-hard Mozilla Thunderbird user, but during my Elgg days I switched over. There are probably better email web apps to be using these days; ideally I’d like one that runs on my own infrastructure rather than in Google’s cloud. But with one tweak (I have a separate pane that keeps all starred messages at the top of the screen, so I know what to reply to imminently), the default interface is all I really need.
  • Google Calendar (scheduling). I didn’t get into Google Calendar until I figured out how to sync it to my iPhone – and then it became invaluable. I get a reminder of imminent tasks wherever I am. Interoperability with Gmail for event invitations means I have an integrated system for keeping on top of calls and conferencing.
  • Producteev (task management). Until I found this, I’d been using Remember the Milk for tasks, which I never really got into, despite buying a pro account. Integration with Google Calendar is perfect, and the iPhone app has its own push notifications. And for my purposes, it’s free, which is even better.
  • Freckle (time management) has dramatically simplified the way I bill for my time. The integrated timer means I can effortlessly keep track of how many hours I’m spending on what project, and I get to export unbilled hours to a nicely-formatted automatic invoice. Offline access and the ability to mark invoices as paid would make me even happier.
  • Beanstalk (source code management) is by far the best hosted subversion repository provider I’ve found. (Projects can also be hosted using Git.) It integrates with a bunch of different applications, including Basecamp and Zendesk, but so far I’ve only needed to tie it to Lighthouse.
  • Lighthouse (issue management) is low on features compared to Trac (which I’ve used for years), and it’s true that I’d prefer an easy-to-use bug tracker that managed to incorporate things like Mylyn integration and bug priority levels. But when it comes to interacting with clients, given the choice between feature-packed and non-developer-friendly, I’ll pick the latter every time. Lighthouse is simple, well-designed and light years less painful to use than a tool like Bugzilla. It’s also proven pretty useful inside teams of developers, although there are usually complaints about missing features.

It should go without saying that I’m not involved with any of these companies, and none of them have paid me for this post. In fact, in the case of Freckle, Beantalk and Lighthouse, I happily pay them. I think subscription or one-off license charges are probably a better way for smaller software houses to fund their web applications, and I’m really glad to see these kinds of premium models become more popular.

I’d love to hear your thoughts on these, and the apps you find useful in your work. Leave a comment or write your own post and tweet it with the hashtag #myprowebapps.

Building a distributed social network? You’re doing it wrong.

Ben Werdmuller — June 4, 2010

Here are some distributed social networking platforms and technologies designed to facilitate distributed social networking:

Wow, that’s a lot! And following Diaspora’s flurry of both coverage and cash, you can bet there’ll be plenty more to come. But of all the projects listed above, I’d argue that only Status.net is orientated around consumer need. As a result, it’s the one most likely to survive, become self-sufficient and prosper. Several more – including DiSo and DSNP – are seeking to build out technologies that can support such products, rather than the products themselves. DiSo is certainly working with other vendors and projects, is full of super-smart people, and should do very well.

However, the others are basing their product on ideology and technology rather than a human use case. I worry that a lot of these projects will disappear – which is a shame, because they’re all doing great work.

Here’s a use case distinction I’ve been thinking about:

  • A social networking platform allows you to communicate and share with a specific group or community.
  • Distributed social networking software allows you to store and organize your own content and – optionally – share it with whoever you like.

Or to put it another way, in social networking platforms, sharing is the feature. In distributed social software, sharing is a feature. The two use cases are genuinely different: rather than being a competition between “monolithic” social communities and distributed social software, they’re used for different things. There is a place for both in the ecosystem – and there’s no real reason why they can’t work together.

As I pointed out in The Internet is People, in order to be successful, any social software you build either has to plug into an existing community, or be useful for the first user who joins. In distributed social software, you only ever have one user: distributed sharing, then, should be a piece of infrastructure that can be plugged into any kind of software.

Devices and desires: why the portable device wars are a red herring

Ben Werdmuller — June 3, 2010

A little pre-history

When I was a kid, I had an Atari 130XE. You’ve probably never heard of it. It was an 8-bit, all-in-one box that booted straight into BASIC; a flexible, well-built, sturdy computer.

There was just one problem: it wasn’t a ZX Spectrum or a Commodore Amiga.

At the time, Britain was undergoing a low-budget computing renaissance. Bedrooms up and down the country were filled with skinny boys (and yes, it was mostly boys) noisily loading games from cassette tapes and dutifully copying down source code listings from specialist magazines. The two engines of this renaissance were the Spectrum and the Amiga, and as such, the games, the tutorials and the social infrastructure were built for these two machines. Perhaps this helped me become more of a creative self-starter: I wrote my own games and stories instead of consuming other peoples’.

Later on, 16 bit computers became popular, and everyone upgraded to the Atari ST: a home machine powerful enough for creatives and musicians, but cool enough for game-playing kids. Except, perhaps inevitably, we had a PC. Running DOS. With a black-and-white Hercules display. Great if you wanted to plug economic figures through a spreadsheet, but lousy if you were a twelve-year-old who was mostly interested in playing The Secret of Monkey Island. Not only was the wholly PC incompatible with the Atari ST, but the PC was actually incompatible with itself: a game that worked on PCs with an EGA or VGA screen wouldn’t work with CGA or Hercules. Back then, the parts inside your computer were at least as important as the operating system you ran or the software you bought.

Plug and Play

Through heavy force and heavy lifting, Microsoft changed all that. Windows 95 was the first widely-accessible operating system that unified hardware platforms. Sure, you had to have an Intel-compatible processor, and it took them a while to get it right (for a while the system was redubbed “plug and pray”), but you didn’t have to mess with configuration files to get your computer working. This was a Big Deal.

Today, we’re used to not having to tinker with our machines. Windows will adapt to just about any hardware you throw it at, and even Linux has become an easy-to-use operating system (relatively speaking).

Better yet, we have data portability: in my house we’re running Windows 7, Mac OS X and Ubuntu, and I can move my documents between them interchangeably. Thanks to the web, and Java before it, we even have applications that don’t care what kind of operating system they run on. For an end user, things just work. That’s exactly how it should be.

Finally, computing is simple, data is interoperable and consumers are in control.

Uh oh: enter the portables

So just as we get a unified computing platform that’s easy to use and relatively simple for consumers to navigate, in comes a new device market that’s as fragmented and consumer-unfriendly as the computing market was in the eighties.

Android. iPhone OS. Windows 7 tablet edition. Windows Embedded Compact. Windows Phone. WebOS. ChromeOS. Kindle OS. Whew! It’s like 1986 all over again.

As a publisher or developer, figuring out which device to build for is a headache. Each one has a different operating system, possibly a different app store (something nobody had to worry about in the eighties), and a different set of underlying technologies. Do you exploit the iPad’s current success and develop for the locked-down Apple platform? Do you take advantage of Amazon’s huge built-in market and write a Kindle app? Do you hold out and wait for HP’s exciting-looking WebOS-powered tablet (which caused a storm recently by publicly moving away from Windows)?

Plug and Play (again)

The truth is, market forces are going to apply the same pressures to the mobile market that the personal computing sector felt in the early nineties. This story has played itself out several times now: one platform will emerge victorious. Judging by the lessons learned by IBM with their Personal Computer architecture, and both Microsoft and Linux for operating systems, it’s likely to be one which is:

  • Open: anyone can add it to their system for little cost, allowing hardware manufacturers to maximize profits by concentrating on the device itself rather than the ecosystem around it
  • Sustainable: it’s powered by a solid business ecosystem that will ensure the longevity of the platform
  • Friendly: it’s a system for everyone, not just hobbyists or developers
  • Flexible: it can be used in multiple contexts, from living rooms to science labs

By this measure, Apple is condemned to be a niche player, operating at the premium end of the market. Sure, right now technophiles everywhere are salivating over the iPad, but that will last until someone comes out with something nicer. In any event, Apple’s grasp is limited to the wealthier western nations – there are far more people seeking more affordable devices waiting in the wings in other places. The third world computer revolution is very much underway.

My bet, of course, is on web technologies. But it isn’t necessarily on the Internet: it’s time we separated web technologies from the World Wide Web. Indeed, connectivity isn’t ubiquitous, and isn’t likely to become ubiquitous world-wide for a very long time. Therefore, the ability to download, install and run apps offline, as we always have with software applications, is incredibly important.

With its Chrome Web App Store, Google is leading the way, and showing that it understands what it takes to create a next-generation application platform. It’s also shown leadership over HTML 5, which it is clearly investing in as a genuine method for powering both content and software. The genius is this: anyone can build using web technologies, and web technologies can run on virtually any hardware. Google makes its money through value-added services, like advertising (to allow both device manufacturers and software developers to supplement their incomes), its app store and underlying logic via some powerful APIs. It’s not an operating system, but for most end-users, they’re making the operating system irrelevant: it’s simply the thing that runs the web browser.

My advice: ignore the hardware

Computers as we know them today will always exist, but they won’t be for everybody. If you’re developing for non-technical end users, the plethora of hardware devices available to you is a red herring. You should be thinking of the web as the platform your products will be based on. Make no mistake: you need to become an expert in web technologies now – or, of course, find someone who is.

Images:

So why do we need apps anyway?

Ben Werdmuller — April 29, 2010

Ebooks don’t cut it: everyone wants an app

NB (May 20, 2010): A lot of my suggestions for web-based apps are part of the Google Chrome Web App Store. In fact, the .crx file used there is a zip file with very similar characteristics to epub. (I assume, as Chromium is open source, that .crx files are also open source – so the web app store is not limited to Google.) This post can be reread as an argument for building for the Web App Store.

At Intersection: Publishing in London the other week, there was a lot of discussion from publishers looking at mobile apps as their mobile publishing solution. Rather than creating ebooks, there seemed to be a general feeling that dedicated applications presented more of an opportunity for richer content, while closing the door to pirates and ensuring that publications remained a paid commodity.

The piracy argument is kind of spurious: although app stores tend to be locked down, this presents a false security blanket for publishers. It only takes one person to crack a store for piracy to be generally possible; technology only ever becomes less secure over time. A cynical person might suggest that the piracy argument is largely spread by the people who own the app stores or provide related services. The people who will suffer are authors and publishers.

Why apps rock

However, there’s definitely an argument for using apps – not just for publishers, but for anyone who wants to create dynamic content. Anyone who’s ever owned an iPhone will tell you that native applications can still provide a smoother, more consistent experience than a web app, without the hassle of remembering website addresses or waiting for pages to load. Tweetie is a million miles better than Twitter’s mobile website – something they themselves acknowledged when they acquired the iPhone application last month.

Mobile vs app

Above, mobile Twitter is on the left; Tweetie is on the right.

  • The app doesn’t need to load its interface from the web; only the underlying data is downloaded, meaning the app can appear instantaneously, loads data faster, and provides a better user experience.
  • The mobile web app needs to sit within the browser chrome (URL and search boxes, browser buttons on the bottom, and in my case, a debug toolbar). The app, on the other hand, has a full-screen UI dedicated to Twitter.

Why the web rocks

The mobile landscape right now is a bit like the personal computing landscape circa 1985. There are a bunch of different platforms to code for:

  • Apple iPhone and iPad
  • Android
  • Symbian
  • Windows Phone
  • Blackberry
  • WebOS (now more important in the wake of HP’s acquisition)

Each of these platforms is different under the hood, and must be developed for separately. Most developers and publishers can’t afford to do this – there isn’t a way to write once and cross-compile to many platforms at once. In fact, Apple recently specifically forbade this: if you’re developing an Apple app, you’re doing so natively, or you’re violating that platform’s terms of use.

However, each of these platforms have one thing in common: they support the web.

HTML5 and ePub: a new platform for apps

As you’re probably aware already, the upcoming HTML5 standard revises the web platform to become far more suitable for apps. Improvements include:

  • Methods for offline and cached usage (so interfaces can load immediately)
  • Built-in databases and storage (so web pages can natively store their own data)
  • A paintable canvas element and WebGL 3D graphics functionality (so web pages can display interfaces more like real applications; the 3D shooter Quake II has already been ported to native HTML)
  • Native video and audio support (no Flash required)
  • Websockets (a more efficient way to connect to Internet data from web pages)
  • Built-in support for advanced functionality like geolocation

This is a big deal. Compliant browsers like Firefox, Safari, Chrome and even the upcoming Microsoft Internet Explorer 9 will be able to run applications that look and feel like native software but are powered by web standards. Between those browser engines, that’s most of the mobile platforms covered: those that don’t have an HTML5 browser built in by default should have one available to download. What’s more, both Firefox’s Gecko HTML rendering engine and the WebKit engine that powers both Chrome and Safari are open source, so anyone can pick them up and build software around them.

So sites on the wider web can be more like applications. That’s fantastic news in itself, but what about the app store model? A lot of people depend on that for revenue, and there’s no reason why that should be incompatible with using web standards.

Luckily, it turns out that ePub – the ebook standard – is really just a bunch of XHTML 1.1 pages drawn together in a specialized way and bundled up in a modified zip file. There are already established best practices for buying and selling ebooks.

If the ePub standard was updated to allow HTML5, it would evolve into a format for self-contained, multi-platform apps that could be sold in the same way as ebooks, music, videos, or apps in something like the iTunes App Store. Except app publishers would only need to build once to support many different kinds of mobile platform, thereby reducing the barrier to entry and allowing their budgets to be concentrated on building just one really awesome piece of software instead of spread across multiple devices.

This would be in a lot of peoples’ interests: app publishers, device manufacturers, browser vendors and consumers alike. There’s a lot of money tied up in a venture like this. The only question is, will the International Digital Publishing Forum, which controls the ePub standard, be foresighted enough to see this opportunity?

Update: Steve Jobs weighs in

Apple’s CEO has written a little about why HTML5 is the future of mobile apps (albeit in the context of his platform’s refusal to support Flash):

HTML5, the new web standard that has been adopted by Apple, Google and many others, lets web developers create advanced graphics, typography, animations and transitions without relying on third party browser plug-ins (like Flash). HTML5 is completely open and controlled by a standards committee, of which Apple is a member.

[…] Flash was created during the PC era – for PCs and mice. Flash is a successful business for Adobe, and we can understand why they want to push it beyond PCs. But the mobile era is about low power devices, touch interfaces and open web standards – all areas where Flash falls short.

[…] New open standards created in the mobile era, such as HTML5, will win on mobile devices (and PCs too). Perhaps Adobe should focus more on creating great HTML5 tools for the future, and less on criticizing Apple for leaving the past behind.

Make no mistake: HTML5 is the platform to bet on.

The future of publishing

Ben Werdmuller — April 18, 2010

Intersection: PublishingThanks to everyone who came to Intersection: Publishing yesterday. Our fascinating round-table discussion was cut off far too soon: I think we could have gone on for days and only barely covered the issues. It’s clear that an open conversation that treated publishers, authors, readers, technologists and lawyers as equals was long overdue. (Missed it? Watch this space.)

I thought I’d write down some of my takeaways while they’re fresh in my mind:

DRM is misunderstood from both sides.

From some publishers, support was shown for Apple’s locked-down App Store business model, with the assumption that it would prevent piracy. Of course, this isn’t the case. I think Sven Edge put it best to me during the post-debate drinks: “any technological system only becomes less secure over time.” In other words, you cannot assume that any technology is unbreakable; someone will do it. Trusting your business model to DRM is therefore a very bad strategy.

Publisher advocacy of locked-down Digital Rights Management technologies apparently occurs because authors need to be reassured that their work won’t be stolen when it becomes available online. A few authors present disputed this point of view. Regardless of this, more work needs to be done to educate non-technical people around the issues, in a calm way that takes in all points of view and doesn’t attempt to reform the fundamentals of copyright law or rights agreements in the same breath.

The market for electronic publishing is still too fragmented.

Many publishers present were worried about the variety of devices and platforms present on the market, as well as their quality. They simply can’t afford to target all of them, and many are either choosing to wait or work with third-party companies to develop solutions for them. All agreed that a single, open platform that allowed publishers to create content using something approaching their existing skill-sets is desperately required.

There also needs to be an open equivalent for apps, to give publishers a choice, and to allow them to deliver to multiple platforms at once. During the debate, I suggested encapsulating HTML5 (which has all manner of app-friendly capabilities) in the ePub format (which produces stand-alone bundles of content that can be sold and transferred between devices). I intend to write more about this another time.

The publishing industry is following the patterns laid out by the music industry.

On the future of publishingPublishers are signing authors rather than books, and are beginning to gather extra revenue through talks and activities surrounding books, just as – for example – musical artists like Madonna are beginning to sign to concert promoters rather than traditional record labels. Together with the DRM arguments above, I think there’s a real danger that the publishing industry could go down exactly the same road. (On the topic of DRM, note that iTunes is now DRM-free – don’t count that any restrictions on iBooks or App Store items will last forever.)

The knowledge gap goes both ways.

The assumptions that geeks take as being gospel are not gospel. The assumptions that publishers take as being gospel are not gospel. Each side needs to listen to the other and contribute to a productive conversation, without demeaning anyone’s expertise or experience. There needs to be both give and take.

To put it another way: the models that govern software do not govern publishing and the models that govern publishing do not govern software. These remain two different businesses, and must be treated as such.

There was some very heated debate yesterday, but also a great deal of very constructive argument. I’m really looking forward to continuing the conversation.

Next Page »
Creative Commons License
Except where stated otherwise, all posts in this weblog are licenced under a Creative Commons Licence.