SlideShare a Scribd company logo
Of hamsters, feature
creatures and missed
opportunities



 Chris&an
Heilmann,
Fronteers,
Amsterdam,
5th
of
November
2009
(remember,
remember)
Fronteers 2009 Of Hamsters, Feature Creatures and Missed Opportunities
Hamstering.
h@p://www.flickr.com/photos/codepo8/4066032678/
ID
  U P
ST
h@p://www.flickr.com/photos/atalaya/544843059/
How
we
learnt
web
design

is
not
the
right
way.
WaSP Interact




h@p://interact.webstandards.org/
Opera Web Standards
          curriculum




h@p://www.opera.com/company/educa&on/curriculum/
Our
job:
evolving
the
web
Specialists.
Fanboys.




                  *
           *bleep
Good

developers
are

like
librarians.




      h@p://www.flickr.com/photos/feliciaday/3828388329/
Libraries.




             (...)
Write
less,
do
more.
             !=
Write
less,
make
it
hard
to

        maintain.
Beware
the
feature

creature.
The
feature
    Simple

loop

      Complex              Feedback



                Features
Shi[ing
our
point
of
view

to
spot
opportuni&es.
Our
technologies
are
shit

hot.
The
web
is
not
sites.
The
web
is
not
code.
It
is
about
data.




                    h@p://www.flickr.com/photos/22414102@N07/3508671863/
Fronteers 2009 Of Hamsters, Feature Creatures and Missed Opportunities
Fronteers 2009 Of Hamsters, Feature Creatures and Missed Opportunities
Fronteers 2009 Of Hamsters, Feature Creatures and Missed Opportunities
Fronteers 2009 Of Hamsters, Feature Creatures and Missed Opportunities
Building
with
components.




                 http://www.flickr.com/photos/seven13avenue/2080281038/
Fronteers 2009 Of Hamsters, Feature Creatures and Missed Opportunities
CMS
h@p://www.youtube.com/watch?v=_vJlADxbv4U&
Kobayashi
Maru
h@p://developer.yahoo.com/yql
Photos
from
Flickr?

select
*
from
flickr.photos.search

where
text
=
"cat"
Headlines
of
the
New
York
Times?

select
*
from
nyt.ar&cle.search

where
query="spontaneous

combus&on"
Latest
commits
on
a
GitHub
repo?

select
*
from
github.repo.commits

where
id='yql'
and
repo='yql‐tables'
Latest
headlines
of
the
Volkskrant?

select
&tle
from
html
where

url="h@p://www.volkskrant.nl/"

and
xpath="//h2[@&tle]"
Latest
English
headlines
of
the

Volkskrant?
select
*
from
google.translate

where
q
in
(select
&tle
from
html

where
url="h@p://
www.volkskrant.nl/"
and
xpath="//
h2[@&tle]")
and
target='en'
Upda&ng
Twi@er?

use
'h@p://www.yqlblog.net/samples/twi@er.status.xml';
insert
into
twi@er.status

(status,username,password)
values
(


"In
your
fronteers,
blowing
ur
mindz",












"codepo8",


"didyoureallythinkIshowit?"
)
Upda&ng
Wordpress?

insert
into
wordpress.post

(&tle,
descrip&on,
blogurl,
username,

password)

values

("Test
Title",
"This
is
a
test
body",

"h@p://ajaxian.com",
"cheilmann",

"iedoesitright")
Upda&ng
the
internet?

delete
from
internet
where

user_agent="MSIE"
and
version
<
8;
                                       soz.
                                 t   ,

                            t
 ye
                         N o
Search
one
term
in
Google,
Bing
and

 Yahoo?
select
*
from
query.mul&
where
queries='
select
*
from
microso[.bing
where
query="Jimmy

Hoffa"
and
source
in
("web");
select
*
from
google.search
where
q
=
"Jimmy

Hoffa";
select
*
from
search.web
where
query
=
"Jimmy

Hoffa"
'
1)
Define
your
Query




                    3)
Copy
the
URL.

2)
Select
your
output
Or
the
manly
way...

h@ps://query.yahooapis.com/v1/public/yql?
q={uri‐encoded‐query}&
format={xml|json}&
diagnos&cs={true|false}&
callback={func&on}&
env=store%3A%2F%2Fdatatables.org
%2Falltableswithkeys
You
can
mix
and
match
whatever

