Page 57 of 170

How to convert bike-share JSON data to CSV and then to shapefile

Update January 4, 2013: The easiest way to do this is to use Ian Dees’s Divvy API as it outputs straight to GeoJSON (which QGIS likes). See below.

For Michael Carney’s Divvy bike-share stations + Census tract + unbanked Chicagoans analysis and map he needed the Divvy station locations as a shapefile. I copied the JSON-formatted text of the Divvy real-time station API, converted it to CSV with OpenRefine, and then created a shapefile with QGIS.

Here’s how to create a shapefile of any bike-share system that uses hardware from Public Bike System Co based on Montréal and is operated by Alta Bicycle Share (this includes New York City, Chattanooga, Bay Area, Melbourne, and Chicago): Continue reading

San Francisco is an expensive place to get around

$8.15 if you want to exit the San Francisco airport via public transit.

In June I visited friends in San Francisco and attended the State of the Map US conference. I spent a lot of money on transit and bicycle rentals. This doesn’t exclude the cost of driving to Davis, California.

BART

Airport to 16th/Mission: $8.15
Union City to North Berkeley: $4.10
16th/Mission to Berkeley (roundtrip): $7.60
16th/Mission to airport: $8.15

I needed to travel from Stanford University (where my friend Stefano does research) to Berkeley (to visit Rock The Bike) and the cheapest and soonest way to get there was to take the Dumbarton Express bus across the lower San Francisco Bay to the Union City BART station. 

Dumbarton Express
Bus from Stanford to Union City BART: $2.10

Caltrain
22nd Street to Stanford (Mountain View): $7.00 (Google Maps says it would cost $21.99 to drive this trip)
Stanford (Mountain View) to 4th/King: $7.00

Total for 8 transit trips: $44.10

In Chicago, if I had taken all trips individually (no transfers), my cost would be about $31.75. To compare Caltrain to Metra, I calculated the cost of a trip from downtown Chicago to Geneva, which is $6.75 each way. This includes the $5.00 trip cost to get out of O’Hare airport, significantly less than BART’s $8.15.

I didn’t ride Muni trains (they’re kind of slow compared to bicycling) but I took a lot of photos of them arriving at Duboce Park. 

Bicycling

Bike rental in Davis, California for 3 hours: $10
Bike rental via Spinlister for 4 days: $72

This is the Surly Long Haul Trucker I rented via Spinlister, seen on the BART train in the roomy bike spot. For the most part, the bike can rest here without any securement. 

This is the charge I’m least concerned with, except that Spinlister charges me a 12.5% service fee). I also picked it up in Stanford because that’s where the bike owner lived; it was the best alternative of the available bikes for people my height as it was a bike I liked (Surly Long Haul Trucker) and it was $16 per day, the cheapest by $9 per day!

Part of the OpenStreetMap conference included a trip to the California Academy of Sciences on the Friday before the meetings started. The SCUBA diver on the left is cleaning the glass while the diver on the right is talking to the museum worker outside the pool. 

Not having a bicycle in a place I visit makes me feel naked. Having the bicycle reduced my potential fees on getting around. I had to move from my friend’s house to the OpenStreetMap conference (which would have required two transit trips or a taxi), between the conference and downtown for the World Naked Bike Ride, and between the conference and Sunday Streets in Dog Patch and Mission Bay. I also biked to Golden Gate Park to visit the California Academy of Sciences, pedaled over to see the Aether shop made with three shipping containers, joined SF Bike Party on Friday night, and biked around Berkeley to see Paul Freedman at Rock The Bike.

I left the OpenStreetMap conference during Sunday’s lunch to check out Sunday Streets. Even though I sold my Yuba Mundo for a WorkCycles Fr8, I love seeing families on cargo bikes.

Divvy considers my suggestions in bike-share kiosk map redesign

The new design that will appear at the newest stations first and then rolled out to all stations. 

