APIs in Life, Music and Wiffleball

  • 445 views
Uploaded on

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 …

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.

More in: Technology , Education
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
445
On Slideshare
0
From Embeds
0
Number of Embeds
2

Actions

Shares
Downloads
0
Comments
0
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • \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

Transcript

  • 1. APIs in life, music and wiffleballChuck Freedman | @chuckstar
  • 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’ SDKChuck Freedman | @chuckstar
  • 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 platformsChuck Freedman | @chuckstar
  • 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. 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. APIs that command ⱶ Methods ⱶ Simple way to tell you what to do ⱶ In life... the way a traffic light signals usChuck Freedman | @chuckstar
  • 7. APIs that command ⱶ The traffic lightChuck Freedman | @chuckstar
  • 8. APIs that command ⱶ The traffic light ⱶ Driving ⱶ Go(), SlowDown(), Stop() ⱶ Walking ⱶ Walk(), DoNotWalk() ⱶ Timer EventChuck Freedman | @chuckstar
  • 9. APIs with control ⱶ Methods with Paremeters ⱶ Tell you what to do with definition ⱶ In life... controlling a wiffleballChuck Freedman | @chuckstar
  • 10. APIs with control ⱶ The wiffleballChuck Freedman | @chuckstar
  • 11. APIs with control ⱶ The wiffleball ⱶ Not just Instructions ⱶ Throw() ⱶ Ball.Orientation ⱶ Speed ⱶ Angle ⱶ Grip ⱶ WindChuck Freedman | @chuckstar
  • 12. APIs with controlChuck Freedman | @chuckstar
  • 13. APIs & properties ⱶ Classes group similar functionality ⱶ Inherent values in things ⱶ Follow a pattern ⱶ In life... a basketball teamChuck Freedman | @chuckstar
  • 14. APIs & properties ⱶ A basketball teamChuck Freedman | @chuckstar
  • 15. APIs & properties ⱶ A basketball team ⱶ Players [Array] ⱶ Height ⱶ Speed ⱶ Shooting ⱶ Position ⱶ DefenseChuck Freedman | @chuckstar
  • 16. APIs & properties ⱶ A basketball team ⱶ Strategy.execute() ⱶ Player[1].goToAnd… ⱶ x,y ⱶ SetPick() ⱶ Pass() ⱶ Fake() ⱶ Shoot()Chuck Freedman | @chuckstar
  • 17. APIs with craft ⱶ Changing method sequence ⱶ Customizing user experience ⱶ In life... playing an instrumentChuck Freedman | @chuckstar
  • 18. APIs with craft ⱶ The pianoChuck Freedman | @chuckstar
  • 19. APIs with craft ⱶ The piano ⱶ Piano.keyEventListener.. ⱶ KeyID ⱶ playNote() ⱶ The human ⱶ Ear.musicListener.. ⱶ hearNotes() ⱶ recognizeChord() ⱶ enjoyHarmony()Chuck Freedman | @chuckstar
  • 20. APIs with craft ⱶ The pianoChuck Freedman | @chuckstar
  • 21. APIs with craft ⱶ The pianoChuck Freedman | @chuckstar
  • 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 hungryChuck Freedman | @chuckstar
  • 23. APIs with response ⱶ Knowing you’re hungryChuck Freedman | @chuckstar
  • 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. 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. APIs with behavior ⱶ Me and my wife ⱶ doDishes() ⱶ pickupClothes() ⱶ closeToiletSeat() ⱶ setTable() ⱶ changeDiaper() ⱶ Modifers ⱶ “Please” ⱶ “YourTurn” ⱶ Returns?Chuck Freedman | @chuckstar
  • 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. APIs of Delorean Time MachinesChuck Freedman | @chuckstar
  • 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. Takeaways ⱶ Observe the way we work with things ⱶ Observe the way we respond to each other ⱶ Design better interfaces ⱶ Build better appsChuck Freedman | @chuckstar
  • 31. Thank you! ⱶ Questions? ⱶ Ideas? ⱶ chuckstar.com/blog ⱶ @chuckstarChuck Freedman | @chuckstar