Tuesday, September 9th, 2008

Back to first principles; Why do you think the Open Web matters?

Category: Editorial

I found myself pondering the Open Web recently, and I posted about my thoughts as I revisited why the Open Web matters. The piece is not about the Open Web being better, or for Open Web people to feel high and mighty. Rather, it is working out why the Open Web makes sense, and how it fits into the world at large.

I am curious to hear your thoughts. Does the Open Web matter to you? Or, do you just want a productive place to get stuff done?

Here is the piece:

Communist Party

I have been thinking more about the Open Web recently, and decided that it may be time to go back to first principles and work out why I am such an advocate for it. The Open Web has plenty of flaws. I wish it was more productive, more seamless, and more beautiful :)

This came about as I pondered the same thing for feeling an association to a political party. Why do people associate themselves as Democrats, Republicans, a member of a smaller party, or just independent? How often do you join a team and just stick with it? It feels like there are a few types of people, including (sorry for a football analogy!):

  • At birth: I was born in Tottenham, so I will be a Spurs fan for life
  • Fair weather: I never liked Chelsea particularly, but after that Russian guy got involved I go to games and cheer them on
  • First principles: I like teams who play attacking football. I used to hate “boring boring Arsenal” but after that French bloke go involved, I have changed my mind.

Things change. The party of Honest Abe kicked into gear with the “core values” revolving around abolishing slavery, rather than all of the conservative values that the party espouses today.

Of course, within a party there are many factions. The Neo Cons and the traditional fiscally conservatives may share a party, yet be at odds on various decisions. The exact same goes for the Democrats and their beliefs.

Because of this, I am trying to regularly take a step back and match my belief system to the current politics of the day. Often parties use deep wounds and values to try to tie people together, but in other times we see the need to be reborn. Tony Blair famously did this recently in the UK by creating the “New Labour” brand. He ended up doing what Neil Kinnock never could, and becoming prime minister.

How does this all fit into software?

It is easy to get sucked into the same trap. “I believe in the Open Web!” Things change, so you can challenge yourself on why that matters to you.

As I look into why I care so much for the Open Web, a few core thoughts come out.

Power will lead to bad things

If I look back at the recent history of software and platforms, I come to the conclusion that at various points on the road the interests of developers and vendors align for awhile. Ben and I have been talking about this. For example, Microsoft nails the productivity of Visual Basic, and developers take that gift and run with it. But, over time, developers get frustrated and some of them feel like Microsoft uses their power to do bad things. Many lose trust and look elsewhere. Others don’t care and keep listening.

When the Java community came to the realization that Applets weren’t the killer app, but rather the JVMs, the “better C++” for the time, and the write once, run anywhere promise took hold quickly. Despite Sun, the Java developer community is still strong to this day. The problem though, is that at some point the vendors got too involved in a way that created EJB. Forget solving developers problems, it is time to argue over what to standardize, where the game is having your approach be the standard. IBM, Oracle, Sun, and many others fought about EJB and thus we ended up with the monstrosity that would create fortunes for consultants. Once the success of Java kicked in, everyone jumped on how to make money for it. Sometimes the companies that innovated were able to both make money for themselves, and help developers. Other times, not so much.

The power of the Open Web is in the fact that no one company controls it. When the interest of developers and The Uber Company aren’t aligned, developers are no longer screwed. They have choice.

This choice can come at a cost though.

Mussolini may be a dictator, but he made the trains run on time!

There is a notion that the less voices that we have, the faster we can move. A dictator that owns multiple sides, or the entire stack, can make a more productive, technically superior solution. In some ways this makes sense of course, but remember that Mussolini set the trains perception by changing the clocks. It doesn’t have to be this way.

One key is to keeping the democratic process moving appropriately fast (but not too fast).

I have talked about the Fly wheel approach in the past, and I think that this is a key issue for a healthy democracy, and a healthy Open Web.

There are reasons why Winston Churchil said:

Democracy is the worst form of government except for all those others

On the bad side, you get the issue of it never being able to become pure (just the same as communism). We are dealing with people. Once people get in power they have reasons to tweak the system in their favour. Obvious examples exist such as redrawing the congressional boundaries to do what you can to keep your party in power.

