Tag Archives: open source

It’s all about the governance

About a month ago, when talking about the prospects for more open RIA technologies, I wrote:

I’d hope that we could do better than both the W3C or the JCP for Flex/Flash or OpenLaszlo.

After yesterday, I think my reasoning ought to be obvious. FAQ link for those new to the issues. Stefano and Ben, as always, find a satisfying way to put it, and Redmonk’s Steven O’Grady has a fair minded analysis.

The details of Java and Apache aside, I would call this whole situation a case study in how not to setup the governance for something open. I have never been a fan of the JCP process because Sun has always had rights that no other participant had. To Sun’s credit, the process has become considerably more open since the JCP was created in 1998. On the other hand, that openness is the result of *years* of hounding by the ASF and other organizations, and now, 9 years later, there are still hiccups. The world is a different place today in 2007 than it was in 1998, and general understanding of openness and community are much greater than when the JCP was founded. I would hope than anyone setting out to build a governance model for some piece of technology would look long and hard at the lessons (good and bad) of the JCP experience.

Open Source does not imply dictatorship

From Dave Winer’s piece on The theory of Twitter

In open source communities they call the imbalance a benevolent dictatorship. Far from being a perfect democracy some people imagine open source to be, actually a project sinks or swims based on how good the central decision-maker is. Again, people complain about the A-list, but that’s okay, work gets done over the objections.

Well, not all open source projects are dictatorships. Apache, Eclipse, and Subversion are examples of prominent open source projects whose governance model is not a dictatorship.

Google Summer of Code is now open for students

If you are a student, the 2007 edition of Google’s Summer of Code is now open. Summer of Code is like an internship, but instead of working for a company, you work on an open source project. Google supplies a stipend for you, and you’ll learn technical stuff and also learn how open source projects work. If you’re ambitious, this could be your chance to get your code into an open source project and have it used by people around the world.

If you know a student who might be interested, please point them at the Google site. If you know female students, who might be interested, *really* encourage them to apply. Here’s a concrete way to help women get involved in open source projects.

OSAF is going to be participating again this year — the relevant information is here.

Why WPF/E didn’t make my cut

Dare Obasanjo thinks that WPF/E ought be included in the list of contenders for RIA foundation. He makes his argument on the basis of some technical criteria (which I agree with). He also says that being open has nothing to do with it, and cites Java and Visual Basic as existence proofs that a single vendor technology can rise to the top. I never disputed the fact that a single vendor solution could rise to the top. That was the point of my original post. However, and unsurprisingly, I disagree that openness is irrelevant to the popularity of RIA platform technology, especially since part of the point is to deliver solutions that run on all the platforms that today’s web applications run on. And ultimately that’s why I left WPF/E off my list, even though I’m sure it’s on other people’s.

Miguel de Icaza followed up Dare’s posting with more analysis on WPF/E, Flash and the openness of Java. He does have some slightly out of date information, since the recent versions of OpenLaszlo no longer require a server, even when Flash is the runtime. You should read Miguel’s post for his analysis of the openness of Java. He’s right that the JCP process did help get other parties involved with the future of Java, which did ultimately help it. He’s also right that the JCP brought us nightmares like J2EE (I’m not as sure that you can blame the generics mess on the JCP). I would point out some JSR’s also came from the open source community, not just from companies. Not only that, EJB3, which puts to right a number of the worst problems with EJB2, borrowed heavily from ideas that first appeared in Hibernate and Spring, both open source projects. In any case, as I pointed out in my followup posting, I’d hope that we could do better than both the W3C or the JCP for Flex/Flash or OpenLaszlo.

Following up on “The Microsoft of the Web”

My post “Adobe wants to be the Microsoft of the Web” attracted enough feedback that I think it’s worth a follow up.

I’m going to begin by trying to clarify two aspects of what I said in the post, and then try to treat blog posts and comments in light of those clarifications.

What do I mean by the Microsoft of the Web?

