Successfully reported this slideshow.
Your SlideShare is downloading. ×

APIs in Life, Music and Wiffleball

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Upcoming SlideShare
Exceldental office
Exceldental office
Loading in …3
×

Check these out next

1 of 31 Ad

APIs in Life, Music and Wiffleball

This talk expresses my love and intrigue of APIs, demonstrating where I've found platforms and APIs in real life, music and things like wiffleball. I also riff on APIs with my wife (safe for work) and a bonus API-ification of the Delorean. One of my favorite presentations, I've given this talk at GeekyByNature (NYC, 3.31.2011) and at NSWG (Newburyport, 9.29.11). Comments and feedback welcome at @chuckstar or chuckstar.com/blog.

This talk expresses my love and intrigue of APIs, demonstrating where I've found platforms and APIs in real life, music and things like wiffleball. I also riff on APIs with my wife (safe for work) and a bonus API-ification of the Delorean. One of my favorite presentations, I've given this talk at GeekyByNature (NYC, 3.31.2011) and at NSWG (Newburyport, 9.29.11). Comments and feedback welcome at @chuckstar or chuckstar.com/blog.

Advertisement
Advertisement

More Related Content

Recently uploaded (20)

Advertisement

APIs in Life, Music and Wiffleball

  1. 1. APIs in life, music and wiffleball Chuck Freedman | @chuckstar
  2. 2. What are APIs? ⱶ Application Programming Interface ⱶ Coding against a platform ⱶ Commanding an app, service, platform, device ⱶ Responding to what the platform does ⱶ Usually documented ⱶ Often referred to as ‘part of’ SDK Chuck Freedman | @chuckstar
  3. 3. APIs and me ⱶ 13 years coding ⱶ 6 years building platforms ⱶ Working on Yahoo Maps in 2005-06 ⱶ Similar experience at Ribbit, Litl ⱶ Observe how things function around me ⱶ How to build better platforms Chuck Freedman | @chuckstar
  4. 4. Unlocking an API ⱶ Services like maps, twitter ⱶ Database, images, code ⱶ Powered web sites ⱶ Needed to become portable ⱶ Power apps through API ⱶ SDK gives developer tools to work with API ⱶ Documentation ⱶ Forums ⱶ Examples ⱶ IDE (editors) Chuck Freedman | @chuckstar
  5. 5. Example API ⱶ Instagram ⱶ To browse photos ⱶ Encourage developers ⱶ Make instagram better ⱶ Media: Search, Popular, Load by ID ⱶ Locations, Tags, Relationships ⱶ Authentication ⱶ http://instagram.com/developer/ Chuck Freedman | @chuckstar
  6. 6. APIs that command ⱶ Methods ⱶ Simple way to tell you what to do ⱶ In life... the way a traffic light signals us Chuck Freedman | @chuckstar
  7. 7. APIs that command ⱶ The traffic light Chuck Freedman | @chuckstar
  8. 8. APIs that command ⱶ The traffic light ⱶ Driving ⱶ Go(), SlowDown(), Stop() ⱶ Walking ⱶ Walk(), DoNotWalk() ⱶ Timer Event Chuck Freedman | @chuckstar
  9. 9. APIs with control ⱶ Methods with Paremeters ⱶ Tell you what to do with definition ⱶ In life... controlling a wiffleball Chuck Freedman | @chuckstar
  10. 10. APIs with control ⱶ The wiffleball Chuck Freedman | @chuckstar
  11. 11. APIs with control ⱶ The wiffleball ⱶ Not just Instructions ⱶ Throw() ⱶ Ball.Orientation ⱶ Speed ⱶ Angle ⱶ Grip ⱶ Wind Chuck Freedman | @chuckstar
  12. 12. APIs with control Chuck Freedman | @chuckstar
  13. 13. APIs & properties ⱶ Classes group similar functionality ⱶ Inherent values in things ⱶ Follow a pattern ⱶ In life... a basketball team Chuck Freedman | @chuckstar
  14. 14. APIs & properties ⱶ A basketball team Chuck Freedman | @chuckstar
  15. 15. APIs & properties ⱶ A basketball team ⱶ Players [Array] ⱶ Height ⱶ Speed ⱶ Shooting ⱶ Position ⱶ Defense Chuck Freedman | @chuckstar
  16. 16. APIs & properties ⱶ A basketball team ⱶ Strategy.execute() ⱶ Player[1].goToAnd… ⱶ x,y ⱶ SetPick() ⱶ Pass() ⱶ Fake() ⱶ Shoot() Chuck Freedman | @chuckstar
  17. 17. APIs with craft ⱶ Changing method sequence ⱶ Customizing user experience ⱶ In life... playing an instrument Chuck Freedman | @chuckstar
  18. 18. APIs with craft ⱶ The piano Chuck Freedman | @chuckstar
  19. 19. APIs with craft ⱶ The piano ⱶ Piano.keyEventListener.. ⱶ KeyID ⱶ playNote() ⱶ The human ⱶ Ear.musicListener.. ⱶ hearNotes() ⱶ recognizeChord() ⱶ enjoyHarmony() Chuck Freedman | @chuckstar
  20. 20. APIs with craft ⱶ The piano Chuck Freedman | @chuckstar
  21. 21. APIs with craft ⱶ The piano Chuck Freedman | @chuckstar
  22. 22. APIs with response ⱶ Commands result in commanded response ⱶ App is listening, in session with service ⱶ A service prompts UI with events ⱶ text message ⱶ new Facebook message ⱶ contact logged into Skype ⱶ In life... knowing you’re hungry Chuck Freedman | @chuckstar
  23. 23. APIs with response ⱶ Knowing you’re hungry Chuck Freedman | @chuckstar
  24. 24. APIs with response ⱶ Knowing you’re hungry ⱶ Neurotransmitter called Neuropeptide Y (NPY) sends messages to the brain. ⱶ Low levels of glycogen and low blood sugar levels stimulate a spike in ghrelin. ⱶ When ghrelin rises, so does appetite. ⱶ After eating, leptin levels increase and inhibit the firing of NPY, so you feel full. Chuck Freedman | @chuckstar
  25. 25. APIs with response ⱶ Knowing you’re hungry ⱶ stomach to brain, “I’m full” ⱶ brain to stomach, “start digesting” ⱶ stomach to brain, “I’m still hungry” ⱶ brain to you, “eat more” Chuck Freedman | @chuckstar
  26. 26. APIs with behavior ⱶ Me and my wife ⱶ doDishes() ⱶ pickupClothes() ⱶ closeToiletSeat() ⱶ setTable() ⱶ changeDiaper() ⱶ Modifers ⱶ “Please” ⱶ “YourTurn” ⱶ Returns? Chuck Freedman | @chuckstar
  27. 27. APIs with behavior ⱶ To each other ⱶ What sets you off? ⱶ What makes you tick? ⱶ What pushes your buttons? ⱶ What rubs you the wrong/right way? ⱶ What do you best respond to? ⱶ How does one figure you out? ⱶ What appeals to your senses? ⱶ What attracts you? Chuck Freedman | @chuckstar
  28. 28. APIs of Delorean Time Machines Chuck Freedman | @chuckstar
  29. 29. APIs of Delorean Time Machines ⱶ TimeCircuits.Status(“on”); ⱶ SubmitDate(destinationDate); ⱶ While (FluxCapacitor.isFluxing && Car.Moving) { ⱶ If (Car.speed == 88 && Chamber.Plutinium == “full”) { ⱶ TimeSpaceContinuum(TimeCircuits.toDate); ⱶ } ⱶ } Chuck Freedman | @chuckstar
  30. 30. Takeaways ⱶ Observe the way we work with things ⱶ Observe the way we respond to each other ⱶ Design better interfaces ⱶ Build better apps Chuck Freedman | @chuckstar
  31. 31. Thank you! ⱶ Questions? ⱶ Ideas? ⱶ chuckstar.com/blog ⱶ @chuckstar Chuck Freedman | @chuckstar

Editor's Notes

  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n

×