Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
CitiBike Finder
Search
kylefdoherty
July 23, 2014
Programming
77
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CitiBike Finder
Building a Sinatra App with CitiBike's JSON Station feed and the Google Maps API
kylefdoherty
July 23, 2014
More Decks by kylefdoherty
See All by kylefdoherty
Getting Started Testing
kylefdoherty
0
120
Going Pro
kylefdoherty
0
57
Other Decks in Programming
See All in Programming
kubernetes コンポーネント開発入門 / 新卒N年目の勉強会&交流会!〜〇〇への誘い〜 #n_study
mazrean
0
240
AWS Step Functions 大規模並列の壁を越える / jaws-sonic-2026-niigata-step-functions
kasacchiful
PRO
1
450
iOSDC2026登壇資料.pdf
riofujimon
0
160
DroidKaigi 2026 「個人開発という実験場: Android エンジニアが手にする4つの自由」
slashnephy
0
230
LoopHub - ローカルで動く GitHub で、AI と共同開発
jugyo
1
550
新人はどこまで自力でやり、どこからAIに頼るべきか/エンジニア育成に向き合う_先輩たちの悩みと知見共有会
toppan_digital_dev
1
620
WebMCP Challenge に星空観察アプリで参加した話
okajun35
0
170
20260914 AIエージェント時代のPlatform Engineering LLM基盤とプロダクトの責務境界線
kanfab1
6
1.9k
モジュールの視点からSwiftを読み解く #iosdc
s_shimotori
0
170
Heart of Swift Concurrency
koher
0
700
AHC070解法紹介
eijirou
0
120
そのリトライ、死んだコネクションを使い回していませんか ── GoのHTTPクライアントとHTTP/2を実プロダクト障害から学び直す
myus4a
0
130
Featured
See All Featured
Exploring anti-patterns in Rails
aemeredith
4
510
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
230
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
Scaling GitHub
holman
464
140k
Unsuck your backbone
ammeep
672
58k
Building the Perfect Custom Keyboard
takai
2
870
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
590
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
700
Embracing the Ebb and Flow
colly
88
5.2k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
280
Transcript
Citi Bike Finder Amy Johnson & Kyle Doherty
Dock Blocked
Blue Biked
None
Requested Solution Trip planner that suggests starting and end locations
based on historical data
Realistic Goals Sinatra using Citi Bike JSON Feed Search for
nearby stations Google Maps API for directions
Demo
JSON JSON Parser HTTParty Object
JSON Parser Station (Geocoder gem) Station Builder
Controller Station (Geocoder gem) Name & Location
Controller Station (Geocoder gem) Name & Location - Station Name
- Location Station Refresher - # of Bikes - # of Docks
- Station Name - Location - # of Bikes -
# of Docks
Directions with the Google Maps API
What You Need... 1. Directions Renderer Object • new google.maps.DirectionsRenderer();
2. Directions Service Object • new google.maps.DirectionsService();
Directions Renderer • new google.maps.DirectionsRenderer(); views/stations/directions.erb
Directions Service • new google.maps.DirectionsService(); views/stations/directions.erb
Directions Renderer • new google.maps.DirectionsRenderer();
Next Steps Rails App Write Tests & Refactor Create prediction
model Optimize DB calls Use caching to speed up responses
Amy Johnson - github.com/amyrjohnson Kyle Doherty - github.com/kylefdoherty Project Repo
- github.com/kylefdoherty/citi-bike-search