Christian Heilmann

Posts Tagged ‘yahoo’

FOWA Dublin – Powerful Tools that You Need (and Probably Don’t Know About)

Sunday, May 16th, 2010

Last Friday I was up in Dublin at the Future of Web apps and gave my talk “Powerful Tools that You Need (and Probably Don’t Know About)”. I took FOWA as an opportunity to (re-)introduce the audience to some of the tools Yahoo offers and to brand the drive of developers to do everything by themselves instead of using already built solutions as ineffective.

The slides of my talk are available on SlideShare:

The audio of the talk is on Archive.org:

The video of the talk is available on Ustream:

Here are the resources I talked about as links:

Also check the YDN blog in the next few days for a full FOWA report.

Leancamp London – a new outlook on startups

Tuesday, May 11th, 2010

After spending the past weekend at Warblecamp I went up to the construction site that is the Great Western Studios to attend Leancamp. In essence, Leancamp was an unconference trying to promote a new, more agile and leaner approach to starting your own business. Instead of trying to dazzle investors with great visuals and random predictions of future prosperity you concentrate on what you want to build for whom first and then spend as little as possible to achieve as much as possible. Being nimble, agile and lean is more important than showing impressive numbers and burning through a lot of cash before hopefully being bought by somebody.

leancamp scheduleLeancamp attendees.

With me being very oblivious to the pains and ideas of having an own startup my part in Leancamp was two-fold: giving a talk introducing Yahoo technologies that startups can benefit from (YQL, YUI, Design Patterns) and interviewing David Heinemeier Hansson of 37 Signals about their new book Rework for the YDN Theatre.

The latter came as a bit of a surprise as I neither knew anything about the book or much about 37 signals really (never having had a small company I never used BaseCamp). So I spent my weekend reading the book to prepare myself for the interview. For me it was a bit of a blast from the past as I used to work for a radio station constantly interviewing people before becoming a web developer.

My talk had – after a few initial planning hickups – a lot of people in the room and covered all the things Yahoo offers for companies to use for free to build quick prototypes that can easily be turned into full blown products without worrying about scaling and them working in an environment as hostile as the internet. The slides are available on SlideShare and the audio at archive.org.

I once again was fascinated just how many of Yahoo’s tools are not known to people. I do think I am doing quite a good job promoting them but clearly not enough :)

I will write more about the interview with David Heinemeier Hansson and the book once the video is out.

All in all Leancamp was an interesting (un)conference for me as it meant I met people from environments I normally don’t hang out in. The organisation was good (exception was the lack of food as it ran out very quickly – although @farhan was nice enough to get me a sandwich while I was preparing my talk).

There were some really good discussions going on and I am sure a lot of the material that was recorded will show up on the Leancamp site sooner or later.

GeoPlanet Explorer – another showcase for quick development with YQL and YUI

Friday, February 26th, 2010

A few days ago Gary Gale pinged me on messenger and subsequently carried a cup of coffee to my desk to pester me with another challenge. This time he talked about just how rich and cool the GeoPlanet data is and that it is tough to show people this in a simple interface. Internally we have a few pretty cool tools for testing and analyzing the data but most of them are too loaded with information only understandable for the geo folk out there. So in essence, the benevolent overlord of geo technologies in Yahoo was asking to build a simple interface to navigate the GeoPlanet data.

Well, this morning I got a chance to have a go at his request and here’s the GeoPlanet Explorer interface for you. Check the following screencast to see it in action:

Building the interface wasn’t magic – I used YQL to access the data, write a few lines of PHP to display it in a nested list and then added a few lines of YUI3 JavaScript to collapse and expand the location details.

Notice that the whole interface uses progressive enhancement throughout. If you have no JavaScript at your disposal you get a static map and all the information in one single page. The lat/lon links open in Yahoo Maps and you can see the location there.

If you have JavaScript enabled the interface collapses and the map is Ajax and will be refreshed every time you click on a lat/lon link.

The source code of the GeoPlanet Explorer is available on GitHub and it can give you a few pointers how to use the GeoPlanet API with YQL for your own solutions.

TTMMHTM: data.gov.uk live, CrisisCamp, Pixel stuff and Windows 95 explained!

Friday, January 22nd, 2010

Things that made me happy this morning:

  • The data.gov.uk release yesterday was a great event. UK House Prices got applauded, I sat next to Tim Berners-Lee and I managed to pester people from the government to have me come around and showcase YQL!
  • Gource is a very sexy visualisation of Git commits, forks and so on.
  • This Saturday Yahoo will host CrisisCamp Haiti
  • Metal Slug sprites is a collection of all the sprites in all their pixely goodness. Me having spent a lot of time pixeling stuff (notice the browser support info – this is how old this is), I am impressed.
  • Jennifer Aniston and Matthew Perry show us how Windows 95 works.”Look Matthew I’m computing!”
  • Want to buy a jumbo jet? Comes with slight water damage – yes, this is the Hudson River one.
  • Tickery shows you which other people two people on Twitter follow.

Building a (re)search interface for Yahoo, Bing and Google with YQL

Wednesday, December 9th, 2009

If you do a lot of research using web searches can be frustrating. Different search engines have different results, you need to open things in tabs and in general it can be pretty time consuming to find what you need.

To make this a bit easier I thought it’d be cool to have an interface that searches Yahoo, Google and Bing at the same time and thus I built GooHooBi:

As explained in the screen cast the thing under the hood of GooHooBi is YQL. Instead of fussing about with all the different search APIs all I did was to play with the YQL console and put together the following YQL statement:

select * from query.multi where queries=’
select Title,Description,Url,DisplayUrl
from microsoft.bing.web(20) where query=”cat”;
select title,clickurl,abstract,dispurl
from search.web(20) where query=”cat”;
select titleNoFormatting,url,content,visibleUrl
from google.search(20) where q=”cat”

The query.multi table in YQL allows you to list a few queries which will be executed one after the other on the YQL server. The queries themselves I put together by using the different tables in the console and only selecting what I really need from each of them.

You can try this query in the YQL console and you can see the JSON output.

The rest is pretty easy. Cut this up into a parameterized string and do a cURL call:

$query = filter_input(INPUT_GET, ‘search’, FILTER_SANITIZE_SPECIAL_CHARS);

$queries[] = ‘select Title,Description,Url,DisplayUrl ‘.
‘from microsoft.bing.web(20) where query=”’.$query.’”’;
$queries[] = ‘select title,clickurl,abstract,dispurl ‘.
‘from search.web(20) where query = “’.$query.’”’;
$queries[] = ‘select titleNoFormatting,url,content,visibleUrl ‘.
‘from google.search(20) where q=”’.$query.’”’;
$url = “select * from query.multi where queries=’”.join($queries,’;’).”’”;
$api = ‘http://query.yahooapis.com/v1/public/yql?q=’.
urlencode($url).’&format=json&env=store’.
‘%3A%2F%2Fdatatables.org%2Falltableswithkeys&diagnostics=false’;

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $api);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
$data = json_decode($output);

Then loop over the results and assemble the HTML output.

You can check the source code of GooHooBi.

In addition to this, here’s a half hour live coding screencast how to build something similar:

Building a search mashup with YQL using Google, Yahoo and Bing – live :) from Christian Heilmann on Vimeo.

The source of the code built in this screencast is also on GitHub.