Jeff Nolan posted some notes on Blake Ross’ thoughts on Firefox’s product philosophy and practices here. As you’ll knows, I’ve been very interested in the whole PM function within the context of an open source project and this post provided me with lots of good insights.

Generic thoughts I agree with…

- making easy to use/simple applications is harder to do than most people think
- many times, the ONLY way to make easy to use applications is to cut functionality/features (there is only so much UI design can do)
- nothing can replace the human interaction as far as understanding the needs of existing and future customers

Futhermore here are the development rules Ross abide by:

Development rule #1: all patches are not created equal. Second level of review that evaluates not simply whether the code is sound, but is it doing something useful. This is a departure from typical open source projects which gravitate to sound code belonging in the tree.

Rule #2: All users are not created equal. Firefox has a voting mechanism for bugs, but a lot of votes aren’t necessarily heavily weighted if the source of the votes is regional or somehow. They also claim to be a meritocracy where peer respect is critical to having a voice in the community.

Rule #3: Make decisions and get a thick skin.

#1 is a PM funtional responsibility that Open Source projects are getting smart to.

#2 is very interesting. Most companies have “customer councils” but this voting system really expands the sample size so PM’s wont get sample biases. Ofcourse, how to incorporate the needs FUTURE customers is question that is not addressed by this system effectively. Either case, increased transparency is something that closed sourced company should work on with their customers. (Kinda of a “architecture of semi-participation”) Of course this rule also reminded me of my “market efficiency” theory with regards to PM a few posts back.

Another nugget was that

Why was Firefox created? The only reason it was created was because people were asking for it. The problem with Netscape was too many cooks in the kitchen… endless debate and infighting by too many people and they didn’t listen to customers.

I would not be surprised if the “cooks” where product managers. Maybe lots of companies are over staffed with PM’s and should let engineers take over some of these responsibilties. (Or maybe not, cause I still need to make money somehow :) )

I quote Blake on his latest post

I expect more developers would be disgusted, too, if they interacted with Normal Human Beings using software on a regular basis. But the emergence of “usability” as a separate industry only insulates them.

Very true, that sometimes specialization reduces an individual’s sense of responsibility and de-humanizes decision making. Product Managers are effected by the “usability malaise” in much the same way. The problem is that without specialization all of us would not get to see our wifes for dinner.