enjoying the full stack - frontend 2010

88
Enjoying the full stack. Chris&an Heilmann Frontend 2010, Oslo, Norway, October 2010 http://www.flickr.com/photos/andrewrennie/4608617962

Upload: christian-heilmann

Post on 06-May-2015

4.546 views

Category:

Education


1 download

DESCRIPTION

The final talk of the Frontend2010 conference in Oslo, Norway talking about the need to make technical advancements interesting for people outside our comfort zone and about the benefits of using all the web technologies at our disposal to built bullet-proof solutions rather than flimsy showcases of what technologies could be used for.

TRANSCRIPT

Page 1: Enjoying the full stack - Frontend 2010

Enjoying the full stack.

Chris&an HeilmannFrontend 2010, Oslo, Norway, October 2010

http://www.flickr.com/photos/andrewrennie/4608617962

Page 2: Enjoying the full stack - Frontend 2010

We now had two days of awesome web technologies.

Page 3: Enjoying the full stack - Frontend 2010

We do live in exciting times!

Page 4: Enjoying the full stack - Frontend 2010

The technologies we’ve been advocating for years are more powerful than ever.

Page 5: Enjoying the full stack - Frontend 2010

CSS = rocking the interface and taking over tasks that only JavaScript could do.

Page 6: Enjoying the full stack - Frontend 2010

HTML = application language with reach into predefined widgets and OS data.

Page 7: Enjoying the full stack - Frontend 2010

JavaScript = the de-facto language for new environments and interfaces.

Page 8: Enjoying the full stack - Frontend 2010

JS + Node.js = kick-ass server side solutions for today’s problems.

Page 9: Enjoying the full stack - Frontend 2010
Page 10: Enjoying the full stack - Frontend 2010

So what keeps us from having a really easy life creating the coolest apps ever?

Page 11: Enjoying the full stack - Frontend 2010

That’s us, my friends.

Page 13: Enjoying the full stack - Frontend 2010

Complex software will always have vulnerabilities and motivated adversaries will always work to discover and take advantage of them.  There is no evidence that upgrading away from the latest fully patched versions of Internet Explorer to other browsers will make users more secure.

Page 14: Enjoying the full stack - Frontend 2010

It is not straightforward for HMG departments to upgrade IE versions on their systems.  Upgrading these systems to IE8 can be a very large operation, taking weeks to test and roll out to all users.

Page 15: Enjoying the full stack - Frontend 2010

To test all the web applications currently used by HMG departments can take months at significant potential cost to the taxpayer. It is therefore more cost effective in many cases to continue to use IE6 and rely on other measures, such as firewalls and malware scanning software, to further protect public sector internet users.

Page 16: Enjoying the full stack - Frontend 2010

Who watches the watchmen?

Page 17: Enjoying the full stack - Frontend 2010

Not us - we are too busy writing effect examples.

Page 18: Enjoying the full stack - Frontend 2010

HTML5 Showcases

Page 19: Enjoying the full stack - Frontend 2010

2000 / Windows

Page 20: Enjoying the full stack - Frontend 2010

1992 / Amiga 500

Page 21: Enjoying the full stack - Frontend 2010

1994 / C64

Page 22: Enjoying the full stack - Frontend 2010

Progress is a debt we all must pay.

Page 23: Enjoying the full stack - Frontend 2010

HTML5 is not about dicking around in a canvas and plotting shiny things.

Page 24: Enjoying the full stack - Frontend 2010

HTML5 is about moving from documents to applications.

Page 25: Enjoying the full stack - Frontend 2010

HTML5 is about moving from hacks to solutions.

Page 26: Enjoying the full stack - Frontend 2010

Real input types, real app state retention, real back button and history support...

Page 27: Enjoying the full stack - Frontend 2010

...real collaboration of apps over a network...

Page 28: Enjoying the full stack - Frontend 2010

...real marking up of what things are.

Page 29: Enjoying the full stack - Frontend 2010

This is all the *really* exciting stuff.

Page 30: Enjoying the full stack - Frontend 2010

Not rotating a video or simulating some Flash effect in Canvas.

Page 31: Enjoying the full stack - Frontend 2010

Innovation should not be at the cost of quality.

Page 32: Enjoying the full stack - Frontend 2010

It's convenience we all cherish.

Page 33: Enjoying the full stack - Frontend 2010

This is a valid HTML5 document:

<!doctype html><html lang=en><meta charset=utf-8><title>blah</title><body><p>I'm the content

Page 34: Enjoying the full stack - Frontend 2010
Page 35: Enjoying the full stack - Frontend 2010

HTML5 + CSS3 should be a reboot of awesome.

Page 36: Enjoying the full stack - Frontend 2010
Page 37: Enjoying the full stack - Frontend 2010

<!doctype html><html lang="en"> <head> <meta charset="utf-8"> <title>blah</title> </head><body> <p>I'm the content</p></body></html>

Page 38: Enjoying the full stack - Frontend 2010

Less code does not mean a better solution...

Page 39: Enjoying the full stack - Frontend 2010

Less redundancy in code is a better solution.

