MozillaZine

February 17, 2012

Robert O'Callahan -- Upcoming Travel

Our whole family is going to Europe soon. We're planning to leave Tuesday night (Feb 21) and return March 17. I will be mostly not working, and mostly offline, but expect to be checking email regularly and able to respond to some review requests and the occasional crisis. I'm planning to visit the new Mozilla London office on Tuesday February 28 and the Paris office on March 9 so I should get some work done on those days.

Full Article

February 17, 2012 01:55 AM

February 14, 2012

Asa Dotzler -- LibreOffice, Really?! Really?!

I read an article on the Web somewhere that there was a new LibreOffice version. It's been several years since I gave OpenOffice a try and I've been interested to see what OpenOffice had evolved into, so I thought, "Hey, maybe they've improved some. I'll install it and see." Here is what happened.

I visited LibreOffice.org and, nice! -- a big green download button.

[image]

The big green download button has been well tested and is widely recognized so we're off to a good start.

I clicked the big green button expecting a download to start. I was disappointed. Instead of triggering a download, I'm dumped on one of the worst download pages I've ever encountered, a page titled LibreOffice Productivity Suite Download » LibreOffice which looks like this.

[image]

After clicking the thing that looked like a link right under the big Download label about three times,

[image]

I realized that was not a link at all, just cleverly designed to impersonate a link and piss me off. I scanned down the page looking for another big green download button. No such luck. Scanning further down the page I see some additional potentially fake links but these ones have some file size information attached so maybe they're what I'm looking for.

[image]

But WTF, there are 4 of them. Which one do I want and what's the difference between the "I" version and the "checkmark" version. Maybe the first one is documentation -- an "I" for information? The second one has a green checkmark and that's sort of like a green download button. Let me mouse over it and see if it gives me more information in a tooltip or something. Nope, nothing. OK, I'll click it and see what happens. Nothing.

So now I'm annoyed and I go back up to the top of the page and start reading the actual content. I just wanted to download LibreOffice, but if I must read a page of documentation before I'm allowed to do that, so be it. OK. Now I see, the "I" icon is just stupid, and meaningless. Actually, it's worse than that, it's misleading. It is supposed to signal that this is the newest version of LibreOffice while the "checkmark" icon is the previous version of LibreOffice. What the icons are supposed to add to the experience, I have no idea, but having read the text, I now understand that I want to go back down the page and find the "I" icon version of the download.

No problem. Or, so I thought. WTH! Which of the two links do I want?

[image]

I've been around software for a while, so even though the amazing people at LibreOffice didn't bother to label these downloads in any meaningful way, I think if I read their crazy filenames I might decipher what I need to know here here. The first one says LibO 3.5.0 Win x86 install multi.msi. "LibO". OK, that's problem some project shorthand for LibreOffice. "3.5.0". That sounds like the version I remember reading about in the article that kicked this whole thing off. "Win". I'm on Windows, that's probably a good sign. "x86". I guess so. "install" hey, now we're getting somewhere. "multi.msi". Hrm. What does multi mean. Is this one part of several? Could that be what the second link is about? Or is that because it's going to install multiple programs? OpenOffice was certainly a group of separate programs. And then the "msi" bit. I know that's for corporate deployments or something so I hope I don't need some kind of enterprise software manager to make it go. I'm gonna just go ahead and assume that's like an .exe and it'll just work.

But what's this other file. "LibO 3.5.0 Win x86 helppack en-US.msi". Do I need "helppack"? Is that just help documentation? Is it a "helper" pack with additional features? Why is it a separate download instead of an option in the primary download. Well, I'll go ahead and download it and if I need it later I'll have it on disk ready to install.

So, downloading .... downloading .... Is 200MB really necessary? I suppose there's a lot in there. I really only want the Word and Excel equivalents. Maybe they could have offered a small download that let me pick components and then only fetch the ones I need? OK. Download complete. Let's see what the installer looks like. (Nice, it tells me in at least three places that what I'm seeing is the Installation Wizard -- just in case that wasn't obvious.)

[image]

Interesting. So I'm installing something called "The Document Foundation"? What is "The Document Foundation"? Oh, I see. A quick look back at the website makes things clear. The company name is "LibreOffice" and the product name is "The Document Foundation".

[image]

OK. "Next". "Next". "Next" and I'm installing! But now I realize that I am indeed installing LibreOffice 3.5, not The Document Foundation. I know this because the installer panel is helpfully telling me in at least 4 different places.

[image]

Installed! I finished the installer.... Hmmm .... Nothing's happening. Did it fail? Do I have to launch it? I'll try that. I'll just go to the Start Menu...

[image]

Uhh. What's "Base"? Is that the shared shell thing that Office has where you can pick which kind of document you want to create? Or is that some kind of shared library? What I'm really looking for are the Word or Excel equivalents. Lemme check "All Programs" in the Start menu and see what's there. Ahh, there's the program group. Great.

[image]

There's that "Base" again. Ahh. Yes. The last two look promising. Writer is probably the Word equivalent. What's the generic "LibreOffice" item at the end there. Could that be the... Nevermind. I'll play it safe and start up Writer.

[image]

ARGH!!!!

No. I won't. Eff you, LibreOffice. Seriously. After all this, you're going to tell me I need to locate and install (on my own) some other piece of Java software because you couldn't bother make it a part of your already awful download and install process. Are you kidding me?

Maybe I'll wait a few years more and try again. Probably not.

Full Article

February 14, 2012 09:40 PM

February 13, 2012

Asa Dotzler -- Firefox in 2012

I've updated the Firefox strategy and roadmap document with our plans for the Firefox Desktop in 2012. It's going to be an amazing year with lots of exciting projects and products from Mozilla.

