Firefox Feature Innovation
Hofmann, Chris
The life of a Firefox feature : idea ? bug ? discussion ? patch ? experiments ? discussion ? tests ? beta ? full feature in Firefox.
 I'm sorry, the speaker system is not working. So I'm trying to talk loud. Can everyone hear me? That's kind of moved down. Can you hear okay? I'm sorry, I'm sorry. I'm sorry. I'm sorry. I'm sorry. I'm sorry. I'm sorry. Can you hear okay? So Paul Rojane came up with this idea. He was originally going to get this talk about talking about features that go into fire blocks and to get people an idea about the process that we use for thinking about innovation and for trying to get features into fire blocks. So I've jotted down a few thoughts and I'm going to share them with you today. Mostly want to make this more of a conversation. So if you have questions, feel free to raise your hand and stop me and we can talk about your ideas. So I'll talk a little bit about its history, its browsers and how they evolved over the years. The ingredients for what it takes to create a feature and get it into fire blocks. Some of the successful things, some of the things that, you know, strategies for navigating all the process that you have to get through to get something into fire blocks. And a few examples of some recent features that the people have been working on. So I'm going to ask a bunch of questions and like you said, if you have questions, raise your hand and let's make this more kind of a discussion. So how many of you are at fire blocks? How many of you have a picture? How many of you have some ideas on how features or you're working on stuff, actually working on stuff that you like to see get into fire blocks as a feature? Okay, a couple of people. You're working on stuff, actually working on stuff that you like to see get into fire farms as a teacher. Okay, a couple of people. All right. So hopefully this will inspire you to get involved in some way. And there's one of the things about the work that goes on in Mozilla is there's many, many different ways to get involved. So there's actually kind of two different kinds of activities that go on in creating features in FireFox. You have kind of user interface where there's lots of creativity that can go on. And then you have the back end, the get go core engine that tries to harness all the complexity of the web that makes the web easy for people to use. And there's different kinds of approaches. With the front end, with the user interface, we can do all kinds of things. We can experiment and we can compete and try and make FireFox better than Internet Explorer and Chrome and Safari. And there's not very many obstacles there to trying different things. With the back end, to do real innovation, we have to get all of the browser vendors convinced to eventually include a feature if it's going to be used widely. So there's different kinds of ways to measure success of features and different approaches that we have to take to get these two different kinds of features into FireFox. So how many of you have contributed to the Mozilla project? Or the regular contributors? Okay, is that all? All right, well I'm going to convince you that you're all wrong there. So the first thing, so I want you to stop and think for a minute. When was the first time that you used FireFox? That we first started developing the FireFox code on the top of Mozilla in 2003. And sometime between 2003, every one of you downloaded it and installed it the first time. So if I can think back, what was the year that that happened? I'll give you just a second. Okay, so 2003, how many? All right, now 2004. 2004, 2005. 2006, 2004. 2007. 2008, 2009, 2010. And this year. So it's pretty interesting. So the distribution there is like we have a lot of people that have been using FireFox for a long time. And so the next set of questions are, how many have helped someone else to use FireFox? Okay, that's pretty amazing. Right there. And how many of you have helped like two people use FireFox? Or more, like five, ten? Who thinks they have the highest number of people that they've interviewed FireFox to? Maybe over ten? So another thing about viral adoption of any kind of products is that there's a lot of researchers have studied this. The way that products become viral is not that like one person starts using it and they introduced one other person to use it. And you have that network effect, that expansion. Which usually, you have a smaller set of people and they infect or share their ideas or their products with a bunch of people. And that kind of viral effect is what's happened with FireFox. So this is the growth of the internet, the number of users on the internet over time and the different browsers that they've used. So you're all part of this big orange area up here that makes up, you know, now makes up 30% of the web. And back in 2003, there was only a handful of people. There were, you know, started out with one or two people, you know, developing and starting to use FireFox. And now there's over 450 million people that were using FireFox. And if you know anything about Mozilla, we don't do advertising. The only way that this growth has come about is because people like you that have tried it yourself and then have helped others use FireFox. So you are a big contributor to changing the web. And for that, you are part of the Mozilla project. You are a contributor. You've made a difference in how the web is evolving. So the other thing about this chart is that it shows kind of waves of innovation, waves of things happening. If you look down on this side of the chart, back in the late 90s, you know, Netscape started out and had a virtual monopoly on the browser market when they first started to have a 90% market share. But the internet was very small at that stage. And then Microsoft started to compete in the market and created a monopoly and they got up to 98% market share. But some interesting things happened here. In these early days, there was a lot of innovation going on. There were these building blocks of the internet where they created things like cookies and SSL, HTML4, JavaScript, plug-in, CSS. All these were new innovations that made webpages easier to use and made the web accessible and useful for more people. And then we moved to what are called the dark ages. So when Microsoft got to 98% market share, there was no incentive. There wasn't a lot of revenue generated from the browser. They weren't interested in continuing to develop ID and advancing it. But at Mozilla, we were. And so, you know, we have this period of the dark ages in the past where, you know, we at Mozilla continue to try and improve the browser, but Microsoft wasn't going along the program. And so it's been a constant battle since around 2001 and 2002 to have been dragged and backed. Find ways that we can influence Microsoft and Opera and, you know, eventually Google and Safari to start creating browsers to advance the set of standards, to adopt the set of standards that were already defined and started advancing the web. So that's what started to happen when Firefox market share took off. Without people like you helping to build market share to help create some influence, we wouldn't have been able to bring Microsoft back to the table, back to the browser development. And the web would have stagnated, essentially would have been frozen in time with the IE6. So that's a pretty major accomplishment. So I mentioned that, you know, so we had the surge in innovation and new features going into browsers. There was this stagnation period for several years. And we're right on the verge of that changing again. Over the next six months, we've got IE9, new versions of Chrome, Firefox 4. And these browsers have a tremendous amount of new building blocks to create to improve the web. And, you know, the kind of the buzzword for this is HTML5. But HTML5 is not one thing. It's a collection of many innovative technologies that web developers can start to use as soon as the browser starts to go out. So things like OpenVideo, SVG, Canvas, Geolocation, Multitouch, Accelerated Graphics, Offline Web Applications, DragonDraft File Upload. These are all things that are going to be built into all of those browsers. And just like the web moved very quickly many years ago, it's going to take off again. And it's going to change the way that people use the web. There's a lot of change. So, you know, our mission remains the same, though. We want to continue to be able to influence the direction of the web. We've seen when a few companies dominate technology, it can stagnate, it can move in the wrong directions. So we want to build a strong community of people that want to continue to influence the direction of the web and steer it in a way that keeps the web open, keeps it innovative. So we had a bunch of early Firefox users. How many recognize this browser? So we've got a bunch of early Netscape users as well. So this is version 202 of Netscape. And so that's got a location bar. It's got some buttons. You know, there's been tweaking to the UI that's happened. But in some ways, you know, the browser looks a lot like it did back in 1998. You swagger out, as you can see all the major features there. We've kind of been tweaking around the edges. And then there was this period of satination where, you know, none of the core development was going on. And it's probably good to, if you want to find ways that we can sustain innovation and we can keep it going the way that has happened in just the last few years, and we'll take off in the next few years, we need to develop some perspective. Like where are we at in the stage of development of the browser? So one way to, we can compare to other industries. We can compare it to the auto industry. So back in when in 1908, the Model T was introduced. And it was the first time when automobiles became accessible to the general public. Affordable, you could use them, you could understand how to operate them. And so the automobile industry started to take off. And in some ways, you know, that's the equivalent to the Netscape browser. And we moved from a stage where it was just enthusiast. How many used the internet before Netscape? Okay. So if you remember, so you had to, you had, it was a series of command lines. So that view an image, you would probably bring out a program like FTP. You would go to a site like NASA or someplace that was storing interesting image. You would, you would transverse down the directory structure to find an image that you thought was interesting. You download it, then you unzip the image, and then you bring out a program like paint to view the image. So there's like 20 steps to accomplish something now to one click. So those kinds of innovations have to come together before you can get a significant number of people to start to use technology. And so the automobile industry goes on for 50 years. And then in the 50s and 60s, the emphasis became trying to make cars faster. And trying to introduce some interesting design to attract people. And in some ways, that's kind of where we are now. Like we have this intense competition going on between the different browser JavaScript engines. We've got personas and we have studies that kind of measure and track performance and changes to user interface. We're in this constant battle now where like we're trying, you know, it's up a race is on to see how many pixels can be removed from the user interface of the browser. So there's a lot of focus on the style and there's a lot of focus on performance that's going on now that's equivalent to the automotive industry. So it's only taken us, you know, 10 years to go as far as the auto industry went in 50 years. But we're still, you know, maybe not advanced as far as advances as we think it might be. So in 1973, the Mercedes S class was introduced and it was the first auto build that had anti-lock braking systems, airbags and seat belts and electronic tracking control. A lot of safety features. So there's a few safety features that have been built into the browser. We have safe browsing where we use a service and it feeds down information about dangerous sites. And if you happen to get redirected or stumble onto one of these dangerous sites, it's like an airbag that comes up. But there's not standards with standardization of that feature. Each safe browser feature and each browser were slightly different. And so, you know, we may be somewhere around 1973 with the development of browser technology. The other part about this, you know, the S class introduced a bunch of new technology and then several years later they became standards. And all automobiles adopted those things. And that's a lot like we see in the development of the browser. And it's a tricky interaction between integration of standards and trying to keep innovating. So there's two, there's several different directions this can work. It can be like the Mercedes. You can take a set of features that have been successful and been proven and you can turn those into a standard and get them adopted across the industry. So it's a matter of harvesting the feature work, consolidating it and turning it into standards. But browser vendors haven't always done a good job of this. Most of this is a frustrating and painful process to go through standardization. So the whole browser industry needs to focus more on this now that we're innovating more. There'll be more opportunities for that. The other is to take a standard, you know, just define the standard kind of in the dark and then try and get that standard adopted and turn it into features in individual or for all browsers. So it's a harder approach. But if you're developing some technology and you've been trying to get it defined as a standard, this is the way that things like video accessibility features have gone into Firefox. So there's another kind of interesting angle to standard. How many are familiar with the ACID 3 test? And so everyone in this room knows that Firefox's score on ACID 3 is 97 out of 100. So what's the story behind that? Well, you know, 97 out of 100 can be okay. And 100 out of 100 is really avoiding the critical questions that need to be asked about how each of the browsers are performing. So what's happened is that the three points that Firefox is missing are that there are a few tests in ACID 3 that test a feature called SVG fonts. And all of the other browser members have implemented enough of SVG fonts just so they can pass the ACID 3 test. But there's a whole other set of issues that they didn't go through and are not making it into the press or are not making it into the minds of the developers on their teams, is that first of all, there's an alternate technology called WebOpenFonts. The WebOpenFont format, W-E-F-F, provides a parallel set of features to SVG fonts. And that may be good enough. We may not have to adopt both sets of technologies because the other browsers haven't adopted the whole set of SVG fonts as well. They've adopted just enough to pass the ACID 3 test. So there's some interesting, you know, if you're interested in reading more, one of the tests that you've experienced, people, Alexander Levy, wrote an article on this and he can search and find it. But it raises the issues. I mean, what we should be talking about is do we need SVG fonts? Is the WebOpenFont format enough? And can actually anybody really implement all of SVG in a way that it's backed out? There are some issues around that as well. We should be having those conversations and we shouldn't be having a conversation of, you know, everybody has 100% adoption except for Firefox and ACID 3. So let's get back to this comparison to the auto industry. There's still some challenges that, like the auto industry has started to innovate and advance again, you know, largely driven by oil prices. And they've done a lot of interesting new technology to make cars more economical. And that's probably an area where browsers will go next. You know, we've made some choices in Firefox 4 that optimize on speed but not necessarily memory use. So we may have to revisit those. And we may have to find solutions that not only give us performance but also they're economical in terms of memory use. So this is the test for the memory use. So you can have a car that goes 200 kilometers per hour and it adds 1 cent per kilometer to operate. And that's about one tenth of the operational cost of gasoline vehicle. So there's, you know, if we look to this other industry about, you know, where might things go next, you know, the effective use of the computing resources that people have, you know, not only on desktop but laptops and mobile devices, we need to start to focus on slimming down the browser, maintaining its speed, its functionality, but focus on additional areas. So kind of the lessons learned through this comparison to the auto industry. Keeping these combinations of safe and easy and fast and compatible and stable and predictable are pretty important in not only individual features but in the browser in general. That's the way that people evaluate browsers. If there's one critical element of those five or six things that's missing, like people just latch onto that and they move to a different product. That's what happened with Internet Explorer. It was insecure and people were looking for other solutions and they found part-files and it solved their problem. For many years, Opera was the fastest browser, but no one adopted it because it had implementations and being easy to use, being compatible with websites. So it's pretty critical, but it's also hard to look at all those things and try and breathe the right balance. So other ingredients for innovation, you can talk about. One of the things that's allowed us to innovate with Firefox is that we've tapped into people who have a real passion for creating browsers and for making the web better. And this initiative and passion has been with us through the entire lifetime of the Mosul Project. The most recent example is there's a 12-year-old kid named Alex Knowles who figured out how to download the Mosul code and do some security research. He's found critical security bugs in Firefox and he's participating in our web bounty program. We paid him $6,000 over the last few months for doing this research, reporting the bugs to us, doing responsible disclosure. And if a 6-year-old kid, there's lots of challenges to anyone trying to figure out the Mosul code. As an example, it's like someone taking enough initiative to go through and figure out how to get things done in this very large software project. So it's pretty impressive, but that kind of thing has been happening for the last decade. The other thing to think about when you've got an idea for a future and want to see it through to completion is really trying to understand what problems it's solving and how much impact it will have. Not only for you, but there are other people that are running into the same kind of problem and are looking for the same kind of solution that you're wearing. So once you've got kind of an expression of the problem that you're trying to solve, there's a lot of creative things going on with creating videos that kind of describe the problem and your approach to creating the future. So here's an example of that. So even if you don't have any coding skills, how many are programming in the other ones? So, yeah, a large number. Even if you don't have programming skills, you can create one of these videos describing your problem in enough detail that people can start to look at it and figure out if they can come up with solutions to the problem. And if you do have coding skills, I think this is becoming a more and more critical part to the development is for you to be able to explain the future work that you're doing to others so that you can get it integrated and adopted. So here's kind of an example. This is an idea, you know, creating these videos is an idea where you're explaining the future and going through the motion of how you think it should work. And all of this went on just with, like, prototype code before this feature called Paderama was included in Firefox, in Firefox 4.0. And we're doing this not only for user-facing features, but also for, you know, we introduced WebGL into the Firefox mobile browser. So here's another video showing how WebGL works. Hi, my name's Lauren K. Church and I wanted to show you some WebGL demos running on mobile phone. Here we've done WebGL demo running inside Firefox, on a KS-900 device. It's a simple demo, we're just trying to classify the model and letting the user rotate it around. You can see it's pretty performant, even though it's done on small optimization work on WebGL these devices did. This is really the first build of our time, thanks to work. Here's another demo where developer Dogo Grant has ported a 3D effect to WebGL. This demo has created the effect with a complex OpenGL shader that's running pretty well on the device. One of the goals of WebGL was to make it possible to create 3D web content that would run on both mobile and desktop devices. And I think that we're definitely heading that direction. Third demo is a 1D demo on the device. So that's an example of someone who's working on WebGL for many years trying to get it adopted as a standard, trying to get other browser vendors to do it off-line technology, and trying to get it integrated into a hostility. He's gone through, he's not only explained what problem he's trying to solve, but he's also given some great demos of how the technology can be used. So that's becoming more and more of a critical path to getting features into Firefox. Kind of building a community of people that are interested in technology even before it's fully created. So the other thing that another kind of lesson learned is that some people take the approach that like there's something that Firefox really needs to do, and they've got an idea about exactly how it should be implemented. And since there's no running code for that, it's really better if you step back and approach it like an experiment. You define what it is that you're trying to do, and you're creating some metrics for success. And the one thing about innovation is that you have to try hundreds or thousands of things before eventually you latch onto the best solution. So using a scientific approach to go through the technical process is pretty effective. And then all the things that are part of open source, most of the innovation, the way that people think about it, comes through proprietary technology development. And we're trying to change that. We're trying to get people to embrace an idea where you can be open, you can share ideas, and innovation will actually speed up by doing that. And then the last point here is about, you know, if you come up with an idea, it's pretty likely that someone will already have had something similar to that. There's 10,000 different add-ons for Firefox, you know, different people trying out experiments. So, you know, that's a place where you can go look and find out if anyone's done work in this area before. Is there anything that you can leverage and help to move forward? And so, like everyone signed up with the auto industry, you know, there's still opportunities to make the browser go faster. There's still opportunities to make it more secure and to keep users in control. And, you know, navigation to web content is still a problem that we're trying to deal with, making that easier. And so, you look back through these different areas of opportunity, and they're kind of all over. And so, the best way to do that is to, you know, look for areas where people are struggling in their use of the browser, either yourself or, you know, things that you observed. And try and identify these areas of attention. So, one area that's pretty obvious, how many attended the keynote, Evan's keynote this morning. So, there's a little bit of tension going on between using the web for social interaction and wanting to maintain privacy and anonymity. And so, this is a great area for innovation. You know, Facebook and Twitter and Google have kind of created a monopoly on the way that people think about social interaction using web services. And just like, you know, ten years ago, Microsoft created a monopoly on web browser. And you need to find ways to break that monopoly down. And you need to find ways for people to think about social interaction and use of the web in different ways. So, there's a security researcher called Moxie Myron-Swipe. He's done a pretty good job of articulating some of the problems that they see. So, what people really want, and they're sharing information over the web, they want to communicate with their friends and family. And if they necessarily want to communicate with the company Facebook or the company Twitter, they don't need to be a part of every single detail that goes on in your interaction with your friends. But you still want to be able to communicate with your friends. So, just thinking about idea kind of like turns the whole economic and development model that's going on. So, if we can focus on creating an interaction model between people rather than through centralized services, we'll probably be a lot better off. So, the other thing that's kind of obvious is that users aren't part of this debate. We're kind of being dictated in terms of, in the trade-offs that are going to be, that people are making. And the terms of the debate are, well, do you want targeted services? Or do you want anonymity and privacy? You can't have both. Well, it's, if you state the question that way, it's probably true, but there may be alternative ways that we can go around creating this. So, you've got you, you've got all the sites that you visit, and you have ad networks and analytics companies, and they're all collecting your browser history as you move around the web. And, you know, the parts of the players that are in the debate now are the ad networks and the sites. But there's no kind of user voice in what's going on. And the attitude of the websites and the ad networks and analytics companies are, you know, basically you have no internet, you have no privacy on the internet, so get open. And one thing that we want to do in Firefox 4 is to break down some of these ideas. Because what we can see now is that privacy is at an all-time high, or surveillance is at an all-time high, and privacy is at an all-time low. And if you state the term for the debate, that's the situation that we're in, where that might be a way to mobilize a lot of people in bringing a bigger voice to this debate that's coming up. So we have an opportunity now. Governments are more interested in what's going on. The websites are, you know, there's some that want to participate in better solutions. And so we're implementing a feature in Firefox 4 called Do Not Trap. And, like you say, innovation comes when you try hundreds of experiments and you finally graduate the one. So this was one of many experiments that we wanted to have. And basically we're going to have a setting with a browser where you can go in and you can say, I want to be served targeted ads, check that box, or you can check the box that says, Do Not Trap me. And when you set that in Firefox, whenever you visit a website, when you first make the connections to the website, the HTTHenters will provide that information in a standard way. And we'll start to tell websites and ad networks and analytics companies that I don't want to be trapped anymore. And, you know, on the Mozilla site, we'll also monitor how many of these things that we're getting that says I don't want to be trapped. And we'll publish that information so the whole industry can start to understand how many users out there feel this way about problems that they don't want to be trapped. And we'll try and use this to pressure the websites and analytics companies to start to rethink their services so that they can either provide both kinds of services, and we went along using the web for decades without a lot of tracking going on. But now, you know, there's this big rush, the only way that advertisers can find money is that if they have targeted ads, you know, I don't think that's true. And so this is one way that users are going to be able to provide their voice. Have you decided to default values for those settings? Pardon? Have you decided to default values? The default values. So that's also an interesting question. So we thought about this a lot and we could have set the default value to be don't track me. That's kind of what we all believe out on the development team. You know, that's what we should be saying there. There's another way to look at it is, you know, we've gone 15 years where kind of the default settings of the web were to allow third party cookies to go through to allow CSS visitors. There are ways to, we have to, the technology on the browser and on the web services is basically set up to allow tracking through kind of this use of the original protocol ideas. But anyway, we've had tracking integrated. So for those two things, we thought, well, since the default has kind of been to allow tracking, and if we change, if we put, do not track me as the default for every user, basically what we're saying is it's a message from Mozilla to all the websites to say, you know, Mozilla thinks that this user doesn't want to be tracked. So we thought, you know, the best way to allow the user to have a voice is to send no setting is the default. And so there's actually three settings going on. You know, no setting is what your browser comes with. If you've gone into the user interface, you can check either one of those. And so that's the user being able to communicate what their intentions are. And so this was just introduced a few days ago into the code. How many are Firefox 4 beta users? All right. So, so today, I hope you all go down, or go, you know, today or tomorrow, go download Firefox 4 beta 11 and go into the advanced preferences section and check the box. And, you know, they, this, the, I want to be served targeted ads, hasn't made it into the UI. Because we think like the early adopters of this aren't really interested. And because there's lots of technical things to overcome to set that kind of UI up, we can actually use some help if anyone's a Zoom hacker. You know, it was a core technology guy who did all the implementation for this. So he's not good at the user interface part. But if you want to, if you want to contribute to that, we can use some help. So, you know, we can start right here. In 10 years from now, I can come back to the conference and I can say, how many sets do not track on the weekend that was introduced. And you guys will be the start of the wave. It's like you were started the way with Firefox. There's a private privacy setting that's going into Firefox. And this is kind of the reverse. So like we're racing to get you not trapped into Firefox 4. And there's a very compressed schedule and like we've only implemented half the UI that we wanted. You know, this is, this is, this is, this is a problem on the other end of the spectrum. This is, how many are familiar with CSS Visited? Is that the property you can set in CSS? I can pretty good name. So, so this has been around since the introduction of CSS. And websites can actually figure out what sites you visited by giving you a set of links and setting this Visited property on it. So they can see changes in the layout when we change the colors of the links in the web page that you see. So the idea was in this feature was, let's change the colors and layout of the page. So then you can, you can see whether or not you visited a site when there appears a link in the page. But it also allowed websites to track their movements around the web. So David Baron, one of the developers and one of the people that works on the CSS spectrum, he's been thinking about a way, you know, for almost a decade now, that we can maintain the value of the feature to the user, but also make it so size-man-tracking. So he's, you know, finally after nine years of working on this, he's come up with a solution that's been integrated into Firefox 4. And Chrome has also adopted his code. They've taken it in. And we want to get all browser vendors to adopt this. So that's, that's kind of, you know, two, two completely things. You know, one is taking a lot of, you know, a decade. And the other, hopefully, will be successful in much shorter time. So, you know, nothing else, but IA is programs that are set up so that if you do come up with your own feature, I.D., I.D.m, there's funding available for you to explore those ideas. How many are students? A few. So, any of you have participated in Google Summer of Code? And one. So this is a very interesting program that you can, you know, you get a stipend for Google and you can work on open source projects. And we've had one of the students a couple of years ago did the implementation for WebSciples for Firefox. So you can, you know, you basically can pick the project that you want to work on. You write up a specification of what you want to do. There's a committee that evaluates and they select about 10 to 12 projects a year to work on Firefox. And then we also have other internship programs. We have security bug bounties and security research contracts. And we also have ways to test out your ideas with a program called TestPilot that's in the database in the database. And we ask users if they want to opt in to send the information about individual study programs that we're running so we can start to gather, collect up statistics on how many tabs people have open, how many bookmarks, how they use the browser. So it's allowing us to design the features a lot better. So there's opportunities for you to create one of these studies. There's also opportunities to help us evaluate the data and display it in an interesting way so that we can learn more further. And then how many of, how many of add-on users? Maybe 75 percent. So, you know, add-ons are a way to see what kind of experiments the people are doing. That was the intention of add-ons, is to allow people to experiment and try out new ideas. And there's a replacement for the add-on system called Jetpack. And it should make add-on developer development easier. And there's also a project called ChromeList which allows people to create user interface, an application user interface just based on HTML so that you don't have to know the Zool language that Firefox is going to use. So those are a lot of the ideas about how you can participate. Different ways that you can plug in to taking some ideas that you have, working with others, and help us to invade and improve Firefox. So, just a few more ways. So I think I'm almost out of time. If there's any questions, we can wrap up now. So how do we decide these features? What's the question? Mostly we try and shift the responsibility for making decisions about any area of the code to the module owners of the specific area of code. So if it's a networking feature, there's someone who is the module owner of the networking code and they make decisions on what features go in or out. So there's a number of different functional areas of the browser and a hundred different modules. So it's a pretty complicated process, especially if you're developing a feature that spans a number of modules. Like you basically have to convince a wide group of people just through discussions and bugs, exchange of ideas, and try and build consensus. Yeah, they're mailing lists, wiki pages, and through the bug system. Hopefully they'll write up a blog post on what they're trying to do, or create one of these videos on what they're trying to accomplish. They might write a specification and put it on our Zona or wiki, and then they might open a bug and start attaching patches to the bug. Then they'll try and get the module owners to review the patches, provide feedback, or it might go through several iterations of trying to make the code more compatible with the existing architecture. They'll get lots of feedback through this peer review process that every change goes through. And then if everyone kind of decides, you know, it's ready, then it's checked in. Any adults, maybe any creatures? There's quite a few. I'm not hard on this one. Sync started out, the Firefox Sync started out as an Allen, it's being integrated. The search engine, search part of it, originally started out as an Allen. Some of the awesome bar features that search about history and give you the list of sites, some of those were started out as a push-up. A lot of the projects that we work on in labs start out as an Allen, and then they involve a few certain states and certain considerations. It's a good place to test out ideas. Thanks for coming.
 I'm sorry, the speaker system is not working.  So I'm trying to talk loud.  Can everyone hear me?  That's kind of moved down.  Can you hear okay?  I'm sorry, I'm sorry.  I'm sorry.  I'm sorry.  I'm sorry.  I'm sorry.  I'm sorry.  Can you hear okay?  So Paul Rojane came up with this idea.  He was originally going to get this talk about  talking about features that go into fire blocks  and to get people an idea about the process  that we use for thinking about innovation  and for trying to get features into fire blocks.  So I've jotted down a few thoughts  and I'm going to share them with you today.  Mostly want to make this more of a conversation.  So if you have questions, feel free to raise your hand  and stop me and we can talk about your ideas.  So I'll talk a little bit about its history, its browsers  and how they evolved over the years.  The ingredients for what it takes to create a feature  and get it into fire blocks.  Some of the successful things, some of the things that,  you know, strategies for navigating all the process  that you have to get through to get something into fire blocks.  And a few examples of some recent features  that the people have been working on.  So I'm going to ask a bunch of questions  and like you said, if you have questions,  raise your hand and let's make this more kind of a discussion.  So how many of you are at fire blocks?  How many of you have a picture?  How many of you have some ideas on how features  or you're working on stuff, actually working on stuff  that you like to see get into fire blocks as a feature?  Okay, a couple of people.  You're working on stuff, actually working on stuff that you like to see get into fire  farms as a teacher.  Okay, a couple of people.  All right.  So hopefully this will inspire you to get involved in some way.  And there's one of the things about the work that goes on in Mozilla is there's many, many  different ways to get involved.  So there's actually kind of two different kinds of activities that go on in creating  features in FireFox.  You have kind of user interface where there's lots of creativity that can go on.  And then you have the back end, the get go core engine that tries to harness all the complexity  of the web that makes the web easy for people to use.  And there's different kinds of approaches.  With the front end, with the user interface, we can do all kinds of things.  We can experiment and we can compete and try and make FireFox better than Internet Explorer  and Chrome and Safari.  And there's not very many obstacles there to trying different things.  With the back end, to do real innovation, we have to get all of the browser vendors convinced  to eventually include a feature if it's going to be used widely.  So there's different kinds of ways to measure success of features and different approaches  that we have to take to get these two different kinds of features into FireFox.  So how many of you have contributed to the Mozilla project?  Or the regular contributors?  Okay, is that all?  All right, well I'm going to convince you that you're all wrong there.  So the first thing, so I want you to stop and think for a minute.  When was the first time that you used FireFox?  That we first started developing the FireFox code on the top of Mozilla in 2003.  And sometime between 2003, every one of you downloaded it and installed it the first time.  So if I can think back, what was the year that that happened?  I'll give you just a second.  Okay, so 2003, how many?  All right, now 2004.  2004, 2005.  2006, 2004.  2007.  2008, 2009, 2010.  And this year.  So it's pretty interesting.  So the distribution there is like we have a lot of people that have been using FireFox for a long time.  And so the next set of questions are,  how many have helped someone else to use FireFox?  Okay, that's pretty amazing.  Right there.  And how many of you have helped like two people use FireFox?  Or more, like five, ten?  Who thinks they have the highest number of people that they've interviewed FireFox to?  Maybe over ten?  So another thing about viral adoption of any kind of products is that there's a lot of researchers have studied this.  The way that products become viral is not that like one person starts using it and they introduced one other person to use it.  And you have that network effect, that expansion.  Which usually, you have a smaller set of people and they infect or share their ideas or their products with a bunch of people.  And that kind of viral effect is what's happened with FireFox.  So this is the growth of the internet, the number of users on the internet over time and the different browsers that they've used.  So you're all part of this big orange area up here that makes up, you know, now makes up 30% of the web.  And back in 2003, there was only a handful of people.  There were, you know, started out with one or two people, you know, developing and starting to use FireFox.  And now there's over 450 million people that were using FireFox.  And if you know anything about Mozilla, we don't do advertising.  The only way that this growth has come about is because people like you that have tried it yourself and then have helped others use FireFox.  So you are a big contributor to changing the web.  And for that, you are part of the Mozilla project.  You are a contributor. You've made a difference in how the web is evolving.  So the other thing about this chart is that it shows kind of waves of innovation, waves of things happening.  If you look down on this side of the chart, back in the late 90s, you know, Netscape started out and had a virtual monopoly on the browser market  when they first started to have a 90% market share.  But the internet was very small at that stage.  And then Microsoft started to compete in the market and created a monopoly and they got up to 98% market share.  But some interesting things happened here.  In these early days, there was a lot of innovation going on.  There were these building blocks of the internet where they created things like cookies and SSL, HTML4, JavaScript, plug-in, CSS.  All these were new innovations that made webpages easier to use and made the web accessible and useful for more people.  And then we moved to what are called the dark ages.  So when Microsoft got to 98% market share, there was no incentive.  There wasn't a lot of revenue generated from the browser.  They weren't interested in continuing to develop ID and advancing it.  But at Mozilla, we were.  And so, you know, we have this period of the dark ages in the past where, you know, we at Mozilla continue to try and improve the browser,  but Microsoft wasn't going along the program.  And so it's been a constant battle since around 2001 and 2002 to have been dragged and backed.  Find ways that we can influence Microsoft and Opera and, you know, eventually Google and Safari to start creating browsers  to advance the set of standards, to adopt the set of standards that were already defined and started advancing the web.  So that's what started to happen when Firefox market share took off.  Without people like you helping to build market share to help create some influence,  we wouldn't have been able to bring Microsoft back to the table, back to the browser development.  And the web would have stagnated, essentially would have been frozen in time with the IE6.  So that's a pretty major accomplishment.  So I mentioned that, you know, so we had the surge in innovation and new features going into browsers.  There was this stagnation period for several years.  And we're right on the verge of that changing again.  Over the next six months, we've got IE9, new versions of Chrome, Firefox 4.  And these browsers have a tremendous amount of new building blocks to create to improve the web.  And, you know, the kind of the buzzword for this is HTML5.  But HTML5 is not one thing.  It's a collection of many innovative technologies that web developers can start to use as soon as the browser starts to go out.  So things like OpenVideo, SVG, Canvas, Geolocation, Multitouch, Accelerated Graphics,  Offline Web Applications, DragonDraft File Upload.  These are all things that are going to be built into all of those browsers.  And just like the web moved very quickly many years ago, it's going to take off again.  And it's going to change the way that people use the web.  There's a lot of change.  So, you know, our mission remains the same, though.  We want to continue to be able to influence the direction of the web.  We've seen when a few companies dominate technology, it can stagnate, it can move in the wrong directions.  So we want to build a strong community of people that want to continue to influence the direction of the web  and steer it in a way that keeps the web open, keeps it innovative.  So we had a bunch of early Firefox users.  How many recognize this browser?  So we've got a bunch of early Netscape users as well.  So this is version 202 of Netscape.  And so that's got a location bar.  It's got some buttons.  You know, there's been tweaking to the UI that's happened.  But in some ways, you know, the browser looks a lot like it did back in 1998.  You swagger out, as you can see all the major features there.  We've kind of been tweaking around the edges.  And then there was this period of satination where, you know, none of the core development was going on.  And it's probably good to, if you want to find ways that we can sustain innovation  and we can keep it going the way that has happened in just the last few years,  and we'll take off in the next few years, we need to develop some perspective.  Like where are we at in the stage of development of the browser?  So one way to, we can compare to other industries.  We can compare it to the auto industry.  So back in when in 1908, the Model T was introduced.  And it was the first time when automobiles became accessible to the general public.  Affordable, you could use them, you could understand how to operate them.  And so the automobile industry started to take off.  And in some ways, you know, that's the equivalent to the Netscape browser.  And we moved from a stage where it was just enthusiast.  How many used the internet before Netscape?  Okay. So if you remember, so you had to, you had, it was a series of command lines.  So that view an image, you would probably bring out a program like FTP.  You would go to a site like NASA or someplace that was storing interesting image.  You would, you would transverse down the directory structure to find an image that you thought was interesting.  You download it, then you unzip the image, and then you bring out a program like paint to view the image.  So there's like 20 steps to accomplish something now to one click.  So those kinds of innovations have to come together before you can get a significant number of people to start to use technology.  And so the automobile industry goes on for 50 years.  And then in the 50s and 60s, the emphasis became trying to make cars faster.  And trying to introduce some interesting design to attract people.  And in some ways, that's kind of where we are now.  Like we have this intense competition going on between the different browser JavaScript engines.  We've got personas and we have studies that kind of measure and track performance and changes to user interface.  We're in this constant battle now where like we're trying, you know, it's up a race is on to see how many pixels can be removed from the user interface of the browser.  So there's a lot of focus on the style and there's a lot of focus on performance that's going on now that's equivalent to the automotive industry.  So it's only taken us, you know, 10 years to go as far as the auto industry went in 50 years.  But we're still, you know, maybe not advanced as far as advances as we think it might be.  So in 1973, the Mercedes S class was introduced and it was the first auto build that had anti-lock braking systems, airbags and seat belts and electronic tracking control.  A lot of safety features.  So there's a few safety features that have been built into the browser.  We have safe browsing where we use a service and it feeds down information about dangerous sites.  And if you happen to get redirected or stumble onto one of these dangerous sites, it's like an airbag that comes up.  But there's not standards with standardization of that feature.  Each safe browser feature and each browser were slightly different.  And so, you know, we may be somewhere around 1973 with the development of browser technology.  The other part about this, you know, the S class introduced a bunch of new technology and then several years later they became standards.  And all automobiles adopted those things.  And that's a lot like we see in the development of the browser.  And it's a tricky interaction between integration of standards and trying to keep innovating.  So there's two, there's several different directions this can work.  It can be like the Mercedes.  You can take a set of features that have been successful and been proven and you can turn those into a standard and get them adopted across the industry.  So it's a matter of harvesting the feature work, consolidating it and turning it into standards.  But browser vendors haven't always done a good job of this.  Most of this is a frustrating and painful process to go through standardization.  So the whole browser industry needs to focus more on this now that we're innovating more.  There'll be more opportunities for that.  The other is to take a standard, you know, just define the standard kind of in the dark  and then try and get that standard adopted and turn it into features in individual or for all browsers.  So it's a harder approach.  But if you're developing some technology and you've been trying to get it defined as a standard,  this is the way that things like video accessibility features have gone into Firefox.  So there's another kind of interesting angle to standard.  How many are familiar with the ACID 3 test?  And so everyone in this room knows that Firefox's score on ACID 3 is 97 out of 100.  So what's the story behind that?  Well, you know, 97 out of 100 can be okay.  And 100 out of 100 is really avoiding the critical questions that need to be asked about how each of the browsers are performing.  So what's happened is that the three points that Firefox is missing are that there are a few tests in ACID 3  that test a feature called SVG fonts.  And all of the other browser members have implemented enough of SVG fonts just so they can pass the ACID 3 test.  But there's a whole other set of issues that they didn't go through and are not making it into the press  or are not making it into the minds of the developers on their teams, is that first of all,  there's an alternate technology called WebOpenFonts.  The WebOpenFont format, W-E-F-F, provides a parallel set of features to SVG fonts.  And that may be good enough.  We may not have to adopt both sets of technologies because the other browsers haven't adopted the whole set of SVG fonts as well.  They've adopted just enough to pass the ACID 3 test.  So there's some interesting, you know, if you're interested in reading more,  one of the tests that you've experienced, people, Alexander Levy, wrote an article on this and he can search and find it.  But it raises the issues.  I mean, what we should be talking about is do we need SVG fonts?  Is the WebOpenFont format enough?  And can actually anybody really implement all of SVG in a way that it's backed out?  There are some issues around that as well.  We should be having those conversations and we shouldn't be having a conversation of, you know, everybody has 100% adoption except for Firefox and ACID 3.  So let's get back to this comparison to the auto industry.  There's still some challenges that, like the auto industry has started to innovate and advance again, you know, largely driven by oil prices.  And they've done a lot of interesting new technology to make cars more economical.  And that's probably an area where browsers will go next.  You know, we've made some choices in Firefox 4 that optimize on speed but not necessarily memory use.  So we may have to revisit those.  And we may have to find solutions that not only give us performance but also they're economical in terms of memory use.  So this is the test for the memory use.  So you can have a car that goes 200 kilometers per hour and it adds 1 cent per kilometer to operate.  And that's about one tenth of the operational cost of gasoline vehicle.  So there's, you know, if we look to this other industry about, you know, where might things go next, you know,  the effective use of the computing resources that people have, you know, not only on desktop but laptops and mobile devices,  we need to start to focus on slimming down the browser, maintaining its speed, its functionality, but focus on additional areas.  So kind of the lessons learned through this comparison to the auto industry.  Keeping these combinations of safe and easy and fast and compatible and stable and predictable are pretty important in not only individual features  but in the browser in general.  That's the way that people evaluate browsers.  If there's one critical element of those five or six things that's missing, like people just latch onto that and they move to a different product.  That's what happened with Internet Explorer.  It was insecure and people were looking for other solutions and they found part-files and it solved their problem.  For many years, Opera was the fastest browser, but no one adopted it because it had implementations and being easy to use,  being compatible with websites.  So it's pretty critical, but it's also hard to look at all those things and try and breathe the right balance.  So other ingredients for innovation, you can talk about.  One of the things that's allowed us to innovate with Firefox is that we've tapped into people who have a real passion for creating browsers and for making the web better.  And this initiative and passion has been with us through the entire lifetime of the Mosul Project.  The most recent example is there's a 12-year-old kid named Alex Knowles who figured out how to download the Mosul code and do some security research.  He's found critical security bugs in Firefox and he's participating in our web bounty program.  We paid him $6,000 over the last few months for doing this research, reporting the bugs to us, doing responsible disclosure.  And if a 6-year-old kid, there's lots of challenges to anyone trying to figure out the Mosul code.  As an example, it's like someone taking enough initiative to go through and figure out how to get things done in this very large software project.  So it's pretty impressive, but that kind of thing has been happening for the last decade.  The other thing to think about when you've got an idea for a future and want to see it through to completion is really trying to understand what problems it's solving  and how much impact it will have. Not only for you, but there are other people that are running into the same kind of problem and are looking for the same kind of solution that you're wearing.  So once you've got kind of an expression of the problem that you're trying to solve, there's a lot of creative things going on with creating videos that kind of describe the problem and your approach to creating the future.  So here's an example of that. So even if you don't have any coding skills, how many are programming in the other ones?  So, yeah, a large number. Even if you don't have programming skills, you can create one of these videos describing your problem in enough detail that people can start to look at it  and figure out if they can come up with solutions to the problem. And if you do have coding skills, I think this is becoming a more and more critical part to the development  is for you to be able to explain the future work that you're doing to others so that you can get it integrated and adopted.  So here's kind of an example.  This is an idea, you know, creating these videos is an idea where you're explaining the future and going through the motion of how you think it should work.  And all of this went on just with, like, prototype code before this feature called Paderama was included in Firefox, in Firefox 4.0.  And we're doing this not only for user-facing features, but also for, you know, we introduced WebGL into the Firefox mobile browser.  So here's another video showing how WebGL works.  Hi, my name's Lauren K. Church and I wanted to show you some WebGL demos running on mobile phone. Here we've done WebGL demo running inside Firefox, on a KS-900 device.  It's a simple demo, we're just trying to classify the model and letting the user rotate it around. You can see it's pretty performant, even though it's done on small optimization work on WebGL these devices did.  This is really the first build of our time, thanks to work.  Here's another demo where developer Dogo Grant has ported a 3D effect to WebGL. This demo has created the effect with a complex OpenGL shader that's running pretty well on the device.  One of the goals of WebGL was to make it possible to create 3D web content that would run on both mobile and desktop devices. And I think that we're definitely heading that direction.  Third demo is a 1D demo on the device.  So that's an example of someone who's working on WebGL for many years trying to get it adopted as a standard, trying to get other browser vendors to do it off-line technology, and trying to get it integrated into a hostility.  He's gone through, he's not only explained what problem he's trying to solve, but he's also given some great demos of how the technology can be used.  So that's becoming more and more of a critical path to getting features into Firefox.  Kind of building a community of people that are interested in technology even before it's fully created.  So the other thing that another kind of lesson learned is that some people take the approach that like there's something that Firefox really needs to do, and they've got an idea about exactly how it should be implemented.  And since there's no running code for that, it's really better if you step back and approach it like an experiment.  You define what it is that you're trying to do, and you're creating some metrics for success.  And the one thing about innovation is that you have to try hundreds or thousands of things before eventually you latch onto the best solution.  So using a scientific approach to go through the technical process is pretty effective.  And then all the things that are part of open source, most of the innovation, the way that people think about it, comes through proprietary technology development.  And we're trying to change that. We're trying to get people to embrace an idea where you can be open, you can share ideas, and innovation will actually speed up by doing that.  And then the last point here is about, you know, if you come up with an idea, it's pretty likely that someone will already have had something similar to that.  There's 10,000 different add-ons for Firefox, you know, different people trying out experiments.  So, you know, that's a place where you can go look and find out if anyone's done work in this area before.  Is there anything that you can leverage and help to move forward?  And so, like everyone signed up with the auto industry, you know, there's still opportunities to make the browser go faster.  There's still opportunities to make it more secure and to keep users in control.  And, you know, navigation to web content is still a problem that we're trying to deal with, making that easier.  And so, you look back through these different areas of opportunity, and they're kind of all over.  And so, the best way to do that is to, you know, look for areas where people are struggling in their use of the browser, either yourself or, you know, things that you observed.  And try and identify these areas of attention.  So, one area that's pretty obvious, how many attended the keynote, Evan's keynote this morning.  So, there's a little bit of tension going on between using the web for social interaction and wanting to maintain privacy and anonymity.  And so, this is a great area for innovation.  You know, Facebook and Twitter and Google have kind of created a monopoly on the way that people think about social interaction using web services.  And just like, you know, ten years ago, Microsoft created a monopoly on web browser.  And you need to find ways to break that monopoly down. And you need to find ways for people to think about social interaction and use of the web in different ways.  So, there's a security researcher called Moxie Myron-Swipe. He's done a pretty good job of articulating some of the problems that they see.  So, what people really want, and they're sharing information over the web, they want to communicate with their friends and family.  And if they necessarily want to communicate with the company Facebook or the company Twitter, they don't need to be a part of every single detail that goes on in your interaction with your friends.  But you still want to be able to communicate with your friends.  So, just thinking about idea kind of like turns the whole economic and development model that's going on.  So, if we can focus on creating an interaction model between people rather than through centralized services, we'll probably be a lot better off.  So, the other thing that's kind of obvious is that users aren't part of this debate. We're kind of being dictated in terms of, in the trade-offs that are going to be, that people are making.  And the terms of the debate are, well, do you want targeted services? Or do you want anonymity and privacy? You can't have both.  Well, it's, if you state the question that way, it's probably true, but there may be alternative ways that we can go around creating this.  So, you've got you, you've got all the sites that you visit, and you have ad networks and analytics companies, and they're all collecting your browser history as you move around the web.  And, you know, the parts of the players that are in the debate now are the ad networks and the sites. But there's no kind of user voice in what's going on.  And the attitude of the websites and the ad networks and analytics companies are, you know, basically you have no internet, you have no privacy on the internet, so get open.  And one thing that we want to do in Firefox 4 is to break down some of these ideas.  Because what we can see now is that privacy is at an all-time high, or surveillance is at an all-time high, and privacy is at an all-time low.  And if you state the term for the debate, that's the situation that we're in, where that might be a way to mobilize a lot of people in bringing a bigger voice to this debate that's coming up.  So we have an opportunity now. Governments are more interested in what's going on.  The websites are, you know, there's some that want to participate in better solutions. And so we're implementing a feature in Firefox 4 called Do Not Trap.  And, like you say, innovation comes when you try hundreds of experiments and you finally graduate the one.  So this was one of many experiments that we wanted to have. And basically we're going to have a setting with a browser where you can go in and you can say,  I want to be served targeted ads, check that box, or you can check the box that says, Do Not Trap me.  And when you set that in Firefox, whenever you visit a website, when you first make the connections to the website, the HTTHenters will provide that information in a standard way.  And we'll start to tell websites and ad networks and analytics companies that I don't want to be trapped anymore.  And, you know, on the Mozilla site, we'll also monitor how many of these things that we're getting that says I don't want to be trapped.  And we'll publish that information so the whole industry can start to understand how many users out there feel this way about problems that they don't want to be trapped.  And we'll try and use this to pressure the websites and analytics companies to start to rethink their services so that they can either provide both kinds of services,  and we went along using the web for decades without a lot of tracking going on.  But now, you know, there's this big rush, the only way that advertisers can find money is that if they have targeted ads, you know, I don't think that's true.  And so this is one way that users are going to be able to provide their voice.  Have you decided to default values for those settings?  Pardon?  Have you decided to default values?  The default values.  So that's also an interesting question.  So we thought about this a lot and we could have set the default value to be don't track me.  That's kind of what we all believe out on the development team.  You know, that's what we should be saying there.  There's another way to look at it is, you know, we've gone 15 years where kind of the default settings of the web were to allow third party cookies to go through to allow CSS visitors.  There are ways to, we have to, the technology on the browser and on the web services is basically set up to allow tracking through kind of this use of the original protocol ideas.  But anyway, we've had tracking integrated.  So for those two things, we thought, well, since the default has kind of been to allow tracking, and if we change, if we put, do not track me as the default for every user, basically what we're saying is it's a message from Mozilla to all the websites to say, you know, Mozilla thinks that this user doesn't want to be tracked.  So we thought, you know, the best way to allow the user to have a voice is to send no setting is the default.  And so there's actually three settings going on. You know, no setting is what your browser comes with. If you've gone into the user interface, you can check either one of those.  And so that's the user being able to communicate what their intentions are.  And so this was just introduced a few days ago into the code. How many are Firefox 4 beta users?  All right.  So, so today, I hope you all go down, or go, you know, today or tomorrow, go download Firefox 4 beta 11 and go into the advanced preferences section and check the box.  And, you know, they, this, the, I want to be served targeted ads, hasn't made it into the UI.  Because we think like the early adopters of this aren't really interested. And because there's lots of technical things to overcome to set that kind of UI up, we can actually use some help if anyone's a Zoom hacker.  You know, it was a core technology guy who did all the implementation for this. So he's not good at the user interface part.  But if you want to, if you want to contribute to that, we can use some help.  So, you know, we can start right here. In 10 years from now, I can come back to the conference and I can say, how many sets do not track on the weekend that was introduced.  And you guys will be the start of the wave. It's like you were started the way with Firefox.  There's a private privacy setting that's going into Firefox. And this is kind of the reverse. So like we're racing to get you not trapped into Firefox 4.  And there's a very compressed schedule and like we've only implemented half the UI that we wanted.  You know, this is, this is, this is, this is a problem on the other end of the spectrum.  This is, how many are familiar with CSS Visited? Is that the property you can set in CSS? I can pretty good name.  So, so this has been around since the introduction of CSS. And websites can actually figure out what sites you visited by giving you a set of links and setting this Visited property on it.  So they can see changes in the layout when we change the colors of the links in the web page that you see. So the idea was in this feature was, let's change the colors and layout of the page.  So then you can, you can see whether or not you visited a site when there appears a link in the page.  But it also allowed websites to track their movements around the web.  So David Baron, one of the developers and one of the people that works on the CSS spectrum, he's been thinking about a way, you know, for almost a decade now,  that we can maintain the value of the feature to the user, but also make it so size-man-tracking.  So he's, you know, finally after nine years of working on this, he's come up with a solution that's been integrated into Firefox 4.  And Chrome has also adopted his code. They've taken it in. And we want to get all browser vendors to adopt this.  So that's, that's kind of, you know, two, two completely things. You know, one is taking a lot of, you know, a decade.  And the other, hopefully, will be successful in much shorter time.  So, you know, nothing else, but IA is programs that are set up so that if you do come up with your own feature, I.D., I.D.m,  there's funding available for you to explore those ideas. How many are students?  A few. So, any of you have participated in Google Summer of Code? And one.  So this is a very interesting program that you can, you know, you get a stipend for Google and you can work on open source projects.  And we've had one of the students a couple of years ago did the implementation for WebSciples for Firefox.  So you can, you know, you basically can pick the project that you want to work on. You write up a specification of what you want to do.  There's a committee that evaluates and they select about 10 to 12 projects a year to work on Firefox.  And then we also have other internship programs. We have security bug bounties and security research contracts.  And we also have ways to test out your ideas with a program called TestPilot that's in the database in the database.  And we ask users if they want to opt in to send the information about individual study programs that we're running so we can start to gather,  collect up statistics on how many tabs people have open, how many bookmarks, how they use the browser.  So it's allowing us to design the features a lot better. So there's opportunities for you to create one of these studies.  There's also opportunities to help us evaluate the data and display it in an interesting way so that we can learn more further.  And then how many of, how many of add-on users?  Maybe 75 percent.  So, you know, add-ons are a way to see what kind of experiments the people are doing.  That was the intention of add-ons, is to allow people to experiment and try out new ideas.  And there's a replacement for the add-on system called Jetpack.  And it should make add-on developer development easier.  And there's also a project called ChromeList which allows people to create user interface, an application user interface just based on HTML  so that you don't have to know the Zool language that Firefox is going to use.  So those are a lot of the ideas about how you can participate.  Different ways that you can plug in to taking some ideas that you have, working with others, and help us to invade and improve Firefox.  So, just a few more ways.  So I think I'm almost out of time.  If there's any questions, we can wrap up now.  So how do we decide these features?  What's the question?  Mostly we try and shift the responsibility for making decisions about any area of the code to the module owners of the specific area of code.  So if it's a networking feature, there's someone who is the module owner of the networking code and they make decisions on what features go in or out.  So there's a number of different functional areas of the browser and a hundred different modules.  So it's a pretty complicated process, especially if you're developing a feature that spans a number of modules.  Like you basically have to convince a wide group of people just through discussions and bugs, exchange of ideas, and try and build consensus.  Yeah, they're mailing lists, wiki pages, and through the bug system.  Hopefully they'll write up a blog post on what they're trying to do, or create one of these videos on what they're trying to accomplish.  They might write a specification and put it on our Zona or wiki, and then they might open a bug and start attaching patches to the bug.  Then they'll try and get the module owners to review the patches, provide feedback, or it might go through several iterations of trying to make the code more compatible with the existing architecture.  They'll get lots of feedback through this peer review process that every change goes through.  And then if everyone kind of decides, you know, it's ready, then it's checked in.  Any adults, maybe any creatures?  There's quite a few.  I'm not hard on this one.  Sync started out, the Firefox Sync started out as an Allen, it's being integrated.  The search engine, search part of it, originally started out as an Allen.  Some of the awesome bar features that search about history and give you the list of sites, some of those were started out as a push-up.  A lot of the projects that we work on in labs start out as an Allen, and then they involve a few certain states and certain considerations.  It's a good place to test out ideas.  Thanks for coming.
