One of the notable things about working at Mozilla over the last few years right now is that our aims have gotten much more ambitious, but perception moves slower than reality, even among people who spend every working hour working on the project. I’ve been privileged enough to have a lot of conversations with a lot of people, and to see an evolution in the thinking that motivates our priorities. I’ve also been unfortunate enough to see and participate in high-emotion conflicts, which emerge from the disconnect between various individuals’ perceived priorities. I’m hoping that this post can explain the high level reasons for our current initiatives & why they matter, and maybe help get people past short-term conflicts.
For many years, the area that Mozilla needed to focus on was clear: to save the promise of the web, we needed to make a fast and useful browser that didn’t get in the users’ way, and get lots and lots of people to adopt it. This was (and is) a product play, which implies is that success would be determined by what real people would choose to use based on the real choices in front of them. And the people demanded high quality code, zarro boogs, security, etc., but they mostly demanded compelling experiences that solved their problems. In the case of the browser wars, the outcome has been pretty good for society, if slower than we’d have liked: standards have evolved, browsers got better and faster, and websites got more interesting (I’ll note in passing that cross-browser dev work is still way too painful).
While that fight is far from over, we’re now at a distinct point in the evolution of the web, and Mozilla has appropriately looked around, and broadened its reach. In particular, the browser isn’t the only strategic front in the struggle to promote and maintain people’s sovereignty over their online lives. There are now at least three other fronts where Mozilla is making significant investments of time, energy, passion, sweat & tears. They’re still in their infancy, but they’re important to understand if you want to understand Mozilla:
The first such effort is, in some ways, “lower in the stack” than the browser. We started an ambitious exploration called Boot to Gecko (B2G), which I don’t yet understand well enough in detail, but which is clearly trying to ensure that there are realistic options for mobile devices which bake in the right values as low as possible in the stack. As I discussed in my last post, the verticalization of the internet means that we’re heading towards a world where who you get your phone from will determine way too much about how you can experience the internet. B2G is a bold exploration tackling the operating system layer of that world.
The two other such efforts are higher-level in the stack, specifically in areas which I’ve been following closely: user identity, and apps. Both of these are spaces where the shape of the real world ergonomics & economics of the internet have managed to completely sneak around the “traditional” world view of browsers & websites.
User-centric Identity on the web
For identity in particular, it’s now possible to create highly engaging experiences thanks to personalization, but that personalization is by far easiest to achieve by adopting technologies like Facebook Connect, which, while appropriate in some contexts, is inappropriate in many, and highlights how much “we in the internet” have failed to address the very real needs of website developers and their users. It’s taken Mozilla a fair bit of time & experimentation to get to something that feels truly great, but I’m very bullish on our first big push in this space, which we’re calling BrowserID for now. The goals of BrowserID are simple:
- users and websites want to make sign in easy
- users should be able to choose who their identity provider is
- websites don’t want to be beholden to a single identity provider
- sign in should work everywhere
With BrowserID Mozilla took a bold step, which is still poorly understood even within Mozilla:
- we built a system that works in all modern browsers
- we’re standing up a service to bootstrap the system until identity providers opt in, with the strictest transparency and privacy guarantees we can come up with
- identity providers can federate it when they want
- we build on identity concepts which users and developers understand and trust today.
- we’re hoping that all browsers provide enhanced user experiences on top of the protocol, but we don’t need and won’t wait for their cooperation. This fight will be won by offering something compelling to website developers (and their users!) first.
For Mozilla devs, this is a bit shocking, as we’re not starting by putting a feature in Firefox first (although we sure hope that Firefox will implement BrowserID before the others!). While I love Firefox, this makes me happy, because in my mind, Mozilla is about making the internet work better for everyone, not just Firefox users, and in this case being browser-neutral is the right strategic play.
Note that Mozilla has always been about making the internet better for everyone, and that’s what’s driving e.g. our policy work. Pragmatically, Mozilla is now big enough that I believe we’ll be more effective if we fight on several fronts at once — coordination costs are very real, and progress on BrowserID in no way diminishes Firefox’s value proposition, although they can (and will!) be better together.
Apps that are of the web
The other critical challenge to the web is the rise of Apps, as a mechanism that developers are turning to because it’s easier to get your apps found & bought, and that users love because it’s an easier way to experience functionality on mobile devices in particular. And here too, Mozilla has a strong play, which is just starting, but which I believe has legs. We launched a developer preview of our Apps initiative, which has the following bold (but doable!) aims:
- make web technologies the best way to create apps that users can find and install on all devices
- propose a standard for app purchase and installation that allows many appstores to compete for developers and users, so that developers don’t have to go through an arbitrary process to reach their audience, and users can choose where they want to get their apps.
There are many more things to say about our Apps effort, but I like to summarize it as teaching the web about the good bits of apps, and teaching apps about the good bits of the web. Right now we’re watching the sausage being made (something you don’t see in the Apple and Google kitchens), and it’s a bit chaotic. But over time, and by the time it gets into consumer hands, it’s going to be splendid.
Here too, the goal is complementary to the success of the Firefox browser. And here too, we need so much help, from app developers to help us prioritize features, from web runtime developers to negotiate and implement the APIs that app developers need, and from early adopters to help us iron out the experience (and be forgiving especially in these early days).
I’ve been speaking to app & website developers about BrowserID and Apps for a few weeks, and the feedback has been great — webdevs & entrepreneurs are very aware of the dangers of relying on Facebook, Google, or Apple as the bridges to distribution or users. They desperately want an upgrade to the internet that solves these issues in an infrastructural way, and they are quite aware that Mozilla has a unique position beyond being the makers of Firefox. Webdevs understand the public benefit charter of Mozilla, and many are keen for us to take on more responsibilities there, and happy to help.
I expect it’s not obvious from a distance, but this kind of strategic broadening is hard on a culture. It means that we don’t have a single way of going after things. It means that others in the project seem to work in directions which don’t appear to line up with your own. It means that now engineers don’t just argue with product folks (a tradition in every software organization), but with other engineers with different priorities. It means that it’s impossible (and frustrating!) to keep track of what everyone is doing. All that is painful, especially as the odds are long in each of these battles, so it’s natural to want everyone else to drop what they’re doing and come help you out.
The best advice I have if you find yourself in this kind of culture shock is to first recognize it for what it is: you’re looking up from something you’ve been heads-down in, and your world (and your Mozilla!) looks like it’s changed in surprising ways — that’s scary, for limbic-brain kinds of reasons. We all tend to feel this way when we learn about new developments around us that we weren’t deeply involved with, from SOPA to “what the kids are up to these days”. We have to moderate that gut reaction with a bit of brainpower, and realize that just because it makes us uncomfortable, it’s not necessarily bad. That’s when the work begins: finding out who is working on whatever it is that’s making you uncomfortable, and reaching out to them to get looped in. In particular, doing so tends to work better face-to-face, or at least one-on-one. Finding the right people to talk to will take effort and time. It’s on you to do that work, though, and get informed. Take the time to understand the history of the change before expressing your unhappiness — the people involved are likely just as smart as you, and if they’re Mozillians, they’re motivated by the same mission.
So while there’s tension aplenty, when I think about this new Mozilla, which not only is committed to producing the best possible browser on desktops and phones, but is willing to invest in shaping what mobile devices should and could be like in 5 years, and reaching out of its comfort zone by standing up to internet bullies in critical areas like identity and apps, I’m pretty proud to be involved. I’m confident that 2012 is going to see the emergence of new facets of Mozilla, just as the net needs its particular blend of values, ambition, and pragmatism more than ever.