Spelen met het Yahoo! SearchMonkey Platform

Het Yahoo! SearchMonkey Platform is enkele dagen geleden open gesteld voor het grote publiek. SearchMonkey kadert in de nieuwe strategie van Yahoo! om een opener zoekmachine beleid te voeren. Het laat toe aan ontwikkelaars om de relevantie en bruikbaarheid van zoekresultaten te verbeteren door applicaties/mash-ups te schrijven op basis van gestructureerde (visuele) data. Bijgevolg wordt er mee verkeer naar je website geleid en op het lange termijn zal het resulteren in een betere page ranking. Ik heb mij er eens aangezet en zelf een applicatie geschreven.

Het achterliggend idee van mijn applicatie is het volgende. Als je bij het zoeken resultaten van micro-blogging services (die overigens hoog ranken) als Twitter tegenkomt zegt dat vaak niet veel.

Daarom dat ik eraan dacht om een eenvoudige applicatie te schrijven die een mooi overzicht geeft van relevante informatie over de microblogger. Deze informatie bevat het betreffende bericht/status aangevuld met naam, website, locatie en een mooi plaatje. Daarnaast zijn er eventueel hyperlinks naar de registratie- en helppagina’s en uitleg over de service. De resultaten zijn misschien nog steeds niet relevant, maar ze zijn wel aantrekkelijker en logischer opgebouwd. Ze trekken de aandacht en doen de surfer vragen stellen. Wat voor iemand schuilt er achter dit bericht? Kan hij iets voor mij betekenen? Hoe maak ik ook een profiel aan? Resultaat: meer verkeer naar jouw pagina en naar de service.

Het ontwikkelingsproces van een applicatie in SearchMonkey

Eerst en vooral bestaan er drie partijen in de context van SearchMonkey. De website eigenaars, die via hun site semantische data ter beschikking stellen, de ontwikkelaar van de applicatie en de eindgebruiker die een betere zoekervaring zal genieten.

Het Yahoo! Searchmonkey platform is intuïtief. Met een beetje PHP, (x)HTML en XSLT kom je er wel, maar toch doe je er goed aan om de zeer uitgebreide documentatie eens door te nemen. Om te beginnen heb je data nodig van de website(s) waarvoor je een applicatie schrijft. Er zijn verschillende soorten data services. Enerzijds heb je data services die reeds beschikbaar zijn (jaren lang geïndexeerd) via de Yahoo webcrawler en via de microformats (hCard, hReview, hCalendar, hFeed en XFN worden voorlopig ondersteund) die websites zelf aanleveren en als dusdanig herkenbaar zijn door SearchMonkey. Wil je echter ook andere informatie (bijvoorbeeld ook hResume dat nog niet ondersteund wordt) van een pagina of web service afhalen, dan is dat ook mogelijk via Custom Data Services. Met een beetje magische XSLT en xPath kan je de data zonder problemen scrapen en kom je tot de benodigde DataRSS xml.

Nu kan je beginnen om de applicatie zelf te schrijven. Je hoort wel nog een Trigger URL Pattern te specifiëren waarop je applicatie zal toegepast worden. In mijn geval is dat bijvoorbeeld twitter.com/*. De vraag is dan wat je wenst te ontwikkelen: een enhanced result of een uitklapbare infobar onder het zoekresultaat. De volgende stap is dat je één of meerdere data services selecteert. Dit kan DataRSS xml zijn op basis van microformaten of op basis van jouw custom data service. Het echte ontwikkelingswerk begint nu pas. Met behulp van PHP zal je nu de data elementen mappen op de zoekresultaten. Uiteraard kan je niet alle functionaliteit gebruiken, maar er is wel een white list. Behoren tot de mogelijkheden: functies om strings en data te manipuleren bijvoorbeeld. De PHP, XSLT worden mooi geparsed en gevalideerd. Als je applicatie werkt kan je deze delen met andere mede ontwikkelaars of publiceren in de galerij zodat elke Yahoo! gebruiker er mee zal kunnen werken.

Conclusie

In tegenstelling tot marktleider Google, zijn ze bij Yahoo! blijkbaar stellig van mening dat de volgende generatie zoekresultaten in handen is van derden. Het is een nieuwe manier van denken: geen zware algoritmes, maar de zoekresultaten worden afgeleverd door de bedrijven, websitebouwers en andere ontwikkelaars die deze zelf kunnen optimaliseren op basis van gestructureerde data. Ik ben ervan overtuigd dat dit leidt tot een significante verbetering van de kwaliteit en relevantie van zoekresultaten. Maar: dit kan alleen door een open, transparent, gestructureerd en semantisch verantwoord web.

Het platform is eenvoudig in gebruik en biedt verregaande mogelijkheden. Hoewel SearchMonkey ontzettend vooruitstrevend is, rijzen ook hier vragen. Gaan adverteerders het platform misbruiken als spamparadijs? Hoe zit het met de gewenstheid en de gebruiksvriendelijkheid van dergelijke zoekresultaten? De vraag die me echter nog het meest boeist is hoe de developer community hierop zal inpikken. Gaan ze het aanvaarden of sterft SearchMonkey een stille dood? Om naamsbekendheid te krijgen is er alvast de SearchMonkey Developer Challenge. De boodschap is eenvoudig: schrijf een killer applicatie en maak kans om $2,500 te winnen in één van de vier categorieën: Best Enhanced Result, Best Infobar, Most Innovative Use of Structured Data en Best Data Service. De beste applicatie over de vier categorieën heen wint de hoofdprijs van $10,000(!). Wel snel wezen, want de wedstrijd eindigt reeds op 14 juni.

One thought on “Spelen met het Yahoo! SearchMonkey Platform”

Leave a Reply

Your email address will not be published. Required fields are marked *