SlideShare a Scribd company logo
1 of 87
Download to read offline
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

More Related Content

What's hot

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
 

What's hot (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
 

Viewers also liked

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
 

Viewers also liked (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 to 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 to 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
 

More from 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
 

More from 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)
 

Recently uploaded

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 

Recently uploaded (20)

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 

Finding things on the web with BOSS