I've been with the Mozilla project for almost 14 years and I say with confidence that if we exit 2012 having executed on this plan, Firefox and the other major Mozilla initiatives will have have more impact than in any prior year of the Mozilla project.

If you're new to the project, take a look at the work ahead of us and if it interests you, let me or any of the other product leads know and we'll help you plug in. If you're a long-time contributor, I encourage you to keep these goals in the front of your mind and your work queue.

2012 is going to be a critical year for Mozilla and for the Open Web. Execution matters more than ever and there's no team I'd rather be working with than Mozilla's global community of contributors.

Full Article

February 13, 2012 04:26 AM

February 12, 2012

Robert O'Callahan -- Foo Camp, ECOOP, And Conferences

I've just attended another marvelous Foo Camp in Warkworth. As always, it was a great opportunity to meet people doing interesting things who are mostly in New Zealand. One interesting attendee this year was Dave Dobbyn, who I didn't get to talk to, but I was very pleased to hear him introduce himself as "follower of Jesus".

I do feel a bit drained after each Foo Camp. It's not so much the late nights, but the effort required to talk to people I don't know very well. Wandering around trying to figure out who might want to talk to me or which conversation group I should try to break into, I feel socially inept. This is all fine, since talking to people who are doing strange but cool things I know nothing about is one of the best things about Foo. I do, however, find other conferences easier --- conferences that are related to Mozilla, or academic computer science conferences where I can expect almost everyone to share my interests.

Speaking of computer science conferences, I've just finished reviewing my share of the papers for ECOOP 2012 --- I'm on the program committee. It was quite a lot of work but it has been very interesting. It's encouraging to see how much research attention is being given to Javascript and browser-related problems nowadays.

Just recently, the PLDI 2012 accepted papers list came out. I was very pleased to see that Brian Hackett's paper on his Javascript type inference infrastructure was accepted. It's great to see cutting-edge technology actually shipping in browsers being recognized by the academic community.

I'm also glad to see "Race Detection for Web Applications" was accepted. For a long time it's been obvious that Web applications make unwarranted assumptions about DOM events firing in a particular order, and when those assumptions are violated you often get nasty nondeterministic bugs. This is the cause of a lot of the "random orange" test failures we see on the Mozilla test farm. For a while I've thought it might be possible to adapt well-known techniques for dynamic data race detection in multithreaded programs (where I did research, once upon a time) to find these bugs in single-threaded, but nondeterministically event-driven, Web applications --- and nagged researchers to look into it. Now Manu, Julian, Martin and Boris have looked into it and have shown that this can work. I hope I can take credit for suggesting the problem to Manu; however, an under-appreciated fact of CS research is that good ideas are a dime a dozen and the hard work is all in problem selection, implementation and evaluation. So congratulations to Manu et al. for breaking new ground and hopefully kicking off something that will result in more robust Web applications and less "random orange"!

To put the icing on the cake, I am very lucky to have been invited to give a keynote at ISMM 2012. It's in Beijing in June, colocated with PLDI and ECOOP over a whole week! I'm really looking forward to attending these conferences and catching up my former (and some current) colleagues, and actually seeing the presentations of the above papers.

Full Article

February 12, 2012 07:56 AM

February 09, 2012

Robert O'Callahan -- Alternatives To Supporting -webkit Prefixes In Other Engines

Since news spread that the non-Webkit browser vendors are moving towards supporting some -webkit-prefixed properties, lots of people are pushing back with alternative suggestions, for example Daniel Glazman. Many of these are good suggestions, but here's why they won't work for the properties like transitions, animations, and transforms already in wide use:

Evangelize Web developers to not use prefixed properties on production sites. This is swimming upstream against trends in Web development and market forces. At every Web dev conference I've been to, on almost every Web dev site (including browser vendor's own sites), Web developers are encouraged to use vendor-prefixed properties. Web developers who refrain will lose business to Web developers who don't. Ergo, not going to happen. Evangelize Web developers to use prefixed properties with "all browsers' prefixes" (sometimes automatically through preprocessing tools or even CSS extensions). This would help in some ways, but despite us browser vendors and a large chunk of the Web dev community pushing this approach for a long time, even with tool support, Web devs don't do it consistently enough. Even when we specifically contact big, clueful sites we have a good relationship with (like Google) to get this fixed, we often don't succeed. So I don't think one more passionate (angry?) round of evangelism is going to make the difference. Of course evangelism can't help with sites that are no longer actively developed.

This approach has a big downside, too: it can severely limit the usefulness of prefixes in the first place. As soon as one browser implements a feature with given syntax, Web content can start assuming all other browsers use the same syntax and semantics, which forces those browsers to behave exactly as if the feature had been deployed unprefixed in the first place --- especially when Web developers include the unprefixed syntax as a "fallback" in case prefixed support is removed. Even if we could succeed at the evangelism, with this approach we might as well have not used prefixes in the first place.

Teach Web developers not to rely on vendor prefixes by dropping support for them once standard versions exist. Webkit people have already said they won't do this. Furthermore, it encourages Web developers to go the "all prefixes plus standard name" route for everything they do, which makes prefixes pointless, as explained above. Doesn't help with deployed content anyway. Ignore the problem and hope that it goes away without us having to do anything distasteful. Um.

Some of the suggestions for things we could do in the future are good, like disabling experimental features in browser releases, but they won't help us out of the current situation. Maybe I'll discuss them in another post.

Note that trying alternatives that end up failing will have a huge cost to the open Web: it will delay the onset of a multi-vendor mobile Web, which is critically needed for the open Web to survive. I hate having to support -webkit prefixes, but "desperate evangelism while the problem gets worse, followed by supporting -webkit prefixes" would be even worse.

