The weather up here in beautiful Bellingham, WA has turned really nice so I’ve been finding more and more reasons to get out and enjoy it. That means I’ve been working on the site a lot less lately. I did make a small bug fix a while ago that I just got around to posting.

Prior to the update saving routes in outside of the USA using the Members Only Map Creator would result in an error when one tried to load the route. The error had to do with loading biking directions in countries where it isn’t supported.

I also cleaned up the save message. Now the message is displayed with an infowindow on the map. The infowindow includes a success/failure message and a link to the newly created map. In the future I plan to make some sort of sharing happen from that window.

I’m not sure when I’ll get around to working on the site some more. I’ve got a few ideas kicking around but I’m also waiting for Google to fix some bugs on their end too. Specifically the 10 way-point limit and a printing bug. I haven’t mentioned the printing bug before. I just discovered it this weekend when I went to print out a route. The map now shows up as a background picture so most printers default to ignore the map when printing. I’ve read that you can get around this by changing some settings in the print dialog. While it probably works it isn’t a real solution.

I finally decided to add support for creating maps outside of the US. I heard feedback from a couple of users who wanted to use the program for routes outside of the US but were unable to. Today I found time to tackle the problem. The problem arose when I moved to the latest and greatest version of Google’s Maps API. I wrote the program so that it defaulted to using bicycling directions. Unfortunately this is only works for routes in the US, bicycling directions are not available internationally.

In effect this rolls back the directions to how the site used to function. The app asks Google for driving directions which avoid highways. The change in directions only occurs when the app asks for directions. If a route is already plotted you will need to change it slightly to get the new directions. This produces routes that are optimized for time and distance. The distance optimization is fine for cyclists but the time is not. The time is calculated using the assumption that one is driving a car so high speed roads are favored. This will create routes on roads that are undesirable for cycling. On the other hand, if you are a hardcore road rider this may work better for your routes. It will avoid all trails and put you on roads with the least amount of stops. I personally favor roads over trails but I have a good set of mental blinders for heavy traffic.

Lastly I’d like to thank April and Condor for the heads up about the problem. So go try out the new option and let me know what you think!

I just made another update to the bike map creator!

Elevation Profile: This is what happens when I don't have any good videos to watch on my computer.

I was thinking about using Google’s elevation service today so after work I checked it out. As it turns out it’s pretty easy to use. So after about 30 min. of tinkering I got elevation routes enabled! They show up when you move to print mode next to the overview of the route. Currently they don’t have a distance scale but I’ll add that in soon.

I’d also like change some of the behavior of the elevation profile as well. Currently you can click on the profile and it will tell you the exact elevation of that point. I’d like that point to also get highlighted on the map as well. I don’t know if this is even possible but if it is I’ll make it happen.

Hope you enjoy the new function!

Ever since Google announced that they added a bike map option to their popular mapping software I’ve been working on incorporating the new directions into my map creator. Today I’m happy to announce that I’ve finished updating my code and I uploaded a new version of the map creator!

Here’s a list of the changes:

  • Added support for bike there directions. The map creator will now plot routes according to Google’s bike there option. Prior to the update the routes were just based on shortest distance and fastest traveling time, for an automobile (without traveling on freeways). This prevented the map creator from plotting routes that used trails or back roads which are more suitable for biking.
  • I’ve gotten rid of the ‘Plot Mode.’ Now every time you click on the map it creates a new way point and plots directions to that way point. No need to click ‘Plot Route’ anymore.
  • Way point markers are now draggable. If you decide that the way point isn’t in the right spot you can drag it to a new location. Your route will automatically be re-plotted.
  • ‘Start Over’ has been moved along side the ‘Print’ button and won’t disappear when you change modes.

Additionally I changed the position of the ‘total distance’ text as well. This isn’t really worth making a bullet about it but it is an indication of a future feature: route elevation profiles! Shortly after Google released their ‘Bike There’ directions they also added an elevation service to developers. Eventually that boring white box will include a neat elevation profile as well!

As always I’d love to hear your comments about the map creator. There has been a lot of dissatisfaction with the biking directions in the blogosphere. If you find that my app isn’t giving useful directions let me know.

I got the idea to write this post after experiencing the awesomeness that is the bike maps update that Google rolled out the other day. I love the update, route creation is super easy compared to what it was and I’m working on assimilating those same changes into my web app. That said there is still one aspect where Google bike maps is lacking when compared to Ride Free Bike Maps and that is how the maps are displayed when printed.

I’ll back up a second and talk about why this matters. For an everyday rides getting to a destination, say a seaside park, you probably don’t need a map. If you don’t know the best way to get there looking it up online may be all you need. That all goes out the window when you want to ride someplace you haven’t been. A friend of mine posted this on one of my online updates: “You need a map to ride a bike? Ok…” I responded with a link to one of my experiments with the new Google bike maps, . I’ve ridden that. The maps I carried were absolutely essential to the ride. I had to know where I could stop to eat which I did, ravenously, every 15 miles. A more common use would be to create a map for a shorter in town ride, say riding around Lake Samish from Bellingham. In the end you may not need a map but when you do it can make a big difference.

On to the comparison!

