Christian Heilmann

Posts Tagged ‘Google’

TTMMHTM: Barcamps, datasets, social mentions and Python in JavaScript

Sunday, August 16th, 2009

Things that made me happy this morning:

Young rewired state in London on the 22nd of August – hacking for teens!

Friday, August 7th, 2009

I just got pinged by Dan Morris of the BBC on Facebook (yeah it is up again) about a really cool event in London on the 22nd of August:

YOUNG REWIRED STATE
Hack the Government, 22-23 August @ Google.

THE SKINNY

Young Rewired State is a free two-day hackday for young people work in
small teams to create software hacks using open Government data.

Government will be there and listening to what you have to say and
show. Groups will present at the end of the event to press, web &
business judges, and representatives from Government – There will be
prizes!

WHEN & WHERE

22-23 August at the Google offices in London.

If you want, you can bring your parent along with you, we’ll promise
to keep them busy while you hack. Support is available for travel and
overnight stay for you if you need it.

The date is getting close now so please signup now if you’re
interested in attending!

HOW GEEKY?

We’re expecting a mix of technical ability, so chances are you’ll fit
in just fine. So, whether you just dabble with HTML or dream in
machine code, this event is for definitely for you!

We have the largest set of open Government data going, all available
for you to use. Experienced hacker mentors will be assigned to groups,
and can help as much or as little as you need.

INFO & SIGNUP

http://rewiredstate.org/young

Pass it on!

Chris

Rickrolling Google translate with YQL – Rickrollwhisper

Wednesday, August 5th, 2009

This morning I found this wonderful blog post that shows what happens when you run the “never gonna give you up” aka. RickRoll lyrics through an automated translation tool and back into English.

This has been a classic time waster using Babelfish in the past for me and I thought we could knock it up a notch and used YQL and the Google Translation API to automate this process.

Check out Rickrollwhisper to see the results.

Rickrollwhisper

Google Translate is one of the Open Data Tables built by the outside community for YQL and you can use it simply by providing a source text and the language to translate to:

select * from google.translate where q=”this is a test” and target=”de”;

Try it out for yourself or see it in the console.

The result is the text as a translatedText element:




true

185
178
2426


Dies ist ein Test

Using this, I simply took an array of supported languages and took a random one each time I translated the lyrics:

$lyrics = “We’re no strangers to love,
[…]
I just wanna tell you how I’m feeling,
Gotta make you understand”;

$target = getlanguage();
$t = getstuff($lyrics,$target);
$trans1 = ‘

‘.$t.’

‘.

Language: ‘.$target.’

‘;
$target2 = $target;
while($target2 == $target){
$target2 = getlanguage();
}

$t = getstuff($t,$target2);
$trans2 = ‘

‘.$t.’

‘.

Language: ‘.$target2.’

‘;
$result = getstuff($t,’en’);

function getlanguage(){
$languages = array(‘it’,’nl’,’fr’,’de’,’sv’,’pl’,’ro’);
return $languages[rand(0,sizeof($languages)-1)];
}

function getstuff($text,$target){
$root = ‘http://query.yahooapis.com/v1/public/yql?env=’.
‘http%3A%2F%2Fdatatables.org%2Falltables.env&format=json&q=’;
$yql = ‘select * from google.translate where q=”’.$text.’”’.
’ and target=”’.$target.’”’;
$url = $root.urlencode($yql);
$curl_handle = curl_init();
curl_setopt($curl_handle, CURLOPT_URL, $url);
curl_setopt($curl_handle, CURLOPT_CONNECTTIMEOUT, 2);
curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1);
$buffer = curl_exec($curl_handle);
curl_close($curl_handle);
if (empty($buffer)){
return ‘Error retrieving data, please try later.’;
} else {
$json = json_decode($buffer);
$result = $json->query->results->translatedText;
return $result;
}

}

Maybe I find the time to create the multitranslate as an open table to make this more generic.

TTMMHTM: BOSS community, inate music, encoding and chinese glyphs for geeks, happiness, map overlays, JS scope and web databases

Saturday, August 1st, 2009

Things that made me happy this morning:

TTMMHTM: Email clients survey, Disney Steampunk, RFID luggage, search interfaces, Wave protocol open sourced and a great colour schemer

Thursday, July 30th, 2009

Things that made me happy this morning: