Yql && Raphaël

Lachlan Hardy
Lachlan HardyDesign Engineer at Atlassian
Something.js
using YQL && Raphaël for
       fun || profit

LACHSTOCK
YQL
YQL is Yahoo! Query Language
Yahoo! calls it:
An expressive SQL-like language that lets you
query, filter, and join data across Web
I call it:
An API for the public internet.
I think my description is a bit more catchy.
SELECT * FROM search.web WHERE
query="javascript"
SELECT what
FROM table
WHERE condition
= =! > < <= >=
IN LIKE
IS NULL IS NOT NULL
AND OR
Join tables with sub-selects using matching
values as a foreign key.
What is a YQL table?
What is a YQL table?




The defaults are mostly data sources for
Yahoo's own data APIs.
What is a YQL table?




HTML JSON XML
RSS ATOM CSV
feeds microformats.
What is a YQL table?




HTML JSON XML
RSS ATOM CSV
feeds microformats.
Tables are defined in XML.
<?xml version="1.0" encoding="UTF-8"?>
<table xmlns="http://query.yahooapis.com/v1/schema/table.xsd">
  <meta>
    <author>Paul Daniel</author>
    <documentationURL>http://apiwiki.twitter.com/REST+API
+Documentation#show</documentationURL>
  </meta>
  <bindings>
    <select itemPath="feed.entry" produces="XML">
      <urls>
         <url>http://twitter.com/statuses/user_timeline/{id}.atom</url>
      </urls>
      <paging model="page">
         <start default="0" id="page"/>
         <pagesize max="200" id="count"/>
         <total default="20"/>
      </paging>
      <inputs>
         <key id="since" type="xs:string" paramType="query" />
         <key id="since_id" type="xs:string" paramType="query" />
         <key id="id" type="xs:string" paramType="path" required="true"/>
      </inputs>
    </select>
  </bindings>
</table>
You can write your own.
And share them for others to use.
SHOW tables
DESC table
Yql && Raphaël
What’s the output?
<?xml version="1.0" encoding="UTF-8"?>
<query xmlns:yahoo="http://www.yahooapis.com/v1/base.rng" yahoo:count="10"
yahoo:created="2009-02-11T03:16:48Z" yahoo:lang="en-US"
yahoo:updated="2009-02-11T03:16:48Z" yahoo:uri="http://
query.yahooapis.com/v1/yql?q=SELECT+*+%0AFROM+search.web+WHERE+query%3D
%22javascript%22">
    <diagnostics>
        <publiclyCallable>true</publiclyCallable>
        <url execution-time="116">http://boss.yahooapis.com/ysearch/web/
v1/javascript?format=xml&amp;start=0&amp;count=10</url>
        <user-time>119</user-time>
        <service-time>116</service-time>
        <build-version>851</build-version>
    </diagnostics>
    <results>
        <result xmlns="http://www.inktomi.com/">
            <abstract><![CDATA[<b>JavaScript</b> is super cool and awesome
and we love it.]]></abstract>
            <clickurl>http://lrd.yahooapis.com/
