bastelstunde mit dem web und freien-daten-webtechcon2010
DESCRIPTION
TRANSCRIPT
![Page 1: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/1.jpg)
Bastelstunde mit dem Web und freien Daten.
Chris&an HeilmannWebTechCon, Mainz, Oktober 2010
![Page 2: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/2.jpg)
Wer?Wie?Was?
![Page 3: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/3.jpg)
DerDie
Das Web und warum es rockt
Freude am Entdecken
Chris (@codepo8)
![Page 4: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/4.jpg)
Wieso?Weshalb?Warum?
![Page 5: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/5.jpg)
Weil ihr hier seit und ich gern tolle Sachen weitergebe.
![Page 6: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/6.jpg)
Ist die Stimme dann im Eimer, keine Kippen, warme Suppen...
![Page 7: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/7.jpg)
Letzes Jahr war ich tuechtig.
![Page 8: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/8.jpg)
http://keywordfinder.org/
![Page 9: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/9.jpg)
http://isithackday.com/hacks/guardian/
![Page 11: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/11.jpg)
http://isithackday.com/geoplanet-explorer/geodrilldown.php
![Page 12: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/12.jpg)
http://github.com/codepo8/QuickTrans
![Page 13: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/13.jpg)
http://github.com/codepo8/warwickshire
http://isithackday.com/demos/warwickshire/
http://www.youtube.com/watch?v=_uAOyzw50PY
![Page 14: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/14.jpg)
http://github.com/codepo8/flickrcollector
http://isithackday.com/hacks/flickrcollector/
http://www.youtube.com/watch?v=i_1sVnNkN2M
![Page 16: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/16.jpg)
http://icant.co.uk/goohoobi/index.php?research
![Page 17: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/17.jpg)
h<p://uk‐house‐prices.com/
![Page 18: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/18.jpg)
http://winterolympicsmedals.com
![Page 19: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/19.jpg)
Ich liebe es im Web zu arbeiten.
![Page 20: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/20.jpg)
Dinge werden ziemlich einfach wenn man sich etwas vor Augen fuehrt.
![Page 21: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/21.jpg)
Was ist das Web?
![Page 22: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/22.jpg)
Was ist das Web?
Daten + Darstellung
![Page 23: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/23.jpg)
Am Anfang stehen die Daten.
![Page 24: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/24.jpg)
Daten kommen in allen moeglichen Formaten.
![Page 25: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/25.jpg)
Fuers Web machen nicht alle Sinn.
![Page 26: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/26.jpg)
In den letzten Jahren stellten sich ein paar Formate als am Einfachsten fuers Web heraus...
![Page 27: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/27.jpg)
RESTJSONJSON-PXML (wenns denn sein muss)
![Page 28: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/28.jpg)
REST bedeutet im Grunde das die URL die Daten beschreibt die man haben moechte.
![Page 29: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/29.jpg)
http://www.delicious.com/
![Page 30: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/30.jpg)
http://www.delicious.com/codepo8/
![Page 31: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/31.jpg)
http://www.delicious.com/codepo8/javascript
![Page 32: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/32.jpg)
http://www.delicious.com/codepo8/javascript+ajax
![Page 33: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/33.jpg)
Das gilt auch fuer Web Services und andere Formate.
![Page 34: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/34.jpg)
Wasn JSON?
![Page 35: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/35.jpg)
JSON ist die JavaScript Object Notation.
![Page 36: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/36.jpg)
Wollen wir zum Beispiel einen genialen Film definieren, kann man das mit XML machen.
![Page 37: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/37.jpg)
![Page 38: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/38.jpg)
![Page 39: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/39.jpg)
XML
![Page 40: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/40.jpg)
XML
![Page 41: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/41.jpg)
XML JSON
![Page 42: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/42.jpg)
![Page 43: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/43.jpg)
![Page 44: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/44.jpg)
JSON hat ein paar Fehler, aber kann mehr fuers Web.
![Page 45: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/45.jpg)
JSON ist kuerzer, mit weniger Wiederholungen und vor allem isses auch gleich JavaScript!
![Page 46: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/46.jpg)
JSON-P ist das gleiche, nur ist da noch ein Funktionsaufruf drumrum.
![Page 47: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/47.jpg)
Daher kann man JSON-P gleich in JavaScript in <script> verwenden!
![Page 48: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/48.jpg)
http://feeds.delicious.com/v2/json/popular/javascript?callback=legga
![Page 49: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/49.jpg)
![Page 50: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/50.jpg)
Also, alles ziemlich einfach!
![Page 51: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/51.jpg)
![Page 52: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/52.jpg)
Nur verwendet man das halt nicht so oft.
![Page 53: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/53.jpg)
Das Problem mit APIs ist das man sich ne Menge merken muss.
![Page 54: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/54.jpg)
Ausserdem muss man sich auch noch ueberall einschreiben.
![Page 55: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/55.jpg)
Daher benutze ich YQL.
![Page 56: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/56.jpg)
![Page 57: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/57.jpg)
select {was} von {wo} where {wie}
![Page 58: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/58.jpg)
http://query.yahooapis.com/v1/public/yql?q=
select%20was%20von%20wo%20where%20wie
&format=json&diagnostics=true&callback=gibsmir
![Page 59: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/59.jpg)
Anstatt eines Services gibt es nun alle!
![Page 60: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/60.jpg)
Einfachste Anwendung: Scraping.
http://www.flickr.com/photos/fdtate/4426760544/
![Page 61: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/61.jpg)
Scraping ist problematisch - HTML runterzuholen ist einfach, doch die Daten drin zu finden ist schwierig.
![Page 62: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/62.jpg)
HTML scraping mit YQL macht es einfach, seine eigenen und die Daten anderer zu verwenden.
![Page 63: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/63.jpg)
SEITENSEITEN
![Page 64: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/64.jpg)
Mit YQL werden die Seiten durch Tidy gejagt und sind per XPath zu erreichen.
![Page 65: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/65.jpg)
Das kann man verwenden um interessante Sachen zu machen...
![Page 66: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/66.jpg)
Also...
![Page 67: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/67.jpg)
http://www.slideshare.net/cheilmann/reasons-to-be-cheerful-fronteers-2010
![Page 68: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/68.jpg)
![Page 69: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/69.jpg)
select * from html where
url="http://www.slideshare.net/cheilmann/reasons-to-be-cheerful-fronteers-2010"
and
xpath="//ol/li/p[contains(.,'http')]"
![Page 71: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/71.jpg)
Oder noch lustigere Sachen...
![Page 72: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/72.jpg)
http://lanyrd.com/people/codepo8/
![Page 73: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/73.jpg)
![Page 74: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/74.jpg)
![Page 75: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/75.jpg)
$.ajax({ url: url, dataType: 'jsonp', jsonp: 'callback', jsonpCallback: 'gibsmir'});function gibsmir(daten){}
JSON-P in jQuery:
![Page 76: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/76.jpg)
$.getJSON(url+'&callback=?', function(data){});
JSON-P in jQuery (kuerzer):
![Page 77: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/77.jpg)
http://{...}&format=json&callback=datain
$.ajax():
$.getJSON():http://{...}&format=json&callback=jsonp1282497813335
Zufallszahl
![Page 78: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/78.jpg)
getJSON() macht dem Cache des Webservices Aua...
![Page 79: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/79.jpg)
...da jede Anfrage eine individuelle URL ist, obwohl man die gleichen Daten haben will...
![Page 80: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/80.jpg)
... und da kann es dann schnell passieren, das man rausgeschmissen wird.
![Page 81: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/81.jpg)
Lokales caching bedeutet das der Webservice nicht meckert.
![Page 82: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/82.jpg)
Aufm Server ist das einfach, daher sag ich dazu nix.
![Page 83: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/83.jpg)
Aufm Client sieht das anders aus, da Cookies einfach schlecht sind.
![Page 84: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/84.jpg)
Aber da gibbet jetzt was Neues...
![Page 85: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/85.jpg)
localStorage
HTML5
![Page 86: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/86.jpg)
Anstatt Kekse auf dem Server zu stellen die nur 4k sein koennen und den HTTP Verkehr verstopfen...
![Page 87: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/87.jpg)
Haben wir nun mehrere MB um Daten als key/value store abzulegen!
![Page 88: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/88.jpg)
Die Daten sind per Domain abgelegt.
![Page 89: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/89.jpg)
So tut das:
if(('localStorage' in window) && window['localStorage'] !== null){
localStorage.setItem( 'Kuchen', 'besser als Kekse')
}
![Page 90: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/90.jpg)
So tut das:
if(('localStorage' in window) && window['localStorage'] !== null){
localStorage.getItem( 'Kuchen')// -> 'besser als Kekse'
}
![Page 91: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/91.jpg)
localStorage kann nur Strings, keine Objekte!
![Page 92: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/92.jpg)
Daher, JSON.
![Page 93: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/93.jpg)
if(('localStorage' in window) && window['localStorage'] !== null){
localStorage.setItem( 'Kuchen', JSON.stringify( {lecker:‘stimmt’,kerzen:5} ));
}
![Page 94: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/94.jpg)
if(('localStorage' in window) && window['localStorage'] !== null){
JSON.parse( localStorage.getItem('Kuchen'));// -> Object{...} anstatt [Object object]
}
![Page 95: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/95.jpg)
YQL mit localStorage?
![Page 96: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/96.jpg)
OK, dann machen wir das halt..
![Page 97: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/97.jpg)
yql - die Anfrageid - der Speicherkeycacheage - wie langcallback - deine Funktion
![Page 98: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/98.jpg)
Neue Browser holen die Daten einmal pro Stunde pro User.
![Page 99: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/99.jpg)
Alle anderen machen immer noch YQL Aua, aber funktionieren auch.
![Page 100: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/100.jpg)
Wie gehtn des?
![Page 101: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/101.jpg)
OK, dann machen wir das halt..
![Page 102: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/102.jpg)
OK, dann machen wir das halt..
![Page 103: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/103.jpg)
OK, dann machen wir das halt..
![Page 104: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/104.jpg)
![Page 105: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/105.jpg)
![Page 106: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/106.jpg)
![Page 107: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/107.jpg)
![Page 108: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/108.jpg)
![Page 109: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/109.jpg)
![Page 110: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/110.jpg)
![Page 111: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/111.jpg)
= schnellere Applikation ohne YQL Meckerei.
![Page 112: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/112.jpg)
Das kommt dann bald auf GitHub dann kann man da auch ein jQuery Plugin bauen.
![Page 113: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/113.jpg)
Scraping ist ja nett, aber interessant wird es wenn man APIs verwendet.
![Page 114: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/114.jpg)
http://github.com/codepo8/firehose-research/
![Page 115: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/115.jpg)
http://icant.co.uk/goohoobi/index.php?research
![Page 116: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/116.jpg)
select * from query.multi where queries=' select Title,Description,Url,DisplayUrl from microsoft.bing.web(20) where query="cat"; select title,clickurl,abstract,dispurl from search.web(20) where query="cat"; select titleNoFormatting,url,content,visibleUrl from google.search(20) where q="cat"'
![Page 118: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/118.jpg)
http://winterolympicsmedals.com
![Page 119: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/119.jpg)
http://www.guardian.co.uk/news/datablog/2010/feb/11/winter-olympics-medals-by-country
![Page 120: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/120.jpg)
![Page 121: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/121.jpg)
![Page 122: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/122.jpg)
select * from csv where url="http://spreadsheets.google.com/pub?key=tpWDkIZMZleQaREf493v1Jw&output=csv" and columns="Year,City,Sport,Discipline,Country,Event, Gender,Type" and Year="1924"
![Page 123: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/123.jpg)
Bausteine gibts ueberall.
![Page 124: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/124.jpg)
http://www.yuiblog.com/blog/2010/02/11/video-heilmann-yql/
![Page 125: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/125.jpg)
(...)
![Page 126: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/126.jpg)
http://code.google.com/apis/charttools/
126
![Page 127: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/127.jpg)
![Page 128: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/128.jpg)
http://code.google.com/appengine/
128
![Page 129: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/129.jpg)
http://github.com
129
![Page 130: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/130.jpg)
http://heroku.com/
130
![Page 131: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/131.jpg)
Ihr habt die Daten, ihr habt die Bausteine.
![Page 132: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/132.jpg)
Alles was noch fehlt, sind die Ideen.
![Page 133: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/133.jpg)
Also, schaut euch um anstatt euch zu verstecken
![Page 134: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/134.jpg)
Und wer nicht fragt, bleibt dumm!
![Page 135: Bastelstunde mit dem web und freien-daten-webtechcon2010](https://reader033.vdocuments.site/reader033/viewer/2022042606/5484c975b47959fb0c8b4ce3/html5/thumbnails/135.jpg)
Christian Heilmann http://wait-till-i.com http://developer-evangelism.com http://twitter.com/codepo8
Danke!