Egg Freckles
By Thomas Brand

16th Jan 2012 The Life and Death of Camino

By July 2002 Mac OS X was just over one year old, Safari was still several months away, and very few web browsers took advantage of the innovative new features and bold aqua interface of 10.1 Puma, the latest version of Apple’s Mac OS X operating system. Opera looked like it belonged on Windows. iCab looked like it belonged on Mac OS 9. OmniWeb was the first Mac OS X browser developed in en.wikipedia.orgwikiCocoa_(API text: Cocoa), but all three lacked a modern rendering engine capable of displaying the world’s latest websites. Mozilla and Netscape weren’t much better. Both were bloated, unstable, ugly, and slow. Internet Explorer had been shipping as the default browser on Macs since 1997, and was the only browser included with Mac OS X. It’s en.wikipedia.orgwikiTasman_(layout_engine text: Tasman) rendering engine was state-of-the-art when version 5 shipped in early 2000, but since then Microsoft had lost interest, updates were few and far between, and page rendering had slowed to a crawl. Looking back it is hard to think Apple could sell Mac OS X as “the world’s most advanced operating system” without a world class browser, but that is exactly what they were doing during the Summer of 2002.

In late 2001, Mike Pinkerton and Vidur Apparao started a project within Netscape to prove that en.wikipedia.orgwikiGecko_(layout_engine text: Gecko) could be embedded in a Cocoa application. In early 2002 Dave Hyatt, one of the co-creators of Firefox (then called Phoenix), joined the team and built Chimera, a small, lightweight browser wrapper, around their work.

At the time Gecko was a very robust rendering engine, and when it was stripped out of the bloated MozillaNetscape suite it ran quite fast. By combining Gecko with the stylish performance of a native Cocoa interface Chimera became a world class browser in the making.

Quick to load, intuitive to use, I learned about Chimera in July 2002 during the release of version 0.4. This was an important update for the Chimera project because it marked the first time Chimera could open a URL from an outside application, and the first time Chimera could load content into new tab without the need of additional windows. The ability to quickly open websites from NetNewsWire in a row of organized tabs instead of a mess of stacked windows motivated me to replace Internet Explorer with Chimera as my default browser that summer.

Hyatt was hired by Apple Computer in mid-2002 to start work on what would become Safari. Meanwhile, the Chimera developers got a small team together within Netscape, with dedicated development and QA, to put together a Netscape-branded technology preview for the January 2003 Macworld Conference. However, two days before the show, AOL management decided to abandon the entire project. Despite this setback, a skeleton crew of QA and developers released Camino 0.7 on March 3, 2003.

The name was changed from Chimera to Camino for legal reasons. Because of its roots in Greek mythology, Chimera has been a popular choice of name for hypermedia systems. One of the first graphical web browsers was called Chimera, and researchers at the University of California, Irvine, have also developed a complete hypermedia system of the same name. Camino is Spanish for “path” or “road” (as in El Camino Real, aka the Royal Road), and the name was chosen to continue the “Navigator” motif.

Safari was first released as a public beta on January 7th, 2003, it became Apple’s default browser beginning with Mac OS X v10.3 Panther on October 24th, 2003. During the Beta period and into 2004 I stuck with Camino because its Gecko rendering engine displayed pages more accurately than the up-and-coming WebKit rendering engine used in Safari. As WebKit’s popularity grew and developers became accustom to its features, Camino lost much of the dominance it once had over Safari. Safari 2.0 was released on April 29th, 2005 as the only web browser included with Mac OS X 10.4 Tiger. This version was touted by Apple as possessing a 1.8x speed boost over Safari 1.2.4, and a noticeable speed increase over pre 1.0 versions of Camino. Safari would go on to become Acid2 compliant with the release of version 2.0.2 on October 31st, 2005. It would take the release of Camino 2.0 on November 18th, 2009, to reach that same milestone.

After the release of 0.7 progress on Camino slowed as development was taken over by the open source community. The Camino website was moved from the Mozilla Foundation to the Camino Project In September 2005, Mike Pinkerton accepted a position at Google where he worked closely with Google’s Firefox team and continued to work on Camino during his “twenty percent” time. Mike would go on to develop the Mac port of Google’s Chrome browser, a direct competitor to Camino.

