MapQuest Developer Blog

  • MapQuest Style File for Mapnik Open Sourced

    Today we placed our style files for the open.MapQuest.co.uk site up on GitHub. The source is available at http://github.com/MapQuest/MapQuest-Mapnik-Style and is available under the MIT License. There are some changes in there that haven't gone live yet, mainly around adding in the bike and foot paths. We're also working on highlighting the Kibera Project data better than we had originally. If anyone out there has any advice on which key/value pairs to focus on, please let us know at Open@MapQuest.com. Anyway, the style is currently built to work against Mapnik 0.6.1+. It is not directly compatible with Mapnik 2 yet. We were moving so fast that we figured it was best to isolate Cartifact from having a constantly changing renderer during the project, and just run it thru Artem's converter for production.  It is a to do item on our list to get it properly converted to Mapnik 2, but as I write I realize it probably gets a wider audience right now if we leave it as is. The style updates are not yet live on open.MapQuest.co.uk, we haven't finished them, but since so much of the feedback since launch has been around tweaks to the style, we figured we'd just get it up now and start the ball rolling! Hopefully I'll be back soon with news of some more changes, enhancements, etc.
  • MapQuest Opens Up - in the UK

    As I write, we are in the final few days of work left to us on the new Beta site open.mapquest.co.uk.  It's an experimental site that uses the free open source OpenStreetMap data, as well as various open source tools, software and utilities to bring it all together.  We then added some of our own special sauce - our best-in-class routing algorithms, and our new user interface (a full experience of which can be found at new.mapquest.com). If you are unfamiliar with OpenStreetMap, it is mapping data gathered by volunteers, for free - over a quarter million of us by now! - across the entire world with the express purpose of this data being available to anyone for (almost) any use, and not locked in high-priced commercial vaults.  There is a great benefit to this - If you find something wrong or missing, you can go fix it or add it! if you go to openstreetmap.org, find the place on the map, and click the edit tab at the top, you can fix the roads, add the businesses, and edit the map.  There is also an OSM (OpenStreetMap) Wiki that tells you more about the OpenStreetMap foundation, the data, and how to get involved. It is truly amazing what they have accomplished. Randy Meech, our Head of Engineering, summed up why we are doing this project more succinctly than I ever could - so here's what he said: "We believe that open source is ultimately the future for AOL's local and mapping applications. And we're very excited about supporting OpenStreetMap, which powers the maps behind Patch, our local news and information platform. We believe community generated maps that are of high quality and accuracy will end up ultimately being the better mapping product for users. Allowing users to improve the areas they know and care about like streets in their neighborhood, in addition to hiking trails, parks and bike paths, we believe will lead to the best mapping experience for all users.” To prove we are serious, we announced today at the SotM conference with a $1 million fund to support the growth of open-source mapping in the United States.  This first website is also proof that this is not lip-service.  We are engaged, and actively working on integrating, using, and improving these tools and we wanted to be able to demonstrate that at the conference. The goal was to create a MapQuest experience for the United Kingdom using only OpenStreetMap data.  As much as possible we tried to use the open source software used by the OSM community, so anything we did to these tools could be contributed back.  We picked the UK first because we felt we had the best shot of getting use-able routes from the data without having to worry about a language barrier at the same time. We started out, as anyone else would, with the latest dump of the OSM Planet data. We grabbed OSM2PGSQL, a python script used for data conversion, and set ourselves up with PostgreSQL with postGIS extensions (a library that adds a lot of geographical functions and datatypes to PostgreSQL). After successful import, we needed to render and cache the tiles.  For rendering we use Mapnik and for caching, TileCache.  We turned to our good friends at Cartifact to help us re-create our MapQuest style as Mapnik style files.  At this point, we discovered there were some features that Mapnik didnt have that we could really use.  Fortunately, we were able to hire Artem Pavlenko, the very awesome chappie who created Mapnik, to improve it with the features we needed, and then release it back to the community. They included such things as SVG Symbolizer, label offsets, improved connection management, and multistyle rendering based on polygonal regions. The last one we needed because we have 3 different styles (US, Europe, Rest of World) we needed to apply. [caption id="attachment_281" align="aligncenter" width="443" caption="OSM Style of Oxford."]OSM Style of Oxford[/caption] [caption id="attachment_279" align="aligncenter" width="443" caption="MQ style of Oxford."]MQ style of Oxford[/caption] For directions and routing, we started with the raw OSM data and converted it into our own format that works with our routing engine.  Along the way, we found much duplicate data and other little issues that sometimes caused problems.  For example, we were initially unable to make directions to York in England, because the city center is surrounded by pedestrian walkways.  For a while, we could only get the Channel Tunnel going one-way, and no-one could get into, or leave France.  However, once we overcame the issue, we were remarkably impressed by how well it all worked. [caption id="attachment_277" align="aligncenter" width="620" caption="From Scotland to Istanbul, stopping in Girona along the way."]Directions from Scotland to Istanbul[/caption] Geocoding & Search turned out to be our biggest challenge when using OSM data, and is probably the area we will focus on the most in the next phase.  Normally we make a distinction between Ambiguities (Did you mean Brentwood, England or Brentwood, Alabama?) and Searches (Pubs in Brentwood) and we provide a different UI flow for search results than we do for ambiguities. The Open Source finders have only a single set of results to any query, with no distinction.  Most of the Ways (what OSM calls lines, or streets) and Nodes (OSM-speak for Points) do not have house numbers or addresses on them, which makes geocoding to a numbered street address very unlikely. Most of the businesses do not have the info that a commercial data set brings - phone numbers, hours of operation, etc.  So be prepared! The search results are not yet what you would expect from a full blown MapQuest site - but we'll get there...oh yes, we will.  To that end, we also tracked down Twain, the excellent creator of Nominatim, the search engine that OSM uses, and have shanghai'd him to make improvements he's wanted to do for a while, and contribute back, as well. This droning monologue has gone on far too long already! For anyone who has stuck with me through this post, and who happens to be at the SotM conference, feel free to accost me with advice, suggestions and frosty beverages. This project has been a very valuable lesson in all the little things that go into MapQuest that as both an employee and a user, I take for granted.  The most amazing thing to me is the incredible effort that has been put into OpenStreetMap and its tools by such a large number of dedicated volunteers - a movement that will continue to grow. I look forward to providing more details as we continue to work on this exciting new path for MapQuest after the conference and am very excited to be participating in the OSM community. Note: For a more concise post, I suggest you check the blog post of my co-conspirator, Deb Tankersley, over on our consumer blog.
  • Reboot

    There's a lot of change going on at MapQuest. Our Consumer application has been completely rewritten to reflect ways users are using and sharing location information. You can read more about "Redefining the User Experience" on our sister blog for MapQuest.com and check out this video about the brand, our mission, and the new site. MapQuest Primary LogoFor developers, we've been addressing these same issues. Over the past few years, we've completely rewritten many of our APIs, developed a robust AS3 SDK for Flash and Flex developers, and launched 6 Web Services. All of this is making it easier for developers to easily add location features to their applications for desktops and mobile devices -- from small start-ups to large corporations. Our goal for the MapQuest Platform is: Developer Easy; Developer Friendly. There's always more work to do, but today we've rebooted MapQuest to better reflect that mission with an updated vision and an upgraded new look. Let us know what you think.
  • ButtonQuest: A Chance to Win an iPad!

    Earlier this week we announced a way for people attending SXSW to win an Apple® iPad™, it's called ButtonQuest. Wanna play? Here's how: The 15 Different Versions of the MapQuest ButtonQuest Buttons YOUR MISSION?: Find as many MapQuest Star buttons as you can. WHAT IS IT?: Play MapQuest ButtonQuest and earn entries to win one of three Apple iPads! HOW DO YOU ENTER?: MapQuest will be handing out 15 unique MapQuest star buttons over the three days of the SXSW Interactive Festival. Once you have five different buttons, go to our booth (Booth #401) and fill out an entry form. If you get 10 different buttons, we'll give you two entries. Find all 15 buttons and you'll get three entries! WHEN IS IT?: During the SXSW Interactive Conference from Saturday, March 13 - Monday, March 15. Drawing will be held for all three iPads at 3:00 pm on Monday, March 15. As a heads-up, you must be an attendee of the SXSW Interactive conference in order to play. WHERE ARE THE BUTTONS?: They're everywhere! Find the MapQuest team, dressed in red shirts and red hats, at various locations around Austin throughout the three days of the Interactive conference. To get you going, we'll have a different button offered each day in the MapQuest booth - so stop by! HOW DO I FIND THE MAPQUEST TEAM?: We'll be tweeting real time letting you know where we'll be next. To help you out we've created a schedule and map of our button handout locations but there will be SEVERAL other handouts you'll only find out about via Twitter. We also have secret button carriers - so make sure to keep tuned in by following us: @MapQuestTech and @MapQuest. We'll be using the hashtag #buttonquest to announce all the locations throughout the Interactive Festival.
  • ButtonQuest: Secret Button Carriers - Announced!

    Earlier we told you about the contest we're doing at SXSW – ButtonQuest – where you can enter to win one of three Apple® iPads™. While we've already announced several locations of where the MapQuest team will be at handing out buttons, we have also enlisted "Secret Button Carriers" who are attending SXSW and will be distributing buttons during the Interactive Festival as well as at evening events. We're going to blow their cover though – perhaps we should dub them "The Not so Secret Button Carriers". Regardless, we wanted to tell you who they are to help maximize your chances of winning. These guys will tweet out when and where they will be handing out different buttons for ButtonQuest so make sure to follow them on Twitter. Robert Scoble (@scobleizer) Erik Boles (@ErikBoles) David Stanley (@KiwiGate) This list may grow, so stayed tuned...
  • MapQuest Officially Announces Launch of Platform V6 At SXSW

    It must be official, we have a Press Release! It has a very catchy title: MapQuest Engages Developer Community with Presence at SXSW; Shows Easy-to-Use, Developer Friendly Tools.

    Over the last eight months we have overhauled the MapQuest Platform from top to bottom. We have re-written every key component, and exposed our core functionality through sane, modern, easy-to-use Web Services. We are now finishing up overhauling our main SDKs for AS3 / Flex and Javascript to use these new services as their foundation.

    As a reward, MapQuest is now sending us to SXSW Interactive to show it all off. We are also hosting a BBQ Party at the Salt Lick. I, for one, intend to celebrate the launch of something that has been a definite labour of love. I truly love what I do, am passionate about MapQuest, and work with some of the most truly awesome people around - which makes me very grateful to have been afforded the oppportunity to bring this new vision of what the MapQuest Developer Services should be, to fruition. It has been a great journey so far, and as I look back over what we have accomplished in such a short time, I am proud of the hard work we have done, and look forward to what we do next.

    Ok, enough of that. If you truly want to see our enthusiasm for what we have built, stop by our booth (#401) at SXSW and we'll talk your ear off, offer you some beer at the Block Party, and even help you with some implementation at our little Genius Bar we've set up. My compadre-in-chaose, Josh Babetski, is also hosting a panel you might find interesting.

    Until then, here's a quick(ish) summary of links to previous posts about the different parts of the platform as we released them to production:

    MapQuest Directions Web Service And Long URL Web Service Released - October 12th.

    Web 2.0 Geocoding Service Launched - November 12th.

    Static Map Service Launched - December 4th.

    Address Point geocoding, New Map Styles, & Free Edition Geocode Data Upgrade - January 20th.

    Search Service And Static Map Wizard Launched - February 25th.

    MapQuest Traffic Service Goes Live - March 4th.

    MapQuest AS3 / Flex SDK V6.0 Launched - March 9th.

    I am pretty sure that, not even counting the beta rollouts, we have managed an average of more than one new product or release per month, over the last 6 months. I am just absolutely blown away by how much work we've done in such a short period of time.

    Alright. Enough from me. Texas, here we come!

  • MapQuest AS3 / Flex SDK V6.0 Launched

    I am extremely happy to announce that we have launched the version 6.0 of the MapQuest Actionscript / Flex SDK for mapping, geocoding, directions, geo search, and traffic! Before I go any further, here are the important links: You can download the AS3 / Flex SDK here. You can view the Samples here. You can view the documentation here. You can access the AS3 / Flex section of the Developer Network here. And if you don't have one already, you can get an appKey here. During the course of the project we have touched pretty much every line of code to overhaul, upgrade, enhance, optimize and improve the SDK. We also re-wrote several main sections of the SDK from the ground up to use the new MapQuest Web Services. What follows is by no means a complete list of the things we have done to the SDK, but should give a nice overview of the main enhancements.
    FlashBuilder 4 (beta) Support
    The SDK works with both FlexBuilder 3 and FlashBuilder 4. The SDK also works with both Flash Player 9 and Flash Player 10.
    Single .swc, Smaller Compiled App
    We've consolidated all the different files into one single .swc. We also removed dependencies from the core TileMap object wherever possible, typically resulting in a smaller final SWF size .
    Object model Overhaul, Removed Getter/Setters
    Most explicit object.setProperty(value) functions have been removed from the SDK, in favor of a more AS3-friendly object.property = value. Returning these values has also been changed to object.property. Not only does this make the SDk more intuitive, it also removed quite a lot of weight!
    Shapes And Drawing Engine Overhaul
    The core shape objects have been overhauled to be simpler, and use a new internal drawing engine. As a result we have been able to add a couple of other new cool features. One example is that you can now add child overlays to a main overlay, which then act as clipping masks to punch holes in your polygons, rectangles, ellipses, and circles. So now you can do donut polygons! Yay!
    Overlay Cutouts You can use any shape overlay to cut holes.
    Directions, Search, and Geocoding completely re-written
    This is a complete overhaul and upgrade to the object model and how you use it - it is now MUCH MUCH simpler and saner - and smaller! Create the appropriate service object, pass in your parameters, provide your map object, and watch the results appear on the map automagically. Provide an event handler to receive the results. Done!. If you are a power-user type, you can dive under the covers to provide all the different options available from the underlying services.
    Draggable Routes!
    If you want your users to be able to drag the route, then just add dir.ribbonIsDraggable = true; on the directions object before asking for the route. At the end of each drag, your directions success event handler is called again so you can handle the updated narrative. That's it. Done!
    New Map Style with a Draggable Route added and in mid-drag New Map Style with a Draggable Route added and in mid-drag.
    New Controls
    There's a new carousel control that looks like the MapQuest.com Biz Locator control. this tool lets you easily add ShapeCollections to the map, with a pre-built UI for users to turn these collections off and on, on top of the map. There's also an overview map control you can place in the corner of the main map, as well as other controls to enable mouse scroll wheel zooming, and keyboard map interaction.
    DefaultTileMap Component
    The new DefaultTileMap object and drag and drop component sets up the map UI to work just like MapQuest.com, making it even quicker to set up all the controls and mouse interactions.
    New Declutter Modes
    Decluttering was also overhauled, providing new ways to declutter the map. My personal favourite is the new ForceDeclutter which animates the POIs moving away from each other until they are decluttered. It makes me giggle every time.
    The new map style with Globe View turned on in the AS3 map toolkit The new map style with Globe View turned on in the AS3 SDK.
    There are so many things we have done to the SDK, I am sure I've missed a few big items. I could mention the Globe View changes (you can now set the globe size, and freeze either axis, or make it auto-rotate to be vertical again when someone stops spinning it); I could also mention the spiffy new documentation that includes sections on how to make your own infowindows, POIs, and custom controls; But, unfortunately, I am out of time for now, as I must go prepare for SXSW later this week. If you are going to the conference, please do stop by the booth (#401) and say "Hi" to us, check out the new Platform and, if there is room left, come to our BBQ party!
  • We're on a Panel at SXSW Interactive

    Location is going to be a very popular topic this year at SXSW Interactive. It's no surprise really. Geolocation features and applications are changing how we interact and consume information. These changes can be seen in the way news stories get reported, location data is visualized in near real-time (like how busy one coffee shop is over another), or something as simple as adjusting your evening plans by figuring out what restaurant your friends are at.

    The "Time + Social + Location. What's Next In Mobile Experiences?" panel will be talking about the above topics and more. The panel includes Greg Cypes from AIM, Naveen Selvadurai from foursquare, and I'll be representing MapQuest. We look forward to kicking-off the location-based conversation during the first day of panel discussions.

    If you're heading to Austin this week for SXSW, please add us to your schedule. The panel will be in Ballroom "B" on Friday, March 12th at 5pm.

    While you're in town, remember to join us for the MapQuest BBQ Quest at South by Southwest on Sunday to catch a ride out to The Salt Lick for some food and beer on us.

    You should also follow MapQuestTech on Twitter. It's our new account focused on development and technology news from MapQuest. It'll also be used to share information on MapQuest happenings and antics on the ground during SXSW Interactive. More on that next week, but trust me, it's worth the follow.

    See you in Austin!

  • MapQuest Traffic Service Goes Live!

    Another week, and another production launch to the MapQuest Web Services. This time around it is the new Traffic Service.

    Since I have already blogged about its features and functions when we pushed it to beta, I'll just provide a brief summary and encourage you, dear reader, to click through to my original post.

    Get Markets List
    Determine the markets where we have traffic coverage with a simple call. There are no parameters (except your appkey). It simply returns a list of market names, their center-points, an icon to use, and suggested bounding boxes for zooming in. This function is handy for showing the traffic markets on zoomed-out maps, and creating the "zoom to market" links in the market infoWindows.
    Get Incidents in an Area
    Request all incidents within a given bounding box and filter based on which incident types you want returned ("Construction" for example). Each incident provides type and location details, an appropriate icon to use, a short and full description, and timing/duration info.
    Get Traffic Flow Overlay
    Retrieve a transparent raster image of color-coded traffic flow that overlays on top of the road network, providing colour-coded visualization of current traffic speed conditions

    Incidents in a market
    Showing both incidents and flow on a map.

    The service is all part of the new platform services, so it allows you to GET with Key-value pairs, GET or POST with JSON or XML, and receive your response in a different format to your request (eg: send in XML, get it returned as JSON).

    The Developer Network also contains more information about the MapQuest Traffic Service or take advantage of our Traffic Service Forum.

    If you haven't tried any of our new services and SDKs yet, you can sign up for a free appKey here.

    Stay tuned...more to follow soon.

  • A BBQ Quest with MapQuest at SXSW!

    Mid-March is almost upon us. For thousands, this time of year means one thing: time to go to Austin, TX for SXSW! MapQuest is no exception. In addition to helping attendees get around Austin and find venues for the Interactive, Film, and Music portions of the conference, we'll have a booth set-up for the Interactive Trade Show. Here, you'll have the opportunity to talk to MapQuest Developers about making your applications location enabled.

    Now this last part is important if you're attending SXSW Interactive and love great food:

    MapQuest can help you find great BBQ in Austin, but we'd thought we'd also take you to get great BBQ as well -- 23.58 miles outside Austin to Driftwood Texas to be exact.

    On Sunday, March 14th, we'll be running buses to take about 150 of our fellow attendees to The Salt Lick for some of the best (in our opinion) BBQ in all of Texas (and quite possibly the world). We'll also be supplying the beer to wash down that NOM-tastic food. While it's worth the wait in line, we've got space reserved so we can get right to the eatin'. Oh, did we mention that we're picking up the tab for everyone?

    Salt Lick Pit of Meat
    Pit of meat at The Salt Lick

    Mouth's already watering thinking about it, right?

    If you want in, here's what you need to know:

    MapQuest BBQ Quest at South by Southwest

    What?
    The Salt Lick BBQ
    Free beer on the bus and at The Salt Lick
    Free bus ride from downtown Austin to The Salt Lick in Driftwood, TX (and back I suppose)
    When? I'm hungry!
    Sunday, March 14th. Meet at 5:30pm. Buses will have you back for evening events by around 8:30pm
    Can I go?
    You need to be over 21 years of age (bring your ID)
    You need to have a 2010 SXSW Interactive, Gold or Platinum Badge
    You need to love BBQ
    You need to know all the words to "Wheels on the Bus" (Fine! That's optional)
    Important: You need to be early. The event is first come, first serve and we're only feeding the folks on the bus. When the buses are full or it turns 6pm (which ever comes first), we're hitting the road. No riding on the roof either (we asked).
    Where do I line up?
    We will be waiting for you at the Hilton Austin (Right across the street from the Convention Center) located at 500 E. 4th St. Austin, TX
    Simply look for the MapQuest Charter Buses.

    We look forward to seeing old friends, making new ones, and eating until we collapse.

    See you in Austin!