I posted two months ago a critique of the Divvy bike-share maps, seen at 284 stations scattered around Chicago, focusing on the clutter of having so many maps (with the third being useless), unclear labels and labels that covered map objects, and the low prominence of the smartphone app and map legend. Two weeks ago the Divvy public relations manager emailed me a screenshot of the new map design and said that these points had been changed. He said they considered four of my suggestions:

  1. Make CycleFinder, the official Divvy smartphone app, more prominent
  2. Change “You are here” design to make it clear where you are
  3. Make streets and streets’ label text smaller
  4. Removed service area map and make legend more prominent

I replied to the manager and suggested that the “You are here” label be made slightly transparent to show that the road does continue beneath it.

Close-up of the original “you are here” design that covered up other objects and wasn’t centered in the walking distance circle.

Update on my work this summer: Chicago Bike Guide now on Android

Yesterday I released the first version of my app for the Android operating system. The Chicago Bike Guide (born the Chicago Offline Bike Map) had been available for iOS since April 2012 and the most frequent question I heard was, “When will you have an Android version?” At first I was probably joking when I said it was coming soon as I had no interest in it. But things change: more people kept asking, I was slowly learning how to publish an app for Android, I bought a tablet myself on which to test it, and Android eclipsing iOS as the most dominant mobile OS had some effect.

I use PhoneGap software to compile the Chicago Bike Guide for iOS. My app is actually an HTML5 compliant website using jQueryMobile and PhoneGap allows this website to interact with some of the hardware on the iPhone (like the GPS components) and software (native notification buttons). PhoneGap compiles for Android and other operating systems, but my experience using the Android emulator put a damper on my progress.

I would install Google’s software development kit (SDK), including Eclipse, and load the app (er, website) into the emulator and it would be terribly slow. It didn’t emulate the Android experience very well. I did this twice; I don’t remember making any additional progress the second time but I probably made different progress, slightly expanding my understanding of how to make Android apps.

PhoneGap 3.0.0 came around, and its use requires focusing on the command line to build apps. In prior versions, for iOS, you would add “helper software” to Xcode but now it creates the Xcode project for you. It was easier to use this time around, as the process in this version was simpler to understand, use, and the documentation had improved. I felt it was time to try again to make an Android version so I “made the plunge” and bought the Asus MeMO Pad HD 7″ tablet from my local Micro Center.

At first I used the tablet to test my app (website) as a website, loading it over the network from my Mac’s web server. After fixing a lot of the display bugs I moved into native app testing. One command, “cordova build android”, and an APK I can email to my tablet appears 30 seconds later. This is one of the few areas where Android has iOS beat in terms of testing.

The iOS development environment requires so much setting up with developer profiles, team profiles, and other gunk I forget the names of. With Android, you simply email the ChicagoBikeGuide-debug.apk file to your device and open it in the Gmail app. Voilá.

After getting this far I stopped progress on developing for Android as I wanted to issue a new version for iOS with features and bug fixes I’d been working on since the last release in July (version 0.8.2). With that out of the way last week, and the new version waiting for Apple’s review, I worked on the Android version on Sunday and finished it today.

Did you catch that? I uploaded version 0.8.3 for iOS on October 3 and it’s been in review since then while in less than 24 hours I set up my Google Play Developer Console ($25 per year), merchant account, store listing, and started selling the Android version.

N.B. Google Play doesn’t allow you to switch the app between free and not free like the iTunes App Store does, so I cannot release it for free during a short promotional period like I did for the iOS platform.

After a sufficient period (a few days, perhaps) of no reports of it crashing, I will promote the Android version heavily.

Berlin day 2 itinerary during my 2012 trip

Olympic stadium, as seen from the entry plaza. View all 88 photos in this set.

A Chicago friend designed my two-day Berlin itinerary, whether he knew it or not. He visited Berlin in March 2012 and sent me an email a week before I left for Europe describing in detail the various facets of the city, including transportation, I should visit. This itinerary is a mesh of his suggestions and what I actually did on Friday, August 31, 2012.

Take the S-Bahn to Olympiastadion. Make sure you note all the unused, but remarkably nice platforms. On exiting the station (toward the east) you get some great views of S-Bahn tracks and covered third rail heading into the city. Walk around the east side of the stadium (and think about how this is a place where Adolf Hitler opened the Olympics and the first television broadcast was done of, making a major plot point in the movie Contact).