Meanwhile, to the people who think the solution is for Mozilla and others to just "work harder" at evangelism, or implementation, or standards work --- I cast aspersions in your direction. You have no idea how hard we work. I personally have never worked harder in my life, and I know that's true for many other Mozilla people. We hire more people, but the workload increases even faster. Meanwhile, Apple won't even hire a single full-time standards editor to help their proposed CSS properties reach standardization, which is a large part of what got us into this mess in the first place.

Full Article

February 09, 2012 09:03 PM

February 04, 2012

Asa Dotzler -- John Battelle: What Commons Do We Wish For

John Battelle has a very thoughtful and thought provoking article on the future of the Web that outlines a plan for ensuring that the Internet continues to be a commons and that it not devolve into a collection of walled gardens.

At Mozilla, we're working to build that "open" and "independent" Web platform and commons. We have a lot more to do to make the open Web the first choice for users and application developers -- especially for the mobile environment, but I have no doubt that we can do it and I believe we can do it *this year*.

[image]
Photo by Flickr user I dream of Nici, used under a creative commons license

Mozilla will be publishing a series of 2012 strategy and roadmap documents in the next few days that will describe how we get from where we are now to an experience for users and developers that can rival and in many cases beat, the walled gardens and proprietary mobile platforms. Stay tuned.

Full Article

February 04, 2012 06:52 PM

Bing and WebM

I know this isn't news, but it makes me happy every time I see it (Yes, I'm a web geek.) Those of you who use Bing or have looked at it more than once know that they put beautiful background images on their search page. Those images have little highlighted nodes with information and trivia about the image. But every once in a while Bing puts a video background in, like they did a few days ago with this one:

Sorry, your browser doesn't support embedded videos. Try Firefox

And what I love about that is that they serve WebM video to Firefox. A few years ago, this would have been Flash and today it's an open format that I can easily hotlink right here in my blog :D (You can click the video to view it full-sized.)

Full Article

February 04, 2012 06:18 PM

February 02, 2012

Robert O'Callahan -- The Problem With Counting Browser Features

css3test.com is doing the rounds. I get almost exactly the same results in Firefox trunk and Chrome Nightly (64% vs 63%). This gives me a chance to explain why this sort of testing tends to be bad for the Web, without sounding whiny and bitter :-).

The root of the problem is very simple, and explained right at the top of the page:

Caution: This test checks which CSS3 features the browser recognizes, not whether they are implemented correctly.

Thanks for the disclaimer, but it doesn't eliminate the problem. The problem is that whenever someone counts the number of features supported by a browser and reports that as a nice easy-to-read score, without doing much testing of how well the features work, they encourage browser developers to increase their score by shipping some kind of support for each tested feature. Because we have limited resources, that effectively discourages fixing bugs in existing features and making sure that new features are thoroughly specced, implemented and tested. I think this is bad for Web developers and bad for the Web itself.

If Web authors reward Web browsers for superficial but broken support for features, that's what they'll get.