The_life_of_a_firefox_feature_fhrwvtP46Kg_1_0_131.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_132_179.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_180_1295.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_1296_2651.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_2652_3047.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_3048_5483.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_5484_5819.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_5820_8051.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_8052_8099.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_8100_9599.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_9600_15767.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_15768_17051.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_17052_17207.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_17208_17255.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_17256_17339.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_17340_17795.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_17796_18551.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_18552_20459.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_20460_22703.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_22704_23291.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_23292_24695.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_24696_26243.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_26244_26999.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_27000_27479.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_27480_28115.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_28116_29183.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_29184_33383.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_33384_34475.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_34476_35927.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_35928_36251.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_36252_37679.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_37680_37811.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_37812_38459.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_38460_41219.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_41220_41291.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_41292_41363.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_41364_43559.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_43560_46187.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_46188_46931.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_46932_47807.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_47808_49355.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_49356_49979.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_49980_50735.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_50736_52031.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_52032_52127.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_52128_53579.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_53580_54503.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_54504_54947.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_54948_55607.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_55608_59939.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_59940_64703.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_64704_66203.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_66204_66251.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_66252_66455.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_66456_67859.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_67860_67931.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_67932_70787.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_70788_72287.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_72288_72839.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_72840_72911.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_72912_72995.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_72996_77975.png The_life_of_a_firefox_feature_fhrwvtP46Kg_1_77976_78125.png
I'm sorry, the speaker system is not working. So I'm trying to talk loud. Can everyone hear me? That's kind of moved down. Can you hear okay? I'm sorry, I'm sorry. I'm sorry. I'm sorry. I'm sorry. I'm sorry. I'm sorry. Can you hear okay? So Paul Rojane came up with this idea. He was originally going to get this talk about talking about features that go into fire blocks and to get people an idea about the process that we use for thinking about innovation and for trying to get features into fire blocks. So I've jotted down a few thoughts and I'm going to share them with you today. Mostly want to make this more of a conversation. So if you have questions, feel free to raise your hand and stop me and we can talk about your ideas. So I'll talk a little bit about its history, its browsers and how they evolved over the years. The ingredients for what it takes to create a feature and get it into fire blocks. Some of the successful things, some of the things that, you know, strategies for navigating all the process that you have to get through to get something into fire blocks. And a few examples of some recent features that the people have been working on. So I'm going to ask a bunch of questions and like you said, if you have questions, raise your hand and let's make this more kind of a discussion. So how many of you are at fire blocks? How many of you have a picture? How many of you have some ideas on how features or you're working on stuff, actually working on stuff that you like to see get into fire blocks as a feature? Okay, a couple of people. You're working on stuff, actually working on stuff that you like to see get into fire farms as a teacher. Okay, a couple of people. All right. So hopefully this will inspire you to get involved in some way. And there's one of the things about the work that goes on in Mozilla is there's many, many different ways to get involved. So there's actually kind of two different kinds of activities that go on in creating features in FireFox. You have kind of user interface where there's lots of creativity that can go on. And then you have the back end, the get go core engine that tries to harness all the complexity of the web that makes the web easy for people to use. And there's different kinds of approaches. With the front end, with the user interface, we can do all kinds of things. We can experiment and we can compete and try and make FireFox better than Internet Explorer and Chrome and Safari. And there's not very many obstacles there to trying different things. With the back end, to do real innovation, we have to get all of the browser vendors convinced to eventually include a feature if it's going to be used widely. So there's different kinds of ways to measure success of features and different approaches that we have to take to get these two different kinds of features into FireFox. So how many of you have contributed to the Mozilla project? Or the regular contributors? Okay, is that all? All right, well I'm going to convince you that you're all wrong there. So the first thing, so I want you to stop and think for a minute. When was the first time that you used FireFox? That we first started developing the FireFox code on the top of Mozilla in 2003. And sometime between 2003, every one of you downloaded it and installed it the first time. So if I can think back, what was the year that that happened? I'll give you just a second. Okay, so 2003, how many? All right, now 2004. 2004, 2005. 2006, 2004. 2007. 2008, 2009, 2010. And this year. So it's pretty interesting. So the distribution there is like we have a lot of people that have been using FireFox for a long time. And so the next set of questions are, how many have helped someone else to use FireFox? Okay, that's pretty amazing. Right there. And how many of you have helped like two people use FireFox? Or more, like five, ten? Who thinks they have the highest number of people that they've interviewed FireFox to? Maybe over ten? So another thing about viral adoption of any kind of products is that there's a lot of researchers have studied this. The way that products become viral is not that like one person starts using it and they introduced one other person to use it. And you have that network effect, that expansion. Which usually, you have a smaller set of people and they infect or share their ideas or their products with a bunch of people. And that kind of viral effect is what's happened with FireFox. So this is the growth of the internet, the number of users on the internet over time and the different browsers that they've used. So you're all part of this big orange area up here that makes up, you know, now makes up 30% of the web. And back in 2003, there was only a handful of people. There were, you know, started out with one or two people, you know, developing and starting to use FireFox. And now there's over 450 million people that were using FireFox. And if you know anything about Mozilla, we don't do advertising. The only way that this growth has come about is because people like you that have tried it yourself and then have helped others use FireFox. So you are a big contributor to changing the web. And for that, you are part of the Mozilla project. You are a contributor. You've made a difference in how the web is evolving. So the other thing about this chart is that it shows kind of waves of innovation, waves of things happening. If you look down on this side of the chart, back in the late 90s, you know, Netscape started out and had a virtual monopoly on the browser market when they first started to have a 90% market share. But the internet was very small at that stage. And then Microsoft started to compete in the market and created a monopoly and they got up to 98% market share. But some interesting things happened here. In these early days, there was a lot of innovation going on. There were these building blocks of the internet where they created things like cookies and SSL, HTML4, JavaScript, plug-in, CSS. All these were new innovations that made webpages easier to use and made the web accessible and useful for more people. And then we moved to what are called the dark ages. So when Microsoft got to 98% market share, there was no incentive. There wasn't a lot of revenue generated from the browser. They weren't interested in continuing to develop ID and advancing it. But at Mozilla, we were. And so, you know, we have this period of the dark ages in the past where, you know, we at Mozilla continue to try and improve the browser, but Microsoft wasn't going along the program. And so it's been a constant battle since around 2001 and 2002 to have been dragged and backed. Find ways that we can influence Microsoft and Opera and, you know, eventually Google and Safari to start creating browsers to advance the set of standards, to adopt the set of standards that were already defined and started advancing the web. So that's what started to happen when Firefox market share took off. Without people like you helping to build market share to help create some influence, we wouldn't have been able to bring Microsoft back to the table, back to the browser development. And the web would have stagnated, essentially would have been frozen in time with the IE6. So that's a pretty major accomplishment. So I mentioned that, you know, so we had the surge in innovation and new features going into browsers. There was this stagnation period for several years. And we're right on the verge of that changing again. Over the next six months, we've got IE9, new versions of Chrome, Firefox 4. And these browsers have a tremendous amount of new building blocks to create to improve the web. And, you know, the kind of the buzzword for this is HTML5. But HTML5 is not one thing. It's a collection of many innovative technologies that web developers can start to use as soon as the browser starts to go out. So things like OpenVideo, SVG, Canvas, Geolocation, Multitouch, Accelerated Graphics, Offline Web Applications, DragonDraft File Upload. These are all things that are going to be built into all of those browsers. And just like the web moved very quickly many years ago, it's going to take off again. And it's going to change the way that people use the web. There's a lot of change. So, you know, our mission remains the same, though. We want to continue to be able to influence the direction of the web. We've seen when a few companies dominate technology, it can stagnate, it can move in the wrong directions. So we want to build a strong community of people that want to continue to influence the direction of the web and steer it in a way that keeps the web open, keeps it innovative. So we had a bunch of early Firefox users. How many recognize this browser? So we've got a bunch of early Netscape users as well. So this is version 202 of Netscape. And so that's got a location bar. It's got some buttons. You know, there's been tweaking to the UI that's happened. But in some ways, you know, the browser looks a lot like it did back in 1998. You swagger out, as you can see all the major features there. We've kind of been tweaking around the edges. And then there was this period of satination where, you know, none of the core development was going on. And it's probably good to, if you want to find ways that we can sustain innovation and we can keep it going the way that has happened in just the last few years, and we'll take off in the next few years, we need to develop some perspective. Like where are we at in the stage of development of the browser? So one way to, we can compare to other industries. We can compare it to the auto industry. So back in when in 1908, the Model T was introduced. And it was the first time when automobiles became accessible to the general public. Affordable, you could use them, you could understand how to operate them. And so the automobile industry started to take off. And in some ways, you know, that's the equivalent to the Netscape browser. And we moved from a stage where it was just enthusiast. How many used the internet before Netscape? Okay. So if you remember, so you had to, you had, it was a series of command lines. So that view an image, you would probably bring out a program like FTP. You would go to a site like NASA or someplace that was storing interesting image. You would, you would transverse down the directory structure to find an image that you thought was interesting. You download it, then you unzip the image, and then you bring out a program like paint to view the image. So there's like 20 steps to accomplish something now to one click. So those kinds of innovations have to come together before you can get a significant number of people to start to use technology. And so the automobile industry goes on for 50 years. And then in the 50s and 60s, the emphasis became trying to make cars faster. And trying to introduce some interesting design to attract people. And in some ways, that's kind of where we are now. Like we have this intense competition going on between the different browser JavaScript engines. We've got personas and we have studies that kind of measure and track performance and changes to user interface. We're in this constant battle now where like we're trying, you know, it's up a race is on to see how many pixels can be removed from the user interface of the browser. So there's a lot of focus on the style and there's a lot of focus on performance that's going on now that's equivalent to the automotive industry. So it's only taken us, you know, 10 years to go as far as the auto industry went in 50 years. But we're still, you know, maybe not advanced as far as advances as we think it might be. So in 1973, the Mercedes S class was introduced and it was the first auto build that had anti-lock braking systems, airbags and seat belts and electronic tracking control. A lot of safety features. So there's a few safety features that have been built into the browser. We have safe browsing where we use a service and it feeds down information about dangerous sites. And if you happen to get redirected or stumble onto one of these dangerous sites, it's like an airbag that comes up. But there's not standards with standardization of that feature. Each safe browser feature and each browser were slightly different. And so, you know, we may be somewhere around 1973 with the development of browser technology. The other part about this, you know, the S class introduced a bunch of new technology and then several years later they became standards. And all automobiles adopted those things. And that's a lot like we see in the development of the browser. And it's a tricky interaction between integration of standards and trying to keep innovating. So there's two, there's several different directions this can work. It can be like the Mercedes. You can take a set of features that have been successful and been proven and you can turn those into a standard and get them adopted across the industry. So it's a matter of harvesting the feature work, consolidating it and turning it into standards. But browser vendors haven't always done a good job of this. Most of this is a frustrating and painful process to go through standardization. So the whole browser industry needs to focus more on this now that we're innovating more. There'll be more opportunities for that. The other is to take a standard, you know, just define the standard kind of in the dark and then try and get that standard adopted and turn it into features in individual or for all browsers. So it's a harder approach. But if you're developing some technology and you've been trying to get it defined as a standard, this is the way that things like video accessibility features have gone into Firefox. So there's another kind of interesting angle to standard. How many are familiar with the ACID 3 test? And so everyone in this room knows that Firefox's score on ACID 3 is 97 out of 100. So what's the story behind that? Well, you know, 97 out of 100 can be okay. And 100 out of 100 is really avoiding the critical questions that need to be asked about how each of the browsers are performing. So what's happened is that the three points that Firefox is missing are that there are a few tests in ACID 3 that test a feature called SVG fonts. And all of the other browser members have implemented enough of SVG fonts just so they can pass the ACID 3 test. But there's a whole other set of issues that they didn't go through and are not making it into the press or are not making it into the minds of the developers on their teams, is that first of all, there's an alternate technology called WebOpenFonts. The WebOpenFont format, W-E-F-F, provides a parallel set of features to SVG fonts. And that may be good enough. We may not have to adopt both sets of technologies because the other browsers haven't adopted the whole set of SVG fonts as well. They've adopted just enough to pass the ACID 3 test. So there's some interesting, you know, if you're interested in reading more, one of the tests that you've experienced, people, Alexander Levy, wrote an article on this and he can search and find it. But it raises the issues. I mean, what we should be talking about is do we need SVG fonts? Is the WebOpenFont format enough? And can actually anybody really implement all of SVG in a way that it's backed out? There are some issues around that as well. We should be having those conversations and we shouldn't be having a conversation of, you know, everybody has 100% adoption except for Firefox and ACID 3. So let's get back to this comparison to the auto industry. There's still some challenges that, like the auto industry has started to innovate and advance again, you know, largely driven by oil prices. And they've done a lot of interesting new technology to make cars more economical. And that's probably an area where browsers will go next. You know, we've made some choices in Firefox 4 that optimize on speed but not necessarily memory use. So we may have to revisit those. And we may have to find solutions that not only give us performance but also they're economical in terms of memory use. So this is the test for the memory use. So you can have a car that goes 200 kilometers per hour and it adds 1 cent per kilometer to operate. And that's about one tenth of the operational cost of gasoline vehicle. So there's, you know, if we look to this other industry about, you know, where might things go next, you know, the effective use of the computing resources that people have, you know, not only on desktop but laptops and mobile devices, we need to start to focus on slimming down the browser, maintaining its speed, its functionality, but focus on additional areas. So kind of the lessons learned through this comparison to the auto industry. Keeping these combinations of safe and easy and fast and compatible and stable and predictable are pretty important in not only individual features but in the browser in general. That's the way that people evaluate browsers. If there's one critical element of those five or six things that's missing, like people just latch onto that and they move to a different product. That's what happened with Internet Explorer. It was insecure and people were looking for other solutions and they found part-files and it solved their problem. For many years, Opera was the fastest browser, but no one adopted it because it had implementations and being easy to use, being compatible with websites. So it's pretty critical, but it's also hard to look at all those things and try and breathe the right balance. So other ingredients for innovation, you can talk about. One of the things that's allowed us to innovate with Firefox is that we've tapped into people who have a real passion for creating browsers and for making the web better. And this initiative and passion has been with us through the entire lifetime of the Mosul Project. The most recent example is there's a 12-year-old kid named Alex Knowles who figured out how to download the Mosul code and do some security research. He's found critical security bugs in Firefox and he's participating in our web bounty program. We paid him $6,000 over the last few months for doing this research, reporting the bugs to us, doing responsible disclosure. And if a 6-year-old kid, there's lots of challenges to anyone trying to figure out the Mosul code. As an example, it's like someone taking enough initiative to go through and figure out how to get things done in this very large software project. So it's pretty impressive, but that kind of thing has been happening for the last decade. The other thing to think about when you've got an idea for a future and want to see it through to completion is really trying to understand what problems it's solving and how much impact it will have. Not only for you, but there are other people that are running into the same kind of problem and are looking for the same kind of solution that you're wearing. So once you've got kind of an expression of the problem that you're trying to solve, there's a lot of creative things going on with creating videos that kind of describe the problem and your approach to creating the future. So here's an example of that. So even if you don't have any coding skills, how many are programming in the other ones? So, yeah, a large number. Even if you don't have programming skills, you can create one of these videos describing your problem in enough detail that people can start to look at it and figure out if they can come up with solutions to the problem. And if you do have coding skills, I think this is becoming a more and more critical part to the development is for you to be able to explain the future work that you're doing to others so that you can get it integrated and adopted. So here's kind of an example. This is an idea, you know, creating these videos is an idea where you're explaining the future and going through the motion of how you think it should work. And all of this went on just with, like, prototype code before this feature called Paderama was included in Firefox, in Firefox 4.0. And we're doing this not only for user-facing features, but also for, you know, we introduced WebGL into the Firefox mobile browser. So here's another video showing how WebGL works. Hi, my name's Lauren K. Church and I wanted to show you some WebGL demos running on mobile phone. Here we've done WebGL demo running inside Firefox, on a KS-900 device. It's a simple demo, we're just trying to classify the model and letting the user rotate it around. You can see it's pretty performant, even though it's done on small optimization work on WebGL these devices did. This is really the first build of our time, thanks to work. Here's another demo where developer Dogo Grant has ported a 3D effect to WebGL. This demo has created the effect with a complex OpenGL shader that's running pretty well on the device. One of the goals of WebGL was to make it possible to create 3D web content that would run on both mobile and desktop devices. And I think that we're definitely heading that direction. Third demo is a 1D demo on the device. So that's an example of someone who's working on WebGL for many years trying to get it adopted as a standard, trying to get other browser vendors to do it off-line technology, and trying to get it integrated into a hostility. He's gone through, he's not only explained what problem he's trying to solve, but he's also given some great demos of how the technology can be used. So that's becoming more and more of a critical path to getting features into Firefox. Kind of building a community of people that are interested in technology even before it's fully created. So the other thing that another kind of lesson learned is that some people take the approach that like there's something that Firefox really needs to do, and they've got an idea about exactly how it should be implemented. And since there's no running code for that, it's really better if you step back and approach it like an experiment. You define what it is that you're trying to do, and you're creating some metrics for success. And the one thing about innovation is that you have to try hundreds or thousands of things before eventually you latch onto the best solution. So using a scientific approach to go through the technical process is pretty effective. And then all the things that are part of open source, most of the innovation, the way that people think about it, comes through proprietary technology development. And we're trying to change that. We're trying to get people to embrace an idea where you can be open, you can share ideas, and innovation will actually speed up by doing that. And then the last point here is about, you know, if you come up with an idea, it's pretty likely that someone will already have had something similar to that. There's 10,000 different add-ons for Firefox, you know, different people trying out experiments. So, you know, that's a place where you can go look and find out if anyone's done work in this area before. Is there anything that you can leverage and help to move forward? And so, like everyone signed up with the auto industry, you know, there's still opportunities to make the browser go faster. There's still opportunities to make it more secure and to keep users in control. And, you know, navigation to web content is still a problem that we're trying to deal with, making that easier. And so, you look back through these different areas of opportunity, and they're kind of all over. And so, the best way to do that is to, you know, look for areas where people are struggling in their use of the browser, either yourself or, you know, things that you observed. And try and identify these areas of attention. So, one area that's pretty obvious, how many attended the keynote, Evan's keynote this morning. So, there's a little bit of tension going on between using the web for social interaction and wanting to maintain privacy and anonymity. And so, this is a great area for innovation. You know, Facebook and Twitter and Google have kind of created a monopoly on the way that people think about social interaction using web services. And just like, you know, ten years ago, Microsoft created a monopoly on web browser. And you need to find ways to break that monopoly down. And you need to find ways for people to think about social interaction and use of the web in different ways. So, there's a security researcher called Moxie Myron-Swipe. He's done a pretty good job of articulating some of the problems that they see. So, what people really want, and they're sharing information over the web, they want to communicate with their friends and family. And if they necessarily want to communicate with the company Facebook or the company Twitter, they don't need to be a part of every single detail that goes on in your interaction with your friends. But you still want to be able to communicate with your friends. So, just thinking about idea kind of like turns the whole economic and development model that's going on. So, if we can focus on creating an interaction model between people rather than through centralized services, we'll probably be a lot better off. So, the other thing that's kind of obvious is that users aren't part of this debate. We're kind of being dictated in terms of, in the trade-offs that are going to be, that people are making. And the terms of the debate are, well, do you want targeted services? Or do you want anonymity and privacy? You can't have both. Well, it's, if you state the question that way, it's probably true, but there may be alternative ways that we can go around creating this. So, you've got you, you've got all the sites that you visit, and you have ad networks and analytics companies, and they're all collecting your browser history as you move around the web. And, you know, the parts of the players that are in the debate now are the ad networks and the sites. But there's no kind of user voice in what's going on. And the attitude of the websites and the ad networks and analytics companies are, you know, basically you have no internet, you have no privacy on the internet, so get open. And one thing that we want to do in Firefox 4 is to break down some of these ideas. Because what we can see now is that privacy is at an all-time high, or surveillance is at an all-time high, and privacy is at an all-time low. And if you state the term for the debate, that's the situation that we're in, where that might be a way to mobilize a lot of people in bringing a bigger voice to this debate that's coming up. So we have an opportunity now. Governments are more interested in what's going on. The websites are, you know, there's some that want to participate in better solutions. And so we're implementing a feature in Firefox 4 called Do Not Trap. And, like you say, innovation comes when you try hundreds of experiments and you finally graduate the one. So this was one of many experiments that we wanted to have. And basically we're going to have a setting with a browser where you can go in and you can say, I want to be served targeted ads, check that box, or you can check the box that says, Do Not Trap me. And when you set that in Firefox, whenever you visit a website, when you first make the connections to the website, the HTTHenters will provide that information in a standard way. And we'll start to tell websites and ad networks and analytics companies that I don't want to be trapped anymore. And, you know, on the Mozilla site, we'll also monitor how many of these things that we're getting that says I don't want to be trapped. And we'll publish that information so the whole industry can start to understand how many users out there feel this way about problems that they don't want to be trapped. And we'll try and use this to pressure the websites and analytics companies to start to rethink their services so that they can either provide both kinds of services, and we went along using the web for decades without a lot of tracking going on. But now, you know, there's this big rush, the only way that advertisers can find money is that if they have targeted ads, you know, I don't think that's true. And so this is one way that users are going to be able to provide their voice. Have you decided to default values for those settings? Pardon? Have you decided to default values? The default values. So that's also an interesting question. So we thought about this a lot and we could have set the default value to be don't track me. That's kind of what we all believe out on the development team. You know, that's what we should be saying there. There's another way to look at it is, you know, we've gone 15 years where kind of the default settings of the web were to allow third party cookies to go through to allow CSS visitors. There are ways to, we have to, the technology on the browser and on the web services is basically set up to allow tracking through kind of this use of the original protocol ideas. But anyway, we've had tracking integrated. So for those two things, we thought, well, since the default has kind of been to allow tracking, and if we change, if we put, do not track me as the default for every user, basically what we're saying is it's a message from Mozilla to all the websites to say, you know, Mozilla thinks that this user doesn't want to be tracked. So we thought, you know, the best way to allow the user to have a voice is to send no setting is the default. And so there's actually three settings going on. You know, no setting is what your browser comes with. If you've gone into the user interface, you can check either one of those. And so that's the user being able to communicate what their intentions are. And so this was just introduced a few days ago into the code. How many are Firefox 4 beta users? All right. So, so today, I hope you all go down, or go, you know, today or tomorrow, go download Firefox 4 beta 11 and go into the advanced preferences section and check the box. And, you know, they, this, the, I want to be served targeted ads, hasn't made it into the UI. Because we think like the early adopters of this aren't really interested. And because there's lots of technical things to overcome to set that kind of UI up, we can actually use some help if anyone's a Zoom hacker. You know, it was a core technology guy who did all the implementation for this. So he's not good at the user interface part. But if you want to, if you want to contribute to that, we can use some help. So, you know, we can start right here. In 10 years from now, I can come back to the conference and I can say, how many sets do not track on the weekend that was introduced. And you guys will be the start of the wave. It's like you were started the way with Firefox. There's a private privacy setting that's going into Firefox. And this is kind of the reverse. So like we're racing to get you not trapped into Firefox 4. And there's a very compressed schedule and like we've only implemented half the UI that we wanted. You know, this is, this is, this is, this is a problem on the other end of the spectrum. This is, how many are familiar with CSS Visited? Is that the property you can set in CSS? I can pretty good name. So, so this has been around since the introduction of CSS. And websites can actually figure out what sites you visited by giving you a set of links and setting this Visited property on it. So they can see changes in the layout when we change the colors of the links in the web page that you see. So the idea was in this feature was, let's change the colors and layout of the page. So then you can, you can see whether or not you visited a site when there appears a link in the page. But it also allowed websites to track their movements around the web. So David Baron, one of the developers and one of the people that works on the CSS spectrum, he's been thinking about a way, you know, for almost a decade now, that we can maintain the value of the feature to the user, but also make it so size-man-tracking. So he's, you know, finally after nine years of working on this, he's come up with a solution that's been integrated into Firefox 4. And Chrome has also adopted his code. They've taken it in. And we want to get all browser vendors to adopt this. So that's, that's kind of, you know, two, two completely things. You know, one is taking a lot of, you know, a decade. And the other, hopefully, will be successful in much shorter time. So, you know, nothing else, but IA is programs that are set up so that if you do come up with your own feature, I.D., I.D.m, there's funding available for you to explore those ideas. How many are students? A few. So, any of you have participated in Google Summer of Code? And one. So this is a very interesting program that you can, you know, you get a stipend for Google and you can work on open source projects. And we've had one of the students a couple of years ago did the implementation for WebSciples for Firefox. So you can, you know, you basically can pick the project that you want to work on. You write up a specification of what you want to do. There's a committee that evaluates and they select about 10 to 12 projects a year to work on Firefox. And then we also have other internship programs. We have security bug bounties and security research contracts. And we also have ways to test out your ideas with a program called TestPilot that's in the database in the database. And we ask users if they want to opt in to send the information about individual study programs that we're running so we can start to gather, collect up statistics on how many tabs people have open, how many bookmarks, how they use the browser. So it's allowing us to design the features a lot better. So there's opportunities for you to create one of these studies. There's also opportunities to help us evaluate the data and display it in an interesting way so that we can learn more further. And then how many of, how many of add-on users? Maybe 75 percent. So, you know, add-ons are a way to see what kind of experiments the people are doing. That was the intention of add-ons, is to allow people to experiment and try out new ideas. And there's a replacement for the add-on system called Jetpack. And it should make add-on developer development easier. And there's also a project called ChromeList which allows people to create user interface, an application user interface just based on HTML so that you don't have to know the Zool language that Firefox is going to use. So those are a lot of the ideas about how you can participate. Different ways that you can plug in to taking some ideas that you have, working with others, and help us to invade and improve Firefox. So, just a few more ways. So I think I'm almost out of time. If there's any questions, we can wrap up now. So how do we decide these features? What's the question? Mostly we try and shift the responsibility for making decisions about any area of the code to the module owners of the specific area of code. So if it's a networking feature, there's someone who is the module owner of the networking code and they make decisions on what features go in or out. So there's a number of different functional areas of the browser and a hundred different modules. So it's a pretty complicated process, especially if you're developing a feature that spans a number of modules. Like you basically have to convince a wide group of people just through discussions and bugs, exchange of ideas, and try and build consensus. Yeah, they're mailing lists, wiki pages, and through the bug system. Hopefully they'll write up a blog post on what they're trying to do, or create one of these videos on what they're trying to accomplish. They might write a specification and put it on our Zona or wiki, and then they might open a bug and start attaching patches to the bug. Then they'll try and get the module owners to review the patches, provide feedback, or it might go through several iterations of trying to make the code more compatible with the existing architecture. They'll get lots of feedback through this peer review process that every change goes through. And then if everyone kind of decides, you know, it's ready, then it's checked in. Any adults, maybe any creatures? There's quite a few. I'm not hard on this one. Sync started out, the Firefox Sync started out as an Allen, it's being integrated. The search engine, search part of it, originally started out as an Allen. Some of the awesome bar features that search about history and give you the list of sites, some of those were started out as a push-up. A lot of the projects that we work on in labs start out as an Allen, and then they involve a few certain states and certain considerations. It's a good place to test out ideas. Thanks for coming.
this more kind of a discussion. So how many of feature in Firefox 4 called Do Not Trap. And,