In technology you get the same thing. On the Open Web for example, we only have a few viable browsers (like the few number of viable parties issue). This gives huge power to these browser vendors, and it can break the fly wheel. Browsers have barely had a chance to innovate in the last decade. Imagine using a cell phone from 10 years back? It is crazy! The silence in the chasm is frustrating as hell. Even when the browsers change, we still have the lead weight of the users who don’t update. We need to solve that problem.

Microsoft got such a huge leader in the browser war, that they turned off. This cut off the circle of healthy Web life:

  • Vendor creates technology
  • Developer uses technology
  • Developer pushes boundary of technology
  • Vendor sees what is being done, and works on newer better technology

It turned out that developers have really kicked this into live again via the Ajax revolution. With poor dhtml support, many developers moved from the client side of Web browsing, and ran screaming from dealing with Netscape layers, and IE equivalents (IE was quickly better in fact). They made their home on the server for the coming years, spending time on Web frameworks in every language camp out there. We went from CGI to NS/ISAPI, to mod_*/Servlets/PHP, to Rails/Django/and more.

It took the joining of Mozilla implementing XMLHttpRequest, and visible applications such as Google Maps and Gmail (among others) to wake up the developers to the wasted CPUs and functionality available in the browser. Only brave folks such as Dean Edwards, Alex Russell, Erik Arvidsson, Emil Eklund, Dan Pupius, Aaron Boodman, Scott Isaacs carried the flame and pushed during the lean years.

With developers back in the game, thanks to Ajax, the browser vendors had the push they needed to really kick into gear again. Richer Web applications required better JavaScript and APIs. If a browser got really good at powering these rich applications they could set themselves apart.

This wasn’t enough though. Web developers were frustrated. We had teams at Google that mirrored many others. They wanted to add more functionality to their applications, and they needed a vector to make that happen. This is how Gears was born, and I bet the case was similar for what became the Yahoo! BrowserPlus team (am I right Lloyd? :).

Now that we are back in sync, and the flywheel has been turned on again, my thoughts are on how to keep this effect going. How can we put developers first and make sure that the cycle continues and doesn’t get derailed? We need to balance the power and constantly be watching it. No one company can get to a point when the power can corrupt. This is subtle, as it isn’t just watching out for the Sheriff of Nottingham and seeing how he is taking all of the money. These things often happen by mistake. You can easily think that you are doing a “good thing for the community” and yet you are creating a very unlevel playing field. One simple example that shows this is if we put CSS and JS from Google properties directly into Google Chrome. We could argue that this would be good for users as it would make the experience faster. How harmless is that? I believe that it would destroy the level playing field.

This isn’t to say that you can’t innovate, far from it. We need to be very clear that we require innovation. We just need a path for taking the evolution and moving it into the standards. In the above example, we could create a system for richer caching of resources. We could implement the hashing work that Aza Raskin and Douglas Crockford talked about. Good work will stick and will become part of the Open Web naturally. This is the beauty of the Open Web. Someone can come up with a piece of technology and others can share and use it. An independent developer could think up OAuth and make it happen. If it is worthy, big companies can come along and implement it too, and we can standardize. It doesn’t have to come FROM the huge companies first though. Think about how rare that is.

This is why I come full circle to realize that the Open Web is important. We all need to do our best to make sure that this deeply evolving system doesn’t get cancer. We need the bursts of innovation to kick out new DNA that allows us to try experiments.

With all of the work being done right now, it feels like the end of the Dark Ages. I can’t wait for the next chapter, can you? What have I missed?

Posted by Dion Almaer at 10:46 am

3.5 rating from 36 votes


Comments feed TrackBack URI

‘The party of Honest Abe kicked into gear with the “core values” revolving around abolishing slavery, rather than all of the conservative values that the party espouses today.’
That’s not really accurate. Quoth Lincoln: “If I could save the Union without freeing any slave I would do it, and if I could save it by freeing all the slaves I would do it; and if I could save it by freeing some and leaving others alone I would also do that.” His interest was in protecting the power of the United States government and its control of a huge swath of a continent. Ending (or more correctly, restricting) slavery helped to achieve that end because the most powerful business interests found more benefit in a wage system than in chattel slavery.
Moreover, not only was the party’s goal not to end slavery, they never capitulated to that goal. Quoth the Thirteenth Amendment: “Neither slavery nor involuntary servitude, except as a punishment for crime where of the party shall have been duly convicted, shall exist within the United States, or any place subject to their jurisdiction.” Slavery is still legal in the US to this day. And while not all of the > 1% of the US population in prison is subject to “prison labor” (slavery; actually it’s somewhat more insidious than even that, as prison workers receive meager wages but much less than they are fined for “room and board”, essentially putting them into debt that they must repay after their sentences are served), all of them are legally vulnerable to it.