Instead, I would like to see broad and deep test suites that really test the functionality of features, and people comparing the results of those test suites across browsers. Microsoft does this, but of course they tend to only publish tests that IE passes. We need test suites with lots of tests from multiple vendors, and Web authors too. (Why haven't cross-browser test results for the official W3C CSS 2.1 test suite been widely published?)

I don't want to come across as harsh on css3test.com. The site is lovely, it has that disclaimer, and it goes a lot further than, say, html5test.com in terms of testing the depth of support for a feature. So it actually represents good progress :-).

Full Article

February 02, 2012 10:18 PM

Asa Dotzler -- Windows Phone 8

Hot on the heels of rumors of a Windows Phone NDK comes this nugget from The Verge

Synergy between the phone and the PC / tablet is going to be a big one. Not only will Windows Phone 8 share the same Metro style user interface as Windows 8 for tablets and PCs, but developers can reuse the same code for both operating systems. Additionally, the Zune Desktop is being scrapped in favor of a sync relationship with a companion app and the Xbox companion app will have a partner client on both Windows 8 and Windows Phone 8. Similar to Windows 8, seamless SkyDrive integration will also play a big role with cloud syncing. And then there's NFC: in addition to providing that aforementioned "wallet experience" it will allow for tap-to-share capabilities between hardware-supported phones, tablets, and PCs.

I mentioned in an earlier post that I thought we'd start to see this kind of convergence that was more than the skin deep (Metro Style) bits we've seen so far. I hope it continues.

Why all the interest in Windows Phone you ask? Well, I'm hoping that Microsoft can pull off the pivot they're entering with an entirely new and fresh version of Windows. This is the biggest experience overhaul since Windows 95, in my opinion, and I want it to be successful because I don't want to look up in a few years and see that the only two viable operating systems are a locked down iOS and Android. I also think Metro is the most compelling new computer experience to arrive since Mac OS X and that kind of innovation isn't rewarded often enough in this industry.

update: And I was right, it seems, in speculating that Windows Phone would adopt the NT kernel. Paul Thurrot has more.

Full Article

February 02, 2012 08:49 PM

Surprisingly Candid

From Danny Sullivan at Marketing Land comes news of a surprisingly candid Microsoft explanation of why services on the Web give you things for free.

Google is in the process of making some unpopular changes to some of their most popular products. Those changes, cloaked in language like "transparency," "simplicity" and "consistency," are really about one thing: making it easier for Google to connect the dots between everything you search, send, say or stream while using one of their services.

But, the way they're doing it is making it harder for you to maintain control of your personal information. Why are they so interested in doing this that they would risk this kind of backlash? One logical reason: Every data point they collect and connect to you increases how valuable you are to an advertiser.

To be clear, there's nothing inherently wrong with wanting to improve the quality of an advertising product. But, that effort needs to be balanced with continuing to meet the needs and interests of users. Every business finds its own balance and attracts users who share those priorities. Google's new changes have upset that balance, with users' priorities being de-prioritized. Thats why people are concerned and looking for alternatives.

If these changes rub you the wrong way, please consider using our portfolio of award-winning products and services....

Now, Microsoft is basically right here. And they acknowledge that it's not "wrong" but that different services can make different bets and different trade-offs. I went to Bing Search more than two years ago because I liked their trade-offs better. They didn't connect the your Live Mail account information with your Bing Search information, for example. As Google connects more and more, I'm increasingly happy that I made the move.

Google likes to say that alternatives are just a click away but that's not really true. It takes a while to extricate yourself from Google's services and to learn and train new services. I took me a while to get used to Bing but once I learned how to talk to Bing (think about it, you've been learning what Google search wants to hear for years) I started getting really good results. I never used Gmail for anything but a throw-away account but I'm still stuck using their office apps because my colleagues do. Anyway, my plan was never to become invisible to Google, just to try to keep them from knowing everything about me. They still surveil me with their ad networks and their analytics probes and their various youtube and maps embeds and whatnot, but connecting that web-wide surveillance up to my daily interests is now a bit harder for them because I've distributed myself across several service providers instead of just one.

Full Article

February 02, 2012 01:33 AM

February 01, 2012

Postbox Team -- WiseStamp Add-On for Postbox

We’re excited to announce a new Add-On for Postbox: WiseStamp.

WiseStamp transforms email signatures into powerful self-expression and promotional tools. You can choose from a variety of productive and social Email Apps that adds dynamic content to each outgoing email, such as your latest eBay item, Twitter and Facebook status, recent blog post, or important cause to promote.

wisestamp

WiseStamp was declared best Social Media Gadget 2009 in Mashable’s Open Web Awards. Since its launch, over a quarter of a billion emails have been sent using WiseStamp.

Download WiseStamp today, and be sure to check out the other great Add-Ons available for Postbox!

Full Article

February 01, 2012 07:00 AM

January 29, 2012

Robert O'Callahan -- Mozilla Tree Adventures

Last week we had a few overseas Mozillians stop by the office on their way back from linux.conf.au. We took the opportunity to hold our annual Mozilla Auckland outdoors event, which for only the second time ever did not involve volcanoes. Instead we went to Tree Adventures out in Woodhill Forest. Basically you strap on safety gear, climb ladders into the trees (up to 14 metres above the ground) and conquer a variety of obstacle courses on wires from tree to tree. Flying foxes are also involved. It's tons of fun, unless you have a fear of heights as I do, in which case it's tons of fun mixed with just as much sheer terror. I was glad to be able to overcome my instincts and keep going; that sort of mental discipline is worth practising. I just hope none of my colleagues noticed me whimpering.

We followed up with a nice lunch at Hallertau.

[image]

[image]

Full Article

January 29, 2012 03:40 AM

January 27, 2012

Asa Dotzler -- End of Firefox Support for Windows 2000

For a number of years we've held off on updating our Windows toolchain to a newer version of Visual Studio, and in so doing preserved support for Windows 2000 and Windows XP RTM and SP1. Firefox developers and the 99.6% of our Windows users have paid a price for this support, though. Our developers have not been able to take advantage of new compiler features and have had to struggle to keep valuable optimizations from breaking -- including having had to back out and ultimately delay some important new features like SPDY. Our users have have suffered a slower Firefox than would be possible as both direct and indirect results of moving to a more modern compiler.

So this week, after a few months of discussion and evaluation of the latest Firefox user numbers and the pros and cons of moving our tools forward, I've called for Mozilla to begin the process for ending support on those older Windows version. Next Tuesday or Wednesday, after Firefox 12 moves to Aurora, the Mozilla Release Engineering team will begin upgrading our Windows build systems to Visual Studio 2010. With VS2010, we will no longer be able to build a Firefox that runs on Windows 2000, Windows XP RTM, and Windows Service Pack 1.

It's always a difficult decision to leave some users behind. The number of Firefox users on those OS versions -- less than one half of one percent of our Windows Firefox users, and the benefits to our development process and the hundreds of millions of Firefox users on XP SP2 and above, however, compel us to look forward rather than back.

If you are a Windows 2000 user, Firefox 12, which will be supported until June 5th, will be the final supported Firefox release. After that, your options are limited. Switching to Opera is probably the best path forward.

If you're a Windows XP user still on RTM or Service Pack 1, I strongly urge you to install the free Windows Service Pack updates.

And finally, for Enterprises adopting the ESR, these older Windows versions will be supported for the length of the first ESR of Firefox. That works out to an extra 6 months or so before these Windows versions become unsupported.

Full Article

January 27, 2012 11:20 PM

January 24, 2012

Asa Dotzler -- Firefox in 2012

The first public version of the browser called "Firefox" -- a 0.8 release, came out 8 years ago. With that release and the 1.0 release later that same year, we showed the world that browsers mattered.

Innovative new features like tabbed browsing, pop-up blocking, spell-checking, integrated search, and browser add-ons, re-invigorated not just the browser market, but the entire Web. We put users in control of that mess of windows, and the horrible pop-ups from advertisers and malware makers. We made it simple for users to customize their experience and to find what they were looking for without jumping through a bunch of hoops.

In addition to those awesome new user-facing features, Firefox delivered great performance, stability, compatibility, and security at a time when Internet Explorer was falling down on most of those fronts. It wasn't enough to offer great user features, the integrity and quality of the product had to be top notch and it was.

Today, there are more compelling browser choices than ever before and all of the major browser vendors are delivering high-quality products with innovative new features, even Microsoft :-) This is good for users and good for the Web.

But browsers are not all the same. Each of the major vendors, Microsoft, Google, Apple, and Mozilla are building Web browsers for very different reasons. They may resemble each other on the surface, but everything from the features they offer to users and to Web developers, to the myriad of user interface design considerations, to the distribution models, exist to serve very different interests.

Only Mozilla, a non-profit organization, produces a Web browser designed, first and foremost, to put users in control of their online experience.

The desktop browser is not the only part of the Web that impacts user control, security, and privacy, though, so in 2012 Mozilla is expanding its efforts and will be delivering a new standards-based Web Apps ecosystem, a user-centric identity system for the Web, and a cross-device strategy built around user empowerment.

Desktop Firefox in 2012 is going to do again what we did in 2004. We're going to deliver innovative features that put users in control. And we're going to give users the speed, stability, and compatibility that the modern Web demands. We're going further this year, though. We're going to help launch powerful new Mozilla products like Apps, Identity, and mobile.

There are a lot of pieces that will have to come together to make that vision a reality and in the coming days I'll be sharing more specifics here and in the Mozilla wiki. Stay tuned.

Full Article

January 24, 2012 05:30 PM

January 23, 2012

Asa Dotzler -- Personal Data is the Currency

Personal data is the currency of today's digital market, and like any currency, it needs stability and trust. Only if consumers can 'trust' that their data is well protected, will they continue to entrust businesses and authorities with it, buy online, and accept new services.

That's from EU Commissioner Viviane Reding, speaking at the DLD Conference in Munich.

I think the final sentence there takes an optimistic view on users' understanding of the issue, but I hope that we can build a Web where something like that will be obviously true to everyone.

Ms. Reding's proposal for new regulations on that front has three main components.

First, people need to be informed about the processing of their data in simple and clear language. Internet users must be told which data is collected, for what purposes and how long it will be stored. They need to know how it might be used by third parties. They must know their rights and which authority to address if those rights are violated.

Second, whenever users give their agreement to the processing of their data, it has to be meaningful. In short, people's consent needs to be specific and given explicitly.

Thirdly, the reform will give individuals better control over their own data. I will include easier access to one's own data in the new rules. People must be able to easily take their data to another provider or have it deleted if they no longer want it to be used.

The first bit, explaining to users that their data is being collected and for what purposes, does happen some today but not always "in simple and clear language" and very often not in a context the user is likely to understand or actively participate in. The second part, that it must be opt in, also may be in common use today with all the click-through TOS, though even I don't read those so I don't know if that's the case.

But it's the third part that I think is really novel and important. Users have a right to be forgotten. I should be able to pull my data back out of a system, and not only the data I actively submitted, but any additional data that's been collected as a result of my use of the system. For example, Google lets me kill my Docs account and pull that content, but they don't let me see, much less manage, the targeted advertising profile of me that they build based on my "use" of Google services like AdSense, DoubleClick, Analytics, and the various other Google surveillance tools I happen across when I'm surfing the Web.

How user data is managed is going to be one of the next big challenges we face on the Web. Europe may set the pace but it's up to all of us to be a part of any solutions.

Full Article

January 23, 2012 06:18 PM

January 20, 2012

Asa Dotzler -- Join Us

Tim Taubert recently posted on how he got involved with Mozilla. I intend to post about my experience at some point in the not too distant future but for now I wanted to highlight something from Tim's post:

I loved this feature but noticed that it was in an early stage and needed some fixes. I set up a Firefox build environment, went through Bugzilla to find open bugs, nagged people on IRC and was totally overwhelmed by the warm welcome and the appreciation of my work. This was something I did not at all experience when trying to contribute to other open source projects.
Some areas are more or less difficult and some volunteers are more or less motivated, but if you love what we're doing with Firefox and want to be a part of it, there are a lot of us that would love to help you get onboard. If you're trying to get connected and don't have a starting point, please use me. I'm asa@mozilla.org and either "Asa" or "asadotzler" on IRC. Also, we're hiring.

Full Article

January 20, 2012 02:45 AM

Are You Building Add-ons That Include C++?

Are you an add-on author that uses C++ in your add-on(s)? If so, can you take a look over this discussion and comment there if you think it would help you maintain your add-on(s)? We're trying to balance moving as quickly as we can to improve Firefox and Gecko with maintaining add-on and Web compatibility and this approach looks somewhat promising for at least some add-on authors. Please post comments to that thread and not here. Thanks.

Full Article

January 20, 2012 02:24 AM

January 18, 2012

Asa Dotzler -- Protesting PIPA and SOPA

Today, Mozilla will be taking part in a protest the U.S. SOPA and PIPA legislation. You can read more about this from:

Mozilla's Chairman, Mitchell Baker
Mozilla's CEO, Gary Kovacs
Mozilla's Privacy and Public Policy Lead, Alex Fowler

Our sites will go black and offer information and links to help folks understand this issue. In addition to www.mozilla.org and www.mozilla.com, hundreds of millions of Firefox users will see a blacked out Firefox Start page with a small note under the big search box pointing to more information.

(Note: All users will still be able to receive security updates and access our technical support website.)

Full Article

January 18, 2012 09:05 AM

Robert O'Callahan -- You Know You're In Australia When...

... you take a short walk after dinner and encounter a tribe of kangaroos.

[image]

Full Article

January 18, 2012 12:46 AM

January 17, 2012

Robert O'Callahan -- MediaStreams Processing Demos

I'm at linux.conf.au at the moment (until Wednesday) and yesterday I attended the browsers miniconf. It went well, better than I expected. I had a slot to talk about the MediaStreams Processing API proposal to enable advanced audio effects (and much more!) in browsers, which has been my main project for the last several months (see my earlier post here. I worked frantically up to last minute to create demos of some of the most interesting features of the API, and get my implementation into a state where it can run the demos. By the grace of God I was successful :-). Even more graciously, the audio in the conference room worked and even played my stereo effects properly!

I have made available experimental Windows and Mac Firefox builds with most of the MediaStreams Processing API supported. (But the Mac builds are completely untested!) The demos are here. Please try them out! I hope people view the source, modify the demos and play with the API to see what can be done. Comments on the API should go to me or to the W3C Audio Working Group.

I must apologise for the uninspired visual design and extraordinarily naive audio processing algorithms. Audio professionals who view the source of my worker code will just laugh --- and hopefully be inspired to write better replacements :-). Making that easy for anyone to do is one of my goals.