you
want.
You
can
sort
and
limit.
You
can
extend
with
your
own
data

tables
by
wri&ng
a
schema
and

pu|ng
it
on
GitHub.
You
can
store
informa&on
on
the

YQL
servers
(the
cloud,
the
cloud)
Where’s
the
catch?
10k
hits
an
hour
(20k
with
oAuth).
100k
hits
a
day.
Data
is
cached
for
15
minutes
(soon

customisable).
Execu&on
limit
on
the
server
is
30

seconds
(for
now).

                                   
a ll!
                              at ’s
                        T h
Let’s
bite
into
an
example.
Find
Amsterdam.

select
*
from
geo.places
where

text="amsterdam"
Define
Amsterdam
and
get
photos

taken
there.
select
*
from
flickr.photos.search

where
woe_id
in
(
select
woeid
from
geo.places
where

text="amsterdam"
)
Get
all
the
informa&on
about
these

photos.
select
*
from
flickr.photos.infor

where
photo_id
in
(select
id
from

flickr.photos.search
where
woe_id

in
(select
woeid
from
geo.places

where
text="amsterdam"))
Get
only
what
we
need.

select
farm,
id,
secret,
owner.realname,
server,

&tle,urls.url.content
from
flickr.photos.info

where
photo_id
from
flickr.photos.infor
where

photo_id
in
(select
id
from
flickr.photos.search

where
woe_id
in
(select
woeid
from
geo.places

where
text="amsterdam"))
Select
format
JSON,
define
a

callback
and
copy
and
paste
the

URL.
h@ps://query.yahooapis.com/v1/yql?q=select%20*
%20from%20flickr.photos.info%20where%20photo_id
%20in%20(select%20id%20from%20flickr.photos.search
%20where%20woe_id%20in%20(select%20woeid
%20from%20geo.places%20where%20text%3D
%22amsterdam
%22))&format=json&diagnos&cs=false&env=store%3A
%2F%2Fdatatables.org
%2Falltableswithkeys&callback=flickr
Copy
into
a
script
src
and
write
a

few
lines
of
Dom
Scrip&ng.
PROFIT!
                                    Too
lazy
to
change
the
demo,
meh.




 h@p://isithackday.com/hacks/ajaxexperience/flickrgeophotos.html
Also:
FAIL.

Do
not
trust
JavaScript
to
be

available!
So
move
your
JavaScript
server
side!

YQL
open
tables
can
have

embedded
JS
that
runs
on
the
YQL

server
(with
Rhino)
and
supports

XML
na&vely
with
E4X.
Fronteers 2009 Of Hamsters, Feature Creatures and Missed Opportunities
Flickr
photos
as
ULs
now:

use
"h@p://github.com/codepo8/
yql‐tables/raw/master/flickr/
flickr.photolist.xml"
as
flickr;
select
*
from
flickr
where
text="me"

and
loca&on="uk"
and
amount=20
Display
with
JavaScript:
Display
with
PHP:
Join
us!






h@p://github.com/yql/yql‐tables
RTFM









h@p://developer.yahoo.com/yql/
Spend
your
&me
on
making
the
web

fun
for
humans,
not
pleasing

machines.
If
you
are
clever,
you
are
allowed
to

be
lazy.
Replacing
the
web
would
be
tough,

so
use
it
well.

Chris&an
Heilmann

h@p://wait‐&ll‐i.com
        Bedankt!

h@p://developer‐evangelism.com

h@p://twi@er.com/codepo8




More Related Content

PDF
Finding harmony in web development
Christian Heilmann
 
PDF
Hungarian Web Conference: HTML5 beyond the hype - let's make it work!
Christian Heilmann
 
PDF
Are Today’s Good Practices… Tomorrow’s Performance Anti-Patterns?
Andy Davies
 
PDF
Semantic Web For Distributed Social Networks
David Peterson
 
PDF
Stefan Judis "Did we(b development) lose the right direction?"
Fwdays
 
PDF
Resisting The Feature Creature
Christian Heilmann
 
PDF
Mobile Web Performance - Getting and Staying Fast
Andy Davies
 
PDF
Responsive Design is Hard/Easy! Be Afraid/Don't Worry!
Dan Mall
 