When I say this, I mean that a single company determines the direction of a technology. Input from other parties might be considered but the company has the final say. I don’t mean this to be a comment on avariciousness of the company, or about the use of monopolistic business practices. It is a statement about having a huge degree of control over an important technology area, not the manner in which control was obtained.

The Flex/Flash stack has many things going for it. Very broad distribution. Users who are somewhat accustomed to upgrading the Flash plugin. Excellent development tools. This gives the stack a powerful position in the market and a good launching point to gain an even stronger position in the new RIA space. There actually is an RIA space, and the problems of incompatible multi-vendor technology in the HTML/CSS/Javascript stack are real and bigger than the problems of plugin version detection and upgrade. OpenLazslo is the only other competitor on my radar, and they have a very good technology, but businesswise they are at a disadvantage when stacked up against Adobe name recognition, tooling, marketing etc. Because the Flex tools story is so compelling to so many developers, they are going to choose Flex. So unless something else happens, when the web is RIAs (which I think is the direction) Flex will be the web, and thus Adobe will be in a Microsoft like dominant position.

What are the properties of a sufficiently open technology?

I don’t think that all software must be free or open source. I don’t begrudge companies who want to charge money for software. I do think that the many properties of the “open source” model result in big benefits to certain classes of technologies, and things like RIA foundations for the web fall into that category. My thinking on this has been shaped by my participation in the Apache Software Foundation, and by books like Democratizing Innovation, The Future of Work, The Success of Open Source, and Benkler’s paper “Coase’s Penguin” (I want to include “The Wealth of Networks” here, but I’m stuck at page 272). In short, Democratizing Innovation is the goal.

  • Interested parties willing to make actual contributions an empowered seat in determining the future of the technology. Let’s break this down. “Interested parties” — anybody who is interested. Corporations or Individuals. “Willing to make actual contributions” – People hanging out throwing rocks but not providing proposals and/or code don’t count. “Empowered seat” – being at the table means having a vote, and not having to pony up money to participate, unlike, say, the W3C. Votes not being overridable at the whim of a single person, unlike, say, JCP 2.6. “determining the future of the technology” – this should be self evident. I am not saying this will be easy. Sun has yet to define the governance model for OpenJDK, and how they handle the governance issue will be of huge importance.
  • Compatibility is important – a significant part of the value (to me) of the Flash/Flex stack is portability/compatibility. It is self defeating to allow compatibility to go out the window. Properly handled, I think that compatibility suites of some kind coupled with trademark usage could go a long way here. Also, distribution of the Flash plugin has a huge impact on compatibility. While people can and do download plugin upgrades, it is also the case that the plugin that gets included in the browsers has a significant advantage, in the same way as the browser that is bundled in the operating system. Adobe already has that relationship with the browser folks. If they were to steward an opened Flash/Flex responsibly, I would think that relationship would be secure.
  • Availability of source code enables parties working on an open technology to collaborate whenever possible, including bugfixes and enhancements. It allows an interested party to show up with a working prototype for a new feature rather than just a paper design, for example. Because of the way that open source and free software have been defined, people think that it’s all about the licensing and availability of source. But all that stuff is just a facilitator for the collaboration. But more on that in a forthcoming post.

Elsewhere in the blogosphere

Ryan Stewart doesn’t want an open source Flash because he is concerned about compatibility. Just because Flash opens up doesn’t not guarantee that it will fragment into a billion versions, or even 5 (existing versions notwithstanding). The value of Flash is in the cross platform compatibility. If people are stupid enough to try gratuitous forking, they are not going to get adopted. This is what Sun has always been afraid of with Java, and I am happy to see that they finally got over it. When the value of your technology is portability/compatibility, the will be very strong pressure to remain compatible. Not only that, there is the distribution issue that I mentioned above.

