SlideShare una empresa de Scribd logo
1 de 87
Descargar para leer sin conexión
Finding things on the
   web with BOSS


 Christian Heilmann | http://wait-till-i.com | http://scriptingenabled.org

                Open Hack Day 2009 - Bangalore, India
What is innovation?
Innovation is improving the
  current state of affairs.
In the best of all cases this
means that it gets easier for
the person using a product
      to reach a goal.
This can be achieved by
connecting several different
 products and turning them
 into one. (pssst... Mashup).
I’ve seen this followed
cleverly on several levels
       here in India.
BOSS is your chance to make
the web an easier to navigate
           space.
You can help us turn a search
  engine into a find engine.
Web search is broken!



http://luckyrobot.com/2009/02/06/search-is-broken-%E2%80%93-really-broken/

http://www.borthwick.com/weblog/2009/02/05/creative-destruction-google-slayed-by-the-notificator/
Back in the
     days the
     web was
    small and
largely static
  documents.
Nowadays it
is huge and
its content
and the
publication
speed
increased a
lot.
This is one challenge of
search engines these days.
The others are old, but also
        increasing
Now, say you have
the most awesome
idea of a search
engine that works
around these
issues.
Where you will get stuck is
  the overhead of indexing,
storing and filtering the data
         of the web.
And this is where BOSS
      comes in.
It is an API interface to our
   data stores for search.
BOSS is Build Your Own
   Search Service:
 http://developer.yahoo.com/search/boss/
To use it, you need a
   Application ID:
https://developer.yahoo.com/wsregapp/
And there is full
 documentation available:
http://developer.yahoo.com/search/boss/boss_guide/
Happy Hacking!
... oh alright then ...
You can get the code
examples I will show here:
 http://isithackday.com/hacks/
    bangalore/bosscode.zip
Say you want to search the
     web for donkeys.
Because
Donkeys alright then ...
   ... oh
 Rock!
Using BOSS you can do this
 with a REST API and display
the results any way you want!
The REST API:
boss.yahooapis.com/ysearch/{type}/v1/
               {search}
The REST API:
    boss.yahooapis.com/ysearch/{type}/v1/
                   {search}

     type is what you want to
              search:
web: the interwebs
news: new stuff
images: pictures
The REST API:
     boss.yahooapis.com/ysearch/{type}/v1/
                    {search}

 search is the term to look for
         (url-encoded)
Put “” around terms to ensure the right order, f.e. “donkey
fur” (you don’t want to see cats, do you?)
Filter with a -, f.e. donkey -shrek
Restrict to a site using site:, f.e. donkey site:flickr.com
The REST API:
     boss.yahooapis.com/ysearch/{type}/v1/
                    {search}

            Other parameters:
appid: your app ID (needed)
count: amount of results
start: where to start the counting
region / lang: country and language
format: xml or json
sites: restrict to certain sites (comma separated)
Web search REST API:
 boss.yahooapis.com/ysearch/web/v1/{search}

             Extra parameters:
filter: To filter out nasties, use filter=-porn-hate
type: to search different types. You can use html, text, pdf,
xl, msword, ppt or groups like msoffice and nonhtml. You
can also do a type=msoffice,-xl
Image search REST API:
     boss.yahooapis.com/ysearch/images/v1/
                    {search}

              Extra parameters:
filter: no nudies
dimensions: all, small, medium, large, wallpaper,
widewallpaper
refererurl: all images in that url
url: image at that url
News search REST API:
 boss.yahooapis.com/ysearch/news/v1/{search}

            Extra parameters:
age: how old the news are in days. Last five days would be
“5d”
There are restrictions how to
     display results and
information as to what data
        comes back.
For this, read the guide!
http://developer.yahoo.com/search/boss/boss_guide/
Everybody Duck!
There will be code
The easiest way to use BOSS
    is using JavaScript.
