The Plausible Promise
Tuesday, June 09, 2009
With the release of Mac Chrome to the dev-channel, I wanted to talk about open source and expectations. What was the point of releasing at this stage, you might ask? It's clearly not finished. Clearly. It's missing a large number of features, some half implemented, others not at all. Why even bother? Doesn't it just make us look bad?
Open source projects aren't simply about a runnable binary, they're about the community of users, testers, and developers who devote their time and skills to working on a product they believe in. They go hand in hand: there's no binary without the community and there's no community without the binary. At some point in the life-cycle of a project, you have to stop thinking solely about your small band of developers and start growing the larger supporting community that will become your users, testers, localizers, documentation writers, and possibly even new coders.
In "The Cathedral and the Bazaar", Eric Raymond writes:
"When you start community-building, what you need to be able to present is a plausible promise. Your program doesn't have to work particularly well. It can be crude, buggy, incomplete, and poorly documented. What it must not fail to do is (a) run, and (b) convince potential co-developers that it can be evolved into something really neat in the foreseeable future."
We in the Chromium project feel like our Mac and Linux builds are at this stage, if not beyond it. They run pretty well and demonstrate the fundamental architecture that sets Chromium apart from other browsers. Sure, the bells and whistles aren't all there, but the core functionality of web browsing is. We feel that we've delivered on ESR's "plausible promise" and that it's enough to start attracting those who really want to help make this the best product it can be. We're not done yet, nor is it ready for the average user. It is, however, ready for those who want to live on the bleeding edge and help lend their talents towards completing it.
The community we build today is what will make it a better product down the road, and without that community the product will ultimately suffer. ESR describes testers as "a project's most valuable resource" and my first-hand experience with Camino and Mozilla bear this out. A web browser is a program that accepts an infinite number of inputs and having people who can test webpages the developers wouldn't normally encounter is a tremendous aid. Testing on diverse hardware and software setups is also invaluable as developers tend to only run the latest and greatest (and fastest!). Eventually we might uncover many of these issues on our own, but probably not.
Another pillar of open source, along with releasing early, is releasing often. To that end, the dev channel will automatically receive weekly updates as development continues. You will be able to see the product improving from week to week and help immediately identify when things break. Getting feedback on new features as soon as they are completed helps the developers know if they hit the mark and helps close the feedback loop with the community. The community benefits by being more involved and connected and promoting further transparency in the development process. This wouldn't be possible if we only teased users with releases at widely-spaced intervals when most decisions had been set in stone (end-users who want that can use the beta or release channels).
Right now we need your help, and it doesn't take a PhD in computer science. Read the bug reporting guidelines for Mac and Linux and get involved.

