On the mobile web, Firefox memory issues and more with Chris Hoffman
A couple of weeks ago, the Open Source in Mobile conference (OSiM 2007) took place in Madrid with the participation of Chris Hoffman (right in the picture), Mozilla Director of Special Projects, as one of the speakers.
Ricardo Palomares (left in the picture), member of the Mozilla Links Spanish Edition team and member of the es-ES localization team for Firefox and several other products, spent some time talking with Chris about some very interesting topics including Firefox memory issues, Thunderbird’s spin off, the mobile web landscape and Firefox 3. This is the full text of the lengthy but definitely worthy interview.
Mozilla Links - Spanish Edition: Chris, you are listed as Director of Special Projects at Mozilla Foundation and Corporation. You have been involved in such different things as managing the Firefox 1.0 release, co-writing books about Firefox and Thunderbird, keeping in touch with localization (L10n) communities an, recently, setting up a Firefox support web site powered by community. Is there a way to put all that together in a definition of what really means “Director of Special Projects”? :-) Or, in other words, could you define your role in Mozilla Foundation/Corporation?
Chris Hoffman: I’ve never been one for thinking too much about titles. These days I’m mostly involved in projects that need some help and experience where we have not been able to staff up yet. The areas I’m involved in most these days are (1) working with potential partners to help them understand how they can get involved with the Mozilla project, (2) helping out with International work, (3) helping out on Security bug triage and testing and recruiting security researchers, (4) also trying to get a support site up and running at mozilla.com, and (5) a bit of work to help out on figuring out a mobile strategy. Its a pretty good mix of tasks and in each area there is a combination of technical work and community building. I’m always on the lookout for areas of the project that need help and I can contribute in some way. In the international area I’ve been working on creating an en-IN version that we can used to promote Firefox in India so I’ve been exposed to more of the details that localization teams need to go though to create a new localization. Its been a real eye-opener and a good learning experience.
You have also been involved in Minimo, the Gecko-based mobile browser for Pocket PC, and you’re visiting Madrid to participate in OSiM, an Open Source conference on mobile technologies and business. How do you see open source initiatives in a world like mobile communications where subscription-based services and paid content is so settled? Is there room for openness and no-cost products in such scenario?
Motorola, Nokia, Samsung, Wind River, HP, Sun(Java) and Redhat all had pretty high level exec’s at OSiM presenting some perspectives on how Linux and Open Source will grow in mobile space in the next few years. Most of the linux projections seemed overly optimistic given the current very small market share in the mobile space. Some of the projections had Linux, Symbian, and Windows Mobile each roughly sharing 1/3 of the mobile market by 2010. This all seems unrealistic given the reality of current market share, and the amount of fragmentation of the various distros and hardware support in the mobile space.
I think open source is going to have impact in the mobile space, but it is going to take time. Minimo has been mostly a research project for the last several years, but we have still have had some impact. Minimo introduced tab browsing in mobile browsers a few years ago, and then a couple of months later Opera added tabs to their mobile browser. Steve Jobs introduced the iPhone last January and it was like a replay of things that dougt [Douglas Turner] and I had been doing and blogging about with Minimo a year earlier. Minimo was first to introduce control of the mobile browser UI using an accelerometer when a student at MIT did it on a research project. Minimo was the first browser to introduce full AJAX support and the ability to render and interact with Google maps mashups. Dougt recently won an award for his work to surface location information and location based services using Minimo in the platform. We have also seen Minimo used as the platform for experiments where people are adding voice control to interact with the browser and web content. All this work shows we have had some influence on both Opera mobile browsers and the iPhone, and innovation and experimentation in the mobile space in general.
The iPhone announcement has been great to really wake up the industry and show that a mobile device with a desktop browser engine can be a powerful idea and generate lots of value for both users and the companies that want to produce such devices. Apple’s market [capitalization] took a $10B jump on the announcement of the iPhone, and now after shipping the iPhone in June its up $50B from the first of the year. The iPhone is not solely responsible for all of Apple’s market [capitalization] increase but it has played a pretty big role.
The most important part of all of this mobile work should be to help increase use of the web from mobile devices. Right now there are very few mobile devices that can really deliver a good experience on the web, and use of the web from mobile devices is around 1%. With more focus on high end devices with good desktop browser engines like Gecko in Minimo we should start to improve the experience and value to users in the coming years.
Cost is also still a big barrier to increased used of the web from mobile devices. If I want to get my family of 4 on the mobile web it would cost me about $200 a month in cell phone and data plan charges using a fix rate data plan in the US. Compare that to $24 a month for access to the web from a desktop or laptop system at home and you can see that the value is just not there yet for the mobile web to take off. The carriers will face more competition from free public WiFi, and other access providers so there area signs the cost will start to come down.
Once these things start to come into place more web site designers will start to account for small screens and mobile content needs. Most of the elements for creating a good experience for mobile or desktop use are available in the current web standards but web developers just aren’t taking advantage of them. More good mobile content is needed to attract more users to using the mobile web.
It seems that Minimo is in maintenance mode, without a formal roadmap and builds every three or four months. On the other hand, Joey appears to be something completely new that may need more public exposition to let people see what it is for. What is your opinion on these two projects and their future?
Doug Turner, Marcio Galli and I still do a bit of part time volunteer work to continue progress on Minimo, but you are right we haven’t spent as much time on it lately. Other contributors are also involved. Minimo based builds are also now available on the Nokia 800 due to the work of a team in Brazil and Finland, and we know of other companies evaluating Minimo for future use, and for using it to prototype ideas. After a bit of a lull in work on Minimo I think we will start to see some momentum pick up in the next few months. The first thing that needs to be done is to update the road map and get some good plans together to coordinate the work, and to reach out and build some additional community with interested in the project. A growing number of people want see that to happen so I think there is a pretty good chance that some progress will be made.
Firefox 3 has reached, or is close to, feature freeze and even first l10n builds are expected to be delivered in less than a month. It looks like it will bring less UI changes than Firefox 2, but a lot of backend changes (microsummaries, offline webapps support, APNG, better rendering, etc.). Will it mark the pathway of features for other competing browsers to implement it? Do you think it will boost Firefox adoption even higher?
You’re right. Firefox 3 represents almost 2 years of core browser work that has been happening on the trunk. There is still a lot to be tested cleaned up, polished, and prepared for final release, but I think it is going to be a pretty good release. Some of the backend features will be surfaced in the UI and exposed to users right off the bat, but its also interesting that other features might get exposed with extensions after the release, so its possible that a lot of the innovation exposed in Firefox 3 might happen as time goes on.
Is any policy on to decide which CSS3, XHTML2 and HTML5 features are implemented in Gecko? In a related topic, Firefox has a general reputation of sucking a lot of memory, and a lot of people is using another browser because of this issue. What do you think about it, and how much priority are Mozilla giving to it?
I guess there are two questions here. I’ll talk about memory consumption question first. There are always on-going efforts to look at the key areas that people evaluate when picking a browser. I’ve said for years that there are 6 major areas that need focus to build a good browser and a lot of hard work needs to go into establishing a good balance among all these areas. The areas are
- Performance (page rendering and UI responsiveness)
- Footprint (download size, memory use, etc.)
- Compatibility (with standards, with web pages and quirks of the web, and with other applications, etc.)
- Stability (crashes, data loss, etc.)
- Security
- Features
Over the years we have seen how trying to increase performance and you could impact footprint, Improve compatibility and security and its possible to create problems with footprint and performance. Add features and all 5 areas can easily degrade. The trick to building a successful browser is to balance all these areas and keep extreme focus on all six areas to ensure no area gets out of control.
Firefox is also tuned to run in desktop environments to take advantage of more memory, faster processor speeds, and high-bandwidth connectivity. The Mozilla code is pretty flexible and configurable for all of these areas. Minimo for example is configured for small amounts of memory, slower processing speeds and low bandwidth so it runs pretty good in those kind environments.
When people say “I looked at the task manager and memory use seems high” the question to ask is “does this seem to impact the use of the browser or other applications.” For the most part the answer you will get back is “no”. That’s because Firefox will use the resources it has available with out “hogging” resources from other applications or exceeding what is available on the system. We are always very interested in bugs and well defined test cases that demonstrate where this is not the case. Those bugs tend to get a lot of attention and usually are fixed quickly. Web browsers are a extremely complex piece of software.
Keeping all these areas advancing and in balance is a real challenge. The dramatic growth of Firefox from zero to ~17% worldwide market share shows that we have been able to keep a pretty good balance of all these areas. Taking our eye off the ball of any of these areas is the one sure way to get that increasing market share going in the other direction. A lot of new people have joined the project in the last couple of years but they quickly figure out that these are the key areas to watch for and help out on if the project is going to maintain its success. For footprint and memory use in particular there is some great work that was recently announced and everyone should read about it at. I guess that was a pretty long winded answer to the memory use question.
For the question about the standards I guess there are several angles to look at. Support for web standards has always been a key part of Gecko development since the Gecko engine took form back in 1999. I also mentioned compatibility (with web standards) as one of the six key areas in building a great browser. Over the years we also have implemented standards to both comply with the standards, but also help move innovation forward. All this said there are really no “policies” for deciding which standards to implement. We largely rely on the good judgment of module owners to figure the best course. Folks like David Baron, Brendan Eich and others have steered a pretty good course and got us to the place where Firefox has the best support for web standards. I expect they will continue to make good choices on which standards we focus on implementing in the future. Each standard needs to be looked at in detail to make the best choices so its hard to make a blanket statement here.
The new mail and communications subsidiary aims to enhance Thunderbird feature set and adoption; we’re seeing VoIP, IM and even SMS as possible future enhancements. How does it fit with the small number of paid developers (currently three)?
The new Thunderbird initiative will help improve the amount of funding, resources and attention paid to mail and communications. It’s great that Mozilla will be investing more in this area and looking to work with others that have interest in these areas. As mentioned in a lot of blogs and posts on the topic the first effort will be create a roadmap to help with mapping out direction for these efforts.
Calendar and SeaMonkey are Mozilla community projects with different histories, but sharing a growing success. After a painful backed rewrite, Calendar is approaching now a mature status with a rich feature set and growing user base. SeaMonkey is a surprising example of how community can achieve what Mozilla Foundation considered too expensive to be done without sacrificing Firefox progress (migrating the Suite to toolkit). Both could be somewhat affected by Thunderbird’s spin off. Do you see any risk for any of them in MailCo initiative?
Nothing comes to mind as possible negative impacts for Calendar, Seamonkey, Camino and other community projects. In my mind the new mail and communications initiative is all about helping to make projects more modular and independent. This will allow Firefox to go faster and take advantage of great opportunity we have to influence the development of the web with increasing market share; but this will also allow Thunderbird and the new mail and communication work to go faster as well with a set of people that are entirely focused on that area of work.
Providing an overall Mozilla project setup that allows different groups to operate independently and with a lot of focus only in their specific area is key to the health of the overall Mozilla effort. I think the fact that Seamokey and Calendar are advancing, Songbird, Joost, and other commercial projects are making good progress, and now mail and communications have more investment shows that Mozilla is a healthy open source project with lots of groups able to leverage the technology in a variety of ways with minimal impact.
I’m a big believer that this leverage, along with passion, interest, innovation, and experimentation in a variety of areas is a key to the long term sustainability of the project. Firefox was one of these side projects back in 2002 and you can see the success it has gained when a small team of people can get together and work fast on an idea.
Mozilla as a project has a huge faithful community, but it also has brought bitterness by some people; for instance, what has Mozilla done to bring up something like IceWeasel, IceDove and IceApe initiatives to the open source scene? Is tri-license and trademark on logos so harmful to the open source as Ice* projects suggest?
In my mind the trademark on Firefox and our work to protect the meaning of the Firefox brand is definitely not harmful to open source or the interest of browser users around the world. If a user is looking for Firefox they should be able to find it, and not be confused by a wide variety distributions that change the feature set or dilute the brand. IceWeasel folks want to pick and choose which security fixes they picked up, and modify the configuration to something that was not Firefox, so they shouldn’t call it Firefox or use the Firefox brand Its great for them to create something new if they think they have better ideas about how to create a different browser. Its perfectly good for IceWeasel to exist and make whatever modifications they think are right, and in the best interest of the users they are trying to attract. Maintaining consistent meaning of brands for programs and products, like we have done with Firefox, is key if adoption of other open source software is to grow beyond its current state.
There are some complaints about Mozilla project to be excessively bureaucratic; forms to be snail-mailed to get access to Mozilla CVS is not so usual in other open source projects; reviews and superreviews bring frequent pain (last time a few days ago with pending approvals for Firefox 3) when someone is missing and the queue grows… Even in L10n there have been hot discussions because of license implications when using translation memories. On the other hand, it has been said from Mozilla representatives that those attention to legal issues has helped Mozilla to avoid problems and effectively contributed to its success. Is actually so necessary to have those so rigid procedures and rules?
We have alway try to keep the process and procedure on the project to a minimum, and strictly focus on just enough to get the specific job done. Making sure that we create a secure development environment, authenticating requests for new check-in previledges, and doing code reviews and approvals are part of the process that is required to make great software, as well as the legal issues that you mentioned. In addition we will always be limited in the number of people that are working on the project no matter how large we grow. Its all about identifying priorities, staying focused, and raising flags and communicating when important work seems to not be getting the attention it needs. I guess that leads back to the first question and some of the things I do on the project. As long as I’m around I’ll be interested in hearing about things that people are concerned with and doing what I can to help out if their is a voice that is not heard.
And finally, there is always room for people to involve with Mozilla project. Which areas (coding, documenting, localization, user contributed support) would benefit more of help at this moment?
All of these areas would benefit from growth, and we want to do more to build communities in each of these areas. Mozilla has always been about trying to build communities and make it possible for a broad set of people with a wide set of skills to contribute to the project. Some areas of contribution a definitely harder than others and require more advanced skills. We recent started some discussions for how to update the large number page that we have that talk about “how to get involved.” We need to make sure all the information contained in those pages is up-to-date and that we improve navigation to those pages so people with the right set of skills can connect to the right communities. In addition to the list of areas you provided above I will add a few more.
Testing. Making great software means doing lots of testing and getting lots of feedback. We usually have development running on 2 or more branches so there is never any shortage of builds to test and evaluate on the 3 platforms and nearly 50 languages we ship firefox on.
Marketing and Promotion. Firefox growth has been driven largely by grass roots marketing and that means contributions from lots of people and groups. You don’t have to have any kind of formal training to get involved in this area. Its pretty simple. If every current Firefox user got one other person to install and use Firefox we would double market share again. Thats a pretty big challenge when you think about the end result, but a pretty simple way to help out and make a huge contribution on the project. Spread Firefox also has other ways to get involved and help out in this area.
I guess that is it. I want to thank you Ricardo and the others on the localization team in Spain for meeting up with me while I was in Madrid. It was good to see you all again, and to hear about the work going on here and discuss some ideas about ways to build the Spanish team that are working on localization and helping to promote Mozilla.



Subscribe RSS
Subscribe email