Page 40: Enjoying the full stack - Frontend 2010

I do not want to trust a browser to right the things I did wrong.

Page 41: Enjoying the full stack - Frontend 2010

We’ve done that over and over in the past...

Page 42: Enjoying the full stack - Frontend 2010

...and now we bitch that people do not upgrade...

Page 43: Enjoying the full stack - Frontend 2010

...and their reason is the solutions they bought for a lot of money...

Page 44: Enjoying the full stack - Frontend 2010

...that were built with the same attitude for a “cool and simple” environment at that time.

Page 45: Enjoying the full stack - Frontend 2010

Rotating HTML content?

Page 47: Enjoying the full stack - Frontend 2010

File system access?

Page 49: Enjoying the full stack - Frontend 2010

It's pollution we disdain.

Page 50: Enjoying the full stack - Frontend 2010

Forking and repeating code for different browsers is not fun.

Page 51: Enjoying the full stack - Frontend 2010

CSS2 CSS3

Page 52: Enjoying the full stack - Frontend 2010

box-shadow:10px 10px 7px rgba(0,0,0,.7);-moz-box-shadow:10px 10px 7px rgba(0,0,0,.7);-webkit-box-shadow: 10px 10px 7px rgba(0,0,0,.7);-webkit-transform: scale(1.25);-moz-transform: scale(1.25);-o-transform: scale(1.25);

Page 53: Enjoying the full stack - Frontend 2010

Let’s take a look at the players.

Page 60: Enjoying the full stack - Frontend 2010

Let’s make upgrading a logical step.

IE6

Page 61: Enjoying the full stack - Frontend 2010

WTF

Let’s not concentrate on adding new players and random additions.

Page 62: Enjoying the full stack - Frontend 2010

HTTP + PARSER

Page 63: Enjoying the full stack - Frontend 2010

Making CSS3 easier to apply.

Page 64: Enjoying the full stack - Frontend 2010
Page 65: Enjoying the full stack - Frontend 2010
Page 66: Enjoying the full stack - Frontend 2010

Give browsers what they can do and use what they do better!

Page 67: Enjoying the full stack - Frontend 2010
Page 68: Enjoying the full stack - Frontend 2010

Easing the use of web fonts for better typography.

Page 70: Enjoying the full stack - Frontend 2010

Simply adding a link doesn’t give you feedback though...

Page 71: Enjoying the full stack - Frontend 2010

Using JS to load the fonts on the other hand does.

Page 72: Enjoying the full stack - Frontend 2010

http://code.google.com/apis/webfonts/docs/webfont_loader.html

Classes added to the root element by the Google WebFont loader

.wf-inactive

.wf-active

.wf-tangerine-n4-inactive

.wf-tangerine-n7-active

.wf-droidsans-n4-inactive[...]

n4 - normal i4 - italicn7 - bold i7 - bold italic

Page 73: Enjoying the full stack - Frontend 2010

http://code.google.com/apis/webfonts/docs/webfont_loader.html

<style type="text/css"> .wf-inactive p { font-family: serif; font-size:12px; } .wf-active p { font-family: 'Tangerine', serif; font-size:20px; } .wf-inactive h1 { font-family: serif; font-size: 16px } .wf-active h1 { font-family: 'Cantarell', serif; font-size: 35px }</style>

Page 74: Enjoying the full stack - Frontend 2010

WebFontConfig = { google: { families: [ 'Tangerine', 'Cantarell' ] }, typekit: { id: 'myKitId' }, loading: function() { }, fontloading: function(family, info) {}, fontactive: function(family, info) {}, fontinactive: function(family, info) {}, active: function() {}, inactive: function() {}};

Page 75: Enjoying the full stack - Frontend 2010

Feedback and handles are needed to deliver working solutions.

Page 76: Enjoying the full stack - Frontend 2010

Web development is not about what technology you love.

Page 77: Enjoying the full stack - Frontend 2010

It is about using a full stack of technologies and let each do what it is great at.

Page 78: Enjoying the full stack - Frontend 2010

Each part needing experts and enthusiasts.

Page 79: Enjoying the full stack - Frontend 2010

And all working together on the goal to make our job easier and more professional.

Page 80: Enjoying the full stack - Frontend 2010

We should work for the web and for people - not for browsers.

Page 81: Enjoying the full stack - Frontend 2010
Page 82: Enjoying the full stack - Frontend 2010

Browsers can be handled by a build process.

Page 83: Enjoying the full stack - Frontend 2010

View-source is important but should happen on GitHub, not in the browser.

Page 84: Enjoying the full stack - Frontend 2010

Performance optimisation can be done by machines.

Page 85: Enjoying the full stack - Frontend 2010

Human optimisation can not be done by machines.

Page 86: Enjoying the full stack - Frontend 2010

We have a very cool future ahead.

Page 87: Enjoying the full stack - Frontend 2010

If we build for the humans and use the machines for what they are good at.

Page 88: Enjoying the full stack - Frontend 2010

Christian Heilmann http://wait-till-i.com http://developer-evangelism.com http://twitter.com/codepo8

Thanks!