Giving Technology To The World
-
Upload
christian-heilmann -
Category
Technology
-
view
3.556 -
download
1
description
Transcript of Giving Technology To The World
Givingtechnologytotheworld.
Advoca4ng,ShowcasingandExplaining
Chris4anHeilmann,Yahoointernaltalk,Sunnyvale,California,04/02/2010
Disclaimer:Iwillinthispresenta4oncomplainaboutsomeexamplesthatareliveonwebsites.IdothiscauseIhaveachancetochangethemandtoencourageustodobeKer.Idorealisethatitiseasytojudgedecisionswiththebenefitouthindsight‐butthisisnotanexcusetorepeatmistakesofthepast.Complacencyistheenemyofinnova4onandcommunica4on.
Wri4nggreattechnologyisathinggooddevelopersdo.
Explainingthetechnologytoothers,makingitunderstandableandmaintainableisatotallydifferentthing.
Thereareafewthingsthatmakeadeveloperabadadvocateoftechnology.
1. WeknowthesubjectmaKer.2. Wearenotknownforour
pa4ence.3. Wehavetogothroughalotof
painandseethisasausefullearningexperienceforeverybody.
4. Thisisallsoobvious!Goodcodeexplainsitself!
Ontheotherhand,salesandmarke4ngpeoplearebadtechadvocates.
1. Thebrandandourproductcomesfirst.
2. Thereisagoodandposi4vestoryineverything.
3. Itisaboutthefun,connec4ngwithotherpeopleanddoinglikecooltechstuff‐andlike,otherstuff.
4. Thereisnocompe44on!
Goodtechadvocacyisamashup.
Tosucceedingivingtechtotheworldyouhavetochangeyourapproach.
Usethis!Itrocks!
Here’saproblemandthisisasolu4on.
Themainthingtoanswertoanyenduseranddeveloperoutthereis:
What is in it for me?
Developersarebusypeopleanddon’thave4metoreadlongdocuments.
Detaileddocumenta4onisneeded,butisonlyusedwhenthingsalreadywentwrong.
Inordertogetpeopletocareandgetthemtoplaywithwhatyouoffer,youneedasimplewayin.
Someexamples.
hKp://keywordfinder.org/
hKp://icant.co.uk/geomaker/index.php
hKp://isithackday.com/hacks/placemaker/tweet‐loca4ons.php
hKp://icant.co.uk/goohoobi/index.php?research
hKp://developer.yahoo.com/yui/grids/builder/
hKp://developer.yahoo.com/yui/grids/builder/
hKp://developer.yahoo.com/yui/ar4cles/hos4ng/#configure
YQLhKp://developer.yahoo.com/yql/console/
Bringthedataoutintotheopen‐assoonaspossible.
Keeptheeyeontheendresultandexplainthewaytogetthere.
ThisexpectsmetodownloadtheSDK,getanauthen4ca4oncode,authen4cateandthenIgetsomedata.
select*fromflickr.photos.searchwheretext="panda"limit3select*fromrsswhereurl=”hKp://rss.news.yahoo.com/rss/topstories”and4tlelike"%China%"
Thedata,howeverdoesn’tneedanyauthen4ca4on.
Thisisacommonerror‐packingtoomuchinforma4onintoanexample.
UsingYQLiseasy!(PHP)
UsingYQLiseasy!(JavaScript)
Explainthewaytothedata,don’ttrytogetitalldoneinonestep.
An4cipatestumblingblocks,andwritethestorytothefullresults.
• Here’showtogetpublicdata.• Here’showtogetprivatedata.• Here’showtousethereturnedinforma4on.
hKp://maps.google.com/maps/api/sta4cmap?sensor=false&size=300x300&maptype=roadmap&markers=color:blue|label:I|37.4225,‐122.14246&key={MAPKEY}
Knowyourenvironment.
Knowyourenvironment.
• Writedefensivecode• Checkonlinestatus• Listdependenciesveryearly• Provideabuildandtestscript• Provideademokey
Makeiteasytouseyourcode.• Providealivedemo/showscreencast
• Provideafulldownload(GitHub)• Offerhos4ngifneeded• Documentfulldownloadandlinkbacktoliveexample.
Writeexcellentcopyandpastecode.
• Linkallresources• Providethefullscriptupfront• Validateandsecureyourcode• Usebestprac4ces
Bonustricks:• Showhowyourcodeplayswellwithothers(successfulproducts)
• Giveexampleshowusingyourproductmadeotherssuccessful
• Advocatemaintainableandreusablecodewithyourexamples.
Samplecodeshouldbethecleanestandbestcodeyoueverwriteinyourcareer.
Anythingyoudoinsamplecodewillbeusedandimitated.
Ifyoudoagoodjob,youcanhelpteachgreatdevelopersoftomorrow.
Ifyoudoabadjob,youcausetruisms,badcodingprac4cesandfailatadvoca4ngyourselfandyourcompanyasthoughtleaders.
Themaintricktogreatdocumenta4onandexamplesiscollabora4on.
Workwithsomeonetoaskyoutherightques4onsandchallengeyoutocreatearock‐soliddemo.
Chris4anHeilmannhKp://wait‐4ll‐i.comhKp://developer‐evangelism.comhKp://twiKer.com/codepo8
Thanks!