Some of the things I like about this API:

First-class support for JS-based processing. In particular, JS processing off the main thread,using Workers. This lets people build whatever effects they want and get reasonable performance. Soon we'll have something like Intel's River Trail in browsers and then JS users will be able to get incredible performance. Leverages MediaStreams. Ongoing work on WebRTC and elsewhere is introducing MediaStreams as an abstraction of real-time media, and linking them to sources and sinks to form a media graph. I don't think we need another real-time media graph in the Web platform. Allows processing of various media types. MediaStreams currently carry both audio and video tracks. At the moment the API only supports processing of the audio because we don't have graphics APIs available in Workers to enable effective video processing, but that will change. Applications will definitely want to process video in real time (e.g. QR code recognizer, motion detection and other "augmented reality" applications). Soon we'll want Kinect depth data and other kinds of real-time sensor data. First-class synchronization. Some sources and effects have unbounded latency. We want to make surewe maintain A/V sync in the face of latency or dynamic graph changes. This should be automatic so authors don't have to worry about it. Support for streams with different audio sample rates and channel configurations in the same graph. This is important for efficient processing when you have a mix of rates and some of them are low. (All inputs to a ProcessedMediaStream are automatically resampled to the same rate and number of chnanels to simplify effect implementations.) No explicit graph or context object. It's not needed.

