firefox4, new features for userd and developers
This is a modal window.
The media could not be loaded, either because the server or network failed or because the format is not supported.
Formal Metadata
Title |
| |
Title of Series | ||
Number of Parts | 64 | |
Author | ||
License | CC Attribution 2.0 Belgium: You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor. | |
Identifiers | 10.5446/45924 (DOI) | |
Publisher | ||
Release Date | ||
Language |
Content Metadata
Subject Area | |
Genre |
FOSDEM 201125 / 64
3
7
10
11
17
19
21
28
33
34
35
37
40
44
48
49
52
55
57
59
62
63
64
00:00
Software developerWeb browserWordComputing platformInclusion mapPoint cloudWeb browserPresentation of a groupEvent horizonSlide ruleService (economics)SoftwareFreewareInformation privacyProduct (business)Level (video gaming)Goodness of fitEmailSelf-organizationWeb pageMultiplication signWeb 2.0Fluid staticsReal-time operating systemOrder (biology)Game controllerMaxima and minimaWeb applicationInternetworkingInformationTwitterProgramming paradigmOpen sourceCentralizer and normalizerSoftware developerWeb-DesignerComputer clusterComputer animationXMLLecture/Conference
05:50
Web browserInterface (computing)Graphical user interfaceSoftwareUser interfacePoint cloudWeb browserCellular automatonProduct (business)Web 2.0Web pageComputing platformSoftware developerTouchscreenReal numberContent (media)Default (computer science)WindowOrder (biology)Mobile appSpacetimeUniform resource locatorOpen setComputer configurationTerm (mathematics)PixelVideo gameWeb applicationMenu (computing)Cloud computingNeuroinformatikMaxima and minimaMobile WebCentralizer and normalizerFluid staticsInformationElectronic visual displayInformation privacyRevision controlPlastikkarteElectronic mailing listMultiplication signCASE <Informatik>WikiLecture/Conference
11:33
Reading (process)SpacetimeRevision controlMobile appTwitterSoftwarePersonal identification numberHidden Markov modelWeb browserComputer iconLecture/Conference
12:28
TwitterBlogPersonal identification numberSpacetimeWeb 2.0Mobile appLecture/Conference
13:18
FreewareCorrelation and dependenceWeb applicationGoodness of fitGroup actionUser interfaceTheoryRight angleInternetworkingVisualization (computer graphics)Connected spaceTelecommunicationCASE <Informatik>Lecture/Conference
14:54
Complex (psychology)Computer hardwareElectric generatorComputing platformBitPrototypeWeb pageProduct (business)Multiplication signRow (database)Process (computing)FreewareRevision controlOpen setDevice driverGraphics processing unitTerm (mathematics)Directed graphMassDifferent (Kate Ryan album)WindowSoftwareCodeCycle (graph theory)NeuroinformatikMereologyTouchscreenData managementVideoconferencingWeb browserCache (computing)Mathematical optimizationLine (geometry)Greatest elementMultilaterationLecture/Conference
20:04
BenchmarkArithmetic progressionRegular graphSoftware testingTerm (mathematics)Line (geometry)Right angleBeat (acoustics)Graph (mathematics)GoogolGraphical user interfaceSpecial unitary groupWeb crawlerScripting languageLecture/Conference
22:33
Streamlines, streaklines, and pathlinesUser interfaceTerm (mathematics)Different (Kate Ryan album)Arithmetic progressionMultiplication signThresholding (image processing)User interfaceCartesian coordinate systemSoftwareMereologyLink (knot theory)Lecture/Conference
25:03
Streamlines, streaklines, and pathlinesUser interfaceTrailEmailSynchronizationInformation privacyExtension (kinesiology)Scripting languageComputer networkVideo trackingInformation securityClient (computing)Server (computing)Extension (kinesiology)Mechanism designGraphical user interfaceGoogolDifferent (Kate Ryan album)CASE <Informatik>Block (periodic table)WebsiteFlash memoryException handlingCuboidProduct (business)NeuroinformatikDefault (computer science)OntologyTrailElectronic mailing listEmailSet (mathematics)Axiom of choiceScripting languageNumberSoftwareMultiplication signMathematicsHTTP cookieInformation privacyRevision controlAuthorizationRegulator gene1 (number)Level (video gaming)Computer clusterInstallation artWeb browserLecture/Conference
31:30
Client (computing)Server (computing)Extension (kinesiology)Information privacyScripting languageEmailSynchronizationVideo trackingComputer networkInformation securityMobile WebBeta functionOpen setOnline helpRevision controlGroup actionPasswordCentralizer and normalizerKeyboard shortcutSmartphoneRevision controlOrder (biology)Information privacyServer (computing)Service (economics)Web browserEncryptionSelf-organizationVirtual machineLine (geometry)Mobile WebNeuroinformatikAndroid (robot)Right angleDisk read-and-write headSynchronizationSoftwareSource codeClient (computing)Key (cryptography)Data miningOpen sourceInformationBookmark (World Wide Web)FreewareTrailCartesian coordinate systemLecture/Conference
35:59
VideoconferencingBookmark (World Wide Web)Web 2.0Web pagePower (physics)Medical imagingGreatest elementGradientMultiplication signWeb browserSynchronizationClient (computing)Revision controlNumberDemo (music)Social classGroup actionRotationVideoconferencingWordWorld Wide Web ConsortiumLecture/Conference
39:39
VideoconferencingElectronic data interchangeTwitterExecution unitGamma functionComplex (psychology)Query languageRhombusDemo (music)Forcing (mathematics)TouchscreenLink (knot theory)Mobile appRight angleTwitterWeb browserCodeCartesian coordinate systemDatabaseSubject indexingMultiplication signKey (cryptography)Web 2.0SoftwarePhysical systemComplex (psychology)Data storage deviceElectronic mailing listGoodness of fitLecture/Conference
42:33
Level (video gaming)Drop (liquid)Computer fileWeb 2.0Power (physics)Service (economics)Medical imagingLecture/Conference
43:37
Duality (mathematics)Cubic graphGoogle MapsServer (computing)Virtual machineDigital photographyConnected spaceOvalMedical imagingLevel (video gaming)Lecture/Conference
44:25
Computer filePoint (geometry)TouchscreenMarkup languageUser interfaceAudio file formatMusical ensembleSpecial unitary groupLecture/Conference
45:25
Function (mathematics)Transformation (genetics)Real-time operating systemValidity (statistics)Real numberLecture/Conference
46:15
CodeProjective planeLatent heatView (database)Demo (music)Group actionOpen sourceWorld Wide Web ConsortiumStandard deviationPatch (Unix)Lecture/Conference
47:31
Convex hullProcess modelingReal-time operating systemSpecial unitary groupAudio file formatVideoconferencingSoftwareGame controllerLaptopWeb 2.0Lecture/Conference
48:39
Digital photographyFlickrReal-time operating systemMedical imagingBuildingVideoconferencingMusical ensembleVisualization (computer graphics)TouchscreenSoftware bugLecture/Conference
50:07
Mobile WebBeta functionOpen setOnline helpRevision controlGroup actionMultiplication signDevice driverMusical ensemblePosition operatorGraphical user interfaceParameter (computer programming)Patch (Unix)Data miningExtension (kinesiology)NeuroinformatikDirected graphRight angleFood energyCrash (computing)Open sourceGroup actionControl flowMereologyComputer configurationDependent and independent variablesAndroid (robot)WebcamStandard deviationDifferent (Kate Ryan album)Shooting methodMathematicsType theorySoftware testingBuildingLatent heatDistribution (mathematics)Web browserDialectEndliche ModelltheorieRevision controlVisualization (computer graphics)WindowSynchronizationSelf-organizationCore dumpComputer hardwareLimit (category theory)World Wide Web ConsortiumComputer clusterSuite (music)Lecture/Conference
58:44
XML
Transcript: English(auto-generated)
00:09
So good afternoon. I'm Tristan Nitto, I'm president and founder of a non-profit organization called Mozilla Europe.
00:20
You may have heard about our main product called Mozilla Firefox, and I'm here with Anthony, Anthony Enrico, here on stage, who is a web developer and open source contributor. He has a history of contributing to, what's this name of this browser again?
00:40
It's a fruit company, I can't remember anyway. So he used to contribute to Safari, but he's seen the light, and he came in, and he's contributing to Firefox now. But I like him anyway. Apologies for this presentation, which is quite a mess.
01:03
I was told yesterday, I think around seven, that there was a slot available, and it would be nice to have a Firefox presentation. And so I had literally no slides, nothing to show, and I would like to thank Anthony for joining me.
01:23
We had room service, lasagna in my room, and so we created this presentation yesterday evening instead of going to the beer event. And so it's kind of a big sacrifice, so. I know, we did have a bottle of wine anyway,
01:43
so no beer, but wine instead. But it was not really a party. Well, I'm going to talk to you about mostly three things. The one is the cloud phenomenon, and what's going on.
02:05
How Firefox is changing in its regard with Firefox 4. And we'll also talk about the browser as a platform. This will include demonstrations by Anthony.
02:24
I was actually very pleasantly surprised this morning by Eben Moglen's talk. Who in this room has attended Eben Moglen's talk this morning, raise your hand. Well, not enough people, let me tell you.
02:41
Well, it's better than nothing. Eben, who's an amazing guy, actually had a very nice words for Firefox. That was cool, but also mostly he had,
03:01
he had a discussion about privacy and network centralization which is very close to my heart. And so it was a pleasure to hear Eben discuss these, in my opinion, very important issues. So whether we want or not, the cloud,
03:23
the cloud paradigm is taking over information technology. Everything, it's the big trend this decade of moving to the cloud.
03:42
And I don't think we can stop it. But if we cannot stop it, how can we make sure that we as users, as free software developers and citizens of the internet, how can we ensure that we have
04:03
the maximum control over what's going on? So this is one thing I want you to keep in mind during this discussion today is the cloud is happening but Firefox is the product that we as an organization
04:24
are producing in order to remain in control as much as possible with our data and our future. So while the cloud is taking over IT,
04:41
the browser needs to evolve. Like remember a decade ago, the browser basically was something to display a webpage, a static webpage like a Wikipedia webpage. I'm not dismissing Wikipedia in any way, but you know it's very static document that evolves maybe a couple of times a day or a month,
05:04
but it's a very static document. Now we're talking about web applications. How many of you use a webmail? Raise your hand. All right, so many of you know
05:23
what a web application is firsthand. So a web application is not a document anymore. I mean there is a lot of things going on, downloading new emails, writing, composing emails and stuff like that. The page itself is evolving in real time.
05:43
The browser has to evolve in this regard. An issue the browser had was it had limited capabilities as a development platform. I mean it was meant to display static webpages. Now that we're moving to web apps, how does it work?
06:02
Many things have to be changed, and this is what we're gonna see today. Privacy and centralization, how we cope with this. And also as the world is going mobile, as many of us have now things like cell smartphones,
06:21
cell phones we carry around, which in turn fuels the interest for the cloud itself. I mean I don't want my data to be on my computer or at home or on my cell phone. Basically I want data to be in the cloud
06:41
and I can access it from any device I want. This is what fuels the interest for cloud computing. So there is good with cloud computing, but this means you also need a mobile web browser that you can trust.
07:04
So I'll start by discussing Firefox 4 in terms of user interface and user facing features. What we have, what we have done with Firefox 4, things that are new. One thing that we have is a tab on top.
07:23
So the tabs now are here. These are screenshots from a Windows version. I'll show you on Linux how it shows. Which generally a new theme, new look and feel. The location bar, which makes sense,
07:41
is now closer to the content because actually it relates to the content. You will see in Windows and soon on Linux, it's disabled by default but we can fix that. You will see that there is no more menu bar.
08:03
So overall the idea is to limit the importance of the Chrome real estate on the screen. Chrome being not only a competing browser, but historically the Chrome is the name
08:20
of the user interface of the browser. Now it's confusing that they took this as a product name, but in the browser vendor jargon, this is what you call the Chrome and this too, is the piece of the browser that you see, which is not the content. So we wanted to reduce this to the maximum.
08:42
So no menu bar and you know, shaving a pixel here and there in order to have maximum space on the screen for the content or the web applications. And tabs on top is one way of achieving this. Another thing we have is a feature called switch to tab.
09:05
As you have more and more tabs open, because I don't know if you're like me, but basically the browser is the piece of software that I run like 24 seven. It's where my life is.
09:20
And so I have many, many tabs open. And when I wanna look for something, when I wanna access some information, because the location bar in Firefox is smart. This is what we call the awesome bar. You start, you open a new tab, start typing what you're looking for.
09:41
And the suggestions here, if you start typing Wiki, it suggests wikipedia.com, which is .com, come on. Well, anyway, or it could suggest in this case, which is new in Firefox four, you already have a Wikipedia tab open.
10:02
So it suggests that you go to the existing tab, which has Wikipedia, instead of opening yet another Wikipedia tab. So it prevents you in the end, when you start cleaning up the mess in your tabs from closing like 20 Wikipedia tabs
10:21
that were open at the same time, which doesn't make sense. So this is one nice feature, which is so switch to tab. We're suggesting to move to the tab, which is already open instead of reopening a new tab. And the Firefox button you see there on the top left corner is basically
10:45
a menu, well, a list of options. If you're not displaying the menu, then you have that. Because we've been studying very thoroughly with our user experience people, what are the items that are actually used in the browser.
11:04
And we've seen that many of them are not used. And so we've decided to remove them and put them in this Firefox button so that they are not in the way and they save space for the content.
11:23
App tabs is pretty neat. And actually, you know what, I'm going to demo it for you. I don't know where I stand.
11:42
Okay, it looks like the network is pretty limited. Anyway, Twitter is something I use pretty often. So what I'm going to do is right click on it. All right, sorry, that's the French version. Fail.
12:02
I can click there. No, that's okay. Well, this is, in English, you would read pin as app tab. And look at my Twitter tab, it's gonna switch to the left. There you go. And now it's here. But it's a tiny icon,
12:23
doesn't take a lot of space in a tab bar. And if I open new tabs here, you see that my Twitter is still here, you know?
12:41
So it stays there. So you can do that. For example, this is my blog. Maybe it's a place or maybe it's, I don't know, it's Gmail or whatever. You know, your web mail, you want to access it very often and instead of having it lost in a sea of tabs,
13:03
you right click on it and you say pin as app tab and there it goes, it's here. So it takes tiny space and it's very, very efficient to save space for the web apps you use often,
13:23
as opposed to random tabs. What else did I want to show?
13:42
Yes. Another one is Panorama. Panorama is a way to manage your tabs. So if you have, and I wish I could show it to you but because I don't have a good internet connection, it's not gonna be very interesting. But basically, Panorama is a button
14:01
that you click on a top right corner of user interface and it enables you to put together groups of tabs. So in this case, I was writing an article about Marshall McLuhan, a famous Canadian
14:22
on communication theory. And so I've put all my tabs about him together in a group and all my work tabs on the left and I can switch from one group to the other. So it makes organizing my tabs much easier. And also because it's visual and it's 2D,
14:41
I have the notion of where I can find easily my tabs instead of having them listed on a tab bar. So it's pretty powerful and very useful. Something else we've been working on during the Firefox 4 cycle is performance.
15:06
And performance, believe it or not, is actually extremely complex as a topic, including very different topics like startup time. We've made a lot of effort in streamlining
15:23
the startup time, reducing the startup time so that the startup process is much faster. It doesn't matter much to advanced users because Firefox is always launched like 24-7 for them, but for less advanced users
15:41
that tend to watch one page and then close the program and go back to email and then relaunching Firefox like an hour later or so, this is important to them. So we've been working on this startup time quite a bit.
16:00
The JavaScript engine, we have a new generation of a JavaScript engine which is called Jaeger Monkey. I'll detail more about the performance. We've been working on a very difficult topic which is called hardware acceleration. So I mention here that your mileage may vary
16:23
because hardware acceleration basically is using your GPU, basically your graphical processor on your graphics card, leveraging it so that it helps the browser do complex computation about page layouts,
16:43
displaying text on the screen or 3D or decoding videos and stuff like that. The GPU is an unused part of your computer that is extremely powerful.
17:02
On the other hand, it is very complex and between Firefox and the GPU stands a very complex bit of software which is the device driver. So, well, hardware acceleration works pretty well
17:22
in Windows and more precisely in recent version of Windows. It's not easy to make it work on a Mac and it's even harder on Linux because there is such a difference of quality
17:41
between certain drivers and other drivers on Linux, graphical drivers. I won't get into the mess of the Nvidia proprietary drivers versus open drivers and stuff like that, but basically we're dragged into this
18:01
and it's complicated. So in some cases, if you're lucky enough, if your drivers are high quality, then we can leverage them and you will see a boost in terms of performance. But if we are not sure that the drivers are bug-free enough,
18:22
then we disable hardware acceleration on Linux and then you'll see a good Firefox 4, but not blazingly fast on the pieces of rendering that are impacted by hardware acceleration. So it's a very complicated topic.
18:42
Just for the record, Microsoft is using hardware acceleration. We've been fighting on who had the first product to do that. I claim that Mozilla produced prototypes of Firefox builds earlier than Microsoft.
19:03
We tried to do that on all platforms and Microsoft said, yeah, we can do that only on Vista and 7, but XP, yeah, it's last battle. Actually, if I'm right, we're able to do hardware acceleration also on XP. It's just they don't try hard enough.
19:22
Well, of course, the bottom line at Microsoft is about selling more versions of Vista, mostly 7. So yeah, they don't care much about XP. Tons of optimizations have been going on in terms of performance.
19:41
I won't get into details, but we call them compartments, retain layers, and many others. Basically, it's aggressive caching and better management of the code base. And one final thing is streamlining the experience. And this is kind of a tricky thing,
20:02
but I'll save it for later. Let's start about the JavaScript Yagamonkey engine. So these are graphs. These are benchmarks. This is the benchmark called v8bench, produced by Google.
20:23
So in red here, this is Safari. So basically, we take the Safari JavaScript engine called Nitro, and we run the test regularly.
20:40
We take their nightly builds, isolate their JavaScript engine, and run test. We run the benchmark. And it gives this line. We do the same with the Google v8 JavaScript engine,
21:00
which is getting slightly better sometimes, or worse. And we do that with a Firefox Yagamonkey JavaScript engine. As we can see, we make a lot of progress. Mid-September, we went, the smaller is better, right?
21:25
Lower is better. So we've been beating regularly Safari since then, and we're approaching Google's engine on Google's benchmark, which we can assume their benchmark is favorable for their own engine.
21:44
You know, that's how people build benchmarks. And it's last year. No, it's just December and January, and it's even better now. Okay, so we're even better now. This is Yagamonkey, our JavaScript engine,
22:01
now running on SunSpider, which is Apple's benchmark. And so we're better than both Safari and Chrome in terms of JavaScript on Apple's, benchmark, and we also have our own benchmark where we beat everyone, of course,
22:20
because it's our benchmark. And we pretend, and I think we are, right, but yeah, who knows, that our benchmark is better than their benchmark, but right, I won't get into that. So, well, just to, so JavaScript,
22:43
we're, as you can see, we've made huge progress in terms of JavaScript over time. So we're highly competitive, even better than others. We're very close. So we've closed the gap with regards
23:02
to JavaScript execution. It's, a JavaScript execution is not, it's just part of the performance issue. But if you have very complex applications, it makes a difference.
23:20
We've made already very significant progress between Firefox 3.5 and 3.6, was it? You remember, Anthony? Then with a better JavaScript engine, and it made a big difference for users that were running Gmail.
23:42
Like basically, when you click on the link, it changes immediately, as opposed to having to wait like half a second, and half a second for the human being, you feel like you're waiting. But if it's like under a tenth of a second
24:01
for the software to react, then you have the impression it's instantaneous. And so we went under that tenth of a second threshold, and it really made a difference for using Gmail. Now in a very, very different topic,
24:22
I'm going to talk about performance, but mostly the impression of performance. Because, let me go back there. When we go from here to there, frankly, users don't see a difference. We've been working really hard to go from here to there,
24:42
really hard, and it's paying off. But people, they see nothing. Just it was fast before, and it's even faster after, but so little, and it was so fast before, they just cannot notice it.
25:03
On the other hand, in the user interface, there are things, when you start making things differently, people see a lot of change, but actually product is not faster, but it gives the impression to be faster.
25:20
Now I've listed a few example. Let's start for this last one. You add a new add-on in Firefox, and instead of saying you have to restart Firefox, it says that's okay, you can use the add-on now. So you've saved time by not exiting Firefox
25:40
and reentering Firefox, you can use it now. So it means a lot of work behind the scenes, but it really changes the way you use Firefox, install and de-install an add-on. Reloading old tabs, you have the choice of reloading or not, the old tabs,
26:00
and if you reload them, we're basically loading a couple of them that are visible, and all the others, they are ready, but when you hit the tab button, then they start reloading. That means that when you restart Firefox for some reason, it restarts very, very quickly.
26:20
And also, when you start it, that's number one item, it is not saying, okay, hold on, I gotta make sure that you have the latest add-ons for this version. So you do not see a pop-up that says, hold on, I'm gonna check the add-ons.
26:41
What we've done is we've checked the add-ons in the background during your last session, and if new add-ons are ready, then we install them then at startup, which is unnoticeable, and then you go. So it's changing the product so that you don't have out-of-boxes, dial-up boxes,
27:01
and things that make you feel like it's painful to use it, or it's not responding the way you want. And it's giving you the impression that it's actually much faster. It's actually really more pleasant to use than actually faster.
27:21
On a very different topic, something we've done is raising the bar on privacy. We're very happy at Mozilla to see that privacy is actually becoming a topic of interest with the European Commission,
27:44
with the government of the United States, and also browser vendor that start to feel the heat, because they are concerned, there will be regulation from authorities. So this, we've been fighting for privacy for a while.
28:03
There are extensions such as Tacko and better privacy that have been available for a few years already that basically puts cookies in Firefox,
28:21
and these cookies that are set by advertising networks, when an advertising network sees that cookie on your computer, then they are not gonna track you. That's their promise. Whether people obey their promises is a different story,
28:43
and I won't get into that, but because the advertising industry is concerned that they will get regulated, they have put this mechanism into place, and they offer you to put these cookies so you're not tracked. Now, these cookies can actually disappear,
29:04
and so these extensions make sure these cookies stay in place. So even if they're removed, they're put back into place, and these cookies says, no, I don't wanna be tracked. For each and every advertising network, and I think there are like 74 of these advertising networks that have that.
29:21
Other extensions such as Adblock Plus and NoScript for the advanced users are also available for seeing no advertising, no scripting. Personally, I tend to also use a Flash block, that blocks Flash, which I highly recommend.
29:42
Although we have to recognize that these two plus Flash block are really extensions that are for the advanced user, because, well, sometimes the website you're visiting doesn't work exactly like it should be because you're basically, you've removed stuff from it
30:04
through these extensions. So unfortunately, these, I would not recommend them for ordinary users that don't feel like debugging websites that don't work well because of these extensions, although they are very, very efficient.
30:22
We're seeing companies such as Google and Microsoft have recently announced something similar to the extensions that we have for several years. It's good. In the case of Microsoft, they've built this into the product,
30:41
but because their extension mechanism is very crappy, but by default, there is the, there is a kind of a blacklist of ad networks, and these blacklists are empty by default. So yeah, they have a do not track feature
31:01
except that you may not use it, right? Google has announced they are doing something similar there within Chrome, but they're still at level number one. What's new in Firefox 4 is a very simple feature
31:24
called the do not track HTTP header. Actually, I think I'm gonna show it to you. It's not gonna work. It's not in beta 10?
31:40
Oh, it's, okay, right. So I'm not gonna show it to you because that would mean I need to run another version of Firefox, which is a nightly build, but I've seen it on my other machine. That's why I thought I would show it to you. It is in Firefox, though it's gonna be in the next beta,
32:00
not in the one that was just released. In one final thing we're doing on Firefox, on the privacy front, is it's a service called Firefox Sync.
32:23
Who has heard what Firefox Sync is? Raise your hand, please. All right, I still have to explain it. Sorry for bothering me with that. 15 minutes left. I need to hurry up, because... Basically, it's a service that backs up
32:43
all your browser history on the server and your bookmarks and your passwords. Now, these are highly sensitive informations. So the way we do it at Mozilla is everything is encrypted by Firefox
33:03
on the client side with a key that only you have and it's sent on the Mozilla server. Means that Mozilla cannot decrypt it and read it and understand what is your history
33:22
and what are your passwords. Other browser vendors offer similar services, although they do not offer encryption, because for them, tracking where you've been is highly valuable. Data mining, like Eben Moglen explained this morning, is highly valuable for the bottom line
33:41
of these organizations. But for us, being a non-profit organization, caring about you, we do encryption on the client side and what we see in our servers is only encrypted and unusual data that we cannot data mine. That's one thing. And the second thing is that our server is open source.
34:02
It's free software. You can download the source code for it and run it on your own server. So we're also addressing the issue of centralization. You can run your own server off sync. And so even if you know it's encrypted,
34:21
even if we're good people, you may not trust us and you may wanna run this on your own server and then we'll be fine. And we're totally okay with that. We still need to run a centralized service because it's more simple for users. And finally, Firefox 4 for mobile. Firefox sync is very useful
34:41
in order to synchronize your history so you can reuse it on your smartphone. Just typing a few letters on this because the keyboard is crappy, you will be able to revisit tabs that are open somewhere on your other computer. Firefox 4 on mobile is gonna be released soon.
35:01
It will be running on Mame Omegle and on Android. I'm running Android. Yes. I have a small question. How much RAM is required for that? How much RAM is required? I don't have the specs on top of my head but I run it on a pretty good Android 2.2 phone.
35:22
It works well. But this is a good machine. So 760, yeah. May. How many is your Android 2.8? Yes. And what's important, it's the same engine as Firefox 4 so if you can run it on Firefox 4 desktop,
35:43
you can run your application on these things. Switching over.
36:02
He wants the microphone. What else?
36:24
Hey, is it okay? I have to say about Firefox sync, when I joined Mozilla, I was still running Safari. Yeah, I did it for three weeks because I have an iPhone and I switched
36:41
when I discovered Firefox home, which is just a sync client for the iPhone and when I'm in the subway or in a car, I can check my bookmarks. I can check all pages and that's when I switch back to Firefox. So really cool.
37:03
Okay, so I'm gonna talk about web features available in Firefox 4, but most importantly in other browsers and in their latest versions.
37:24
So I guess you've seen the HTML5 logo that the W3C is promoting. So HTML5, it's an umbrella word to put everything that's web inside it
37:40
and so I'm not gonna go into all the details because I don't have the time. Thank you, Twistan. But it's about new web features and new design features and having powerful JavaScript engines in the browser,
38:00
having SVG as a first class technology. So SVG is about scalable graphics, so highly important and mobile. It's about having access to the desktop,
38:24
having access to a webpage when it's offline and so there's really a lot of technology in there. So this little demo, I'm not sure you can see exactly, but there's a gradient, a radial gradient,
38:41
like it's light orange in the center and it's going red over there. So that's done with CSS3, there's no image used. On the bottom, all the images are in fact videos, so I don't know if I do that,
39:03
if you can hear the sound, so it's playing and when I click that, it's opening with a transition, a rotation, it's scaling up and so that's really not, I'm not gonna say easy to do, but that's something that's really easier
39:23
than before to do. Oh, and by the way, I don't know if you've noticed,
39:42
but I'm running it Firefox full screen, so on a Mac it's really new and that's cool. Just, Tristan was talking about Panorama, that's the way you use it. I have all my demos here and, okay, thanks. I have all my demos on the right
40:00
and I have some links on the left for first demo and I can still access the app tab on Twitter or Gmail or whatever. Next one, so let me refresh this, okay.
40:21
So this one is to showcase how we can access we can store data in the browser and we can store code in the browser. So if you're on a mobile, you wanna run an application, if it's native or web, you want access to it
40:43
if you have access to the network or not. So there's a feature in HTML5 where you can store the code inside the browser, so next time you launch it, it's not gonna go on the network. And so you can do a to-do application really quickly
41:04
and access it everywhere. And you can also store data like, so this demo is storing a list of all the cities in the US and the zip code associated to that. And so even if I don't have a good wifi here,
41:23
when I'm gonna search for this one, it should work. And it's not, oh yeah. No, I've been in the holidays there and it's in Florida.
41:41
Okay, let me try another one, yeah. And so as you can see, it listed everything. So you see, Florida, FL. So you can store, there's two kinds of storage,
42:01
really quick one and simple one with a key and values. And you get also in this demo, it's using IndexedDB, a more complex database system where you can do queries and really, really cool on mobile devices. But if you wanna do a web mail,
42:22
I know Gmail is already using some of this stuff to store the emails so that you get a list when you launch it real fast. And okay, this one. Yeah, it's also important to move the browser
42:41
out of the web and access the desktop and some stuff like that. So if I take this picture over here, you see I can drop it, like I don't need to go into a file picker and search for my file. And when I'm gonna drop it,
43:04
with a powerful JavaScript engine, I can go into this image, take the data in it, extract the EXIF data, because that's what you get in two images. And with that, I can see where the picture
43:23
has been taken, what is the camera, what else, the data in time, stuff like that. And so when you're on the web, you can match this with a service called Google Maps.
43:41
And I just dropped it. I never hit enter or I never went to a server. I'm just doing this on my machine, computing the data into the image, and you can see all the EXIF data in there. And especially the GPS latitude.
44:01
And then I'm using it to insert a Google Map on the place where the photo was taken. And I don't have a server, I just have a WiFi connection. So that's really cool. Okay, this one is really cool also.
44:22
The story behind it is very cool. Should have configured the screen before. Anyway, so there's an audio tag into HTML5.
44:41
You just put the file in the markup. You can play it, you get the user interface that you're seeing over there. And it's really easy to insert audio files now. But some people said, it's not enough, we want access to the sound that is playing
45:01
and we want to play with that. So, gonna run it. And you don't need to read the music, that's not the point. What you can see here is the data from the sound that is playing in the background.
45:20
So that's something we couldn't do before. It's not really useful, so this way makes more sense. And you can do a lot of visualizations, but you cannot also modify the sound. If I, I don't know if you ever did, but anyway.
45:44
So you can modify the sound on real time, you can compute for your transformation on top of it. Anything. And you can even do 3D that goes with the sound.
46:05
So the cool thing about that, and I'm gonna switch to another one, because otherwise you're not gonna listen to me. The cool story about that is that the guys, whoops,
46:22
the guys who did that, so the names are on top of it, they said, we want this. The W3C was not gonna spec it, put it into a specification. And so they decided to come to Mozilla and said, okay, we have an idea, we want access to the sound,
46:42
and we're gonna produce the patch and put that into Firefox. And so they did the code to make it available, they did the specification that now is gonna be a standard. Of course there's discussion with other groups, et cetera.
47:00
They did the demo I just showed you, and they also did another one that I'm gonna show you in a minute. And the really cool stuff is that, except for making sure the code is secure and not in performance enough, there was no Mozilla employee involved in the creation of this stuff.
47:22
So that's something you're not gonna find in other open source projects, like the other one in Mountain View. And so this one, oh, you're not gonna see anything. Nice. Yeah?
47:40
That's bad. Do you have control over the... No. The sun. Okay, the sun, yeah, in Belgium. Okay, anyway, I'm gonna run it. Ah, yeah, shit.
48:04
No, but it's not enough. Anyway, so this is using WebGL. So WebGL is like OpenGL accessed on the web. So there's an audio file that's running
48:22
the whole animation you're seeing. It's not a video. It's an animation. It's 3D computed on my laptop in real time. So the way to prove that to you, if the network wants to play with us.
48:40
Okay, okay. So it's gonna go into a CD. And you'll see in real time some Flickr photos with a FOSDEM tag in it. They should appear right now. Yeah, in the background.
49:00
The WiFi is not good enough to download the images on. Sorry. But trust me, it's really computing on the, getting the Flickr photos. And another thing, about four minutes, 30.
49:23
Now the, ah, you can't see it. The buildings over there, they are playing at the same, at the same, with the music. I don't know if you, it's really good on my screen.
49:44
Audio, audio API for visualization of the sound. Yeah, so it's, the buildings are light, lights are moving at the same pace than the music. And you can also insert videos inside this 3D animation.
50:03
So this is a big bug bunny, I think. And so again, this was done by people who like music and wanted better audio access.
50:22
And all this computed with a really cool JavaScript engine, 3D with WebGL and all that stuff. Is it okay on time?
50:45
Sorry, I can't.
51:04
What devices? That's right, yeah. So, I'm not sure what you're asking exactly,
51:25
but HTML5 is at the same time a specification and a bunch of other stuff that. Yes, this was, yeah.
51:47
Chrome has an audio API too.
52:07
There's a device API. There's a lot of work in the W3C and other standards body to get access to audio like I've just shown,
52:23
to get access to the webcam, to get access to the microphone, because that's not part of this. So microphone and webcam, this is part of the device API that's worked in the work group or something like that.
52:40
Well, we should probably take this offline, because we don't have time for many questions. Any other questions? I promise you can grab, answer any other side. Yes? The question is, can we sync with Firefox Sync?
53:09
Can we sync add-ons from one version of Firefox to the other? The answer is not yet right now, although we're considering, we're working on it.
53:21
Now, what's keeping us busy is shipping Firefox 4. So all the energy right now is on Firefox 4, and we'll see, once it's shipped, we'll see what we can do about extensions. And extensions, I think, can already sync their preferences using sync,
53:43
if they choose to do it. So you still have to install the add-on on your new computer, but it will get the preferences of this extension if the extension is compatible with it. If you had to convince somebody who had left Firefox
54:03
to use Chrome or Chromium to come back to Firefox, what would be your short killer argument, if you had one? Beyond the ebon modeling, it's freedom, and you're not evil, even, and that kind of thing. Well, so if I had to... I think both Firefox and Chrome are very good browsers,
54:25
and I should repeat the question. So yes, why should I use Firefox instead of Chrome? That's the question. And the answer is, well, you should use Firefox because it's made by us, we're a non-profit organization,
54:41
and our business is not coming from data mining user data. But what if you're a selfish person and you're a stupid person, you don't care about? Well, you know, I don't know, it's nicer. The logo is nicer. Yeah, okay, if you're an asshole, that's all the answer. Good getting you.
55:01
Thanks. I'm not technical, but I mean... She's blonde. Thanks. Same blonde. I work at Mozilla, but I'm non-technical, and the thing that I like is the lot of work that they've done into the UI, so the features that were showed, like Panorama,
55:20
I actually can visualize my tabs, I have many windows, many tabs open, I know it's clear, I have a clear visualization. I also have an iPhone, I got Firefox Home on it, I got to play with an Android, and when I go back to the US, next week I'm switching to an Android phone, because I was able to play with sync and really get that same experience
55:41
no matter what type of device I use. So there is a lot of different features, it's faster, it's cleaner, and also you can bring it with you no matter what you use. And it's just being able to have your Firefox on the go, it's so important. Like, when I use another computer and it's not my Firefox,
56:01
I'm really lost. I'm used to organize my tabs, everything the way I like it, and you can do it now with Firefox 4 and the other options. Thank you. And let us know if you have any limited sleep, or if you have a heart attack, or if you're using more than a year,
56:24
and if you're using this. So, is there any limitation about hardware acceleration about the brand of the GPU you're using?
56:42
So if someone wants to answer that from Modena. On Linux, it's only with the OPA, so it depends. We're kind of working on this right now. You're asking about Linux, right? The question is exclusively about Linux.
57:02
All right, so then we are, right now, I think we only enabled NVIDIA Preparator Driver, because this is the only one that doesn't crash. But we are, so this is the sad note, right? Like, that's not the story we'd like to hear. But the positive story is that when we started sending
57:21
dumps of the crashes, we started getting responses from the X-Orc community much faster than from the vendors. So basically, ATI did not respond at all, while the open source ATI driver started sending patches like two days later.
57:43
So even if we were starting from a really bad position, we believe that pretty soon we'll be able to enable at least a Radeon driver. Probably, not sure about Novu, what's the full name?
58:00
Novu. They are also working on this, but they have kind of a complex issue that they are trying to resolve. I think the work is progressing, and we'll be enabling things as we go once we see the drivers working. But it'll take some time to upstream to distributions as well, right? So it's not going to happen tomorrow. So that's the status.
58:23
And there's a full test suite coming with a WebGL, so that's gonna improve the whole situation on Linux, not only for Firefox. All right, time is up. Sorry, we couldn't take all the questions. Thank you very much.