my dotjs talk

31
The Web: Evolution in Action Brendan Eich, CTO, Mozilla [email protected] @BrendanEich Wednesday, December 4, 13

Upload: brendan-eich

Post on 08-Sep-2014

4.193 views

Category:

Technology


0 download

DESCRIPTION

My closing keynote for dotJS in Paris, 2 December 2013

TRANSCRIPT

Page 1: My dotJS Talk

The Web: Evolution in Action

Brendan Eich, CTO, Mozilla

[email protected]

@BrendanEich

Wednesday, December 4, 13

Page 2: My dotJS Talk

What’s at Stake on the Web

5.6 BILLION

Wednesday, December 4, 13

An estimate of the number of people going online in the next ten years.The Internet next wave looks very different.

Enablers of growth:* widely deployed mobile broadband * people skip the PC experience for smartphones and tablets* inexpensive smartphones – we can lead together* inexpensive cloud-hosted services, processing power and inexpensive storage

Page 3: My dotJS Talk

Online Life Is Pervasive

Wednesday, December 4, 13

But over the next several years, smartphones are just one way people will connect:payments, location, messaging...wearable computing and the Internet of things. all generating information -- more information than we can currently imagine. Digital life is becoming an extension/interwoven of our real lives, not something separate. So everything we do doesn’t just affect what we used to call “online life” on some sort of parallel world. Online life and real life are one and the same.

Page 4: My dotJS Talk

Pervasive = Threats + Hopes

Wednesday, December 4, 13

More data comes with benefit and risks. Managing identity and payments more importantOwnership - who gets to use the data, and how?SurveillanceEstimates are that Google, Amazon, Microsoft and Facebook have stored at least 1,200 petabytes of data on the web

There are amazing benefits. And huge risks.

Page 5: My dotJS Talk

What about User Sovereignty?

Wednesday, December 4, 13

So, some big questions for us as we map out our future:

* What is our role, as citizens, as an industry, and for Mozilla, when everything is connected? How can we enable amazing experiences in a user-centric way?* Where and how do we influence how other companies manage the rules around all the data that is being stored?

These are some of the questions we should all be thinking about.

Page 6: My dotJS Talk

8,154

Wednesday, December 4, 13

The  Web  is  young  in  days  since  TBL  pressed  a  bu5on.Don’t  worry,  the  future  is  bigger  than  the  past.

Page 7: My dotJS Talk

Wednesday, December 4, 13

The  connected  world  is  moving  to  ambient  compu@ng  -­‐  the  Open  Web  is  even  more  importantYou  don’t  want  your  house,  your  car,  your  body  not  interopera@ng,  not  using  open  &  transparent  standards.

Page 8: My dotJS Talk

Wednesday, December 4, 13

So  we  believe  the  web  is  the  widest  plaForm  and  it  will  be  even  more  important.

Page 9: My dotJS Talk

Shape the Web platform by building great products.

Wednesday, December 4, 13

This requires awesome user-first Web-based products.

Page 10: My dotJS Talk

CONTINUE TO IMPROVE WEB PERFORMACE

Wednesday, December 4, 13

Bust silos open

… add transparency, control, privacy by design… enable choice and build trust… build the Internet that people want but that no one else will create… AND do it in a user-centric way

Page 11: My dotJS Talk

CONTINUE TO IMPROVE WEB PERFORMACE

Wednesday, December 4, 13

Empower web users with the know-how they need to “own” their online lives, especially on mobile.

… ensure that we build and get the Internet we want, together.

Page 12: My dotJS Talk

People Deserve a truly open platform

Wednesday, December 4, 13

Think about iTunes vs. Google Play, note how “you can’t take it with you”

Personalization inside a given silo leaves the user out and divides content providers’ efforts across silos.

Developers have to rewrite from one native stack to another to reach users with best effect, so long as silos play games to hold back the Web.

Page 13: My dotJS Talk

Wednesday, December 4, 13

Page 14: My dotJS Talk

(Version-free!)

Wednesday, December 4, 13

Hixie sez!

Standards always make “editions” or _a posteri_ versions. Developers JS object-detect, CSS selector-match, etc.

Page 15: My dotJS Talk