Most of the features in the proposed spec are implemented. Notable limitations:

"blockInput" and "blockOutput" are not implemented; there is no way for streams to opt out of being synchronized. For example it would be nice to be able to pipe a media resource into a processing node and if the resource pauses (e.g. due to a network delay), the processing node doesn't block but just treats the paused input as silence. This is probably the trickiest feature not yet implemented. No support for "live" streams. Similar to above, if a stream feeds into an output node that is blocked, we sometimes don't want to buffer the input stream. E.g. if the input is a live webcam you often (but not always) want to throw away buffered data so that when the output unblocks it immediately gets the latest video frames. There has been very little tuning to optimize throughput and latency, especially across a range of devices. This will be a lot of work. In general the API is very lightly tested. I'm sure there are lots of bugs. Video elements don't play in sync with streams captured from them. In my demos I worked around this by hiding the source video elements and creating new video elements to play the video via the stream. Fixing this bug would simplify the demos a bit. Canvas video sources are not implemented. The built in audio resampler is stupendously naive and needs to be replaced. Add support multiple audio and video tracks and the MediaStream track API. ProcessedMediaStreams using JS workers need to add checks ensuring that all upstream media sources are same-origin. The biggest limitation is that it's not shipping in Firefox yet. My giant patch is messy and a lot of cleanup needs to be done. I have a plan to split the patch up, clean up the pieces and land them piecemeal. In particular I need to get some of the infrastructure landed ASAP to help the WebRTC team make progress. (When we ship it, much or all of the API will probably be disabled by default, behind a hidden pref, until the standards situation is resolved.)

Update Updated the build links to point to new builds with improved performance (faster JS execution in workers due to type inference being turned on; fewer control loop wakeups due to more intelligent buffering decisions for ProcessedMediaStreams).

Full Article

January 17, 2012 12:01 AM

January 16, 2012

Asa Dotzler -- Microsoft Still Has a Monopoly with Windows

In his most recent column, Ed Bott said something, mostly unrelated to the rest of the rant, that got me thinking. He said, "In the general-purpose PC segment, where small vestiges of Microsoft's one-time monopoly still exist..."

What I think he's trying to say here is that Microsoft doesn't really have monopoly market power any more in PC operating systems. Or maybe Ed thinks it's possible to have a tiny little bit -- "small vestiges," of monopoly market power. That doesn't really make any sense to me. It's kind of like saying someone is "a little bit pregnant." You either have monopoly market power or you don't.

Here's what I think.

Microsoft absolutely does still possess monopoly market power for PC operating systems.

Microsoft Windows has somewhere between 90% and 92% of the worldwide PC installed base and Windows PC sales accounted for somewhere between 93% and 95% of total PC sales in 2011. (Mac sales were about 4.75% of total PC sales in 2011 -- 16.73 million Macs out of a total of 352.4 million PC shipments)

Microsoft Windows is just as much the overwhelming dominant PC operating system power today as it was back in 1999 when it was declared a monopoly.

"Yeah. Sure. But what about the rise of the smartphone and the tablet?" I hear you saying. Well, those are not PC operating systems. Those belong to different and fairly competitive markets. PC operating systems installed base and current sales market share are still very much dominated by Microsoft.

Full Article

January 16, 2012 09:45 PM

January 14, 2012

Asa Dotzler -- User Sovereignty

Mitchell Baker has just posted about a very important issue, user sovereignty over our data. Please go give her post a read.

User Sovereignty for our Data

Full Article

January 14, 2012 03:01 AM

January 10, 2012

Robert O'Callahan -- "Cut The Rope" and HTML5 Audio

