We're bringing Oktoberfest to the MapBox Garage on Thursday, October 17. We're racing kegs - Hofbrau vs. PBR - and grilling up German sausages and halfsmokes in the alley. We'll get started after work at 6pm and go until we kick the kegs. Join us! Lederhosen optional.
Oktoberfest at the MapBox Garage
Hiring an operations associate for the DC garage
This position has been filled.
Our team is growing fast, and we're hiring an operations associate to help support us as we scale from a small startup working from a DC garage, to a larger startup working out of the same garage and growing our office in San Francisco.
We're looking for someone who wants to move fast, have their hands in everything on the operational side of a startup, and "ship" every day. You'll read NDAs, send out bills, talk with clients and partners, plan conference exhibits, and fix at least a few surprises every day, all while working alongside our operations team.
This is a creative role where we want you to bring your ideas to how our office, systems, and team can run better. Our team and our culture are the foundation for the work we do at MapBox, and we take making it awesome seriously. Come help us grow.
Desarrollando América Latina: Talleres de OpenStreetMap y MapBox el 20 de Octubre
Tune in on Sunday, October 20 for virtual workshops on OpenStreetMap and MapBox in Spanish language. These workshops are part of our support for Desarrollando América Latina 2013, a fantastic Latin American grass roots initiative revolutionizing the way citizens interact with government through technology.
Apúntense el Domingo, 20 de Octubre a los talleres virtuales sobre OpenStreetMap y MapBox, en español. Estos talleres son parte de nuestro aporte a Desarrollando América Latina 2013, una iniciativa latinoamericana que está revolucionando la manera en que los ciudadanos interactúan con sus gobiernos a través de tecnología.
(1) Qué demonios es OpenStreetMap?
1PM - 2.30PM EDT
Entrar al taller
Materiales(2) Crear mapas bonitos y rápidos para web y móvil con MapBox
3PM - 4.30PM EDT
Entrar al taller
Materiales
(1) Qué demonios es OpenStreetMap?
Taller a distancia de OpenStreetMap de hora y media.
OpenStreetMap - No tiene Street View ni la omnipresencia de algunos de sus oponentes, pero dejarse distraer con estas características sería no reconocer el poder real de este proyecto: OpenStreetMap son datos abiertos. OpenStreetMap es la Wikipedia de los mapas y como tal es la opción perfecta para todos aquellos que necesiten un poco más que un mapa prefabricado. Con este taller, lánzate en el mundo de OpenStreetMap, conociendo desde cómo contribuir al mapa, a extraer datos, procesarlo y crear tu propio mapa. El taller dura una hora y media y tomará lugar a través de Google Hangout. Será guiado por el experto de datos abiertos de MapBox, Alex Barth.
Este taller es para todos que quieran aprender más sobre OpenStreetMap, tener un conocimiento técnico es útil, pero no es un requerimiento para participación.
Grabación del taller
(2) Crear mapas bonitos y rápidos para web y móvil con MapBox
Taller a distancia de MapBox de hora y media.
Un producto convincente se distingue por su diseño. Diseño no en el sentido superficial, sino en el sentido profundo: la combinación perfecta entre función y apariencia. Es ir mucho más allá que poner cualquier mapa como trasfondo para una aplicación geográfica. La meta de MapBox es proveer las herramientas para crear las experiencias geográficas del mañana. En este taller Alex Barth de MapBox enseñará una seria de técnicas simples pero efectivas para integrar mapas en aplicaciones para el web y para plataformas móviles.
Éste taller es para todos con conocimiento básico de HTML y Javascript que quieren crear mapas distintos y encantadores. Conocimiento básico de HTML y Javascript es requerido.
Debido a un problema técnico, se perdió la grabación de este taller.
Eric Fischer joins MapBox
Eric Fischer joins the MapBox team! We have worked with Eric on some incredible projects, from mapping 3 billion tweets, to visualizing OpenStreetMap contributors across the globe, to analyzing the OpenStreetMap 2013 data report, and identifying opportunities for improvement in OpenStreetMap - so this is a natural fit. Having Eric now full time as part of our growing team in San Francisco is going to be awesome.
Eric was previously a member of the Android team at Google and was most recently an artist in residence at the Exploratorium. He will be continuing to work on tools and techniques for innovative big data visualizations and on improving the accuracy of the underlying OpenStreetMap base map through GPS verification and updated data imports.
Government Shutdown Map by the Washington Post
This government shutdown map by the Washington Post allows readers to comment how the closed government affects them and shows their response on a MapBox map. The result is an evolving visualization of where in the United States people are affected.
Flying the Matterhorn with Drones - Working with Sensefly's UAV Imagery
We are working with Sensefly to map the data from their latest mission on the Matterhorn. Here are three samples of the visualizations we have created from this data, each available as full source code to copy from.
SenseFly R&D engineer Adam Klaptocz launching a Sensefly eBee from the summit of the Matterhorn.
Flying directly from the summit of the Matterhorn using multiple Sensefly eBee fixed-wing drones and technology from Pix4d, Sensefly was able to capture over 10 square miles of 3d data and imagery in two hours. The Matterhorn flight was the most recent project by the Switzerland-based organization that seeks to promote the civilian use of drones. Adam Klaptocz, R&D engineer at Sensefly says:
"The goal of this particular mission was to push the limits of data gathering with drones in the most challenging mountainous conditions. Such a combination of high altitudes, steep rocky terrain and sheer size of dataset has simply not been done before with drones, we wanted to show that it was possible! We're currently discussing with several agencies on how best they can exploit this dataset, including the Swiss Alpine Club, the Federal Office of Topography and the Zermatt tourism office. Beyond this particular mission, we're hoping that the lessons that we've learned here in the Alps can be applied in similar hard to reach places, whether for mapping landslides to aid first responders or tracking receding glaciers to study climate change."
SenseFly video of the recent Matterhorn mission.
This is just a first step, we're excited about working with Sensefly and future possibilities of providing services for high resolution UAV-sourced data. Using all open source technologies to process the data we built this interactive 3d model, as color relief and as an image mosaic:
Interactive 3d point-cloud model
To visualize the intricacies of the terrain, we have created an interactive 3d point cloud - click on the image to explore it (requires browser with WebGL support). We used LASTools to convert the source LAZ data (compressed point-cloud format) to .asc
. For displaying it on the web, we downsampled the point cloud and used WebGl via XB-PointStream to render each x,y,z point.
Color relief
As a contextual layer, flat color relief maps are often more appropriate than 3d models. For this visualization, we used TileMill and GDAL to render a tiled map of the source data. Note the interactivity layer generated in TileMill, revealing elevation data on mouse over.
Image mosaic
This tiled imagery layer lets you explore the source imagery in full resolution. Again here, we used TileMill and GDAL to render out the map.
Code for each project can be found on GitHub
This is all part of our plans to step up our work with UAV companies. Ping me on twitter (@bobws) if you want to talk.
More Open: Project OSRM Switches to BSD
We are happy to announce that effective immediately the Open Source Routing Machine (OSRM) is available under the very permissive simplified (two-clause) BSD license.
OSRM was previously licensed under the AGPL, with a very aggressive share-alike clause which added legal complexity while limiting the applications of OSRM. Switching to a BSD license is a crucial step to make OSRM easier to deploy in a wide range of scenarios.
At MapBox we believe in the unique power of open source to spread fast, to connect the smartest people across institutions, and ultimately to bring about the best solutions. While share-alike clauses are designed to ensure contribution, in practice they more often hinder adoption by introducing incompatibilities and legal complexity. And in the end, adoption is not driven by the virality of a license, but by the quality of the software itself.
The Open Source Routing Machine (OSRM) is a stack of tools programmed in C++ that combine sophisticated routing algorithms with the open and free road network data of OpenStreetMap.
Without key algorithmic techniques, shortest path computation on a continental sized network can take several seconds. But OSRM leverages recent academic research, and is able to compute the shortest path between any origin and destination within a few milliseconds.
"OSRM is a lightning fast routing server that uses OpenStreetMap data to calculate routes based on different routing profiles. The system is very flexible and configurable: you can setup profiles for car, foot, and bicycle and decide every detail about where the different users (pedestrian, cyclists etc.) can pass through or cross."
Alessandro Pasotti, ItOpen
Key features of OSRM:
- High-performance routing
- Ability to handle continental sized networks
- Customizable import of OpenStreetMap data
- Written in C++ for best performance
- Available as Open Source
- Influenced by current and ongoing academic research
A variety of great projects have adopted OSRM. It powers Copenhagen's official bike route planner, routes pedestrians and drivers in the Citybot mobile travel guide, and identifies OpenStreetMap connectivity problems in GeoFabrik's quality assurance tools .
Current development is focused on performance improvements and more flexible memory management. To get started with the Open Source Routing Machine, check out Project OSRM on GitHub, or check out the planet-wide demo installation.
Cloudless Landsat Preview | Rio de Janeiro
We're processing new Landsat imagery right now, which will add 4 new zoom levels to our Cloudless Atlas. The progress is stunning. Here’s a view of Rio de Janeiro, one of the largest cities in the world. It lies around Guanabara Bay – which still supports large mangrove swamps in the northeast despite the impact of Rio’s 12 million residents. In the bay you can see Galeão Airport on Ilha do Governador, and just to its south, the artificial island of Fundão, which houses the University of Brazil. Crossing the bay is the enormous Rio–Niterói Bridge, more than 8 km (5 mi) long. Notice the lake at center bottom – that’s Lagoa Rodrigo de Freitas, where some of the aquatic events of the 2016 Summer Olympics will take place. Just south of the lake are the famous beaches of Copacabana and Ipanema, and on the hill to its north is Christ the Redeemer.
Like the view of Vancouver we’re delighted by the imagery we’re seeing at this stage, and we’re looking forward to making it even prettier – at scale – and rolling it out.
Nicki Dlugash Joins MapBox
Nicki Dlugash joins the MapBox team in DC! Drawing from her background in interaction design, data visualization, and marketing, Nicki will be jumping into her role as a designer with collaborative projects in icon development, user interface design, and custom map styling. Welcome!
Nicki recently completed her MFA (Master of Fine Arts) in Graphic Design at MICA, where she developed her thesis project, Play Math, on visualizing mathematical concepts through play.
Ryan's Desk
Our designer & illustrator Ryan always maintains a pretty entertaining desk.
$10 Million Funding from Foundry Group
We just closed a $10 million Series A round with Foundry Group. Now we grow.
This round is squarely focused on bringing more amazing people to our team in both San Francisco and Washington, DC. We are going to win with team.
And now we have real runway. For three years, we've been completely bootstrapped, which meant we had only a few months in the bank at any time. That changed: combined with a rapidly growing userbase, funding lets us plan for years of building the future of geo software, from the ground up.
Foundry Group is the perfect partner: they get big data, understand our platform play, and see how open source and open data are our comparative advantage. Most importantly, they believe in our long-term business plans to break open this space and stay independent. We're just getting started, and are excited to have the right partners next to us.
To our early adopters, strategic partners, open source contributors, and those who have taken MapBox to places we never expected, get ready for an awesome ride.
Open Mapping on iOS in Moscow
Earlier this month, I spoke at Yet another Conference 2013, an event hosted by Yandex, Russia's largest internet company, each year in Moscow. YaC is the most widely attended tech conference in Eastern Europe, and I was privileged to speak to a large group of mobile developers in the Mobile Camp track about making and using custom maps on Apple's mobile platform.
I spoke a bit about MapBox's strategy, the constraints of mapping on iOS, what we've built, and I gave the first public demo of our new MBXMapKit, which lets developers replace Apple maps on iOS 7 and OS X 10.9 in one line of code.
Take a look at the video of my talk on Yandex's site.
Sean Gillies Joins MapBox
We're excited to announce that Sean Gillies, author of Shapely and collaborator on the GeoJSON specification, is joining MapBox! Sean is going to bring his algorithmic wisdom to all parts of the MapBox stack, and help build our next-generation open source tools.
We've long been fans and users of his projects - we use Shapely for basic analysis tasks, and GeoJSON is a pivotal standard that makes our markers API possible. It's going to be an awesome future combining Sean's analytical background with MapBox scale.
Biking Directions With OSRM's New External Data Support
Copenhagen's bike route planner I Bike CPH will use OSRM's all improved ability to integrate external data to find better directions for its users. Here is a walkthrough of how to use the Lua interface of OSRM to fine tune routing with external data sources. While bike routes can be computed merely based on network topology and lengths of road segments, external data is crucial to deliver great directions, Emil Tin of I Bike CPH says:
The ability to factor in data about parks, hills, pollution, etc when calculating routes open up some fantastic possibilities, and allows us to offer even better bicycle routing in our I Bike CPH service.
Emil Tin, project manager of I Bike CPH
An I Bike CPH route generated by OSRM
Project OSRM is a stack of high-performance tools to extract, prepare and serve routing information from OpenStreetMap data. Routing suggestions for bicycles or pedestrians can be vastly improved by considering data other than the mere network of roads and paths. Here is an overview of how to get started with the new Lua interface.
For the following example, I assume a current OSRM setup as described on the OSRM Wiki with further data in a SQL database. In this case it is the same OSM data imported into a PostgreSQL/PostGIS database with Imposm. External data support is only available in the the development branch, so install from there.
Connecting to a Database
It is easy to incorporate external data sources into an OSRM profile. Technically speaking, such a profile is a Lua script that decides which nodes and ways to use from the OSM data. There are plenty of modules for LUA that can be loaded during runtime. LUARocks is an easy-to-use management tool to build and install these modules. It is available on all major Linux distributions and also on Mac OS X through the homebrew
package management system. The following steps work for OS X, and are easily transferable to Linux.
Installing dependencies
First, we install LuaRocks, which is as easy as
$ brew install luarocks
Second, the database driver is installed by executing luarocks in a brew shell:
$ brew sh$ luarocks install luasql-postgres
And that's it.
Running queries during extraction
Each profile script is devided into several sections. A global section is used to initialize a global environment. We connect to the database at this point as this code is run before any OSM data is actually parsed.
lua_sql=require"luasql.postgres"sql_env=assert(lua_sql.postgres())sql_con=assert(sql_env:connect("imposm","user","password"))
We'll use this connection in the subsequent parsing steps. Each OSM way is parsed in a function with the name way_function
and it is also the place our database queries are run from. For this simple example, we put a penalty on routing over any OSM way that passes by an industrial landuse within 100 meters distance:
functionway_function(way)localhighway=way.tags:Find("highway")if(nothighwayorhighway=='')thenreturn0endway.name=way.tags:Find("name")way.direction=Way.bidirectional-- query PostGIS for information about the waylocalsql_query="".."SELECT SUM(SQRT(area.area)) AS val ".."FROM osm_ways way ".."LEFT JOIN osm_landusages area ON ST_DWithin(way.geometry, area.geometry, 100) ".."WHERE area.type IN ('industrial') AND way.osm_id="..way.id.."".."GROUP BY way.id ".."LIMIT 1"localcursor=assert(sql_con:execute(sql_query))localrow=cursor:fetch({},"a")way.speed=20.0ifrowthenlocalval=tonumber(row.val)ifval>10thenway.speed=way.speed/math.log10(val)endendway.type=1return1end
We take the square root of the area to get a rough estimate on how long the side of an area is. This is just accurate enough for this example. Now, penalizing the way makes it more expensive to pass through any industrial zone. Having an index on the OSM id in the SQL database is crucial for efficient processing of our queries. The following screen shot gives a good example. Note how the biking route keeps a distance to the industrial zone by passing it on its northern side while still being reasonable.
An example of where I Bike CPH will pick a longer, but more favorable route for cycling
We are excited to see the potential use cases of this feature: routing through parks, closer to coffee shops, through populated areas, or avoiding pollution - there is no limit to this list.
Beers Next Tuesday - MapBox Team San Francisco
We're growing in San Francisco, and looking to hang out more. Join us for some Pacifico next Tuesday, October 29th, at 6:00pm @Raven (1151 Folsom St (btw 7th St. and 8th St.)), one of our favorite bars by our office in SOMA. Look for @jfire, @enf, @lxbarth and @ericg.
Announcing MapBox.js v1.4.0
Today we're releasing MapBox.js v1.4.0, with new features, bug fixes, an updated version of Leaflet, and easier retina support. MapBox.js is an open source project, and many of the improvements in this release came from the community.
You can read the new API documentation and check out our continued progress in the changelog. We've updated all MapBox.js examples to use the new API.
MapBox.js moved from Leaflet v0.6.3 to v0.6.4, which includes some important bugfixes.
We've fixed other subtle bugs and added some useful features, like a keepOpen
option for the L.mapbox.geocoderControl.
L.mapbox.map('map','tmcw.map-oitj0si5',{tileLayer:{detectRetina:true}});
This release also makes it easier to provide great looking maps on retina devices.
For maps based on MapBox's customizable
tiles, we've created a new autoscale option
that lets you easily support high-DPI screens without having to create two
versions of the same color scheme and settings. This is super simple to use
from MapBox.js - just set detectRetina
to true in the L.mapbox.tileLayer
options, and the library detects retina screens and adjusts automatically.
Designing a Vector Terrain Map for Outdoor Apps
We are starting a major update to MapBox Terrain. We are designing this specifically for outdoor apps, making it easy to find running trails, check out ski slopes, or visualize your bike rides.
There are two main aspects to the work in progress. First, we want to integrate hillshade and landcover data into the vector tiles workflow. This allows for a very high degree of design control and labeled contour lines down to zoom level 19 (currently at 15). Second, we want to include more features for outdoor recreation in MapBox Streets. The OpenStreetMap community is full of enthusiasts who map their favorite places for cycling, hiking, skiing, camping, and countless other outdoor activities, and we want to better share this information.
Here's an interactive demo of the San Francisco Bay area. Note how footpaths and cycling trails add detail in offroad areas. Labeled contour lines show elevation down to the highest zoom levels:
Outdoor details
Adding more details from OpenStreetMap is relatively straightforward in a technical sense. The challenges are in choosing the right data to show and effectively translating that to vector tiles for styling. OpenStreetMap contains much more information than we can display, so we generalize and reclassify things quite a bit.
One of the features we're focusing on is cycling. Bike paths and mountain bike trails are distinguished from footways and generic paths by color. Cycleways are shown as dotted lines and mountainbike trails as dashed lines. Footways and paths are distinguished similarly.
Relief and elevation
Our terrain layer includes both shaded relief (hillshades) and elevation contour lines. Elevation labels are placed along the more prominent index contours.
Compared to our current terrain layer, the hillshades in our experimental layer are quite different. The biggest difference is that we're using a vectorized representation of the shaded relief, not raster images. This allows us to show hillshades down to high zoom levels where otherwise rendering rasters would come at a very high expense.
The power of vector tiles
Working with vectorized hillshades as opposed to raster hillshades brings a lot of flexibility. The highlights and shadows are completely customizable, along with the lines and text of the contours and elevation labels.
Having the shaded relief available as vector data means we have all of Mapnik's polygon styling features available to use - colors, patterns, outlines, image filters, and compositing operations. Not only can we experiment with different palettes and effects, we can do it rapidly and with instant feedback since we don't have to reprocess any data.
As an example of this flexibility, Ian Villeda designed a bold punk-poster cartographic style using the exact same vector tiles as in the images above.
Let me know what you think about the new design, I'm @aj_ashton and if you're an app developer and want to be an early beta tester ping @lxbarth and @ericg.
9 Years of OpenStreetMap GPS Tracks Available for Mapping
All public GPS tracks ever uploaded to OpenStreetMap are now available for tracing in the iD editor. Click the new "OpenStreetMap GPS traces" option in the background settings panel to reveal an overlay of GPS tracks on the map. You can use it to map roads, check one way streets, or adjust imagery where it is offset.
9 years of OpenStreetMap GPS tracks over Europe
Local knowledge, satellite and aerial imagery, and GPS traces are the source data from which OpenStreetMap is built. GPS traces play an important role in inferring one ways and turn restrictions, adjusting imagery offsets, and mapping areas where imagery is not available. OpenStreetMap's GPS database is one of the world's largest public collections of GPS data, and it continues to grow every day.
The iD editor for OpenStreetMap makes it easy to drop a single GPX file onto a browser window and immediately begin tracing it onto the map. The GPS traces overlay layer now makes all public GPS traces uploaded by any user available for mapping.
The intricate detail seen in Europe continues as you zoom in on individual cities and towns. If you scroll over to South Korea, Daejeon has remarkably systematic GPS coverage.
OpenStreetMap GPS tracks in Daejon, South Korea
But just as interesting in their own way are GPS traces that don't follow roads, like these ones from a cropdusting airplane circling over fields:
GPS patterns of a cropdusting airplane
Misaligned and missing roads
The real utility comes to play when you zoom in and look at the fine detail. In aerial imagery, hilly roads may appear to be a considerable distance from their actual location, while GPS tracks are free from distortion and reveal where the roads really are. A good example is this section of Interstate 15, where the northern carriageway is mapped about 200 feet from its actual location. Now it can be corrected using the new GPS layer.
Identifying imagery misalignment with GPS tracks
The GPS layer can also highlight larger areas of map errors. If you turn on the Locator Overlay on top of the GPS layer, what remains visible underneath is GPS tracks that don't correspond to a street or highway in OpenStreetMap. Large mismatches between map and GPS jump out, like these sections of US 20 and US 14 where they meet in Greybull, Wyoming.
Offset streets in Greybull Wyoming, highlighted by comparison to GPS data
Streets missing from the map stand out too. Here is a neighborhood in Indianapolis that someone visited with a GPS receiver, but never traced onto the map.
A missing street in Indianapolis, highlighted by GPS data
Color by direction
The color of the GPS tracks helps map and verify one way streets by giving each direction of travel its own hue. In this freeway interchange in Los Angeles, you can see eastbound movement in red, westbound in cyan, northbound in yellow, and southbound in violet.
The GPS layer is color coded by direction, which helps identifying one ways and dual carriageways
Your tracks, on the map in seconds
Every 60 seconds, the GPS layer is updated with the latest tracks that have been uploaded to OpenStreetMap. Any GPS track uploaded and marked as "Identifiable" or "Public" is included in the layer.
Pick the Identifiable or Public option to make your GPS trace show up on the new GPS layer
The layer is deployed on OpenStreetMap Foundation servers -- thanks to the Operations Working Group team, who have been essential in launching this new layer.
If you have ever made your own GPS logs, I invite you to share them with OpenStreetMap and help improve the map for everyone else. Don't worry if someone else has already logged the same street -- it's still useful to have independent verification. If you don't have any GPS logs but you do have a smartphone, you can download a GPS logging application and start capturing.
Take a look through the map below to see where people have been sharing their tracks, or start mapping with it on OpenStreetMap.
The new GPS tracing layer containing 9 years worth of GPS data uploaded to OpenStreetMap
Mike Morris Joins MapBox
Mike Morris is a seasoned full-stack developer who joins us in DC with a wealth of experience in web development. Mike's passion as an open data advocate has made him a close friend of MapBox. He is one of the lead developers of prose.io and has helped us bootstrap our play with the Development Seed team over the past several months. Mike has also been a contributor to MapBox projects, most recently through his work on geojson.io with Tom MacWright.
We're excited to welcome Mike to the MapBox team. He will be hammering away at our API and be a part of upcoming product sprints as he gets his hands deeper into the node.js portions of our stack.
Gerald Rich Joins MapBox
Gerald Rich just joined the MapBox team in DC! Gerald is a developer/data journalist who has previously worked with the NPR News Apps team, Texas Tribune, and Houston Public Media. Gerald brings an awesome mix to the table — primarily joining me on the 'labs' team as a developer, but also helping us run our blog and grow our community in support.mapbox.com.
Gerald studied economics at the University of Texas, where he established the student newspaper's web department. Most recently, at NPR, Gerald helped build Playgrounds for Everyone which uses MapBox's maps to add and edit playgrounds for children with disabilities. He also runs NKgram - a dedicated feed of curated instagrams out of North Korea.