http://boss.yahooapis.com/
 ysearch/web/v1/donkeys?
  format=json&appid={id}
{quot;ysearchresponsequot;:
{quot;responsecodequot;:quot;200quot;,quot;nextpagequot;:quot;/ysearch/web/
v1/donkeys?
format=json&appid=[...]&start=10quot;,quot;totalhitsquot;:quot;492
215quot;,quot;deephitsquot;:quot;15700000quot;,quot;countquot;:quot;10quot;,quot;startquot;:quot;0
quot;,quot;resultset_webquot;:[{quot;abstractquot;:quot;Hyperlinked
description of the domesticated mammal discussing
its appearance, relationship to horses, economic
<b>...</b> horses and <b>donkeys</b> were
brought back <b>...</b>quot;,quot;clickurlquot;:quot;http://
lrd.yahooapis.com/
_ylc=X3oDMTU4b2NoaDR2BF9TAzIwMjMxNTI3MDIEYXBwaWQDV
Fg2YjRYSFYzNEVuUFhXMHNZRXI1MWhQMXBuNU84S0FHcy5MUVN
YZXIxWjdSbW1WclpvdXo1U3Z5WGtXc1ZrLQRwb3MDMARzZXJ2a
WNlA1lTZWFyY2hXZWIEc2xrA3RpdGxlBHNyY3B2aWQDR3lDaEg
wU081cTlmSktUNG1ndTVUUUJNdlNjaS4wa1ZUVndBQVF5Sw--
/SIG=11820sato/**http%3A//en.wikipedia.org
To use this across domains,
 simply define a callback
        parameter:
http://boss.yahooapis.com/
  ysearch/web/v1/donkeys?
format=json&callback=foundd
     onkeys&appid={id}
founddonkeys({quot;ysearchresponsequot;:
{quot;responsecodequot;:quot;200quot;,quot;nextpagequot;:quot;/ysearch/web
/v1/donkeys?
format=json&callback=founddonkeys&appid=TX6b4XHV3
4EnPXW0sYEr51hP1pn5O8KAGs.LQSXer1Z7RmmVrZouz5SvyX
kWsVk-
&start=10quot;,quot;totalhitsquot;:quot;492215quot;,quot;deephitsquot;:quot;15700
000quot;,quot;countquot;:quot;10quot;,quot;startquot;:quot;0quot;,quot;resultset_webquot;:
[{quot;abstractquot;:quot;Hyperlinked description of the
domesticated mammal discussing its appearance,
relationship to horses, economic <b>...</b>
horses and <b>donkeys</b> were brought back
<b>...</b>quot;,quot;clickurlquot;:quot;http://
lrd.yahooapis.com/
_ylc=X3oDMTU4cG05cXJwBF9TAzIwMjMxNTI3MDIEYXBwaWQD
VFg2YjRYSFYzNEVuUFhXMHNZRXI1MWhQMXBuNU84S0FHcy5MU
VNYZXIxWjdSbW1WclpvdXo1U3Z5WGtXc1ZrLQRwb3MDMARzZX
All you then need to do is put
 this url in a script node and
    write the founddonkeys
            function:
<div id=quot;searchresultsquot;></div>
 <script type=quot;text/javascriptquot;>
   function founddonkeys(o){
     var donkeys = o.ysearchresponse.resultset_web;
     var results = document.createElement('ul');
     for(var i=0,j=donkeys.length;i<j;i++){
       var item = document.createElement('li');
       var link = document.createElement('a');
       var abstract = document.createElement('p');
       link.setAttribute('href',donkeys[i].clickurl);
       link.innerHTML = donkeys[i].title;
       item.appendChild(link);
       abstract.innerHTML = donkeys[i].abstract;
       item.appendChild(abstract);
       results.appendChild(item);
     }
document.getElementById('searchresults').appendChild(r
esults);
   }
 </script>
 <script type=quot;text/javascriptquot; charset=quot;utf-8quot;
src=quot;http://boss.yahooapis.com/ysearch/web/v1/donkeys?
format=json&callback=founddonkeys&appid=xxxquot;></script>
Two problems though:
First of all - without
JavaScript there are no
        donkeys!
Secondly - you can only find
         donkeys!
The solution: Event Handling
    and dynamic script
        generation.
<p>Warning: this is terrible code, USE A LIBRARY INSTEAD!</p>
<ul id=quot;searchesquot;>
  <li><a href=quot;http://search.yahoo.com/search?va=donkeysquot;>
    Search for Donkeys
  </a>
  </li>
  <li><a href=quot;http://search.yahoo.com/search?va=kittensquot;>
    Search for kittens
  </a>
  </li>
</ul>
<div id=quot;searchresultsquot;></div>
<script type=quot;text/javascriptquot; charset=quot;utf-8quot;>
  function founddonkeys(o){
    var donkeys = o.ysearchresponse.resultset_web;
    var results = document.createElement('ul');
    for(var i=0,j=donkeys.length;i<j;i++){
      var item = document.createElement('li');
      var link = document.createElement('a');
      var abstract = document.createElement('p');
      link.setAttribute('href',donkeys[i].clickurl);
      link.innerHTML = donkeys[i].title;
      item.appendChild(link);
      abstract.innerHTML = donkeys[i].abstract;
      item.appendChild(abstract);
      results.appendChild(item);
    }
    var resultsbox = document.getElementById('searchresults');
    resultsbox.innerHTML = '';
    resultsbox.appendChild(results);
  }
  var APIkey = 'TX6b4XHV34EnPXW0sYEr51hP1pn5O8KAGs'+
  '.LQSXer1Z7RmmVrZouz5SvyXkWsVk-';
  var searchlinks =
document.getElementById('searches').getElementsByTagName('a');
  for(var i=0;searchlinks[i];i++){
var APIkey = 'TX6b4XHV34EnPXW0sYEr51hP1pn5O8KAGs'+
  '.LQSXer1Z7RmmVrZouz5SvyXkWsVk-';
  var searchlinks = document.getElementById('searches').
                    getElementsByTagName('a');
  for(var i=0;searchlinks[i];i++){
    searchlinks[i].onclick = function(){
      var searchterm = this.href.split('va=')[1];
      var url = 'http://boss.yahooapis.com/ysearch/web/v1/' +
                 searchterm + '?format=json&' +
                 'callback=founddonkeys' + '&appid=' + APIkey
      var s = document.createElement('script');
      s.setAttribute('type','text/javascript');
      s.setAttribute('src',url);
      document.getElementsByTagName('head')[0].appendChild(s);
      return false;
    }
  }
</script>
*click*
Using the YUI library (YUI3
JavaScript and CSS grids) you
  can easily make this much
            cooler:
To make using BOSS with
JavaScript easier, I’ve written
   a BOSS wrapper called
           YBOSS:
 http://icant.co.uk/sandbox/yboss/
<div id=quot;resultsquot;></div>
<script type=quot;text/javascriptquot; src=quot;yboss-lib.jsquot;>
</script>
<script type=quot;text/javascriptquot;>
YBOSS.get({
   searches:'search,news',
   query:'obama',
   count:10,
   callback:seedpics
});
function seedpics(o){
  var all = '<h4>Web Sites</h4>' + o.webHTML +
             '<h4>News</h4>' + o.newsHTML;
  var out = document.getElementById('results');
  out.innerHTML = all;
}
</script>
For server side code there are
 code examples available at:
 http://www.saurabhsahni.com/boss-
           examples.zip
There’s also the Python
   mashup framework that
 allows for SQL for remixing
arbitrary XML/JSON sources:
http://developer.yahoo.com/search/boss/mashup.html
And there’s an easy way to
deploy BOSS apps at Google
        App Engine:
http://zooie.wordpress.com/2008/08/04/yahoo-boss-
             google-app-engine-integrated/
All this
has been
around for
a while.
Here are some new things
      added lately:
People are trying to make the
 web a less messier place by
  adding semantic data to
     HTML documents.
Using
SearchMonkey
technology
BOSS now
lists this
information in
the results.
                 http://www.flickr.com/photos/glenscott/3273401181/
view=searchmonkey_feed


                      view=searchmonkey_rdf


   http://developer.yahoo.com/search/boss/
              structureddata.html
Using the view=keyterms
 parameter you can get
keywords associated with
       each result.
http://keywordfinder.org
In order to get longer
 descriptions of each result
    you can now use the
abstract=long parameter to
  get up to 300 characters
       instead of 130.
Another thing we’ve done is
using the Yahoo Site Explorer
  and bundle it with BOSS.
This way you can now get
page information and page
inlink information with two
     new BOSS services.
http://boss.yahooapis.com/
ysearch/se_inlink/v1/{URL}?
       appid={APPID}
Gets you a list of pages that
linked to the URL provided.
http://boss.yahooapis.com/
 ysearch/se_pagedata/v1/
   {URL}?appid={APPID}
 Gets you a list of all pages
belonging to a domain in the
       Yahoo! index.
So what has been done using
          BOSS?
http://ask-boss.appspot.com/
http://ask-boss.appspot.com/
http://ask-boss.appspot.com/
http://hakia.com/
http://www.oneriot.com/
And on a more
lighter note:
The client side is where
  strange things happen.



http://isithackday.com/hacks/web-the-adventure/
The motherlode of BOSS
     implementations:
    http://mashable.com/boss/
http://delicious.com/tag/bossmashup

Add yours by tagging it with
“bossmashup” on Del.icio.us!
THANKS!
Keep in touch:
Christian Heilmann
http://wait-till-i.com
http://scriptingenabled.org
http://twitter.com/codepo8

Más contenido relacionado

La actualidad más candente

Building Beautiful REST APIs in ASP.NET Core
Building Beautiful REST APIs in ASP.NET CoreBuilding Beautiful REST APIs in ASP.NET Core
Building Beautiful REST APIs in ASP.NET CoreStormpath
 
Hack the BOSS at Open Hack Day - London
Hack the BOSS at Open Hack Day - LondonHack the BOSS at Open Hack Day - London
Hack the BOSS at Open Hack Day - LondonTed Drake
 
Building Beautiful REST APIs in ASP.NET Core
Building Beautiful REST APIs in ASP.NET CoreBuilding Beautiful REST APIs in ASP.NET Core
Building Beautiful REST APIs in ASP.NET CoreNate Barbettini
 
Beautiful REST+JSON APIs with Ion
Beautiful REST+JSON APIs with IonBeautiful REST+JSON APIs with Ion
Beautiful REST+JSON APIs with IonStormpath
 
How to build simple web apps to automate your SEO tasks - BrightonSEO Spring ...
How to build simple web apps to automate your SEO tasks - BrightonSEO Spring ...How to build simple web apps to automate your SEO tasks - BrightonSEO Spring ...
How to build simple web apps to automate your SEO tasks - BrightonSEO Spring ...Charly Wargnier
 
A Technical Look at Content - PUBCON SFIMA 2017 - Patrick Stox
A Technical Look at Content - PUBCON SFIMA 2017 - Patrick StoxA Technical Look at Content - PUBCON SFIMA 2017 - Patrick Stox
A Technical Look at Content - PUBCON SFIMA 2017 - Patrick Stoxpatrickstox
 
Mashups & APIs
Mashups & APIsMashups & APIs
Mashups & APIsPamela Fox
 
Browser Changes That Will Impact SEO From 2019-2020
Browser Changes That Will Impact SEO From 2019-2020Browser Changes That Will Impact SEO From 2019-2020
Browser Changes That Will Impact SEO From 2019-2020Tom Anthony
 
React JS and Search Engines - Patrick Stox at Triangle ReactJS Meetup
React JS and Search Engines - Patrick Stox at Triangle ReactJS MeetupReact JS and Search Engines - Patrick Stox at Triangle ReactJS Meetup
React JS and Search Engines - Patrick Stox at Triangle ReactJS Meetuppatrickstox
 
Scrape box presentation
Scrape box presentationScrape box presentation
Scrape box presentationElephate1
 
Yahoo BOSS Presentation London Open Hack Day Talk Boss
Yahoo BOSS Presentation London Open Hack Day Talk   BossYahoo BOSS Presentation London Open Hack Day Talk   Boss
Yahoo BOSS Presentation London Open Hack Day Talk BossKorben00
 
Penetration Testing with Improved Input Vector Identification
Penetration Testing with Improved Input Vector IdentificationPenetration Testing with Improved Input Vector Identification
Penetration Testing with Improved Input Vector IdentificationShauvik Roy Choudhary, Ph.D.
 
Writing Apps the Google-y Way
Writing Apps the Google-y WayWriting Apps the Google-y Way
Writing Apps the Google-y WayPamela Fox
 
Creating HTML Pages
Creating HTML PagesCreating HTML Pages
Creating HTML PagesMike Crabb
 
Microdata semantic-extend
Microdata semantic-extendMicrodata semantic-extend
Microdata semantic-extendSeek Tan
 
5 Time-Saving SEO Alerts to Use Right Now - brightonSEO 2019
5 Time-Saving SEO Alerts to Use Right Now - brightonSEO 20195 Time-Saving SEO Alerts to Use Right Now - brightonSEO 2019
5 Time-Saving SEO Alerts to Use Right Now - brightonSEO 2019Marco Bonomo
 
Barry Adams - Search in a screenless world - Nottingham Digital Summit
Barry Adams - Search in a screenless world - Nottingham Digital SummitBarry Adams - Search in a screenless world - Nottingham Digital Summit
Barry Adams - Search in a screenless world - Nottingham Digital SummitHallam
 

La actualidad más candente (20)

Building Beautiful REST APIs in ASP.NET Core
Building Beautiful REST APIs in ASP.NET CoreBuilding Beautiful REST APIs in ASP.NET Core
Building Beautiful REST APIs in ASP.NET Core
 
สปริงเฟรมเวิร์ค4.1
สปริงเฟรมเวิร์ค4.1สปริงเฟรมเวิร์ค4.1
สปริงเฟรมเวิร์ค4.1
 
Hack the BOSS at Open Hack Day - London
Hack the BOSS at Open Hack Day - LondonHack the BOSS at Open Hack Day - London
Hack the BOSS at Open Hack Day - London
 
Building Beautiful REST APIs in ASP.NET Core
Building Beautiful REST APIs in ASP.NET CoreBuilding Beautiful REST APIs in ASP.NET Core
Building Beautiful REST APIs in ASP.NET Core
 
Beautiful REST+JSON APIs with Ion
Beautiful REST+JSON APIs with IonBeautiful REST+JSON APIs with Ion
Beautiful REST+JSON APIs with Ion
 
How to build simple web apps to automate your SEO tasks - BrightonSEO Spring ...
How to build simple web apps to automate your SEO tasks - BrightonSEO Spring ...How to build simple web apps to automate your SEO tasks - BrightonSEO Spring ...
How to build simple web apps to automate your SEO tasks - BrightonSEO Spring ...
 
A Technical Look at Content - PUBCON SFIMA 2017 - Patrick Stox
A Technical Look at Content - PUBCON SFIMA 2017 - Patrick StoxA Technical Look at Content - PUBCON SFIMA 2017 - Patrick Stox
A Technical Look at Content - PUBCON SFIMA 2017 - Patrick Stox
 
Mashups & APIs
Mashups & APIsMashups & APIs
Mashups & APIs
 
Browser Changes That Will Impact SEO From 2019-2020
Browser Changes That Will Impact SEO From 2019-2020Browser Changes That Will Impact SEO From 2019-2020
Browser Changes That Will Impact SEO From 2019-2020
 
HTML5 Essentials
HTML5 EssentialsHTML5 Essentials
HTML5 Essentials
 
React JS and Search Engines - Patrick Stox at Triangle ReactJS Meetup
React JS and Search Engines - Patrick Stox at Triangle ReactJS MeetupReact JS and Search Engines - Patrick Stox at Triangle ReactJS Meetup
React JS and Search Engines - Patrick Stox at Triangle ReactJS Meetup
 
Scrape box presentation
Scrape box presentationScrape box presentation
Scrape box presentation
 
Yahoo BOSS Presentation London Open Hack Day Talk Boss
Yahoo BOSS Presentation London Open Hack Day Talk   BossYahoo BOSS Presentation London Open Hack Day Talk   Boss
Yahoo BOSS Presentation London Open Hack Day Talk Boss
 
Penetration Testing with Improved Input Vector Identification
Penetration Testing with Improved Input Vector IdentificationPenetration Testing with Improved Input Vector Identification
Penetration Testing with Improved Input Vector Identification
 
Writing Apps the Google-y Way
Writing Apps the Google-y WayWriting Apps the Google-y Way
Writing Apps the Google-y Way
 
Creating HTML Pages
Creating HTML PagesCreating HTML Pages
Creating HTML Pages
 
Google Dorks
Google DorksGoogle Dorks
Google Dorks
 
Microdata semantic-extend
Microdata semantic-extendMicrodata semantic-extend
Microdata semantic-extend
 
5 Time-Saving SEO Alerts to Use Right Now - brightonSEO 2019
5 Time-Saving SEO Alerts to Use Right Now - brightonSEO 20195 Time-Saving SEO Alerts to Use Right Now - brightonSEO 2019
5 Time-Saving SEO Alerts to Use Right Now - brightonSEO 2019
 
Barry Adams - Search in a screenless world - Nottingham Digital Summit
Barry Adams - Search in a screenless world - Nottingham Digital SummitBarry Adams - Search in a screenless world - Nottingham Digital Summit
Barry Adams - Search in a screenless world - Nottingham Digital Summit
 

Destacado

Ten Ways to Improve Your Interpersonal Skills
Ten Ways to Improve Your Interpersonal SkillsTen Ways to Improve Your Interpersonal Skills
Ten Ways to Improve Your Interpersonal SkillsFaisal Basra
 
Basic Housekeeping - Plugging Obvious Security Holes In Web Sites - Paris Web...
Basic Housekeeping - Plugging Obvious Security Holes In Web Sites - Paris Web...Basic Housekeeping - Plugging Obvious Security Holes In Web Sites - Paris Web...
Basic Housekeeping - Plugging Obvious Security Holes In Web Sites - Paris Web...Christian Heilmann
 
Правда о великой HR-коммуникации
Правда о великой HR-коммуникацииПравда о великой HR-коммуникации
Правда о великой HR-коммуникацииAlexei Kapterev
 
Progressive Web Apps – the return of the web? Goto Berlin 2016
Progressive Web Apps – the return of the web? Goto Berlin 2016Progressive Web Apps – the return of the web? Goto Berlin 2016
Progressive Web Apps – the return of the web? Goto Berlin 2016Christian Heilmann
 
Internet Days - The Depressed Internet
Internet Days - The Depressed Internet Internet Days - The Depressed Internet
Internet Days - The Depressed Internet Christian Heilmann
 

Destacado (6)

Ten Ways to Improve Your Interpersonal Skills
Ten Ways to Improve Your Interpersonal SkillsTen Ways to Improve Your Interpersonal Skills
Ten Ways to Improve Your Interpersonal Skills
 
Basic Housekeeping - Plugging Obvious Security Holes In Web Sites - Paris Web...
Basic Housekeeping - Plugging Obvious Security Holes In Web Sites - Paris Web...Basic Housekeeping - Plugging Obvious Security Holes In Web Sites - Paris Web...
Basic Housekeeping - Plugging Obvious Security Holes In Web Sites - Paris Web...
 
Правда о великой HR-коммуникации
Правда о великой HR-коммуникацииПравда о великой HR-коммуникации
Правда о великой HR-коммуникации
 
Basic fire safety
Basic fire safetyBasic fire safety
Basic fire safety
 
Progressive Web Apps – the return of the web? Goto Berlin 2016
Progressive Web Apps – the return of the web? Goto Berlin 2016Progressive Web Apps – the return of the web? Goto Berlin 2016
Progressive Web Apps – the return of the web? Goto Berlin 2016
 
Internet Days - The Depressed Internet
Internet Days - The Depressed Internet Internet Days - The Depressed Internet
Internet Days - The Depressed Internet
 

Similar a Finding things on the web with BOSS

Yahoo! BOSS in Bucharest
Yahoo! BOSS in BucharestYahoo! BOSS in Bucharest
Yahoo! BOSS in BucharestTed Drake
 
Creating Professional Applications with the LinkedIn API
Creating Professional Applications with the LinkedIn APICreating Professional Applications with the LinkedIn API
Creating Professional Applications with the LinkedIn APIKirsten Hunter
 
Real-time search in Drupal with Elasticsearch @Moldcamp
Real-time search in Drupal with Elasticsearch @MoldcampReal-time search in Drupal with Elasticsearch @Moldcamp
Real-time search in Drupal with Elasticsearch @MoldcampAlexei Gorobets
 
JBUG 11 - Django-The Web Framework For Perfectionists With Deadlines
JBUG 11 - Django-The Web Framework For Perfectionists With DeadlinesJBUG 11 - Django-The Web Framework For Perfectionists With Deadlines
JBUG 11 - Django-The Web Framework For Perfectionists With DeadlinesTikal Knowledge
 
Beautiful Java EE - PrettyFaces
Beautiful Java EE - PrettyFacesBeautiful Java EE - PrettyFaces
Beautiful Java EE - PrettyFacesLincoln III
 
Y Boss External 20091017
Y Boss External 20091017Y Boss External 20091017
Y Boss External 20091017JH Lee
 
Real-time search in Drupal. Meet Elasticsearch
Real-time search in Drupal. Meet ElasticsearchReal-time search in Drupal. Meet Elasticsearch
Real-time search in Drupal. Meet ElasticsearchAlexei Gorobets
 
Scout xss csrf_security_presentation_chicago
Scout xss csrf_security_presentation_chicagoScout xss csrf_security_presentation_chicago
Scout xss csrf_security_presentation_chicagoknaddison
 
Page object from the ground up.ppt
Page object from the ground up.pptPage object from the ground up.ppt
Page object from the ground up.pptJoseph Beale
 
Page object from the ground up by Joe Beale
Page object from the ground up by Joe BealePage object from the ground up by Joe Beale
Page object from the ground up by Joe BealeQA or the Highway
 
Web Techology and google code sh (2014_10_10 08_57_30 utc)
Web Techology and google code sh (2014_10_10 08_57_30 utc)Web Techology and google code sh (2014_10_10 08_57_30 utc)
Web Techology and google code sh (2014_10_10 08_57_30 utc)Suyash Gupta
 
Flash SEO Secrets
Flash SEO SecretsFlash SEO Secrets
Flash SEO Secretsrtretola
 
API Technical Writing
API Technical WritingAPI Technical Writing
API Technical WritingSarah Maddox
 

Similar a Finding things on the web with BOSS (20)

Yahoo! BOSS in Bucharest
Yahoo! BOSS in BucharestYahoo! BOSS in Bucharest
Yahoo! BOSS in Bucharest
 
Creating Professional Applications with the LinkedIn API
Creating Professional Applications with the LinkedIn APICreating Professional Applications with the LinkedIn API
Creating Professional Applications with the LinkedIn API
 
Playing With The Web
Playing With The WebPlaying With The Web
Playing With The Web
 
Real-time search in Drupal with Elasticsearch @Moldcamp
Real-time search in Drupal with Elasticsearch @MoldcampReal-time search in Drupal with Elasticsearch @Moldcamp
Real-time search in Drupal with Elasticsearch @Moldcamp
 
Yahoo is open to developers
Yahoo is open to developersYahoo is open to developers
Yahoo is open to developers
 
JBUG 11 - Django-The Web Framework For Perfectionists With Deadlines
JBUG 11 - Django-The Web Framework For Perfectionists With DeadlinesJBUG 11 - Django-The Web Framework For Perfectionists With Deadlines
JBUG 11 - Django-The Web Framework For Perfectionists With Deadlines
 
Technical Introduction to YDN
Technical Introduction to YDNTechnical Introduction to YDN
Technical Introduction to YDN
 
Fast by Default
Fast by DefaultFast by Default
Fast by Default
 
Yahoo for the Masses
Yahoo for the MassesYahoo for the Masses
Yahoo for the Masses
 
Beautiful Java EE - PrettyFaces
Beautiful Java EE - PrettyFacesBeautiful Java EE - PrettyFaces
Beautiful Java EE - PrettyFaces
 
Y Boss External 20091017
Y Boss External 20091017Y Boss External 20091017
Y Boss External 20091017
 
Real-time search in Drupal. Meet Elasticsearch
Real-time search in Drupal. Meet ElasticsearchReal-time search in Drupal. Meet Elasticsearch
Real-time search in Drupal. Meet Elasticsearch
 
Hi5 Open Social
Hi5   Open SocialHi5   Open Social
Hi5 Open Social
 
Scout xss csrf_security_presentation_chicago
Scout xss csrf_security_presentation_chicagoScout xss csrf_security_presentation_chicago
Scout xss csrf_security_presentation_chicago
 
Page object from the ground up.ppt
Page object from the ground up.pptPage object from the ground up.ppt
Page object from the ground up.ppt
 
Page object from the ground up by Joe Beale
Page object from the ground up by Joe BealePage object from the ground up by Joe Beale
Page object from the ground up by Joe Beale
 
Web Techology and google code sh (2014_10_10 08_57_30 utc)
Web Techology and google code sh (2014_10_10 08_57_30 utc)Web Techology and google code sh (2014_10_10 08_57_30 utc)
Web Techology and google code sh (2014_10_10 08_57_30 utc)
 
Flash SEO Secrets
Flash SEO SecretsFlash SEO Secrets
Flash SEO Secrets
 
API Technical Writing
API Technical WritingAPI Technical Writing
API Technical Writing
 
Building Web Hack Interfaces
Building Web Hack InterfacesBuilding Web Hack Interfaces
Building Web Hack Interfaces
 

Más de Christian Heilmann

Develop, Debug, Learn? - Dotjs2019
Develop, Debug, Learn? - Dotjs2019Develop, Debug, Learn? - Dotjs2019
Develop, Debug, Learn? - Dotjs2019Christian Heilmann
 
Taking the "vile" out of privilege
Taking the "vile" out of privilegeTaking the "vile" out of privilege
Taking the "vile" out of privilegeChristian Heilmann
 
Seven ways to be a happier JavaScript developer - NDC Oslo
Seven ways to be a happier JavaScript developer - NDC OsloSeven ways to be a happier JavaScript developer - NDC Oslo
Seven ways to be a happier JavaScript developer - NDC OsloChristian Heilmann
 
Artificial intelligence for humans… #AIDC2018 keynote
Artificial intelligence for humans… #AIDC2018 keynoteArtificial intelligence for humans… #AIDC2018 keynote
Artificial intelligence for humans… #AIDC2018 keynoteChristian Heilmann
 
Killing the golden calf of coding - We are Developers keynote
Killing the golden calf of coding - We are Developers keynoteKilling the golden calf of coding - We are Developers keynote
Killing the golden calf of coding - We are Developers keynoteChristian Heilmann
 
Progressive Web Apps - Techdays Finland
Progressive Web Apps - Techdays FinlandProgressive Web Apps - Techdays Finland
Progressive Web Apps - Techdays FinlandChristian Heilmann
 
Taking the "vile" out of privilege
Taking the "vile" out of privilegeTaking the "vile" out of privilege
Taking the "vile" out of privilegeChristian Heilmann
 
Five ways to be a happier JavaScript developer
Five ways to be a happier JavaScript developerFive ways to be a happier JavaScript developer
Five ways to be a happier JavaScript developerChristian Heilmann
 
Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"Christian Heilmann
 
You learned JavaScript - now what?
You learned JavaScript - now what?You learned JavaScript - now what?
You learned JavaScript - now what?Christian Heilmann
 
Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"Christian Heilmann
 
Progressive Web Apps - Covering the best of both worlds - DevReach
Progressive Web Apps - Covering the best of both worlds - DevReachProgressive Web Apps - Covering the best of both worlds - DevReach
Progressive Web Apps - Covering the best of both worlds - DevReachChristian Heilmann
 
Progressive Web Apps - Covering the best of both worlds
Progressive Web Apps - Covering the best of both worldsProgressive Web Apps - Covering the best of both worlds
Progressive Web Apps - Covering the best of both worldsChristian Heilmann
 
Non-trivial pursuits: Learning machines and forgetful humans
Non-trivial pursuits: Learning machines and forgetful humansNon-trivial pursuits: Learning machines and forgetful humans
Non-trivial pursuits: Learning machines and forgetful humansChristian Heilmann
 
Progressive Web Apps - Bringing the web front and center
Progressive Web Apps - Bringing the web front and center Progressive Web Apps - Bringing the web front and center
Progressive Web Apps - Bringing the web front and center Christian Heilmann
 
CSS vs. JavaScript - Trust vs. Control
CSS vs. JavaScript - Trust vs. ControlCSS vs. JavaScript - Trust vs. Control
CSS vs. JavaScript - Trust vs. ControlChristian Heilmann
 
Leveling up your JavaScipt - DrupalJam 2017
Leveling up your JavaScipt - DrupalJam 2017Leveling up your JavaScipt - DrupalJam 2017
Leveling up your JavaScipt - DrupalJam 2017Christian Heilmann
 
The Soul in The Machine - Developing for Humans (FrankenJS edition)
The Soul in The Machine - Developing for Humans (FrankenJS edition)The Soul in The Machine - Developing for Humans (FrankenJS edition)
The Soul in The Machine - Developing for Humans (FrankenJS edition)Christian Heilmann
 

Más de Christian Heilmann (20)

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

Último

Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 

Último (20)

Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 

Finding things on the web with BOSS