18 comments:
Mohamed Mansour said...
Nicely said!
June 9, 2009 11:55 AM
chris said...
I agree -- and also, I feel guilty for not running (ie, actuallly testing) chrome. I'm one of the zillions who've been looking forward to using it. I appreciate even an early look -- and hey, so far, it's only missing stuff... it hasn't crashed for me at all. That's more than the latest safari and firefox can say!
June 9, 2009 1:10 PM
Al said...
I'd be much more impressed if Google put its resources into improving Firefox and the Mozilla platform instead of rolling their own solution. Chrome isn't needed.
June 9, 2009 4:06 PM
Fabio Turati said...
Al: Chrome is under many aspects superior. Webkit is probably better than Gecko, V8 is incredibly fast, Chrome supports Vista's integrity levels, it is sandboxed, it has a separate thread for every tab, it allows users to drag & drop tabs, and it's all very fast. But it still has a lot of issues due to its youth. It is a gross diamond. Firefox is a lot more like a polished piece of glass: it works fine, better than Chrome, but its architecture is way older (with all due respect). I think one year from now people might wonder why the Mozilla foundation doesn't abandon Firefox to concentrate on Chrome.
June 9, 2009 4:51 PM
Al said...
It's easy to build a browser for ONE operating system, which is what Chrome is now.
Your claims aren't true until it exists in fully released form for OS X and Linux *and* all the things that you claim are true are still true. Until then, it's a nice Windows browser.
This is leaving aside that Google then has to maintain a browser on three sets of operating systems for years on end, keeping up with security holes, etc. It's a tall order and the energy could be better spent on supporting the existing open source browser that they pulled people from...
Oh, and I wouldn't claim it is the fastest once Firefox 3.5 is out (on all three platforms) in the near term.
Google wants to control the Internet from Search through E-mail to your browser. Personally, I don't trust any corporation with that kind of power.
June 9, 2009 4:57 PM
Jeff Pants said...
Since Tuesday's initial release, I've been running Chrome on Linux as my primary browser. It runs remarkably well -- it feels substantially more responsive than Opera, such that I scarcely miss the features that I thought were nigh-on essential to my browsing experience. Why, it hasn't even crashed. Thank you, Googlenauts and surrounding community!
June 9, 2009 4:58 PM
jswalden86 said...
You should have noted that the Mac release is only for 10.5 before I downloaded it and discovered I'd downloaded a non-functional brick. It's probably the right decision, given 10.4's age -- but you weren't acting honestly in not disclosing that when you made the announcement that there were Mac builds available.
June 9, 2009 8:58 PM
MK said...
@Al: Google probably wanted a clean start. It's easier to incorporate efficiency, security, and multiprocessing into a browser at the beginning and diligently maintain them, than to retrofit them into a mature product with entrenched infrastructure like Firefox. It's no accident that Chrome is reaching feature parity with Firefox faster than Firefox is reaching Chrome's cold-start speed.
You might argue that cold-start time doesn't really matter, but it's about a minute's difference (read: an order of magnitude) first thing in the morning. Sometimes I'm in a hurry, and it feels like a big deal. It's one of the main reasons I use Chrome at all.
June 9, 2009 11:06 PM
analogue said...
I totaly agree, and I'm amazed to see how advanced the development of the GNU/Linux version is !
June 10, 2009 3:01 AM
Brian Masinick said...
I am using a Debian based build of Google Chrome 3.0.187 and I am impressed with the speed on Javascript based pages, such as Gmail and Yahoo Mail. There, Chrome is definitely the winning race horse in the field.
I have noticed that host resolution seems to take a rather long time. Is IPV6 enabled, by any chance? If so, are there plans to either allow enabling or disabling it, or auto detecting its presence to speed up host resolution? That seems to be the one chink in the race horse armor right now.
June 10, 2009 9:21 PM
Matthijs said...
I'm using the daily chromium builds for weeks now! it is really fast.. It's also fun to see the implementation proces going.
The speed factor and clean interface make me use this one over firefox!
June 11, 2009 8:25 AM
Andrew said...
I followed a macles guide to get this for my acer aspire one. It's transformed my netbook. You guy's are brilliant. This browser will definitely become the primary browser for linux based and hopefully windows based netbooks in the future. I live in a super low bandwidth area less than half meg :-( using firefox to visit facebook was nearly impossible, once loaded it was very jerky, crashed. Downloaded alpha version of chromium, facebook runs perfect, loads almost instantly. Never crashed, pages of pictures just appear on clicking next. On firefox this would take significantly longer. I really do appreciate how quick this browser really is. Currently recommend it to everyone I see. Keep up the brilliant work, I am a big fan of the computing world but with very little skill in comparison. I hope to learn a lot through being involved with this community. Been open source for few months now, don't think I'd ever go back now
June 11, 2009 4:48 PM
Pharaoh Atem said...
I find that the Chromium code is totally unbuildable, it keeps somehow killing the linker. Is there a problem with Chromium and Fedora 10? Every time I try to build Chromium, it gets through it just fine until the linker, where I get a Signal 9 (killed) message.
Also, your choice to use GTK+ vs Qt was probably not the greatest idea. GTK+ is rather funky on KDE, even with the gtk-qt-engine. However, Qt 4.5 and higher are very good on GNOME desktops. But unfortunately you already started it, so Chrome/Chromium is stuck for the foreseeable future.
Your choice to use FFmpeg rather than liboggplay as Mozilla had is rather odd too... It seems more like fence sitting, but meh...
When will we see RSS/Atom feed support?
Finally, why did you guys ruin Chromium's look by having a huge GTK+ titlebar/border instead of creating the same effect that the Windows version has by using GTK+ or Qt? It is entirely possible to do it, and it is supposed to be easier than it is on Windows.
It's really annoying that there is the ugly looking titlebar and border surrounding Chromium's window.
June 12, 2009 7:29 PM
cburgdorf said...
@Pharaoh Atem you can disable this ugly top border by right clicking and unchecking the option. However you have to close each tab seperatly then because they missed to implment a global closing button (yet).
However it has issues such as that you won't see a needed border on dialogs such as the source code view.
I really hope they find a way to work great without that ugly top border. It's the most annoying thing in the linux version for me atm compared to the windows version.
June 14, 2009 8:28 AM
Ayumiin said...
I'm really enjoying seeing the unfinished Chrome for Linux. So far, it has yet to crash on me whereas Firefox crashes on me several times a day. I'm just looking forward to a smooth implementation of Flash. It almost made me give up on Chrome in Windows.
I'll do what I can to help a stable version come along quickly because I seriously hate Firefox.
June 15, 2009 1:54 PM
brad said...
Using the dev build on 2 different macs and both are fast fast fast! Keep up the great work! Looking forward to a stable mac build.
June 15, 2009 11:32 PM
yourstruly said...
"...you have to close each tab seperatly then because they missed to implment a global closing button (yet)."
Have you just done that?
It caught me out.
I think it's pretty hot already, not ready for Mr. Average, but I like (seeing) how it's coming along.
June 18, 2009 8:11 AM
Ricardo Z. Vendramini said...
Why the Linux Google Team has stopped with the Weekly Notes?
It would be nice to see some document showing the Linux/Chromium development status
June 19, 2009 11:38 AM
Post a Comment