Finding harmony in web development
Christian Heilmann
 
Hungarian Web Conference: HTML5 beyond the hype - let's make it work!
Christian Heilmann
 
Are Today’s Good Practices… Tomorrow’s Performance Anti-Patterns?
Andy Davies
 
Semantic Web For Distributed Social Networks
David Peterson
 
Stefan Judis "Did we(b development) lose the right direction?"
Fwdays
 
Resisting The Feature Creature
Christian Heilmann
 
Mobile Web Performance - Getting and Staying Fast
Andy Davies
 
Responsive Design is Hard/Easy! Be Afraid/Don't Worry!
Dan Mall
 

What's hot (19)

PDF
Web Performance Workshop - Velocity London 2013
Andy Davies
 
PDF
Working In The Now - Paris Web
Christian Heilmann
 
PDF
The web is too slow
Andy Davies
 
PDF
Cristiano Rastelli - Atomic Design, Design Systems and React. Cool, but... - ...
Codemotion
 
PDF
So…What Do I Make? (Dan Mall)
Future Insights
 
PDF
Making Mobile Sites Faster
Andy Davies
 
PDF
Sourcing hacks to keep you ahead of the competition
RecruitingDaily.com LLC
 
PPT
The Need For Speed
Andy Davies
 
PDF
Making Mobile Sites Faster
Andy Davies
 
PDF
Are Today’s Good Practices... Tomorrow’s Performance Anti-Patterns?
Andy Davies
 
KEY
Sniffing the Mobile Context
Andy Davies
 
PDF
Hacking For Innovation Delhi
Christian Heilmann
 
KEY
Speed is Essential for a Great Web Experience
Andy Davies
 
PDF
Are Today's Good Practices… Tomorrow's Performance Anti-Patterns
Andy Davies
 
PDF
The Case for HTTP/2 - Internetdagarna 2015 - Stockholm
Andy Davies
 
PDF
How to plan for content during website redesigns
David Hobbs Consulting
 
PDF
Web Performance & You
Dave Olsen
 
PDF
Speed is Essential for a Great Web Experience
Andy Davies
 
PDF
All the small things… - Awwwards 2016
Christian Heilmann
 
Web Performance Workshop - Velocity London 2013
Andy Davies
 
Working In The Now - Paris Web
Christian Heilmann
 
The web is too slow
Andy Davies
 
Cristiano Rastelli - Atomic Design, Design Systems and React. Cool, but... - ...
Codemotion
 
So…What Do I Make? (Dan Mall)
Future Insights
 
Making Mobile Sites Faster
Andy Davies
 
Sourcing hacks to keep you ahead of the competition
RecruitingDaily.com LLC
 
The Need For Speed
Andy Davies
 
Making Mobile Sites Faster
Andy Davies
 
Are Today’s Good Practices... Tomorrow’s Performance Anti-Patterns?
Andy Davies
 
Sniffing the Mobile Context
Andy Davies
 
Hacking For Innovation Delhi
Christian Heilmann
 
Speed is Essential for a Great Web Experience
Andy Davies
 
Are Today's Good Practices… Tomorrow's Performance Anti-Patterns
Andy Davies
 
The Case for HTTP/2 - Internetdagarna 2015 - Stockholm
Andy Davies
 
How to plan for content during website redesigns
David Hobbs Consulting
 
Web Performance & You
Dave Olsen
 
Speed is Essential for a Great Web Experience
Andy Davies
 
All the small things… - Awwwards 2016
Christian Heilmann
 
Ad

Similar to Fronteers 2009 Of Hamsters, Feature Creatures and Missed Opportunities (20)

PDF
Find,Mix And Show
Christian Heilmann
 
KEY
YQL:: Select * from Internet
drgath
 
PPTX
Experiments in Data Portability 2
Glenn Jones
 
KEY
YQL: Select * from Internet
drgath
 
PPTX
WAPWG Clark defining capturing_web-based_if
Sara Day Thomson
 
PPT
SearchMonkey
Paul Tarjan
 
PDF
Yahoo is open to developers
Christian Heilmann
 
PDF
2012 03 27_philly_jug_rewrite_static
Lincoln III
 
PDF
Advanced Web Scraping or How To Make Internet Your Database #seoplus2018
Esteve Castells
 
