The Web Platform Ben Galbraith and Dion Almaer Google Suggest - - PowerPoint PPT Presentation

the web platform
SMART_READER_LITE
LIVE PREVIEW

The Web Platform Ben Galbraith and Dion Almaer Google Suggest - - PowerPoint PPT Presentation

The Web Platform Ben Galbraith and Dion Almaer Google Suggest Google Suggest shift in whats possible and it represents a fundamental Asynchronous JavaScript + XML, Ajax. The name is shorthand for Adaptive Path have been calling to


slide-1
SLIDE 1

The Web Platform

Ben Galbraith and Dion Almaer

slide-2
SLIDE 2
slide-3
SLIDE 3
slide-4
SLIDE 4
slide-5
SLIDE 5
slide-6
SLIDE 6
slide-7
SLIDE 7
slide-8
SLIDE 8

“Google Suggest and Google Maps are two examples of a new approach to web applications that we at Adaptive Path have been calling

  • Ajax. The name is shorthand for

Asynchronous JavaScript + XML, and it represents a fundamental shift in what’s possible

  • n the Web.”

Jesse James Garrett Co-founder, Adaptive Path

“Google Suggest and Google Maps are two examples of a new approach to web applications that we at Adaptive Path have been calling

  • Ajax. The name is shorthand for

Asynchronous JavaScript + XML, and it represents a fundamental shift in what’s possible

  • n the Web.”
slide-9
SLIDE 9

var xhr = new XMLHttpRequest(); xhr.onreadystatechange = function() { if (xhr.readyState == 4) { processChange(); } } xhr.open("GET", "/foo/bar"); xhr.send(null);

slide-10
SLIDE 10
slide-11
SLIDE 11

Canvas

slide-12
SLIDE 12

Text

slide-13
SLIDE 13
slide-14
SLIDE 14

No start-up delay Available on mobile devices today No bridges necessary Not a plug-in Rendering fidelity with browser

(especially important for typography)

slide-15
SLIDE 15
slide-16
SLIDE 16

?

slide-17
SLIDE 17

Fast JavaScript

slide-18
SLIDE 18

Chrome’s V8 Safari’s SquirrelFish Extreme Firefox’s TraceMonkey Opera's Carakan

1 .

Beta Beta

Alpha

slide-19
SLIDE 19

?

Web Workers

slide-20
SLIDE 20
slide-21
SLIDE 21

Jakob Nielsen Noted Usability Expert

“0.1 second is about the limit for having the user feel that the system is reacting instantaneously, meaning that no special feedback is necessary except to display the result. "1.0 second is about the limit for the user's flow of thought to stay uninterrupted, even though the user will notice the delay.

0.1 second 1 second

slide-22
SLIDE 22

Operating System Event Queue

Mouse Moved Mouse Pressed Mouse Released Key Pressed Key Released

“UI Thread”

User Code Painting, etc.

Potential Bottleneck

slide-23
SLIDE 23

“UI Thread”

User Interface

1

Background Thread

2

X

slide-24
SLIDE 24

Operating System Event Queue

Mouse Moved Mouse Pressed Mouse Released Key Pressed Key Released

“UI Thread”

User Code Painting, etc.

Potential Bottleneck

slide-25
SLIDE 25

Operating System Event Queue

Mouse Moved Mouse Pressed Mouse Released Key Pressed Key Released

JavaScript Web Browsing

Potential Bottleneck

Browser

slide-26
SLIDE 26

User Interface

Background Thread

2X

Browser

1

slide-27
SLIDE 27

Brendan Eich Inventor of JavaScript CTO, Mozilla

“Most programmers should run away crying [fom threading]. But they don't... “Instead, as with most other sharp tools, the temptation is to show how big one is by... tempting race- condition fate... Occasionally the results are infamous, but too

  • fen, with only virtual fingers

and limbs lost, no one learns.

Brendan’s Blog

slide-28
SLIDE 28

“Treads violate abstractions six ways to Sunday. “Mainly by creating race conditions, deadlock hazards, and pessimistic locking overhead. “And still they don't scale up to handle the megacore teraflop future.”

Brendan Eich Inventor of JavaScript CTO, Mozilla

Brendan’s Blog

slide-29
SLIDE 29

“Treads suck.”

Brendan Eich Inventor of JavaScript CTO, Mozilla

Brendan’s Blog

slide-30
SLIDE 30

User Interface

Background Thread

2X

Browser

1

XMLHttpRequest

(Ajax)

Web Workers

Desktop Integration

slide-31
SLIDE 31

Macintosh HD

“You just got another email from your wife!”

32

slide-32
SLIDE 32

Fluid Mozilla Prism Adobe AIR Gears Appcelerator Titanium

slide-33
SLIDE 33
slide-34
SLIDE 34

PhoneGap

slide-35
SLIDE 35

The Breakdown of Modern Web Development

slide-36
SLIDE 36

+ =

Canvas Sophisticated Grid-based Layout

slide-37
SLIDE 37

Microsoft Silverlight Adobe Flash Apple Cocoa Sun JavaFX Open Web Platform Ajax