Microsoft released an HTML5 version of Cut The Rope which is pretty cool. Unfortunately they use Flash audio by default for Firefox users because, they say, "some Firefox users could have run into an audio problem but will notice we fall back to a flash plugin to ensure that sound effects and music will work." They don't mention specific Firefox bugs (although they do for Chrome), and when I try the HTML5 audio version it works fine for me. So, please try the HTML5 version in Firefox (release or nightly), and if it doesn't work let me know and file bugs! Thanks!

Full Article

January 10, 2012 08:19 PM

January 08, 2012

Asa Dotzler -- Where are the Firefox Channels Today?

Firefox releases keep on coming. We just shipped Firefox 9 with the killer-fast JavaScript Type Inference work and Firefox 10, with add-ons defaulting to compatible is just around the corner.

June 21, 2011 August 16th, 2011 September 27, 2011 November 8, 2011 December 20, 2011 January 31, 2012 March 13, 2012 April 24, 2012 June 5, 2012 July 17, 2012 August 28, 2012
Firefox 8 on m-c Firefox 9 on m-c Firefox 10 on m-c Firefox 11 on m-c Firefox 12 on m-c Firefox 13 on m-c Firefox 14 on m-c Firefox 15 on m-c Firefox 16 on m-c Firefox 17 on m-c Firefox 18 on m-c
Firefox 7 on Aurora Firefox 8 on Aurora Firefox 9 on Aurora Firefox 10 on Aurora Firefox 11 on Aurora Firefox 12 on Aurora Firefox 13 on Aurora Firefox 14 on Aurora Firefox 15 on Aurora Firefox 16 on Aurora Firefox 17 on Aurora
Firefox 6 on Beta Firefox 7 on Beta Firefox 8 on Beta Firefox 9 on Beta Firefox 10 on Beta Firefox 11 on Beta Firefox 12 on Beta Firefox 13 on Beta Firefox 14 on Beta Firefox 15 on Beta Firefox 16 on Beta
Firefox 5 on Release Firefox 6 on Release Firefox 7 on Release Firefox 8 on Release Firefox 9 on Release Firefox 10 on Release Firefox 11 on Release Firefox 12 on Release Firefox 13 on Release Firefox 14 on Release Firefox 15 on Release

Firefox 11, which is in Aurora today, makes an awesome leap forward in developer tools. If you're a Web dev, you really should be checking those out. Firefox 12, currently on the Nightly channel, has killed the Windows UAC dialog, so there's one less annoyance on updating.

Full Article

January 08, 2012 07:03 PM

January 07, 2012

Robert O'Callahan -- Risk Tolerance

Wise words:

John McGlashan principal Michael Corkery said: "He was doing what every kid should be doing, playing with his friends in a river."

Everybody had done everything right, but Dion still died.

"It was just a tragedy, and tragedies happen. Life sometimes deals out bad luck but we have to get on with it. We'll never forget him."

Too often, people respond to a child's tragic death by setting up a pressure group, foundation or new law to Make Sure This Never Happens Again.

Full Article

January 07, 2012 04:21 AM

December 28, 2011

Asa Dotzler -- What's Next for Windows Phone

After a leaked Windows Phone roadmap, there are a few blogs speculating about what a Windows "Superphone" means and whether or not it's necessary.

Here's my take. I think Microsoft wants to unify their operating systems.

Windows Phone was the first "Metro" experience, but it runs on an old CE kernel and the stack above that is Silverlight (and XNA). Metro is huge. It's the first really new user interface Microsoft's shipped since Windows 95. Metro makes classic Windows and even iPhone and Android feel ancient -- the same old square icons on a desktop we've all been using for the last several decades.

Windows 8 brings Metro to the desktop, laptop, and tablet world. This world, though, is built on the NT kernel, with the WinRT API above that. Sure, you can build Silverlight-like apps in Windows 8 Metro, it might even be trivial to port your WP app to Windows 8 Metro, but you can't easily go the other way.

So, what can Microsoft do about this? Well, it's easy, move Windows Phone onto the NT kernel, and carry over the bulk of the WinRT API. This would make developing your Windows app for any form factor, from desktops to phones, a very easy task. Throw in some nice Visual Studio and Blend templates for re-shaping your app to fit the various form factors, and you've got something really compelling.

The problem with that? Well, today's Windows Phone hardware probably isn't sufficient to drive an NT+WinRT OS. Enter "Superphones."

Superphones, I'm guessing, are the first generation of Windows Phone that run on the NT kernel and support the WinRT (or at least enough of it for most apps.) Note the Apollo release timing is not far from the expected Windows 8 release. Put that together with the recent news that the Windows Phone chief was put in charge of a "a new role working for me on a time-critical opportunity focused on driving maximum impact in 2012 with Windows Phone and Windows 8", and there might be something to this.

So, what do you all think. Am I crazy? Would "same API" across all devices be a worthy Microsoft goal? An achievable one? And what about X-box? Could Microsoft pull off the hat-trick, and unify all of their major platforms under a Metro front end? No doubt that's a tall order, and there are three CPU architectures to deal with. But Microsoft is a big and wealthy company.

Full Article

December 28, 2011 08:57 PM

December 27, 2011

Robert O'Callahan -- A Case For Non-Fatal Assertions

Jeff Walden is doing awesome work on the foundations of Gecko to unify the lowest-level infrastructure used by JS and the rest of Gecko and to rebase it on modern C/C++ standards. But there is a controversy about whether non-fatal assertions should be part of that infrastructure. This issue came up before, not long ago.

I strongly believe that non-fatal assertions are valuable when used to report the presence of a bug that is not as severe as a browser crash. An example I just pulled out of nsBlockFrame::Reflow:

    ReflowBullet(state, metrics, lineTop);
NS_ASSERTION(!BulletIsEmpty() || metrics.height == 0,
"empty bullet took up space");