PDF
Does my DIV look big in this?
glen_a_smith
 
PPTX
Web Scraping With Python
Robert Dempsey
 
ODP
Scout xss csrf_security_presentation_chicago
knaddison
 
PDF
Open Hack London - Introduction to YQL
Christian Heilmann
 
PDF
Georgia Tech Hack Day
Christian Heilmann
 
PDF
OpenFest 2012 : Leveraging the public internet
tkisason
 
KEY
Semantic Web: A web that is not the Web
Bruce Esrig
 
PDF
Introduction to python
Rajesh Rajamani
 
PPTX
Making sense out of things on the web
Pradeep Varadaraja Banavara
 
PDF
Skillshare - Introduction to Data Scraping
School of Data
 
PPTX
HTML5: New Possibilities for Publishing
iFactory
 
Find,Mix And Show
Christian Heilmann
 
YQL:: Select * from Internet
drgath
 
Experiments in Data Portability 2
Glenn Jones
 
YQL: Select * from Internet
drgath
 
WAPWG Clark defining capturing_web-based_if
Sara Day Thomson
 
SearchMonkey
Paul Tarjan
 
Yahoo is open to developers
Christian Heilmann
 
2012 03 27_philly_jug_rewrite_static
Lincoln III
 
Advanced Web Scraping or How To Make Internet Your Database #seoplus2018
Esteve Castells
 
Does my DIV look big in this?
glen_a_smith
 
Web Scraping With Python
Robert Dempsey
 
Scout xss csrf_security_presentation_chicago
knaddison
 
Open Hack London - Introduction to YQL
Christian Heilmann
 
Georgia Tech Hack Day
Christian Heilmann
 
OpenFest 2012 : Leveraging the public internet
tkisason
 
Semantic Web: A web that is not the Web
Bruce Esrig
 
Introduction to python
Rajesh Rajamani
 
Making sense out of things on the web
Pradeep Varadaraja Banavara
 
Skillshare - Introduction to Data Scraping
School of Data
 
HTML5: New Possibilities for Publishing
iFactory
 
Ad

More from Christian Heilmann (20)

PPTX
Develop, Debug, Learn? - Dotjs2019
Christian Heilmann
 
PDF
Hinting at a better web
Christian Heilmann
 
PDF
Taking the "vile" out of privilege
Christian Heilmann
 
PDF
Seven ways to be a happier JavaScript developer - NDC Oslo
Christian Heilmann
 
PDF
Artificial intelligence for humans… #AIDC2018 keynote
Christian Heilmann
 
PDF
Killing the golden calf of coding - We are Developers keynote
Christian Heilmann
 
PDF
Progressive Web Apps - Techdays Finland
Christian Heilmann
 
PDF
Taking the "vile" out of privilege
Christian Heilmann
 
PDF
Five ways to be a happier JavaScript developer
Christian Heilmann
 
PDF
Taking the P out of PWA
Christian Heilmann
 
PDF
Sacrificing the golden calf of "coding"
Christian Heilmann
 
PDF
You learned JavaScript - now what?
Christian Heilmann
 
PDF
Sacrificing the golden calf of "coding"
Christian Heilmann
 
PDF
Progressive Web Apps - Covering the best of both worlds - DevReach
Christian Heilmann
 
PDF
Progressive Web Apps - Covering the best of both worlds
Christian Heilmann
 
PPTX
Non-trivial pursuits: Learning machines and forgetful humans
Christian Heilmann
 
PDF
Progressive Web Apps - Bringing the web front and center
Christian Heilmann
 
PDF
CSS vs. JavaScript - Trust vs. Control
Christian Heilmann
 
PDF
Leveling up your JavaScipt - DrupalJam 2017
Christian Heilmann
 
PDF
The Soul in The Machine - Developing for Humans (FrankenJS edition)
Christian Heilmann
 
Develop, Debug, Learn? - Dotjs2019
Christian Heilmann
 
Hinting at a better web
Christian Heilmann
 
Taking the "vile" out of privilege
Christian Heilmann
 
Seven ways to be a happier JavaScript developer - NDC Oslo
Christian Heilmann
 
Artificial intelligence for humans… #AIDC2018 keynote
Christian Heilmann
 