Comment by eyelidlessness — September 9, 2008

“It doesn’t have to come FROM the huge companies first though. Think about how rare that is.”

History disagrees. Here’s a couple: XHR came from MS around 1999/2000. SWFs are now a search initiative for Yahoo/Goog as well as a feature of many OS and commercial frameworks.

Rather, a better approach would be to try to think this through from the opposite end. Why haven’t SVG’s or CANVAS benefited the larger community? Where are their search initiatives? Is OAuth really a foundational improvement? How’s OpenAjax going? Not even gonna mention ECMAScript 4.

Big or small, all companies solve for their needs first. In the early years, they were too short-sighted to see that developers needs should also be their needs. Hopefully, companies will now continue to innovate while including the developer as a target audience. A mutually beneficial relationship: the company for its execution and the developer community for sustenance.

Conversely, neither big nor small committees have needs for which a solution must be invented. So committee-led initiatives languish without the propulsion of real need. They perform better as retrospective organizers rather than pioneers. Gatherers not hunters.

Just think: If MS didn’t decide to use its website as the means to update Windows, we wouldn’t have this nice blog to read.

Comment by beemr — September 9, 2008

Great article Dion!

A very important group of people we should not forget is are the end users. Of course we could go the path and decide as a cooperation/business/developer what is best for them.
Imagining this scenario – isn’t that what was going on for a big part for the last couple of years – would make me not wanting to continue to work in this area.

The Open Web should also be something which is trying to give the best available user experience/technology to everyone, not out of a primary commercial or monopolistic position, but out of a evolutionary necessity.

Comment by nonken — September 9, 2008

I am ALL for Open
My question: why did they have to create a new organization?
OpenAjax has existed for years and they could have just supported the current work – I know the ‘Open Web’ supports more than ‘Ajax’ the same way I understand ‘AJAX’ is not ‘Ajax’.
I am a little paranoid and have to wonder about true objectives. I want to see their constitution where ANYONE can apply and gain votes that EVERYONE works towards. I want them to commit to working with OpenAjax.

Comment by OpenAjax — September 9, 2008

@eyelidlessness some good political points!

@beemr The key issue there was that it doesn’t HAVE to come from a big company, not that big companies can’t come up with great technology. I totally agree with you.

@nonken End users are king. Great points.

@OpenAjax This isn’t about one group, it is about the “Open Web” itself, and the Open Ajax Alliance is part of that world, which consists of many :)

Comment by Dion Almaer — September 9, 2008

If you’re interested in Open Web, check out the “Lifestreaming: The Real Time Web” event on Sep 16th. FriendFeed and Seesmic are going to be there on the panel. http://www.vlab.org/article.html?aid=221

Comment by petermin — September 9, 2008

Hi Dion, I really liked this blog and obviously the Open Web is a really important thing. Though I must admit I dislike the fact that you’re using the subtle image of communists for it. Fact is that communism and socialism doesn’t want free competition but rather state controlled monopolies. While the free market liberalists are extremely open to competition and free markets like for instance Milton Friedman which is an “extreme free market liberalist” which even means that there shouldn’t exist any toll borders what so ever to protect the local markets.
So if anything the communist link would in fact be more appropriate for the “non-Open Web guys” since they don’t really want free competition but rather relies on monopolies to lock-in their customers and users while the Open Web evangelists are sworn adopters of the equal competition in a free market thoughts.
Open web fosters extreme competition at equal terms for all which means that it cannot possibly be reconsilable with any forms of communism or extreme-socialism or any state controlled (or other controlled institution) monopoly at all…
That the Open Web is about “socialism and communism” is unfortunately a mis-perception intentionally currently being spread by the very guys that have the most to win in having either their current or their upcoming “non-Open-Web-Platforms” being made the de-facto standard and thereby gaining for all practical reasons a monopoly on RIA…
If anything the “other guys” (non-open-web guys) are the ones at least if you look at their means the ones closest to Karl Marx and Stalin and NOT the Open Web guys…
The above image does NOT help our cause…!