If this assertion fails, then we have detected a Gecko bug which should be reported and eventually fixed. If the assertion failure is a regression, and we detect it in time, we will try very hard to fix it before the patch ships in a browser release. (If the regression is triggered by our layout reftest test suite, we will almost certainly detect it on checkin since reftests go orange on new non-fatal assertion failures.) However, if this assertion failure is the only thing that goes wrong, there will almost certainly be no ill-effects beyond the page having a slightly incorrect layout --- maybe. Some pages might trigger the assertion but appear to render correctly. Even if the bug causes a detectable test failure, the assertion helps to narrow down the cause and understand the code.

Using a fatal assertion here would have the same benefits but additional costs. A test run hitting the assertion would abort the suite, meaning we lose the results for the rest of the tests in the suite. This makes fixing test failures slower and more painful than necessary since more runs of the suite will often be required. (It's similar to a compiler always aborting after the first syntax error in a compilation unit.) Another cost is that if you are using a debug build for some reason and you hit this bug while trying to work on something else, your work will be unnecessarily blocked.

At this point some will say "Ah! But assertion failures should always just be fixed. Since non-fatal assertions are more ignorable, they encourage you to leave bugs unfixed."

That statement ignores the reality of bug priorities. An assertion failure is just a bug and needs to be prioritized along with other bugs. If our assertion infrastructure and associated project rules forced us to always prioritize some rare list bullet spacing bug above all bugs that don't trigger assertions, then that infrastructure would be actively damaging our project. We would have to respond by simply removing a lot of our assertions and losing their benefits. It is crucial to be able to ignore unimportant bugs.

Having said all that, fatal assertions certainly have their place. I imagine that in the JS engine almost any bug will lead to a crash sooner or later, so it makes sense for fatal assertions to prevail there because the downside is minimal; you were going to crash anyway, and crashing later might just be confusing.

Addendum: an objection to non-fatal assertions is that libc "assert" and some other assertion mechanisms are fatal, so to call something non-fatal an "assertion" is confusing. That may be true for some people, but it's cultural. The culture in Gecko is that NS_ASSERTION is non-fatal. Maybe renaming our non-fatal assertion mechanism would end up being a net win by some point in the future, but I'm dubious. Although I wouldn't actually mind too much; I just want non-fatal assertions, whatever we call them.

Full Article

December 27, 2011 11:50 PM

Asa Dotzler -- A Simple Google News Search

I keep an eye on Google News results for "firefox". Today I noticed that the URL for that search was crazy long.

https://www.google.com/search?&hl;=en≷=us&tbm;=nws&btnmeta;_news_search=1&q;=firefox#q=firefox&hl;=en&safe;=off≷=us&tbas;=0&tbm;=nws&source;=lnt&tbs;=sbd:1&sa;=X&ei;=fwP6TprKDcariALLtpiTDQ&ved;=0CCAQpwUoAQ&bav;=on.2,or.r_gc.r_pw.r_cp.,cf.osb&fp;=2758f09f54f048c8&biw;=1366&bih;=664
After a couple of seconds of playing around with it, I determined that the actually useful to me bits made a much smaller string.
https://www.google.com/search?q=firefox&tbm;=nws&tbs;=sbd:1
That is, trimming the URL down to the shorter string returned the same search results as the longer string. So, there are only tree pieces of information, three parameters required to get me the results I'm after. There's the search term, that it's a news search, and the sort order. The language and geography and safe browsing setting are obvious (though they don't impact the results, so why carry them,) but what are the rest of these parameters?
btnmeta_news_search=1
tbas=0
source=lnt
sa=X
ei=fwP6TprKDcariALLtpiTDQ
ved=0CCAQpwUoAQ
bav=on.2,or.r_gc.r_pw.r_cp.,cf.osb
fp=2758f09f54f048c8
biw=1366
bih=664
If you're a Google News developer and you've got a minute, maybe you can satisfy my curiosity.

Full Article

December 27, 2011 05:52 PM

Robert O'Callahan -- Revelation

Saw this Penn Jillette quote:

There is no god and that’s the simple truth. If every trace of any single religion died out and nothing were passed on, it would never be created exactly that way again. There might be some other nonsense in its place, but not that exact nonsense. If all of science were wiped out, it would still be true and someone would find a way to figure it all out again.

Well, yeah. Christianity (and some other major religions) unabashedly depend on revelation, the idea that God is so transcendent that humans can't figure out much about him on their own, so he has to tell us. And most of that telling doesn't come to us individually, it has to be passed on to us. Annihilate the revelation and we're in the dark again. So ignoring the pejorative language, and apart from the first sentence, there isn't much for a Christian to disagree with in that quote.

Full Article

December 27, 2011 06:16 AM

December 26, 2011

Asa Dotzler -- Twitter & Facebook Fail, Google Gets It Right

It's 2011 and the Web is a really powerful platform. JS/HTML/CSS menus are all across the Web. Why is it that we still have such basic usability failings from some of the biggest players in the business. Is it really that hard to recognize that your menu is going to be cut off and flip it the other direction like any other sane app in the world?

Here's a Facebook menu just dumbly cropped by the edge of the Window.

[image]

And here's a Twitter menu demonstrating the same idiocy.

[image]

Now, here's Google getting it right.

[image]

Because the menu would have been clipped by the edge of the window, Google flipped it up the other direction. They're actually even better than that, though. They first try to shift it up a bit to get it onscreen. If that doesn't work, they flip the direction.

This is basic stuff, people. It's clearly possible and Google gets it mostly right to prove that. Why are you still falling down on these kinds of basics?

Full Article

December 26, 2011 08:14 PM

Last updated: February 18, 2012 02:00 PM


You are viewing a mobilized version of this site...
View original page here

Mobilized by Mowser Mowser