Olympiastadion S-Bahn station platforms. The U2 line continues, but some trains may terminate at these platforms for events. 

I walked into the Olympic Stadium, walked 80% of its circumference, and noted all of the statues, some of the stelae, and read most of the historical information stanchions. I saw the swimming arena, which is still in use today (it seems to be a membership club, although not exclusive). The diving platform’s stair design has changed noticeably. The stands haven’t changed: they are covered in what looks like moss.

Disqus throwers statue by Karl Albiker. The accompanying sign said it was sculpted to show how powerful and masculine German male athletes (and Germans in general) were.

I then made a long walk to the north and west, past a Berlin football club and equestrian areas, towards the bell tower and Langemarckhalle (which is partly a memorial to the Langemarck battle in WWI, but now an exhibition about how that memorial was a myth and propaganda to encourage students to join the military). The ticket to get into Olympiapark also gets you on the elevator to the top of the bell tower (Glockenturm), giving you splendid views of the city in all directions. In the Maifield between the bell tower and the stadium, men were playing cricket. This humungous grassy area was used for youth rallies during the Nationalist Socialist (Nazi) era. From Wikipedia: “Maifeld (Mayfield) was created as a huge lawn (112,000 square metres, 28 acres) for gymnastic demonstrations, specifically annual May Day celebrations by Hitler’s government.”

Playing cricket in Maifield.

After another long walk, I exited the park and made my way to the U2 Olympia-Stadion station (note how the S- and U-bahn stations have slightly different names). This is where the U-Bahn museum is (it has weird hours, don’t expect it to be open), but before you enter, you can walk around the station house and get some INCREDIBLE views of an U-Bahn rail yard and shops facility.

The dreary-looking Olympia-Stadion station east of the Olympic Park.

Next, my friend told me, ride the U2 inbound to Eberswalder Straße (toward Pankow from Olympia-Stadion on the U2 line), and walk under the tracks a half-block south to the little stand with the tables outside. He wrote to me, “Have a spicy currywurst and a beer. You won’t regret it.” I ate it and drank a Berliner Pilsner and I didn’t regret it.

That spicy currywurst and beer under the U2 tracks. 

Next, walk back up to Danziger Strasse. Get on the eastbound/southeastbound M10 tram toward Warschauer Strasse U+S-Bahn stations. But get off at Frankfurter Tor, not the terminal.

Then, do this walk:

View recommended walk in a larger map

You’ll get a good view of some Soviet architecture on Frankfurter Allee, a cute walk through a gentrifying neighborhood with tons of lovely little shops, then see the massive, gritty S-Bahn station, the M10 Tram terminal, and the U-Bahn elevated terminal. (You’ll also walk past the hipster hotel my friend stayed in, Hotel Michelberger.) Then, you’ll end up seeing the Berlin Wall and East Side Gallery just before you cross the water from East Berlin into West Berlin – a profound act, to my friend, considering that it was not possible when we were born – and have a nice walk under the U1 el tracks up to a great elevated station.

Soviet architecture.

The beautiful Oberbaum Bridge taken from the north bank of the River Spree, near the Berlin Wall East Side Gallery. 

I didn’t walk under the U1 el tracks, but instead walked west along the East Side Gallery and then north on Andreasstraße. I stopped at a grocery store to get some grub and then boarded the U5 at Strausberger Platz, changing at Alexanderplatz U+S Bahnhof to the U8, getting off at Pankstraße and walking a block to the apartment I was staying in.

Artwork on the Berlin Wall. 

The name “Pankstrasse” written in a cool typeface.

N.B. I bought a day pass to use all transit minus Regio, IC, ICE intercity train service. I could use buses, trams, U-bahn, and S-bahn. I never waited more than 9 minutes for a train or tram. The average wait was probably 3-4 minutes. The day pass cost me $8.20. I was given access to a bicycle, which I rode on Thursday night with my hosts, but after walking around and taking transit all day, I declined to get it. I felt that I would be able to get around the city just as fast (or faster) by taking transit (yes, shocking, I know). I also wanted to ride lots of trains. Here’s the full gallery of photos from the day.