Comment by ThomasHansen — September 9, 2008

Wow :)
That was really interesting, this is obviously a theme you know a lot about. And my handling of the terms obviously was way to shallow and should have left room for difference between communism[USSR] and socialism[Marxism] probably to a much higher extent. Though I do not know as much as you about the subject I too know that there’s a huge difference between communism and Marxism. Though the most important thing in my comment which I also have written about here; http://ra-ajax.org/the-open-web-and-its-lack-of-link-to-communism-and-socialism.blog
is the fact that many people already associate Open Web with communist ideas and think we’re all communists. And showing such an image for a blog about the Open Web does not help us to make those people understand that Open Web is not communism…
BTW, traditional extreme Free Market liberalists [Chicago School types with Milton Friedman as its most known advocate] pretty much agree on that there should be no subsidisings, no trade barriers, no unions or minimum wage and so on. NOTHING to help neither the worker or the employee to keep neither market share nor profit. And Open Web is like that ;)
Open Web is chemically cleansed for any types of lock-in mechanisms that makes one player get advantages on behalf of another. And regardless of what definition you have of free markets the Open Web will probably be at the top of it anyway.

Comment by ThomasHansen — September 10, 2008

“many people already associate Open Web with communist ideas and think we’re all communists”
Seriously? I’ve never, once, encountered that opinion being seriously discussed until now.
“And showing such an image for a blog about the Open Web does not help us to make those people understand that Open Web is not communism…”
You do know that image is a joke right?
“BTW, traditional extreme Free Market liberalists [Chicago School types with Milton Friedman as its most known advocate] pretty much agree on that there should be no subsidisings, no trade barriers, no unions or minimum wage and so on. NOTHING to help neither the worker or the employee to keep neither market share nor profit.”
I hope it’s obvious how this is problematic. An unfettered market is almost certain to be dominated by the most powerful business interests. Sure, Microsoft is benefited by the “mixed” economy, but it would benefit just as much if not more from a complete lack of restraint.
“And Open Web is like that”
I still have no idea what “open web” means but if it means that, count me out. As far as my work on the web is concerned, I have seen the most benefits from cooperative competition; that is, from a spirit of competitiveness that, while obviously driven by profit, is not ruthless or pure—that fosters collaboration between all of the parties involved. If anything, the model you’re describing is more or less an exaggerated version of the Browser Wars (Netscape vs IE) which saw endless expansion of incompatibility and caused massive fragmentation of the web.
More than that—like an absolute lack of trade barriers, unions, worker protection, and that kind of capitalist wet dream stuff—it makes my life harder. I have to work countless hours accommodating the fragmentation created by unfettered competition. While the IE team gets to focus only on IE, I have to focus on making IE do what other browsers do. Sure, the situation is better today, but mostly thanks to the Mozilla foundation’s free, open-source work, pulling largely from unpaid workers who were more interested in improving the web than in turning a profit. That’s not communism, but it’s certainly not free-market absolutism either.
“And regardless of what definition you have of free markets the Open Web will probably be at the top of it anyway.”
Again, I don’t know what “open web” even means. But if free markets is it, please count me out.

Comment by eyelidlessness — September 10, 2008

I think we just need to conclude that we insanely disagree on every single aspect we’ve debated in this thread…
I don’t have any dreams about that I will be able to convince you about my perspective either so I think we’ll leave the debate about whether or not Ultra Free markets are good or bad, but I would like to comment on one thing which is that a lot of developers in very high positions argue that Open Web is communism since it is so focused on Open Standards instead of doing the “pragmatic way” which is to use their ActiveX2.0 technology of course. So I am a bit surprised that you’ve never heard that link before in fact.
I knew the image was a joke, but so was many other things in history which was being taken seriously…

Comment by ThomasHansen — September 10, 2008

Leave a comment

You must be logged in to post a comment.