Georgia Tech Hack Day
-
Upload
christian-heilmann -
Category
Technology
-
view
4.829 -
download
3
Transcript of Georgia Tech Hack Day
HackTech
Christian Heilmann | http://wait-till-i.com | http://scriptingenabled.org
Georgia, Atlanta, US, Hack-U Georgia Tech, March 2009
Hello, I am Chris.
I am a hacker and a geek.
And I love to share my passion.
http://wait-till-i.com
http://twitter.com/codepo8
It is nice to be back in Atlanta.
Last time I was here for the Webmaster Jam session
All work and no play.
This time I am here to help out with the University Hack Day
for Georgia Tech.
As part of a big hack team.
All of which are not here yet because of snow.
I live in London, England.
And coming here I made a new enemy.
Hartsfield Airport
Arrival + Passport Control + waiting for luggage.
Hartsfield Airport
Go through customs +put luggage on another
conveyor belt.
Hartsfield Airport
Go through security oncemore – belt out, shoes
off, laptop out.
Hartsfield AirportTake train to main
baggage retrieval
Hartsfield Airport
Your luggage is probably here
All the luggage from all the flights of the same airline gets collected in the arrivals hall for
pickup at a single point.
This baggage belt is publicly available, no need to have a
ticket.
Asking for the reason of this procedure built to delay
people and make it easy to steal luggage what is the
answer?
Security, sir.
This was not built by geeks.
Geeks are great to have as they get excited about everything.
Geeks are also full of ideas and need a channel to release
these ideas.
This is why we at Yahoo have Hack Days.
For 24 hours normal work is put on hold and the geeks are
allowed to roam free.
We can take any of our systems and build something
totally new with it.
This allows people to do what they always wanted but didn’t have a chance to.
It also allows people to play with new technologies.
This was such a massive success that we thought to
take it on the road.
We now have Open Hack Days around the globe.
Sunnyvale (2x), Taiwan, London, Bangalore (2x), Sao Paulo
These are massive affairs
And we do University Hack Days!
USA, India, Great Britain
These are somewhat smaller.
But they follow the same flow.
But they follow the same flow.
Hack
Snack
Eat!
Hack
Recharge
Hack Fix
Present
Win!
The question is though: where do you start?
After all, you are not a geek, right?
A good hack starts with an idea.
It starts with something you care about.
And it starts with having fun with it.
Nobody expects you to deliver the hottest new thing for the
market.
But we expect you to have a good stab at building
something new.
A good hack doesn’t need to be a big thing.
But it should make a difference.
Here’s one not so current example.
http://en.wikipedia.org/wiki/John_Snow_(physician)
HACKER!
John Snow helped the London authorities in 1854 to trace
back the reason of cholera...
...by placing the deaths caused by cholera on a map
and analyze the surroudings.
The answer:
water supply!
This hack relied on the first thing you should think about.
DATA
John Snow spent quite a while collecting his data.
Nowadays this is much easier and you don’t need to be a data wizard.
What do you see when you surf the web?
End users see web sites
Developers see code.
I see sweet, sweet data!
And it has never been easier to get these sweets and bake
them into something new.
The oldest way is to cheat your way in using a very cool
piece of software.
Using cURL, you can be your own browser and get any
data from the web to remix.
The problems are that you don’t get the data back in a
structured way.
You’re at the mercy of the HTML structure and if that one changes your hack fails to work.
This is why clever companies realized that it does make sense to offer their data in easier to digest formats.
RSS or Really Simple Syndication was born.
http://www.guardian.co.uk/travel/restaurants
http://www.guardian.co.uk/travel/restaurants/rss
Using RSS or Atom feeds you get data in a predictable and
easy to convert format.
It doesn’t allow you to request specific data or define a different format though.
This was the next step: REST APIs or Web Services.
REST based Web Services allow you to request the
correct data from a system.
Yahoo Answers
http://uk.answers.yahoo.com
http://answers.yahooapis.com/AnswersService/V1/questionSearch?query=sunderland®ion=uk&lang=e
n&appid=yahoodemo
... lots more...
http://developer.yahoo.com/answers/V1/questionSearch.html
A lot of web services also allow you to choose your data
format.
http://answers.yahooapis.com/AnswersService/V1/questionSearch?query=sunderland®ion=uk&lang=en&appid=yahoodemo&start=1&output=
json&callback=useme
This makes it dead easy to get the data and re-use it in your
own interfaces.
What if you want to use several sources?
There’s Yahoo Pipes for mixing, filtering and
matching.
http://pipes.yahoo.com
Or if you like SQL-style data conversion there’s YQL:
http://developer.yahoo.com/yql/console/
Both of these systems allow you to reach data from Yahoo
and other services and pre-filter it for use in your own
hacks.
Let’s think about the next thing you should consider
about your hack.
A working and interesting interface.
I don’t care what interface your hack uses.
However, if your build a web application...
... be aware that it is deceptively easy to write
HTML, CSS and JavaScript...
... but there are dozens of ways to mess it up.
The wild wild web is full of bad browsers and setups.
You have no right to require a certain setup and you have no clue about what is used.
Therefore it is a good idea to find a way to abstract these unknowns away from you.
If you’re thinking about building something running
on mobiles (cell phones), this increases tenfold.
Two helpers (from us) are available to you:
Here are our helpers:
http://developer.yahoo.com/yui/ http://mobile.yahoo.com/developers
YUI
BluePrint
There will be detailed talks about these later in the week.
One thing I want people to think about when building
interfaces.
Think about accessibility.
Any web product should be available to users regardless of their ability.
The next thing to wonder is how to get users for your hack.
One cool thing is that companies nowadays not
only offer their data to you...
...but also allow you to piggy-back on their user
relationships.
http://code.google.com/apis/opensocial/http://developer.yahoo.com/social/socialdir/
http://developers.facebook.com/connect.php
You can also build applications for where people
are anyways.
http://developer.yahoo.com/yap/
And of course there is Twitter.
v v v | | v | v | .-, | | |.--./ / | _.---.| '-. (__..-" \ \ a | ',.__. ,__.-'/ '--/_.'----'`
T H E W H A L E S L E E P S
T O N I G H T
How about some hack examples?
Let’s take Twitter.
I’m a big Twitter user.
I like that I get notified when there is a new person
following me.
What I don’t know is when people left me.
Or what I was telling the world before they left me.
(which could be related)
So I read the API docs, and found the user_timeline
function.http://apiwiki.twitter.com/REST+API+Documentation#usertimeline
Notice the repetition.
For every tweet there is the whole user information and a
timestamp.
Using this I could show the change in user numbers and
see if that happened in a very short period of time.
Adding YUI CSS grids and Google Charts I built
TweetEffect.com
http://tweeteffect.com/?user=codepo8
And ended up where I quite didn’t expect to be.
Another quick example. This time from Rasmus.
How do you get a map of all the current earthquakes on
the planet?
http://paul.slowgeek.com/hacku/examples/jslibrary4.php
What about reach?That was us, time for you to show
what you can do!
Build teams and think of a hack.
Find a need.
Or look at an existing solution from a different angle.
And then know where to go.
All of our APIs, documentation and examples:
http://developer.yahoo.com
Very quick and dirty code examples for hacks:
http://paul.slowgeek.com/hacku/
Rasmus Lerdorf’s demoshttp://talks.php.net/show/hacku/1
Start thinking about the hack and plan it.
You will have 24 hours to build a working prototype.
Don’t get lost in shiny bells and whistles and try to impress with a snazzy
interface.
Don’t be too shy to ask for help, we are here all week!
Don’t listen to the feature creature on your shoulder to add yet another thing to the
hack.
Instead plan for a solid base functionality and then build
on top of that.
However, don’t get too stressed when there are a few broken bits.
We want you to find your own potential and show us what you can do with our offers!
Keep in touch:
Christian Heilmann
http://wait-till-i.com
http://scriptingenabled.org
http://twitter.com/codepo8
T H A N K S !