Killing the golden calf of coding - We are Developers keynote
Christian Heilmann
 
Progressive Web Apps - Techdays Finland
Christian Heilmann
 
Taking the "vile" out of privilege
Christian Heilmann
 
Five ways to be a happier JavaScript developer
Christian Heilmann
 
Taking the P out of PWA
Christian Heilmann
 
Sacrificing the golden calf of "coding"
Christian Heilmann
 
You learned JavaScript - now what?
Christian Heilmann
 
Sacrificing the golden calf of "coding"
Christian Heilmann
 
Progressive Web Apps - Covering the best of both worlds - DevReach
Christian Heilmann
 
Progressive Web Apps - Covering the best of both worlds
Christian Heilmann
 
Non-trivial pursuits: Learning machines and forgetful humans
Christian Heilmann
 
Progressive Web Apps - Bringing the web front and center
Christian Heilmann
 
CSS vs. JavaScript - Trust vs. Control
Christian Heilmann
 
Leveling up your JavaScipt - DrupalJam 2017
Christian Heilmann
 
The Soul in The Machine - Developing for Humans (FrankenJS edition)
Christian Heilmann
 

Recently uploaded (20)

PPTX
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
PDF
How Onsite IT Support Drives Business Efficiency, Security, and Growth.pdf
Captain IT
 
PPTX
How to Build a Scalable Micro-Investing Platform in 2025 - A Founder’s Guide ...
Third Rock Techkno
 
PDF
How-Cloud-Computing-Impacts-Businesses-in-2025-and-Beyond.pdf
Artjoker Software Development Company
 
PDF
BLW VOCATIONAL TRAINING SUMMER INTERNSHIP REPORT
codernjn73
 
PDF
This slide provides an overview Technology
mineshkharadi333
 
PDF
A Day in the Life of Location Data - Turning Where into How.pdf
Precisely
 
PDF
DevOps & Developer Experience Summer BBQ
AUGNYC
 
PDF
Doc9.....................................
SofiaCollazos
 
PDF
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
PDF
NewMind AI Weekly Chronicles - July'25 - Week IV
NewMind AI
 
PDF
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
 
PDF
Accelerating Oracle Database 23ai Troubleshooting with Oracle AHF Fleet Insig...
Sandesh Rao
 
PDF
Building High-Performance Oracle Teams: Strategic Staffing for Database Manag...
SMACT Works
 
PDF
Security features in Dell, HP, and Lenovo PC systems: A research-based compar...
Principled Technologies
 
PDF
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 
PDF
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
PDF
Revolutionize Operations with Intelligent IoT Monitoring and Control
Rejig Digital
 
PDF
madgavkar20181017ppt McKinsey Presentation.pdf
georgschmitzdoerner
 
PDF
Software Development Company | KodekX
KodekX
 
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
How Onsite IT Support Drives Business Efficiency, Security, and Growth.pdf
Captain IT
 
How to Build a Scalable Micro-Investing Platform in 2025 - A Founder’s Guide ...
Third Rock Techkno
 
How-Cloud-Computing-Impacts-Businesses-in-2025-and-Beyond.pdf
Artjoker Software Development Company
 
BLW VOCATIONAL TRAINING SUMMER INTERNSHIP REPORT
codernjn73
 
This slide provides an overview Technology
mineshkharadi333
 
A Day in the Life of Location Data - Turning Where into How.pdf
Precisely
 
DevOps & Developer Experience Summer BBQ
AUGNYC
 
Doc9.....................................
SofiaCollazos
 
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
NewMind AI Weekly Chronicles - July'25 - Week IV
NewMind AI
 
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
 
Accelerating Oracle Database 23ai Troubleshooting with Oracle AHF Fleet Insig...
Sandesh Rao
 
Building High-Performance Oracle Teams: Strategic Staffing for Database Manag...
SMACT Works
 
Security features in Dell, HP, and Lenovo PC systems: A research-based compar...
Principled Technologies
 
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
Revolutionize Operations with Intelligent IoT Monitoring and Control
Rejig Digital
 
madgavkar20181017ppt McKinsey Presentation.pdf
georgschmitzdoerner
 
Software Development Company | KodekX
KodekX
 

Fronteers 2009 Of Hamsters, Feature Creatures and Missed Opportunities