Archive for February 2008

Firefox 3 Beta 3 Add-ons Manager and Add-ons API

Yesterday the beta 3 of Firefox 3 was released to the world.  This beta contains the new Add-ons Manager, and people seem to be liking it so far - ArsTechnica says

One of the most promising and impressive new features in beta 3 is an
integrated add-on installer system that allows users to search for and
install add-ons from addons.mozilla.org directly through the Add-ons
Manager user interface.

The new Add-ons Manager is the result of collaboration between a bunch of smart Mozilla people - Madhava Enros and Dave Townsend to name two - and a small contribution from yours truly. 

The Add-ons Manager pulls data about Recommended addons and search results from the main addons.mozilla.org (AMO) website via the AMO API, which is my project.    When you ask for a recommendation, the Add-ons manager pulls a RESTian URL like

https://services.addons.mozilla.org/en-US/firefox/api/list/recommended/all/

checks for addons that you don’t yet have installed from that list, and displays details of the remaining addons.

The API will be (is) available to the community as well, and promoted once testing is complete.  If you’d like to experiment with the API then draft documentation is available at
http://wiki.mozilla.org/Update:Remora_API_Docs
(This will move to the Mozilla Developer Center once it’s more fleshed out.)  Please file any bugs you find.

I’m still working on tweaks and bug fixes: I’ve already fixed a bunch of character encoding issues in different languages, and applied some performance tweaks. (Some still to go into production.)  Right now, I’m working on speeding up search.  Search is slow on the whole of AMO, and later this year I plan to implement a full text search.  Right now it’s just tweaking - it’s slow because when you search all the possible translations are searched (think many left joins), and the plan is to rejig the database to only search your local translation plus English (since many add-ons are only available in English, and we wouldn’t want you to miss out).

Anyway, it’s been great fun working on this project so far, and it’s incredibly rewarding to think that something I wrote is incorporated into my favorite browser. 

Frameworks, Addons, Firefox, busy busy busy.

I’m about to leave for Orlando where I will speak at CakeFest One tomorrow on the subject of building the addons.mozilla.org API using CakePHP.  The whole of the addons.mozilla.org website is built with Cake, and we believe it to be the biggest installation (in terms of traffic) in the world.  I’ll post slides after the presentation, and a bit more information about the numbers and so on.

Building the API has consumed my thoughts for the last few months.  It’s used by the new Addons Manager in Firefox 3, which will be in beta 3.  (You can read Madhava Enros’ blog entry on the subject for a preview).  After beta 3 is out, I plan on blogging more about the API details.  I’m still ironing out bugs and doing some peformance tuning.

In addition to my involvement with Cake these days, I have recently been associated with two new framework books.  I acted as a tech reviewer for Mike Naberezny and Derek DeVries’ "Rails for PHP Developers" (Pragmatic, 2008) and wrote the foreword for Cal Evans’ "Guide to Programming with Zend Framework" (php|architect, 2008).  These books are now available, so please enjoy the fruits of the authors’ labor.

I can’t help but find it amusing that something I’m (in)famous for not being a fan of has dominated my professional life for the last six or so months.  I’ll have to write more about my thoughts on these three frameworks soon…but right now I’ve got too much work to do :) and a plane to catch, besides.

Microsoft buys Yahoo! (or would like to) - now what?

Lots of stories this morning about Microsoft’s $44.6 billion dollar bid for Yahoo!

So on the Sun/MySQL theme, what are the implications?  Huge, to me, absolutely huge, on so many fronts.  The positive is that both Yahoo! and Microsoft are big companies that like to innovate. 

From the point of view of a PHP developer, it’s particularly interesting.  Microsoft has internally changed its view of Open Source a great deal over the last few years.  In the PHP world we’ve seen this on a number of fronts, including the partnership with Zend to make PHP run well on Windows, the various Web Developer summits at Redmond (due to Sanjoy Sarkar, a common fixture at PHP events, and all around nice guy Brian Goldfarb, who was the first MS employee to come to a PHP conference, back in 2002 I think).  This last week my friend Wez Furlong (of PDO fame) was at Redmond with, as he put it, a "bunch of compiler geeks", speaking at the 2008 Lang.NET Symposium

Yahoo! is of course the home of a lot of really big PHP, and some famous PHP developers, in particular Rasmus Lerdorf, "the father of PHP", and Sara Golemon.  (Andrei Zmievski left last year to join Outspark.)  One assumes that the architectures within Yahoo! would continue to be LAMP based, at least in part because the cost to switch would be amazing.

These things come in bursts: I remember Sleepycat/InnoDB/etc in 2006.  Now we just have to wait and see who is next.