Wednesday, December 4, 13

Page 16: My dotJS Talk

WEB PLATFORM -WHERE WE ARE

Vibration Motor

Hardware Keys

Proximity Sensor

Multitouch

NFC

Bluetooth

Accelerometer

Cameras

USB Access

Speaker

Microphone

Light Sensor

Gyro

Wednesday, December 4, 13

Talk about the progress we’ve made thanks to Firefox OS driving standards for Web APIs into Gecko and other engines.

Page 17: My dotJS Talk

THE WEB PLATFORM -CLOSING THE GAP

Wednesday, December 4, 13

We all, as a part of the mobile industry, can help to close the gap and make the web platform truly competitive - as a platform for innovation and development (compared to native)

We, as Mozilla, don’t want a competitive advantage for us -- rather we want a competitive advantage for the Web.

Page 18: My dotJS Talk

Wednesday, December 4, 13

Talk about many layers affecting performance:* network layer* DOM* layout* graphics, with web developers programming the GPU* JS, which has become crazy fast

Page 19: My dotJS Talk

“IF YOU CAN DODGE A WRENCH...”

Wednesday, December 4, 13

Let’s talk about games.

Games are the wrench, apps in general are the dodgeball.

Games are the acid test that drove iOS to add native apps after the iPhone 1 launched

We have moved the goal posts just this past year.

With more to come soon, but here are some demos...

Page 20: My dotJS Talk

Wednesday, December 4, 13

Latest from Alon Zakai (~2 weeks ago)

Page 21: My dotJS Talk

Wednesday, December 4, 13

Mozilla + Epic Games demo reel

Page 22: My dotJS Talk

TWO SOLVABLE OPEN PROBLEMS

Wednesday, December 4, 13

Big but solvable...

Page 23: My dotJS Talk

1. Pause-Free Garbage Collection

• Today’s JS GCs optimize Throughput over Latency

• Some relevant work from Research Literature:

• Metronome (Bacon, et al.)

• HRTGC (Pizlo, Hosking, Vitek; see next slide)

• Trade utilization for predictability

• Isolation needed to avoid priority inversion

Wednesday, December 4, 13

Filip Pizlo works on JavaScriptCore at Apple

Page 24: My dotJS Talk

Wednesday, December 4, 13

Nice relevant slide from http://www.filpizlo.com/slides/pizlo-lctes2007-hrtgc-slides.pdf

Similarity to OCap membranes used for browser window/frame security is interesting

Page 25: My dotJS Talk

2. Hosting Languages Efficiently

• “Vtables”, connecting guest and host heaps

• Threads, but racy only for C/C++-to-JS code

• SIMD intrinsics

• Mozilla working with Google (Dart) and Intel for ES7

• GPU programming beyond WebGL

• WebCL, but safety is not optional

• Rust on the GPU (Holk, et al. at IU)

Wednesday, December 4, 13

Page 26: My dotJS Talk

Wednesday, December 4, 13

Page 27: My dotJS Talk

Wednesday, December 4, 13

Kidding!

Happens rarely with standards too long in draft status, implemented and shipped and used by developers.

Such draft standards were finalized by reality, standards body should face it and not break compat.

Don’t break the Web.

Page 28: My dotJS Talk

CALL IT EVOLUTION IN ACTION

Wednesday, December 4, 13

In the good way, not the Niven & Pournelle / Darwin Awards sad way!

Page 29: My dotJS Talk

The Big Picture

• On the Web, it’s easier to evolve than replace

• Competition => cooperation + transparency in standards

• Release early and often, in multiple browsers

• Add missing lower-level capabilities

• Extensible Web Manifesto, or github FTW

• http://extensiblewebmanifesto.org/

Wednesday, December 4, 13

Page 30: My dotJS Talk

Thank you!#extendthewebforward

Wednesday, December 4, 13

Page 31: My dotJS Talk

Coda• First they said that JS or the Web stack

couldn’t do “Rich Internet Applications”

• Then they said it couldn’t be fast enough

• Then they said it couldn’t be fixed

• Wrong every time!

• Always bet on {JS, HTML, WebGL, ...}

• Really, always bet on Web Developers

Wednesday, December 4, 13

Ob. closing slide