Andrew Shebanow had several issues:

  • He took issue with the “sensationalistic title” — the title came as a direct quote of something I said in the Twitter backchannel, and I hope the paragraphs above on the meaning of “The Microsoft of the Web” expose more of the reasoning behind the statement.
  • He invokes “the web will route around ‘bad’ players” as an argument for why this will not happen. Perhaps the web will route around. Then again, people could have routed around Windows by buying Macintoshes. It’s a lot harder to route around when your business critical application has already been built.
  • He makes an emotional argument about the ethicality of Adobe, which I wouldn’t presume to dispute. Yet, corporations must answer to their shareholders demands for profits, and I think that the path I outlined about doesn’t require Adobe to be avaricious or have monopolistic tendencies. The only thing stopping it is whether the Flex adoption curve hits an inflection point. Which it hasn’t yet – otherwise I wouldn’t have bothered to post.

Jay Pullor, one of the founders of Pramati, posted about Dekoh, ther Java based RIA technology. I have to confess to a large degree of skepticism regarding Java based RIA technology, mostly due to the Java plugin distribution problem. Yes, I know there is Java Web Start, but my personal experience with Web Start based apps has been hit or miss and disappointing. There’s also the process/governance issues, which his post didn’t address.

The comments

Via the comments I found James Ward’s piece “How I overcame my fear of flash” from a few weeks ago. He basically admits that he is hoping Adobe will do the right thing on the openness front. I’m pointing out that hoping may just be that, due to all the forces in play around the technology and in the market. This is too important to me to leave to hope.

David Temkin from LazsloSystems weighed in on some of my comments about OpenLazslo. He pointed out that:

  • OpenLazslo does have an open public process for defining things like APIs, and that the process is open to non Laszlo contributors
  • Lazslo Systems has hired a community manager to accelerate the development of a community around OpenLazslo
  • He agreed that their community is at a very early stage, which means that there hasn’t been a lot of testing of the public process

(Disclosure: David is an old friend, and I have been a fan of the OpenLazslo technology for some time. I would really like to see them get a chance to compete in the marketplace of ideas for the RIA space.)

John Dowdell and David ? from Adobe also responded in the comments, and I was very pleased that they wanted to engage in conversation around the post. John was trying to suss out what my real requirements were for opennes around the Flash file format. I hope that the second section above provides the insight that he was looking for. (if not, there’s always the comments again). David provided some additional facts about the openness of various parts of Flex and the Flex dev tools. I think his position is that the only part of Flex that isn’t open source is the Flex framework (which sits on top of ECMAScript). The framework ships with source, and apparently, the licensing allows modification and integration. I think that a full story includes both Flash and Flex, since Flash is subsumed into the Flex story. In regard to the Flex framework David said:

Now, all of that said, we haven’t open sourced the Flex framework itself, just the underlying engine it runs on. We haven’t standardized the Flex framework, but we have standardized the language it in (in addition to ECMAScript, we leverage CSS). Given all this, how important is it to you that we open source the framework itself? What would this change for you?

Again, I would point to the second section above, which describes my conception of an appropriately open environment, but which goes beyond some people’s notion’s of open source (although no-one else involved with Apache would be surprised by my list, with the possible exception of the compatibility stuff). What it would change for me is that it would give me the assurance that your “good behavior” regarding Flex wouldn’t suddenly change when there was a management or other change at Adobe. It would demonstrate your trust and regard for a decently sized community of people that feel these issues are important, and who would reward that demonstration of trust with the fruits of their intellects.

There were a few other comments/trackbacks which I plan to address in the comments or in additional posts.

Summation

I see two leading contenders for RIA foundation technologies. OpenLazslo and Flex/Flash/Apollo. OpenLazslo is the underdog, with a really good technology and the basics of a good governance system, but with a fledgling community. Adobe has the advantage as the bigger player, with deeper pockets, more recognition, a better tools story, but no real story on governance/openness. Some components of Flex are source available, but as I mentioned above, source availability is an enabler, not the end goal.

No PyCon for me…

