Today Opera launched Opera Unite and with it came a lot of excitement, confusion and questions. Opera Unite is a web server running in an Alpha version of the Opera 10 web browser. This web server can be accessed by anyone on the internet and goes around firewalls thanks to Opera’s proxies. Services can be installed to run on Unite, and at launch Opera has made available a file sharing service, media player, chat service and a few others, to show what this technology is capable of. Opera Unite is, from my knowledge of internet history, the first web server to be bundled and tightly integrated inside a web browser.
The first question that comes to people’s minds is why? Why would I want to run a web server in my web browser?
Lawrence Eng, Product Analyst at Opera Software, talks about the internet’s “unfulfilled promise” of connecting people directly and letting them interact with each other without the need to play in someone else’s sandbox. Why should I have to sign up to Flickr to share photos with Jon, why should I have to install Google Talk to chat with Lisa, why is it that few corporations, who have vast monetary resources, build huge data centers and then expect us to play by their rules in their world?
The devices we use to access the internet today are merely dumb terminals that connect to servers that host the things we care about; but what exactly is wrong with that?
I want you to look at that image above and think for a moment about what you’re seeing. It may look like chaos to you, but it represents the types of freedom we enjoy, and take for granted, on our personal computers. I’m a fan of the Beastie Boys and I have a JPG file of the group on my machine that I use as my wallpaper. I’ve opened that very same JPG file in Irfanview, Paint.NET, Media Player Classic Homecinema, Windows Photo Viewer and Windows Paint. The internet does not operate like this. On the internet if I want to view a JPG on 10 different services, I have to upload that image to 10 different servers. Opera Unite is an attempt to change how the internet functions, to be more personal computer like, and that is why they chose the slogan “reinvent the web” to build hype before launch.
The future of the internet however will not be driven by one killer application, whether that be Google Wave, the semantic web, XMPP, social networks such as Facebook, or Opera Unite, but instead will revolve around the ability of letting a person easily start and stop using multiple services, with no care in the world about losing the core assets that are important to them. Take the Beastie Boys JPG file example, if I have a folder with 1 million images, and a new photo service launches tomorrow that has a user interface I’ve totally fallen in love with, using that new service should be as easy as pointing it to my folder of photos. This same mentality also applies to accessing my data on other devices. Someone has written an awesome photo viewer that I can access via the browser on my mobile phone, I just have to point it to my data. Someone has written an awesome image gallery that I can access via the browser on my television, I just have to point it to my folder and start enjoying the photos from last year’s holiday. This is the next battleground of the internet.
Microsoft is working on Azure, which is their cloud computing platform. With Azure, all of the files that I care about are backed up to Microsoft’s servers. Developers then write their applications, or web services, to interact with this data. They’ve taken the personal computer model, the Beastie Boys example, and transfered it to the cloud. Any changes that I make to a file using my device, whether it be a laptop, my mobile phone, or my television, are automatically reflected among all the applications that have access to that data. If I inverted the colors of that Beastie Boys JPG file, then my wallpaper would show that, along with the 5 applications I used in the screenshot above. It’s brilliant, but it locks you into Microsoft. You’re going to be writing in .NET, so start learning that, and you’re going to have to use a Microsoft Live ID.
Mozilla and Opera are also trying to get into services. Mozilla has Weave, which is an attempt to sync your bookmarks, history, passwords, and more, across multiple Firefox installations. Opera has Opera Link which does the exact same thing, but for Opera installations. Are you seeing where all of this is headed?
Your data is valuable, whether you know it or not. What do you on Facebook, which websites you browse on the internet, what sites you bookmark, this is gold. On top of that you have the images you upload, the messages you send and receive, and the files you trade. They all go through some service that is either run by 10 guys sharing an apartment in San Francisco trying to develop a business model, or a service that tells advertisers how many times you and the other 100 million users are going to the site every day in an attempt to score some money to invest in servers and sever liters of vodka. What Opera is trying to tell you with Opera Unite is that you don’t need to use those centralized services, instead you can interact with your friends, and your data, using nothing more than a browser that is capable of talking to other browsers, and vice versa. Opera Unite isn’t perfect though.
Mozilla has demoed OpenID built right into the browser and said they see this as the way people will deal with login credentials going forward. Opera Unite hinges on the assumption that you’re using a My Opera account, which makes it yet another service that requires you remember your username/password. Opera Unite is also policed by Opera; scroll all the way to the bottom of this page: “All services need to be approved by Opera Software staff.” Opera Unite also isn’t open source software and only works with the Opera web browser. In much the same way that Mozilla stole the concept of tabs from Opera and Google stole the concept of an advanced toolbar from Mozilla, we’re going to see more browsers appear on the market with a web server included.
In the future we’ll all have several several OpenIDs, interact with browsers on multiple devices, and have remote storage that holds all of our files. Let me run you through a scenario:
You walk into your local electronics store looking for a new laptop. You buy one, take it home, launch the web browser. It asks if you have any OpenID you would like to be used as the default option. You enter in your OpenID username/password and then the phone in your pocket vibrates. You receive a text message with a 4 digit pin code that is used for two factor authentication so that the browser knows it is really you who has control over that OpenID. A prompt comes up asking you for permission to create a shortcut on your desktop to your remote storage folder that has all your music, photos and video. You switch back to the browser, go to the address bar, and start typing, first with the letter “f”. You now see all the websites you’ve vitisted on your old laptop, and your phone, that start with this letter, from Facebook to French Cheese Lover Forum. You click on French Cheese Lover Forum and you’re already logged in. You take the memory card out of your digital camera and stick it into the card reader in your new laptop. It shows you the photos you’ve taken. You open up that shortcut that was created on your desktop, go to the “Parties” folder, create a new subfolder called “Beach Party with John on June 16th” and throw 10 images in there. Back at the address bar you type in F and then select Facebook. You’re already logged in and a comment has appeared from your girlfriend about the new photo album that was uploaded several seconds ago. She wants to know what you’re doing with your arm around Samantha.
It’s crude, but it just scratches the surface at where the future of services will be if we strip out the assumption that a service has to own your identity and your data to generate value for you as a user.
Thank you Opera for releasing something that we’ll hopefully see come to more and more browsers and that will some day truly change how we use the internet.