_ylc=X3oDMTQ4NWxyYWUxBF9TAzIwMjMxNTI3MDIEYXBwaWQDb0pfTWdwbklrWW5CMWhTZnFUZ
Ed5TkouTXNxZlNMQmkEcG9zAzEEc2VydmljZQNZU2VhcmNoV2ViBHNsawN0aXRsZQRzcmNwdml
kA253RkNNVVBEQjJIMkxjVFRsQWt1ZVI0VXl6LkNJVW1TUXlBQUFLckk-/SIG=11tsuk1oo/
**http%3A//en.wikipedia.org/wiki/Ruby_(programming_language)</clickurl>
            <date>2009/02/01</date>
            <dispurl><![CDATA[<b>en.wikipedia.org</b>/wiki/<wbr><b>Ruby</
{
    "query":
    {
        "count":"10",
        "created":"2009-02-11T03:20:22Z",
        "lang":"en-US",
        "updated":"2009-02-11T03:20:22Z",
        "uri":"http://query.yahooapis.com/v1/yql?
q=SELECT+*+%0AFROM+search.web+WHERE+query%3D
%22javascript%22",
        "diagnostics":
        {
             "publiclyCallable":"true",
             "url":
            {
                 "execution-time":"109",
Specify callback with ‘callback’ for JSON-P.
call({
    "query":
    {
        "count":"10",
        "created":"2009-02-11T03:20:22Z",
        "lang":"en-US",
        "updated":"2009-02-11T03:20:22Z",
        "uri":"http://query.yahooapis.com/v1/yql?
q=SELECT+*+%0AFROM+search.web+WHERE+query%3D
%22javascript%22",
        "diagnostics":
        {
             "publiclyCallable":"true",
             "url":
            {
                 "execution-time":"109",
http://query.yahooapis.com/
v1/public/yql?q=SELECT%20*
%20%0AFROM%20search.web
%20WHERE%20query%3D
%22javscript%22
&format=json&callback=call
http://developer.yahoo.com/yql/
http://developer.yahoo.com/yql/console/
Yql && Raphaël
Raphaël
Dmitry calls it:
“A small JavaScript library that should simplify
your work with vector graphics on the web.”
I call it:
Utterly amazing.
Raphaël lets you draw cross-browser vector
graphics.
Even in IE6.
No more boxes.
“The web is not rectangular any
more”
                      - Dmitry Baranovskiy
http://raphaeljs.com/
Then we looked at lots of demos from the site...
Something.js
http://lachlanhardy.github.com/
something.js/
Questions?
1 of 45

Recommended

php part 2 by
php part 2php part 2
php part 2Shagufta shaheen
111 views22 slides
Building Things Fast - and getting approval by
Building Things Fast - and getting approvalBuilding Things Fast - and getting approval
Building Things Fast - and getting approvalSimon Willison
1.7K views82 slides
SULTHAN's - PHP MySQL programs by
SULTHAN's - PHP MySQL programsSULTHAN's - PHP MySQL programs
SULTHAN's - PHP MySQL programsSULTHAN BASHA
91 views21 slides
The Django Web Framework (EuroPython 2006) by
The Django Web Framework (EuroPython 2006)The Django Web Framework (EuroPython 2006)
The Django Web Framework (EuroPython 2006)Simon Willison
2.9K views56 slides
Practical PHP by example Jan Leth-Kjaer by
Practical PHP by example   Jan Leth-KjaerPractical PHP by example   Jan Leth-Kjaer
Practical PHP by example Jan Leth-KjaerCOMMON Europe
2.2K views14 slides
Coding for php with mysql by
Coding for php with mysqlCoding for php with mysql
Coding for php with mysqlRajamanickam Gomathijayam
50 views10 slides

More Related Content

What's hot

Send.php by
Send.phpSend.php
Send.phpabdoahmd44
8K views12 slides
Aplicacoes dinamicas Rails com Backbone by
Aplicacoes dinamicas Rails com BackboneAplicacoes dinamicas Rails com Backbone
Aplicacoes dinamicas Rails com BackboneRafael Felix da Silva
1.1K views95 slides
RESTFUL SERVICES MADE EASY: THE EVE REST API FRAMEWORK - Nicola Iarocci - Co... by
RESTFUL SERVICES MADE EASY: THE EVE REST API FRAMEWORK -  Nicola Iarocci - Co...RESTFUL SERVICES MADE EASY: THE EVE REST API FRAMEWORK -  Nicola Iarocci - Co...
RESTFUL SERVICES MADE EASY: THE EVE REST API FRAMEWORK - Nicola Iarocci - Co...Codemotion
2.2K views103 slides
Introduction to ReasonML by
Introduction to ReasonMLIntroduction to ReasonML
Introduction to ReasonMLRiza Fahmi
457 views83 slides
Ruby - Design patterns tdc2011 by
Ruby - Design patterns tdc2011Ruby - Design patterns tdc2011
Ruby - Design patterns tdc2011Rafael Felix da Silva
1.1K views153 slides
Web Development with CoffeeScript and Sass by
Web Development with CoffeeScript and SassWeb Development with CoffeeScript and Sass
Web Development with CoffeeScript and SassBrian Hogan
9.3K views88 slides

What's hot(20)

RESTFUL SERVICES MADE EASY: THE EVE REST API FRAMEWORK - Nicola Iarocci - Co... by Codemotion
RESTFUL SERVICES MADE EASY: THE EVE REST API FRAMEWORK -  Nicola Iarocci - Co...RESTFUL SERVICES MADE EASY: THE EVE REST API FRAMEWORK -  Nicola Iarocci - Co...
RESTFUL SERVICES MADE EASY: THE EVE REST API FRAMEWORK - Nicola Iarocci - Co...
Codemotion2.2K views
Introduction to ReasonML by Riza Fahmi
Introduction to ReasonMLIntroduction to ReasonML
Introduction to ReasonML
Riza Fahmi457 views
Web Development with CoffeeScript and Sass by Brian Hogan
Web Development with CoffeeScript and SassWeb Development with CoffeeScript and Sass
Web Development with CoffeeScript and Sass
Brian Hogan9.3K views
Perkenalan ReasonML by Riza Fahmi
Perkenalan ReasonMLPerkenalan ReasonML
Perkenalan ReasonML
Riza Fahmi321 views
Pemrograman Web 9 - Input Form DB dan Session by Nur Fadli Utomo
Pemrograman Web 9 - Input Form DB dan SessionPemrograman Web 9 - Input Form DB dan Session
Pemrograman Web 9 - Input Form DB dan Session
Nur Fadli Utomo416 views
PHP and Rich Internet Applications by elliando dias
PHP and Rich Internet ApplicationsPHP and Rich Internet Applications
PHP and Rich Internet Applications
elliando dias2.8K views
Cowboy development with Django by Simon Willison
Cowboy development with DjangoCowboy development with Django
Cowboy development with Django
Simon Willison16.9K views
PHP and Rich Internet Applications by elliando dias
PHP and Rich Internet ApplicationsPHP and Rich Internet Applications
PHP and Rich Internet Applications
elliando dias4K views
Working with web_services by Lorna Mitchell
Working with web_servicesWorking with web_services
Working with web_services
Lorna Mitchell1.7K views
Web apps without internet by MSDEVMTL
Web apps without internetWeb apps without internet
Web apps without internet
MSDEVMTL409 views
Gem christmas calendar by erichsen
Gem christmas calendarGem christmas calendar
Gem christmas calendar
erichsen150 views

Similar to Yql && Raphaël

Os Pruett by
Os PruettOs Pruett
Os Pruettoscon2007
1.1K views46 slides
A Quick Introduction to YQL by
A Quick Introduction to YQLA Quick Introduction to YQL
A Quick Introduction to YQLMax Manders
1.1K views13 slides
Hd insight programming by
Hd insight programmingHd insight programming
Hd insight programmingCasear Chu
604 views44 slides
Html5 and web technology update by
Html5 and web technology updateHtml5 and web technology update
Html5 and web technology updateDoug Domeny
1.7K views23 slides
HTML5 - The 2012 of the Web - Adobe MAX by
HTML5 - The 2012 of the Web - Adobe MAXHTML5 - The 2012 of the Web - Adobe MAX
HTML5 - The 2012 of the Web - Adobe MAXRobert Nyman
4.3K views81 slides
Php summary by
Php summaryPhp summary
Php summaryMichelle Darling
2.5K views25 slides

Similar to Yql && Raphaël(20)

Os Pruett by oscon2007
Os PruettOs Pruett
Os Pruett
oscon20071.1K views
A Quick Introduction to YQL by Max Manders
A Quick Introduction to YQLA Quick Introduction to YQL
A Quick Introduction to YQL
Max Manders1.1K views
Hd insight programming by Casear Chu
Hd insight programmingHd insight programming
Hd insight programming
Casear Chu604 views
Html5 and web technology update by Doug Domeny
Html5 and web technology updateHtml5 and web technology update
Html5 and web technology update
Doug Domeny1.7K views
HTML5 - The 2012 of the Web - Adobe MAX by Robert Nyman
HTML5 - The 2012 of the Web - Adobe MAXHTML5 - The 2012 of the Web - Adobe MAX
HTML5 - The 2012 of the Web - Adobe MAX
Robert Nyman4.3K views
Velocity EU 2014 — Offline-first web apps by andrewsmatt
Velocity EU 2014 — Offline-first web appsVelocity EU 2014 — Offline-first web apps
Velocity EU 2014 — Offline-first web apps
andrewsmatt3.9K views
Cutting Edge Data Processing with PHP & XQuery by William Candillon
Cutting Edge Data Processing with PHP & XQueryCutting Edge Data Processing with PHP & XQuery
Cutting Edge Data Processing with PHP & XQuery
William Candillon6.4K views
HTML5 - The 2012 of the Web by Robert Nyman
HTML5 - The 2012 of the WebHTML5 - The 2012 of the Web
HTML5 - The 2012 of the Web
Robert Nyman5.9K views
Cross Domain Web
Mashups with JQuery and Google App Engine by Andy McKay
Cross Domain Web
Mashups with JQuery and Google App EngineCross Domain Web
Mashups with JQuery and Google App Engine
Cross Domain Web
Mashups with JQuery and Google App Engine
Andy McKay3.7K views
OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015) by Pat Patterson
OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)
OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)
Pat Patterson2.1K views
RESTing with the new Yandex.Disk API, Clemens Аuer by Yandex
RESTing with the new Yandex.Disk API, Clemens АuerRESTing with the new Yandex.Disk API, Clemens Аuer
RESTing with the new Yandex.Disk API, Clemens Аuer
Yandex1.7K views
Apache CouchDB talk at Ontario GNU Linux Fest by Myles Braithwaite
Apache CouchDB talk at Ontario GNU Linux FestApache CouchDB talk at Ontario GNU Linux Fest
Apache CouchDB talk at Ontario GNU Linux Fest
Myles Braithwaite821 views
OSCON 2011 CouchApps by Bradley Holt
OSCON 2011 CouchAppsOSCON 2011 CouchApps
OSCON 2011 CouchApps
Bradley Holt5.4K views
Developing RESTful WebServices using Jersey by b_kathir
Developing RESTful WebServices using JerseyDeveloping RESTful WebServices using Jersey
Developing RESTful WebServices using Jersey
b_kathir3.1K views
RoR vs-nodejs-by-jcskyting by Sky Wang
RoR vs-nodejs-by-jcskytingRoR vs-nodejs-by-jcskyting
RoR vs-nodejs-by-jcskyting
Sky Wang463 views
API Days Paris - Automatic Testing of (RESTful) API Documentation by Rouven Weßling
API Days Paris - Automatic Testing of (RESTful) API DocumentationAPI Days Paris - Automatic Testing of (RESTful) API Documentation
API Days Paris - Automatic Testing of (RESTful) API Documentation
Rouven Weßling438 views
Intravert Server side processing for Cassandra by Edward Capriolo
Intravert Server side processing for CassandraIntravert Server side processing for Cassandra
Intravert Server side processing for Cassandra
Edward Capriolo5.2K views

More from Lachlan Hardy

Give Your JavaScript Apps Some Spine by
Give Your JavaScript Apps Some SpineGive Your JavaScript Apps Some Spine
Give Your JavaScript Apps Some SpineLachlan Hardy
959 views36 slides
Give Your JavaScript Apps A Spine by
Give Your JavaScript Apps A SpineGive Your JavaScript Apps A Spine
Give Your JavaScript Apps A SpineLachlan Hardy
896 views35 slides
SydJS.com by
SydJS.comSydJS.com
SydJS.comLachlan Hardy
786 views51 slides
GitHub for JavaScripters by
GitHub for JavaScriptersGitHub for JavaScripters
GitHub for JavaScriptersLachlan Hardy
938 views32 slides
The Open Web by
The Open WebThe Open Web
The Open WebLachlan Hardy
4.2K views148 slides
Serving Code Samples by
Serving Code SamplesServing Code Samples
Serving Code SamplesLachlan Hardy
639 views22 slides

More from Lachlan Hardy(11)

Give Your JavaScript Apps Some Spine by Lachlan Hardy
Give Your JavaScript Apps Some SpineGive Your JavaScript Apps Some Spine
Give Your JavaScript Apps Some Spine
Lachlan Hardy959 views
Give Your JavaScript Apps A Spine by Lachlan Hardy
Give Your JavaScript Apps A SpineGive Your JavaScript Apps A Spine
Give Your JavaScript Apps A Spine
Lachlan Hardy896 views
GitHub for JavaScripters by Lachlan Hardy
GitHub for JavaScriptersGitHub for JavaScripters
GitHub for JavaScripters
Lachlan Hardy938 views
Improving Dashboards with open content sharing by Lachlan Hardy
Improving Dashboards with open content sharingImproving Dashboards with open content sharing
Improving Dashboards with open content sharing
Lachlan Hardy2K views
Local Government on the Open Web by Lachlan Hardy
Local Government on the Open WebLocal Government on the Open Web
Local Government on the Open Web
Lachlan Hardy2.1K views
Welcome to IE8 - Integrating Your Site With Internet Explorer 8 by Lachlan Hardy
Welcome to IE8 - Integrating Your Site With Internet Explorer 8Welcome to IE8 - Integrating Your Site With Internet Explorer 8
Welcome to IE8 - Integrating Your Site With Internet Explorer 8
Lachlan Hardy2.8K views

Recently uploaded

The details of description: Techniques, tips, and tangents on alternative tex... by
The details of description: Techniques, tips, and tangents on alternative tex...The details of description: Techniques, tips, and tangents on alternative tex...
The details of description: Techniques, tips, and tangents on alternative tex...BookNet Canada
127 views24 slides
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ... by
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...Jasper Oosterveld
18 views49 slides
Future of Indian ConsumerTech by
Future of Indian ConsumerTechFuture of Indian ConsumerTech
Future of Indian ConsumerTechKapil Khandelwal (KK)
21 views68 slides
STPI OctaNE CoE Brochure.pdf by
STPI OctaNE CoE Brochure.pdfSTPI OctaNE CoE Brochure.pdf
STPI OctaNE CoE Brochure.pdfmadhurjyapb
14 views1 slide
virtual reality.pptx by
virtual reality.pptxvirtual reality.pptx
virtual reality.pptxG036GaikwadSnehal
11 views15 slides
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive by
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveAutomating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveNetwork Automation Forum
31 views35 slides

Recently uploaded(20)

The details of description: Techniques, tips, and tangents on alternative tex... by BookNet Canada
The details of description: Techniques, tips, and tangents on alternative tex...The details of description: Techniques, tips, and tangents on alternative tex...
The details of description: Techniques, tips, and tangents on alternative tex...
BookNet Canada127 views
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ... by Jasper Oosterveld
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
STPI OctaNE CoE Brochure.pdf by madhurjyapb
STPI OctaNE CoE Brochure.pdfSTPI OctaNE CoE Brochure.pdf
STPI OctaNE CoE Brochure.pdf
madhurjyapb14 views
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive by Network Automation Forum
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveAutomating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive
handbook for web 3 adoption.pdf by Liveplex
handbook for web 3 adoption.pdfhandbook for web 3 adoption.pdf
handbook for web 3 adoption.pdf
Liveplex22 views
Business Analyst Series 2023 - Week 3 Session 5 by DianaGray10
Business Analyst Series 2023 -  Week 3 Session 5Business Analyst Series 2023 -  Week 3 Session 5
Business Analyst Series 2023 - Week 3 Session 5
DianaGray10248 views
Attacking IoT Devices from a Web Perspective - Linux Day by Simone Onofri
Attacking IoT Devices from a Web Perspective - Linux Day Attacking IoT Devices from a Web Perspective - Linux Day
Attacking IoT Devices from a Web Perspective - Linux Day
Simone Onofri16 views
STKI Israeli Market Study 2023 corrected forecast 2023_24 v3.pdf by Dr. Jimmy Schwarzkopf
STKI Israeli Market Study 2023   corrected forecast 2023_24 v3.pdfSTKI Israeli Market Study 2023   corrected forecast 2023_24 v3.pdf
STKI Israeli Market Study 2023 corrected forecast 2023_24 v3.pdf
Igniting Next Level Productivity with AI-Infused Data Integration Workflows by Safe Software
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Safe Software263 views
Voice Logger - Telephony Integration Solution at Aegis by Nirmal Sharma
Voice Logger - Telephony Integration Solution at AegisVoice Logger - Telephony Integration Solution at Aegis
Voice Logger - Telephony Integration Solution at Aegis
Nirmal Sharma39 views

Yql && Raphaël

Editor's Notes