I won’t be making it to PyCon this year, breaking my three year streak. But at least I won’t have a horrendous getting home from PyCon story this year. In fact, very few people from OSAF will be attending this year. We’ve been planning to do an end-user oriented “Preview” release of Chandler and Cosmo for sometime this spring, and a number of us decided that the best thing that we could do was to stay focused on getting that release done. So while I won’t miss Dallas/Addison, I definitely will miss the chance to connect with folks from all over the Python community. I fully expect to be at OSCON this summer, and back at PyCon in 2008.

HD Photo will be awesome… In 2010?

John Nack’s post on HD Photo reminded me that I wanted to write something about this. HD Photo is part of Vista and used to be called Windows Meda Photo. It’s a new file format for representing images, which looks to be superior to JPEG in every way except one. Apparently, Microsoft holds some patents on HD Photo which don’t expire until (at least) 2010. That means that it won’t be possible to build open source implementations of HD Photo. There is a lot of code out in the world that relies on an open source JPEG decompressor, and that code isn’t going to be able to do HD Photo for quite some time.

Technically HD Photo sounds great, and as a photographer I can easily appreciate the benefits of the new format. But this reminds me of the whole proprietary RAW format issue. People are recording their life in their photos, and it’s important for them to know that they will be able to bring those photographs forward with them no matter what file format they chose. I think that Microsoft could set themselves apart as a leader here by changing the licensing of HD Photo. They’ve already done it once.

Adobe opened up PDF this week. It would be awesome for photographers and the users of digital pictures if Microsoft would do the same for HD Photo.

Dreaming in Code

Scott Rosenberg mailed me a copy of of his book, Dreaming in Code, as a thank you for an interview that I did with him. This is a book about why software development is hard, and it features the Chandler project as a case study. It feels odd to open up a book and see someone else’s description of part of your life. Of course, I wanted to know what Scott had written about me, so tracing through the index was the first thing that I did. It was interesting to see which events Scott thought were noteworthy: the half-phone/half-IRC demo, the 2005 PyCon sprint, and my memo to Mitch Kapor on the state of the OSAF communites. I was relieved to see that everything about me was accurate. Well, except for one small thing. In my initial mention, I’m credited with “some of the early work on the XML data standard”. I did work on IBM’s XML4J parser, which became Apache’s Xerces-J parser, but I never did any work on the XML spec or standard itself. About half of the book takes place before I worked at OSAF, and I really can’t comment on the accuracy of the stuff that happened before I got there. I wasn’t there, and while I’ve heard some stories I also know that there’s so much more that happened that isn’t in the stories that I’ve been told.

Unfortunately, Dreaming in Code leaves the reader hanging. Scott had to wrap up his book project before we were able to ship a version of Chandler suitable for general usage (there are bleeding edge people using it now), and we are still at least several months away from reaching that goal. One of the reasons that I came to OSAF was to build open source software that non-technical people would want to use, and I (and everyone else working on Chandler and Cosmo) am acutely aware that we haven’t reached that mark yet. Quite a bit has changed since Scott had to leave us, and he posted a follow up that tries to fill in the gap between when the book left off and the present, and Katie Parlante has posted a status update for all of the OSAF projects on the OSAF blog. If you are interested in how the story of Chandler and Cosmo continues, I think that the best thing to do is to look at the mailing lists for the Chandler and Cosmo projects, as well as the OSAF wiki, where you can be up to date on the latest developments.

Hats off to the iTerm folks

Hat’s off to the iTerm folks. During my PowerPC OS X days, there were very few updates of iTerm, and while I used and liked iTerm, I despaired of ever getting any bugs fixes or enhancements. Recently though, things have really picked up. Not only did iTerm go Unversal, but it also included Sparkle for automatic updates. And boy does it update now. It seems like everytime I start iTerm (which isn’t that often because it’s gotten pretty stable), there’s a new update.

So to the iTerm team: Thanks from a happy user.