This is a scan of the printed Google maps we all know and love. It gives directions, step by step, and allows you to add in small maps of every turn. In this map I plotted directions from Seattle, WA to Bellingham, WA. These first few turns are all in downtown Seattle. There is a lot of traffic down there and you have to be on top of making all those turns. Doing this with a print out of from isn’t going to be easy. The space that a cyclist has to display a map isn’t very big. My map holder measures about 9 X 5 inches (23 x 13 cm for those of you who use civilized units). Those dimensions are about what is pictured to the left except for the section with distances. So if you slid those directions in your map holder you’d have to stop after 4 miles and change maps. I can live with that when you are riding in the city. Directions get more complicated and you really need those maps just in case you get turned around. However! There were only two map panels in the Google page. I could have added more but then I’d get a lot less directions on a single page. Using one map for multiple turns isn’t really great either because they are so small and you can’t see that much in them. You need something better if you are going to be using it in the saddle.

From the first line of code on, I built the Ride Free Bike Map Creator to be used in a printed form. The first thing I did was figure out the conversion rate of pixels on the screen to inches on the page (96 dpi) because that was most important to me. The second thing I did was get rid of most of the elements in the page that didn’t need to be printed (I know there are ads on the top, I’m gonna fix that soon). The whole design of the app revolves around that black rectangle that encloses the maps when printed. I could have made the map bigger in the non-printing stages of route creation. It would have made it a lot easier and faster to create way points. I didn’t end up going that route because I want users to think about how the map will ultimately be used in a printed form.

On that note let’s get into the features of my maps that work well with the printed form. The first page of every route is an overview of the entire route. Ultimately I want to use the blank space on the side for statistics about the route. I’m not super worried about it right now because I’m working on some more fundamental aspects of the app. Note the 9 x 5 size, fits perfectly in a Bike Map Holder! Wow! Note I printed using the traditional ‘portrait’ orientation of the page. This actually scales down the size of the maps. If you print in ‘landscape’ mode they will be printed full size.

Below the route overview the map shows about one mile of travling city streets in Seattle. My maps have a viewpoint that allows you to see your route and surrounding the area. The only limit on detail is how much you zoom the map. I designed my app this way so you could get back on route if you ever made a wrong turn or missed a turn. On the right side of the page I’ve got all the turns spelled out with the distance to the turn from the beginning of the page. That way you know when a turn is coming in two forms, distance and pictorially. The last distance on the page is the distance to the end of the page from the beginning. That allows you to reset your distance measurements when you change to a new page.

The last picture shows a page I created where the route goes into a long stretch of no turns. I printed this just to show the compromise of detail in action. You can see that this page shows 16 miles of the route. It runs from north Seattle to north Lynnwood, all of it along hwy 99. I opted for this view because I didn’t want to waste paper by printing a lot of pages just to ride a small distance. At the same time I still wanted a bit of detail because I’d be riding through the city.

When it comes down to it, this site is an add-on to Google maps. I’ve taken data from Google and massaged it into a form that is much more useful to cyclists. There isn’t anything unique about this data. That’s the whole point. Maps as content are public knowledge. What a good map does is take several sets of data, say street names, street locations, mileage, and combines them into pictorial representations with a high degree of usefulness. My aim with this site/app is to do just that.

Today Google announced that they added a bike there option when asking for directions in Google Maps. Needless to say many, many people were pleased to hear the news. I’s been covered by nearly all the blogs I read about these subjects, such as:

I won’t go over how cool this feature is except to say that I recreated my entire tour route from Blaine, WA to San Yisidro, CA using Google maps in about 20 min. It’s that good. Go see how awesome are for your self!

This has two big effects on my app. First, finding directions will be worlds better. Currently you have to add a bunch of way points to get a good route that follows bike friendly roads. With the bike there option for the maps nearly all of that will vanish. The directions service by Google will do that for you. Secondly, this will push me into another big round of development. My app uses the 2.0 version of Google maps and the bike there option is only available in version 3. That means I will have to rewrite nearly all of my app to get this to work. While I’m not very excited about the prospect of doing that the end result will definitely be worth it.

Until I get V3 working I’ll occasionally add more featured routes so keep checking back or better yet subscribe to the RSS feed.

Right now I’m calling my map creator version 1. At it’s most basic functionality it is a useful tool. Mapping out everyday rides is a snap to accomplish and when the time comes, a pleasure to use. Currently the app features: custom route plotting via clicking the map; panel creation via + Panel link; horizontal split map; and manual final layout/printing.

In the future I will be exploring various options for saving and sharing the maps. Currently I am investigating importing from ‘my maps’ in Google. The biggest priority will be to add distance markers and an elevation profile. I will also add local services/attractions at some point. If you have anything you would like to see in coming releases leave a comment!

On another note:

The announced that they are going to develop a bike mode for their directions finding algorithm. Once this feature is added to the Google Maps API I will be able to implement intelligent bike route finding.

The added intelligence would allow routes on bike paths and roads with bike lanes to be preferred. This would make a huge difference when plotting routes in cities. I have definitely been in situations where I chose roads in unfamiliar cities only to be faced with intense traffic while a road with a bike lane was only one block away.¬†Until that time all we’ve got is knowledge and intuition.