Why are you using this argument to support H.264 rather than, say, Theora? Currently, more users have support for Theora than H.264 (in the HTML5 video tag), because Firefox's marketshare is twice that of Chrome and Safari combined.
Flash includes an H.264 decoder, so moving from Flash to plain H.264 would be an improvement. Whether we want "the perfect to be the enemy of the good" is up for debate, of course.
Flash and H.264 are also "proprietary" in different ways (closed-source vs open-source with patents). Do both kinds of "proprietary" have the same negative consequences?
I'm kind of amazed it doesn't have a gps. Google maps is going to suck.
According to the ipad specs page, the models with 3G will have AGPS. Which kinda makes sense -- AGPS relies on the cell network, and having location information without being able to accept maps isn't very useful.
How effective is marking incoming calls as spam? Are future calls from that number to you ignored? Is there a collaborative aspect to spam filtering like there is with email?
This is why people complain about bloat...what is the point of this junk? Weren't there already addons/themes that let you do this kind of stuff?
It's the first step toward replacing Firefox's old theme system with a better one, where themes are smaller and easier to create. (It's not there yet, since you can't replace buttons, only backgrounds.)
While we have both systems in place, it might seem like "bloat", but in the long term it will allow Firefox to use significantly less memory and have a simpler user interface around installing themes. It's a fight against bloat.
I hope that mouseover to change style stuff only works on mozilla domains
Correct, it only works on sites that are whitelisted for extension installation. By default, the only whitelisted sites are the mozilla sites for extensions and themes.
Pick a large, active open-source project and try to help with the problems its developers have. You will be loved.
Here are some of the problems I'm aware of within the Mozilla project.
Speed of development
'make' doesn't scale. An incremental build, even with no changes, takes at least a minute. (In contrast, just checking whether any files have changed takes 'hg' less than 10 seconds.) Maybe help us move to 'scons', or help improve 'pymake', or just help us get our dependency generation right.
'ld' is slow. Once a developer makes a change to any c++ file, the incremental build is going to take several minutes while the linker uses up all her RAM. Maybe help us move to another linker such as 'gold', and contribute any necessary changes back to the 'gold' project.
'hg' merges are confusing. hg's developer-facing user interface could be improved, both while doing a merge and after doing a merge.
Automated testing
We've built an interesting interface around hg-pushlog (which is itself a Mozilla extension to hg) and buildbot that lets us see which tests failed after each change. I'd love to see these tools generalized to the point where other open-source projects can use it and contribute back to it.
As we require unit and integration tests for more and more components of Firefox, we're finding that a small number of tests failing intermittently can make it difficult to move quickly. We could use better tools for tracking test failures, and for record-and-replay debugging to help us figure out the intermittent failures, and probably for other things we haven't thought of.
Programming languages
We need a decent low-level programming language. Something that lets programmers implement sneaky fast algorithms, but lets programmers do it without constantly shooting themselves in the foot with security holes. Something you'd want to write (difficult parts of) a web browser or OS in.
I don't know if the answer is adding more and more to the type system (like in Cyclone), or integration of assertions with static analysis (like in D), or simply making it easy to integrate low-level code with high-level code (like in C#, or with ctypes or jsctypes).
Mozilla is doing interesting things with custom static analysis of C++ code.
Making collaboration tools support workflow and GTD
It's hard to come up with a good workflow (and make the tools support that workflow) in a large project where many of the contributors are volunteers who decide themselves what to work on, but I think we can do better.
You push off the updates and say "never" or "ask me later," and you are completely ignored because it starts updating when you restart your browser regardless of what you checked.
There are no "never" or "ask me later" buttons on the dialog I think you're talking about. There's a "Restart Firefox now" button and a "Later" button. The "Later" button installs the update the next time you start Firefox.
Incredibly patronizing.
Perhaps, but the alternative is far worse for the vast majority of users.
Makes it hard to run an old version.
If you want to test multiple versions, or manage Firefox versions for all of an organization's computers, it's best to turn off Firefox's built-in updater. Then you don't even have to deal with prompts.
Yes, Chrome Frame increases your attack surface, because by default, it lets each site choose whether to use IE's engine or Chrome's engine. But I see Chrome Frame as a temporary measure to allow intranet sites to be updated one at a time. From that perspective, it's safer in the long run than remaining stuck with IE6.
Furthermore, if you configure Chrome Frame to force one engine or the other for all non-intranet sites, it's about as secure as whichever engine you pick. More to the point, it's then safer than having everyone use both IE and Chrome, because a site can encourage users to try opening it in the other browser just by looking broken.
That problem isn't specific to 1-click updates. It exists equally with 0-click updates (like Firefox's minor updates) and 50-click updates (like WordPress used to have).
You can improve the security of updates by using multiple layers of software protection (e.g. https AND code-signing). You can't improve security by increasing human involvement in the update process and then blaming users who update while the site is hacked. Increasing human involvement just makes it slower and limits the kinds of software protection you can use.
The Y chromosome doesn't get to recombine, so measuring the mutation rate of the Y chromosome only gives us a limited understanding of mutations in general.
Lack of recombination means you don't get to measure mutations that consist of genes being brought together for the first time in an individual. It also eliminates entire classes of accidental mutations. On the other hand, it removes the opportunity for some types of in-cell DNA repair.
Furthermore, the Y chromosome is less interesting than most. It contains very few working genes, precisely because it is not subject to the most important DNA repair mechanism of all: sexual reproduction.
It might be possible to combine stop and reload without this problem. The plan is for the button to be invisibly disabled for about half a second just after changing from "stop" to "reload", to take human reaction time into account.
I get frustrated when people comment "crashes all the time", "uses lots of memory", or "is slow". There could be hundreds of different causes, each affecting a different tiny percentage of users. Too many people who experience frequent crashes assume that everyone has the same experience, rather than contacting the support team or otherwise trying to figure out what's special about their setup. As a result, even for crashes that affect a whole 1% of users, we never learn enough to fix the bug.
I understand that you'd have to know a lot about software to understand which symptoms fall into this category, so I try not to get mad at users, but rather at software for crashing in the first place or not being helpful for the few users who do experience lots of crashes.
I'm pretty sure Firefox 4 will still look like an XP application when you run it on XP. The transparency will only be for Vista and Seven users, and even then only if you have it enabled in Windows preferences.
Some users experience very few crashes and some users experience many. This is true for most software. Why would you categorically call people in the first category "trolls"?
And real mothers rotate, too! Many human mothers spend hours per day standing, resting on their backs, and resting on their sides. Not to mention spending time actually moving.
support.mozilla.com should be up again now. There was a massive air-conditioner failure today in the colo Mozilla uses for project servers; even our bug-tracking system was down.
Why are you using this argument to support H.264 rather than, say, Theora? Currently, more users have support for Theora than H.264 (in the HTML5 video tag), because Firefox's marketshare is twice that of Chrome and Safari combined.
Flash includes an H.264 decoder, so moving from Flash to plain H.264 would be an improvement. Whether we want "the perfect to be the enemy of the good" is up for debate, of course.
Flash and H.264 are also "proprietary" in different ways (closed-source vs open-source with patents). Do both kinds of "proprietary" have the same negative consequences?
According to the ipad specs page, the models with 3G will have AGPS. Which kinda makes sense -- AGPS relies on the cell network, and having location information without being able to accept maps isn't very useful.
How effective is marking incoming calls as spam? Are future calls from that number to you ignored? Is there a collaborative aspect to spam filtering like there is with email?
Hopefully the lower-contrast, prettier ones will become the most popular and easier to find.
This is why people complain about bloat...what is the point of this junk? Weren't there already addons/themes that let you do this kind of stuff?
It's the first step toward replacing Firefox's old theme system with a better one, where themes are smaller and easier to create. (It's not there yet, since you can't replace buttons, only backgrounds.)
While we have both systems in place, it might seem like "bloat", but in the long term it will allow Firefox to use significantly less memory and have a simpler user interface around installing themes. It's a fight against bloat.
I hope that mouseover to change style stuff only works on mozilla domains
Correct, it only works on sites that are whitelisted for extension installation. By default, the only whitelisted sites are the mozilla sites for extensions and themes.
Pick a large, active open-source project and try to help with the problems its developers have. You will be loved.
Here are some of the problems I'm aware of within the Mozilla project.
Speed of development
'make' doesn't scale. An incremental build, even with no changes, takes at least a minute. (In contrast, just checking whether any files have changed takes 'hg' less than 10 seconds.) Maybe help us move to 'scons', or help improve 'pymake', or just help us get our dependency generation right.
'ld' is slow. Once a developer makes a change to any c++ file, the incremental build is going to take several minutes while the linker uses up all her RAM. Maybe help us move to another linker such as 'gold', and contribute any necessary changes back to the 'gold' project.
'hg' merges are confusing. hg's developer-facing user interface could be improved, both while doing a merge and after doing a merge.
Automated testing
We've built an interesting interface around hg-pushlog (which is itself a Mozilla extension to hg) and buildbot that lets us see which tests failed after each change. I'd love to see these tools generalized to the point where other open-source projects can use it and contribute back to it.
As we require unit and integration tests for more and more components of Firefox, we're finding that a small number of tests failing intermittently can make it difficult to move quickly. We could use better tools for tracking test failures, and for record-and-replay debugging to help us figure out the intermittent failures, and probably for other things we haven't thought of.
Programming languages
We need a decent low-level programming language. Something that lets programmers implement sneaky fast algorithms, but lets programmers do it without constantly shooting themselves in the foot with security holes. Something you'd want to write (difficult parts of) a web browser or OS in.
I don't know if the answer is adding more and more to the type system (like in Cyclone), or integration of assertions with static analysis (like in D), or simply making it easy to integrate low-level code with high-level code (like in C#, or with ctypes or jsctypes).
Mozilla is doing interesting things with custom static analysis of C++ code.
Making collaboration tools support workflow and GTD
We have a crash analysis system and a bug-tracking system with lots of information, but the workflow is poor, so much of the information is not acted upon.
It's hard to come up with a good workflow (and make the tools support that workflow) in a large project where many of the contributors are volunteers who decide themselves what to work on, but I think we can do better.
There are no "never" or "ask me later" buttons on the dialog I think you're talking about. There's a "Restart Firefox now" button and a "Later" button. The "Later" button installs the update the next time you start Firefox.
Perhaps, but the alternative is far worse for the vast majority of users.
If you want to test multiple versions, or manage Firefox versions for all of an organization's computers, it's best to turn off Firefox's built-in updater. Then you don't even have to deal with prompts.
I hear element 114 is highly radioactive.
Maybe it was intended to be an insult by analogy to tag soup.
Yes, Chrome Frame increases your attack surface, because by default, it lets each site choose whether to use IE's engine or Chrome's engine. But I see Chrome Frame as a temporary measure to allow intranet sites to be updated one at a time. From that perspective, it's safer in the long run than remaining stuck with IE6.
Furthermore, if you configure Chrome Frame to force one engine or the other for all non-intranet sites, it's about as secure as whichever engine you pick. More to the point, it's then safer than having everyone use both IE and Chrome, because a site can encourage users to try opening it in the other browser just by looking broken.
Firefox does have a built-in UI for controlling whether the current page can store cookies, in the Permissions tab of Page Info (Cmd+I).
That problem isn't specific to 1-click updates. It exists equally with 0-click updates (like Firefox's minor updates) and 50-click updates (like WordPress used to have).
You can improve the security of updates by using multiple layers of software protection (e.g. https AND code-signing). You can't improve security by increasing human involvement in the update process and then blaming users who update while the site is hacked. Increasing human involvement just makes it slower and limits the kinds of software protection you can use.
It would just act like "stop" and not do anything. How is that mysterious?
iTunes looks like a turd on Mac too. What's your point?
The Y chromosome doesn't get to recombine, so measuring the mutation rate of the Y chromosome only gives us a limited understanding of mutations in general.
Lack of recombination means you don't get to measure mutations that consist of genes being brought together for the first time in an individual. It also eliminates entire classes of accidental mutations. On the other hand, it removes the opportunity for some types of in-cell DNA repair.
Furthermore, the Y chromosome is less interesting than most. It contains very few working genes, precisely because it is not subject to the most important DNA repair mechanism of all: sexual reproduction.
It might be possible to combine stop and reload without this problem. The plan is for the button to be invisibly disabled for about half a second just after changing from "stop" to "reload", to take human reaction time into account.
We're working on multi-process too, and also hoping to have it in Firefox 4.
I get frustrated when people comment "crashes all the time", "uses lots of memory", or "is slow". There could be hundreds of different causes, each affecting a different tiny percentage of users. Too many people who experience frequent crashes assume that everyone has the same experience, rather than contacting the support team or otherwise trying to figure out what's special about their setup. As a result, even for crashes that affect a whole 1% of users, we never learn enough to fix the bug.
I understand that you'd have to know a lot about software to understand which symptoms fall into this category, so I try not to get mad at users, but rather at software for crashing in the first place or not being helpful for the few users who do experience lots of crashes.
But "works like crap"? That takes the cake.
I'm pretty sure Firefox 4 will still look like an XP application when you run it on XP. The transparency will only be for Vista and Seven users, and even then only if you have it enabled in Windows preferences.
Some users experience very few crashes and some users experience many. This is true for most software. Why would you categorically call people in the first category "trolls"?
According to my calculations, the average Firefox user only sends 1.5 crash reports per year. Based on this, I'd say that for Firefox, more users are in the first category.
And real mothers rotate, too! Many human mothers spend hours per day standing, resting on their backs, and resting on their sides. Not to mention spending time actually moving.
Yeah, this strikes me as a roundabout way to make telemarketing calls more expensive. Why not tax them instead, whether they're pre-recorded or not?
If you're into bukkake, you'll learn how to spell it soon enough.
support.mozilla.com should be up again now. There was a massive air-conditioner failure today in the colo Mozilla uses for project servers; even our bug-tracking system was down.