Top Banner
How being lazy makes you a be2er developer. Christian Heilmann – Web 2.0 Expo, Prague – October 2009 cleverly
68

Being Cleverly Lazy

Sep 12, 2014

Download

Technology

My presentation at the Web Expo in Prague, Czech Republic about making our lives easier as developers by using libraries and building reusable components.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Being Cleverly Lazy

How being lazy makes you a be2er developer.

Christian Heilmann – Web 2.0 Expo, Prague – October 2009

cleverly

Page 2: Being Cleverly Lazy

I am a developer evangelist.

Page 4: Being Cleverly Lazy

<dfn>cleverly lazy</dfn>

Lazy:“I don’t want to do that.”

Cleverly lazy:“I don't want to do that ever   again so I do it right this Eme.”

Page 5: Being Cleverly Lazy

Lazily build products:

Do the job, but are impossible to maintain.

Page 6: Being Cleverly Lazy

Cleverly lazily build products:

Do the job, are easy to understand, extend and are built on a solid base.

Page 7: Being Cleverly Lazy

Our job: evolving the web

Page 8: Being Cleverly Lazy

To do this, we need to be free to do new things.

Page 9: Being Cleverly Lazy

Problem is that as developers, we stand on our own way.

Page 10: Being Cleverly Lazy

The biggest developer trap.

h"p://www.flickr.com/photos/snappa2006/3194326965/

Page 11: Being Cleverly Lazy

Complex

Simple

Feedback

Features

The feature loop

Page 12: Being Cleverly Lazy

We don't develop the web ‐ we fill it up with soluEons to the same problem all of which are half done.

Page 13: Being Cleverly Lazy

This is my soluEon, and it is be2er than anybody elses, because...

Page 14: Being Cleverly Lazy

Short a2enEon span.

Page 15: Being Cleverly Lazy

Code wrecks are a security issue!

h"p://www.flickr.com/photos/paleontour/2489523776/

Page 16: Being Cleverly Lazy

Browsers suck!

Page 17: Being Cleverly Lazy

Things you need to know as a web developer:★ The technologies involved★ How browsers deal with these technologies and how 

they fail to support them★ Security concerns and a2ack vectors★ Usability and accessibility of the product★ InternaEonalisaEon of our products ★ Performance concerns★ MulEple plaXorm support ★ Flexibility of the interface 

Page 19: Being Cleverly Lazy

A solid foundaEon.

h"p://www.flickr.com/photos/mangpages/2111892822/

Page 20: Being Cleverly Lazy

Building with components.

http://www.flickr.com/photos/seven13avenue/2080281038/

Page 21: Being Cleverly Lazy

A good debugging environment.

h"p://www.flickr.com/photos/anijdam/3587129389/

Page 22: Being Cleverly Lazy

Planning for extension.

h"p://www.flickr.com/photos/anniemole/103641208/

Page 23: Being Cleverly Lazy

Write documentaEon.

h"p://www.flickr.com/photos/tnarik/366393127/

Page 26: Being Cleverly Lazy

http://ui.jquery.com/

http://ui.jquery.com

Page 27: Being Cleverly Lazy
Page 29: Being Cleverly Lazy

DocumentaEon.

Page 32: Being Cleverly Lazy
Page 33: Being Cleverly Lazy
Page 36: Being Cleverly Lazy

Using the web.

CMS

Page 37: Being Cleverly Lazy
Page 38: Being Cleverly Lazy

Using APIs.

Page 39: Being Cleverly Lazy

The Yahoo Query Language, or short YQL is a unified interface language to the web.

h2p://developer.yahoo.com/yql/

Page 40: Being Cleverly Lazy

select {what} from {source} where {conditions} | {filters}

Page 42: Being Cleverly Lazy

For example:

select * from geo.places where text='london,uk'

Page 43: Being Cleverly Lazy
Page 44: Being Cleverly Lazy
Page 45: Being Cleverly Lazy

Get only the where on earth ID

select woeid from geo.places where text='london,uk'

Page 46: Being Cleverly Lazy

Then mix:

select id from flickr.photos.search where woe_id in (select woeid from geo.places where text='london,uk') and license=4

Page 47: Being Cleverly Lazy

Then mix:

select id from flickr.photos.search where woe_id in (select woeid from geo.places where text='london,uk') and license=4

Page 48: Being Cleverly Lazy

And get all the info...

select * from flickr.photos.info where photo_id in (select id from flickr.photos.search where woe_id in (select woeid from geo.places where text='london,uk') and license=4)

Page 49: Being Cleverly Lazy
Page 50: Being Cleverly Lazy
Page 51: Being Cleverly Lazy
Page 52: Being Cleverly Lazy
Page 53: Being Cleverly Lazy

http://isithackday.com/hacks/cantine/index.php?loc=covent+garden

Display the results in a few lines...

http://isithackday.com/hacks/ajaxexperience/flickrgeophotos.html

Page 54: Being Cleverly Lazy

http://isithackday.com/hacks/cantine/index.php?loc=covent+garden

h2p://isithackday.com/hacks/canEne/

Or use already exisEng widgets

Page 56: Being Cleverly Lazy
Page 57: Being Cleverly Lazy
Page 58: Being Cleverly Lazy
Page 59: Being Cleverly Lazy
Page 60: Being Cleverly Lazy
Page 61: Being Cleverly Lazy

Learn YQL by doing

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

Page 62: Being Cleverly Lazy

Any data will do...

select * from

atomcsvfeedhtmljsonmicroformatsrssxml

Page 63: Being Cleverly Lazy

Any data will do...

http://www.dcs.gla.ac.uk/~joy/fun/jokes/TV.html

Page 65: Being Cleverly Lazy
Page 67: Being Cleverly Lazy
Page 68: Being Cleverly Lazy

Christian Heilmann

http://wait-till-i.com

http://developer-evangelism.com

http://twitter.com/codepo8

Thanks!

h2p://www.flickr.com/photos/mringlein/3463288828/