Camino 1.0, released on February 14th, 2006, was the first browser of the Mozilla family to appear as a universal binary. It included many important new features and advancements like a new tab bar, download manager with pause and resume, built-in ad blocker, history search, and the ability to autofill forms from the address book. Thanks to improvements in the Gecko rendering engine Camino 1.0 also adopted SVG, the <canvas><canvas> tag, and JavaScript 1.6, as well as improved CSS 2 and CSS 3 support.

My daily use of Camino stopped with the introduction of Mac OS X 10.4, because of Safari 2.0’s superior Javascript performance and RSS handling. Camino continued to be an important browser for users of older versions of Mac OS X. While Safari 2.0 dropped support for Macintosh operating systems older than 10.4 Tiger, Camino 1.0 continued to support 10.2, 10.3, and 10.4.

Camino improved integration with Mac OS X while Firefox and other browsers were demonstrating their platform independence. Instead of using an independent spell checker, RSS reader, and password manager, Camino used the dictionary services, Mail RSS reader, and en.wikipedia.orgwikiKeychain_(Mac_OS text: Keychain) in Mac OS X. Camino’s Keychain compatibility made it an excellent second browser because it shared the same saved credentials with Safari. Camino 1.5 introduced session restore on June 5th, 2007, more than four years before Safari would gain the same functionality in Mac OS X 10.7 Lion. Because Camino is developed exclusively for Mac OS X it was able to adopt some Mac OS X specific features before any other browser including Safari.

Camino 2.0, released on November 18th, 2009, introduced many new interface features to the browser including movable tabs and tab preview. It was the first Camino release to be Acid2-compliant. Two of my favorite features from Camino 2.0 are the en.wikipedia.orgwikiGrowl_(software text: Growl) support, and enhanced annoyance blocking features. With Growl you are notified when downloads begin and finish, helping you keep track of the content you want. The enhanced annoyance blocking features allow you to enable Flash animations on a per-site basis, helping you avoid the content you don’t. Camino 2.0 introduced a updated AppleScript dictionary that included vocabulary for downloading the raw HTML source, or text from any webpage or selection. This feature is still missing from the latest version of Safari, and makes Camino a valuable part of many of my AppleScript toolbox. The greatest new feature in Camino 2.0 may be the inclusion of version 1.9.0 of Mozilla’s Gecko rendering engine. It is this rendering engine that allows Camino to pass the Acid2 rendering test, and brings Camino up to date with Firefox 3.0 released over a year earlier.

One year behind Firefox, and more than four years behind Safari, Camino was showing its age even before it reached 1.0. Camino is no longer the world class browser it promised to be in the Summer of 2002. The latest version of Camino, 2.1, was released on November 29th, 2011 and brings Camino up to date with Firefox 3.6 released eleven months earlier. The Gecko rendering engine reached 2.0 on March 22nd, 2011 with the release Firefox 4, but Camino may never grow old enough to adopt it. Starting with Firefox 4 Mozilla announced the end of Gecko embedding, which Camino uses to include the Gecko rendering engine inside of a native Cocoa interface.

While embedding has long been relatively low priority, being officially unsupported is a significant change. As important parts of embedding stop working, core Gecko contributors will longer be fixing them. Such breakages are unfortunately common—in fact, making sure that embedding breakages were resolved was a significant amount of the work that went into the release of Camino 2.0, as well as the upcoming Camino 2.1. Without support for embedding, releases of Camino using newer versions of Gecko—like the one used in Firefox 4—won’t be possible.

The development effort that was used to maintain Gecko embedding is being refocused to rapidly bring Firefox up to par with WebKit browsers like Safari and Chrome. The volunteers who develop Camino are too few to maintain Gecko embedding on their own, or put forth the major effort required to port Camino to WebKit. If nothing is done Camino will continue to receive security and stability updates as long as Gecko 1.9.2 is supported, but it will never see full support for Acid3, HTML5, or CSS3.

Camino will continue to be a viable browser only as long as the web works with Gecko 1.9.2, but as I write this many webpages are passing it by. Even though I still have Camino installed on my computer it fails to qualify as a modern browser less than two months since its last update. I am saddened that Camino must die in the effort to save Firefox, a browser that has gotten just a bloated as the Netscape Suite it once replaced. By losing Camino we will not only see the end of a browser that once made the Mac great, but the end of a development community focused solely on the advancement of a great Macintosh software.