Building web applications using the web.

Post on 19-May-2015

2.881 views 4 download

description

Introduction on how to build web applications quickly by using the web and YQL. Delivered at Open Hack Day Brazil 2010

Transcript of Building web applications using the web.

Building web applications

using the web.Christian Heilmann, Brazil Open Hack Day, March 2010, Sao Paulo, Brazil

Web development is becoming more and more easy.

The reason is that the web itself became a platform to build with.

Another reason is that we have pre-built blocks that can be put together quickly to create something.

Something that works, is easy to maintain and can deal with change.

The main trick to building great web products is shifting your point of view.

The interface is not the start.

The interface comes at the end - as it needs the most work.

What you start with is information and a goal.

In other words:

What does your app deal with and how do you make it useful for the end user?

Let’s see some examples of that:

http://keywordfinder.org

Keywordfinder

The trouble with data:You need to get access to the data sources (API keys, authentication)You need to get data in formats that are easy to use for your use caseYou need to filter the data down to what you really want to have in the end. All of the above multiplies in annoyance with the amount APIs you use.

A great workaround:

http://developer.yahoo.com/yql/console/

YQL turns the web into your database.

select * from {datasource} where {conditions}

select * from flickr.photos.search where text="donkey"

select * from google.news where q="healthcare"

select * from query.multi where queries in ('select * from nyt.article.search where query="healthcare"','select * from microsoft.bing.news where query="healthcare"','select * from google.news where q="healthcare"'

)

select content from html where url="http://www.foxnews.com/" and xpath="//h2/a"

select * from google.translate where q in (select content from html where url="http://www.foxnews.com/" and xpath="//h2/a"

) and target="pt"

insert into wordpress.post (title, description, blogurl, username, password) values ("Test Title", "This is a test body", "http://yqltest.wordpress.com", "yqltest", "password")

Using YQL has a lot of benefits:

No time wasted reading API docsUsing the console makes creating complex queries dead easy.Data filtering down to the least amount necessary.Fast pipes.Caching + converting Server-side JavaScript

Using YQL is easy! (PHP)

Using YQL is easy! (JavaScript)

Starting with the data made me independent of the final platform.

The next trick is to use libraries to make the problem of browsers vanish.

Libraries.

(...)

And tools that work around cross-platform issues.

Appcelerator Titanium

http://www.appcelerator.com/

If you build your app, start with interfaces that work everywhere.

When you have that - enhance it to make the experience smoother.

Data to be used can be in “offline” formats - the web will take care of that.

http://winterolympicsmedals.com/

So, think of a problem to solve and then start gathering your data.

Then use the blocks I talked about to put the solutions together.

  Chris:an Heilmann  h%p://wait‐:ll‐i.com   h%p://developer‐evangelism.com  h%p://twi%er.com/codepo8   

Thanks!