slide-38
SLIDE 38

Documentation Dashboard Home Roadmap

Open Web Platform

slide-39
SLIDE 39
slide-40
SLIDE 40
slide-41
SLIDE 41

The Editor of Our Dreams

Simple to use, like Textmate

An editor, not an IDE

Wicked fast

Performance, performance, performance

Rock-solid real-time collaboration, like SubEthaEdit

It just works

Integrated command-line, like vi

Fun like Quicksilver, social like Ubiquity

Accessible from anywhere

Any device in any location

“Self-hosted” environment, like Emacs

For extreme extensibility, but with JavaScript!

slide-42
SLIDE 42
slide-43
SLIDE 43
slide-44
SLIDE 44
slide-45
SLIDE 45
slide-46
SLIDE 46

Expensive Server-side Code Analysis

Crack the dynamic language nut? Extreme code intelligence

slide-47
SLIDE 47
slide-48
SLIDE 48

Dave Thomas Noted Software Expert, Author, and Publisher

“Programmers, like poets, constantly start with a blank sheet

  • f paper and they construct things

purely out of their imagination. It’s difficult work; if you don’t love your tools, you’re going to start resenting what you’re doing, and that will show in your work.

slide-49
SLIDE 49

“You must love your sofware tools.”

Dave Thomas Noted Software Expert, Author, and Publisher

slide-50
SLIDE 50
slide-51
SLIDE 51
slide-52
SLIDE 52
slide-53
SLIDE 53

Compelling User Experience

slide-54
SLIDE 54
slide-55
SLIDE 55

Expectations Managing

slide-56
SLIDE 56

Top Grossing Film of 1957 Top Grossing Film of 2007

slide-57
SLIDE 57
slide-58
SLIDE 58
slide-59
SLIDE 59
slide-60
SLIDE 60
slide-61
SLIDE 61
slide-62
SLIDE 62

Alan Cooper Noted Usability Expert About Face

“If you ask users how to design their sofware, they will ignore their own goals and describe tasks to you. You must observe users to determine their goals, but don't be fooled by their own ignorance of their objectives.

slide-63
SLIDE 63

Alan Cooper Noted Usability Expert About Face

“Te process of designing for user's goals is one that begins with the sofware designer, not with the

  • user. You must identify the

hygienic goals and the user's personal goals and design an interface that serves them directly, ignoring all other demands.”

slide-64
SLIDE 64

Jef Raskin Noted Usability Expert The Humane Interface

“Before [doing user research], interface designers [should] exploit what is common to all humans with regards to interface design.”

slide-65
SLIDE 65

Jef Raskin Noted Usability Expert The Humane Interface

“Universal psychological facts”

slide-66
SLIDE 66

Sex Sells

slide-67
SLIDE 67
slide-68
SLIDE 68

Case Study:

by Delicious Monster

Delicious Library

slide-69
SLIDE 69
slide-70
SLIDE 70

$500,000 in three months “$54,000 profit. The first day. With no advertising.”

slide-71
SLIDE 71
slide-72
SLIDE 72
slide-73
SLIDE 73
slide-74
SLIDE 74
slide-75
SLIDE 75

Jef Raskin Noted Usability Expert The Humane Interface

“Te quality of any [sofware] is ultimately determined by the quality of the interaction between

  • ne human and one system.”
slide-76
SLIDE 76

Jef Raskin Noted Usability Expert The Humane Interface

“If a system’s one-on-one interaction with its human user is not pleasant and facile, the resulting deficiency will poison the performance of the entire system, however fine that system might be in its other aspects.

slide-77
SLIDE 77

User Interface Visual Design Interaction Design

“ S e d u c t i v e u s e r i n t e r f a c e s ” a r e v a c u

  • u

s d i s t r a c t i

  • n

s ! H C I r e s e a r c h e r s a r e n e r d s ! E m a c s ! v i ! M i c r

  • s
  • f

t R u l e z ! R e a l p r

  • g

r a m m e r s u s e C + +

slide-78
SLIDE 78

Donald Norman Noted Usability Expert Emotional Design

“Atractive things work beter.”

slide-79
SLIDE 79

Donald Norman Noted Usability Expert Emotional Design

“Atractive things make people feel good, which in turn makes them think more creatively. How does that make something easier to use? “Simple, by making it easy for people to find solutions to the problems they encounter.”

slide-80
SLIDE 80

“Dress for Success”

slide-81
SLIDE 81
slide-82
SLIDE 82

Four Points for Creating Compelling Software

1

Get to Know Your Users

3

Both Visual and Interaction Design are Important

2

Practice Goal-Oriented Design

Listen to Users, but Don’t Let Them Design Software

4

Aesthetics Matter

slide-83
SLIDE 83

Open Web

Easy Programming Model Easy Remoting Extensive Customization Vectors Great Widgets Easy Deployment Great Mobile Story Desktop Integration State-of-the-Art Plug-ins Great FX

slide-84
SLIDE 84
slide-85
SLIDE 85