Node.js - Development Seed The latest developments in evented, server-side javascript. en OSM-in-a-box <p>We’ve been thinking about how to make <a href="">Macrocosm</a>, our fork of the OpenStreetMap API, easier to use. Our vision is that one day you’ll be able to type <code>npm install openstreetmap</code> and be off to the races.</p> <p>We’re not there yet, but to that end, we’ve started to bundle <a href="">iD</a> as a submodule in the Macrocosm repo. Now you can <a href="">set up your database, API, and editor all from the same repo</a>, using simple commands.</p> <p>We think there’s a lot of use for this deployable OSM. Testing, creating backups, and developing OSM applications all come to mind. Heck, you could even set up an awesome collaborative editing environment for you and your friends. You can kick the tires on <a href="">Macrocosm</a> or <a href="">contribute</a>, to get us closer to a full OSM-in-a-box.</p> 2016-05-16T00:00:00+00:00 Development Seed The Value of User Research <p class="dropcap">To build a successful product, you must deeply understand your users and their needs. Unfortunately, when timelines are tight, user research is often what gets dropped or simply forgotten about, right when it is needed the most. Doing even a little bit research up front can avoid costly delays later in the process, saving time and resources, resulting in a better product.</p> <p>We recently put this theory to the test while working with the <a href="">Humanitarian OpenStreetMap Team (HOT)</a> on their <a href="">OSM Analytics prototype</a>. HOT came to us to help them better understand what their users really wanted and needed, to inform what they should build, from the beginning. Because of their short timeframe, we condensed our research process, conducting user research, iterating and then testing to verify assumptions, within a weeks time.</p> <p>For our initial UX research phase, we spent an intensive day with the team at HOT helping them think through their <a href="">measurable goals</a> for the product, the kind of people they hoped would use their tool, and finally, the kind of content that would achieve their goals as well as those of their users. Doing this type of analysis up front, not only ensured that we were all driving towards the same goal, but also focused us on features and design decisions that were right for the product, instead of suggesting whatever is new and flashy. The result by the end of the day—a simple, testable prototype.</p> <figure class="align-center"> <img src="/assets/graphics/content/prose/OSM-analytics-1.jpg" alt="Image" width="1440" height="360" /> </figure> <p>The second step of the process was to get our prototype in front of real users. Testing is invaluable because it provides the project team with fast feedback, allowing them to make more informed changes early on. For OSM Analytics, we tested our prototype and verified our assumptions by using our preferred method, <a href="">moderated usability testing</a>. We asked a number of relevant users to perform tasks on the prototype, to ensure that what we built matched their expectations. Their responses quickly showed us what worked and what didn’t within the product, allowing us to fix big issues and more confidently continue building. Also, hearing directly from users how they’d like to use the tool, gave us and the HOT team insight into what future phases of the product should look like.</p> <figure class="align-center"> <img src="/assets/graphics/content/prose/OSM-analytics-2.jpg" alt="Image" width="1440" height="360" style="border: 1px solid #ddd;" /> </figure> <p>Within the week we had for this project, we not only gained an understanding of HOT’s users wants and needs, but also learned what worked for the product and what didn’t. This all allowed us to iterate our way to a more user centered design showing the value of doing UX research and testing, no matter the timeline.</p> <p>If you haven’t tried OSM Analytics yet, <a href="">check it now</a>. Join in or watch further development of the tool <a href="">on GitHub</a>.</p> 2016-05-16T00:00:00+00:00 Development Seed Ecuador: Post-Earthquake drone imagery now on OAM <p class="dropcap">Post-earthquake drone imagery <a href=",-0.5273363048115043,8/2100011013?resolution=high">is now available on OpenAerialMap</a>. These images were collected by local drone operators coordinated by the <a href="">UAViator network</a>, mostly by the Instituto Geográfico Militar, the Universidad de Cuenca, and the <a href="">Voluntarios UAV-ECU</a>. Thanks to <a href="">Francisco Ruiz</a> for helping coordinate. All of the imagery is very-high resolution, and available for tracing in OSM.</p> <figure class="align-center"> <img src="/assets/graphics/content/prose/ecuador-drone.jpg" alt="Image" /> </figure> <p>Drone pilots around the world stand ready to help respond to disasters. OpenAerialMap is a platform for drone and satellite operators to easily share openly licensed imagery. OpenAerialMap is a managed in partnership by the Humanitarian OpenStreetMap Team, Development Seed, Azavea, Stamen, and other humanitarian tech partners.</p> <p>You can contribute by <a href=",-0.5273363048115043,8/2100011013?resolution=high">mapping now</a>. If you are new to OSM mapping, get started with these <a href="">great training videos from our friends at Missing Maps</a>.</p> <figure class="bleed-full"> <a href=",-0.5273363048115043,8/2100011013?resolution=high"><img src="/assets/graphics/content/prose/oam-ecuador-drone.jpg" /></a> <figcaption>Start mapping now</figcaption> </figure> 2016-05-06T00:00:00+00:00 Development Seed Modeling Solutions to Energy Access Problems <p>MIT-Comillas’ Reference Electrification Model (REM) determines the most cost-effective strategy to provide energy access in areas that lack it. We are collaborating with the <a href="">MIT-Comillas Universal Energy Access Group</a> <sup><a href="#footnote-1" title="View footnote">[1]</a></sup> to build modern mapping platforms that put this data in the hands of policymakers, energy planners, and entrepreneurs to better connect rural communities.</p> <p>The basic input data for REM are fuel costs, solar irradiance, grid extent and reliability, consumer demand and infrastructure costs. It then uses a deep learning-based computer vision system that the MIT-Comillas team developed to locate buildings in satellite imagery. With this infrastructure information and geodata, REM generates detailed engineering designs, providing recommendations on the best ways to connect rural communities through a combination of grid extensions, microgrids, and stand-alone systems.</p> <p>We are working with the MIT-Comillas team to make these unique and valuable insights more accessible. Lightweight web maps can easily get these localized plans to regional power authorities and development organizations in the field. Further opening the data can show where off-grid approaches are viable intermediary solutions for electrification, motivate essential policy decisions, and encourage off-grid energy providers to work in the places they can have the greatest impact.</p> <figure class="bleed-full"> <section id="rem-demo" style="height: 640px;"></section> <script src=""></script> <figcaption>Example REM outputs for the Vaishali district in Bihar, India.</figcaption> </figure> <p>REM enables users to perform sensitivity analyses to external factors like demand level, grid reliability, fuel and technology cost, and cost of non-served-energy. In this example, you can see how the model projections change with the price of diesel. As diesel prices rise, it becomes more and more cost efficient to connect people to the existing grid (this is because many of the solar-and battery-powered microgrids also use diesel for backup power). But even with high diesel prices, there are some areas that are better served through off-grid power models. We built this map using <a href="">Mapbox GL</a>. Mapbox GL uses your computer or phone’s powerful graphics card to quickly process huge amounts of data. This enables us to take complex model results and render them on the fly into a highly detailed, interactive web map based on input from the user. The extremely efficient vector tiles that Mapbox GL uses for geodata makes the tool usable even on slower Internet connections.</p> <p><a href="">1.1 billion people still lack access to electricity</a> and frequently use dirty kerosene lamps for lighting. Nearly 3 billion rely on harmful biomass fuels for cooking, and these activities contribute to air pollution that <a href="">kills millions of people per year</a>. Expedited electrification will decrease risks of respiratory disease, improve income generation prospects, and enable children to study longer.</p> <p>Immediately extending the existing grid isn’t always the right answer. Depending on complex geographic and economic factors, it may be more cost-effective and sustainable to build microgrids and stand-alone systems instead. If the grid’s reach eventually extends to these areas, connecting grid-compatible off-grid solutions may encourage infrastructure reuse and promote a cleaner generation mix as well. Satellite imagery, machine learning, powerful modeling tools, and modern mapping technology can empower infrastructure planners to design off-grid electricity solutions that are viable, cost-effective, and can better serve communities.</p> <h2 id="acknowledgements">Acknowledgements</h2> <p>Ongoing funding for REM development is provided by the <a href="">Tata Center for Technology and Design and MIT</a>.</p> <ol class="footnotes-list"> <li id="footnote-1">The MIT-Comillas Universal Energy Access Research group currently works with policymakers, NGOs, and private companies in India, Rwanda, and Uganda to explore paths towards universal electricity access. Given the multivariate objectives inherent in sustainable development, the group is investigating how regulation and advanced planning tools have the potential to enable game-changing technologies and business models for electrification.</li> </ol> 2016-05-04T00:00:00+00:00 Development Seed Announcing Gippy v1.0 <p class="dropcap">We’re happy to announce the beta release of <a href="">Gippy v1.0.0b1</a>. Gippy is a python library to process geospatial raster data (like satellite sensor data) fast and efficiently, regardless of image size, or the size of your machine. We’ve had a lot of success building <a href="">tools for easily processing Landsat imagery</a>. Gippy gives us the processing engine that will allow us to quickly expand these capabilities to process other open datasets, such as Sentinel-2 and MODIS.</p> <p>Building upon the previous 0.3 version, we’ve added documentation, automated testing, and additional functionality to create a 1.0.0 release. Gippy is open source and released under an Apache license.</p> <h3 id="open-source-powered-by-open-source">Open-source, powered by open-source</h3> <p>Gippy automatically handles several issues common to geospatial raster data, such as handling of nodata values and managing very large datasets by breaking up processing into pieces. Gippy doesn’t reinvent the wheel, instead encapsulating functionality from <a href="">GDAL</a> for reading and writing to files, and <a href="">CImg</a> for doing image processing. It is also reasonably lightweight, requiring only GDAL system libraries and a reasonably modern C++ compiler.</p> <h3 id="features">Features</h3> <p>Gippy is built for processing remote sensing data. It intelligently manages band numbers and handles <code>nodata</code> values in a smart way. It also supports process chaining and piecewise processing. It comes with a range of operations and algorithms out of the box, including:</p> <ul> <li>arithmetic, logical, exponential and other operations</li> <li>dynamic creation and applying of masks</li> <li>algorithms for mosaicing multiple images in any combination of projections</li> <li>statistics, spectral correlation and covariance</li> <li>cloud detection algorithms ACCA and F-mask for Landsat7</li> <li>multiple indices (NDVI, EVI, LSWI, NDSI, NDWI, SATVI, MSAVI-2)</li> <li>arbitrary linear transforms</li> <li>RX Detector, a multispectral anomaly detection algorithm</li> </ul> <h4 id="referencing-bands">Referencing bands</h4> <p>With Gippy there’s no more having to worry about trying to identify band numbers in your data. Gippy allows algorithms to be written to target specific types of bands (e.g., red, nir, lair). When a GeoImage, the main class that is used, is opened or created bandnames can be assigned by setting the bandnames keyword to open. Bands can be referenced via band index or the band name and can be iterated over as a collection.</p> <pre><code>from gippy import GeoImage geoimg =, bandnames=(['red', 'green', 'blue'])) red_arr = geoimg['red'].read() </code></pre> <h4 id="theres-nodata-around-these-parts">There’s nodata around these parts</h4> <p>To make identification and customization even easier in Gippy, nodata results can even be set for each raster band, or entire image. Gippy also processes nodata values so that they stay as nodata pixels, even if the actual nodata value is changed when written to an output file. Given that “no data” values are extremely common in geospatial data and are often used to mask out invalid pixels or highlight missing data due to sensor issues, like broken scan line corrector mirrors, it is helpful that they are taken care of automatically.</p> <h4 id="process-chains-and-image-chunking">Process chains and image chunking</h4> <p>In order to efficiently do piecewise processing, Gippy chains together operations (e.g., +, -, log, abs) and applied the chain at one time, when the data is requested (upon a read or save operation).</p> <p>For example, to convert a landsat-7E TM+ image from radiance to top of the atmosphere reflectance, where theta is the solar zenith angle and sundist is the earth-sun distance:</p> <pre><code>green_toa = img['green'] * (1.0 / ((1812.0 * numpy.cos(theta)) / (numpy.pi * sundist * sundist))) </code></pre> <p>The 1812.0 is the exoatmospheric solar irradiance for the green band, as given in the Landsat handbook. This green_toa band can then be further processed, but none of the calculations anywhere in the chain will be performed until a read is requested through the read() or save() functions.</p> <pre><code># get a numpy array of the byte scaled green TOA reflectance green = green_toa.autoscale(1, 255).read().astype('byte') </code></pre> <h3 id="next-steps">Next steps</h3> <p>Improving Gippy is just the start. We are working on developing a suite of building blocks, we’re calling sat-utils, to provide easier ways to query, download, and process imagery into a variety of both visual and scientific products. Look out for more on this in the following weeks.</p> <p>In the meantime, check out the Gippy <a href="">repo</a> and <a href="">documentation</a>, and report any suggestions or problems. If you are at FOSS4G-NA, stop my <a href="">my talk on Gippy today</a> and say hi to Alireza and me.</p> 2016-05-03T00:00:00+00:00 Development Seed See you at FOSS4GNA <p class="dropcap">We’re headed down to Raleigh for <a href="">FOSS4G NA</a> - North America’s largest annual conference on Open Source Geospatial Software. We are big supporters of open geo, so we can’t wait for a week of stellar presentations and fascinating hallway conversations with hundreds of other open geo geeks.</p> <p>You can see some of what we’ve been working at two sessions, both on Tuesday at 5:40pm.</p> <ul> <li> <p><a href="">Anand</a> will demonstrate tools that we’ve developed for geographic analysis on vector tiles. This allows users to interact with the underlying data in vector tiles and perform sophisticated analytics instantly in their browser. (<a href="">302C - Tuesday @ 17:40</a>)</p> </li> <li> <p><a href="">Matt</a> will present the latest release of GIPPY, a python toolkit for fast, distributed processing of large remote sensing data sets. (<a href="">304 - Tuesday @ 17:40</a>)</p> </li> </ul> <p>Also look for <a href="">Drew</a>, <a href="">Marc</a>, and <a href="">myself</a>. Hit any of us on twitter if you want to meet up.</p> <p>NB: We had a serious team discussion on whether to decline to attend FOSS4G NA in order to register our outrage over the new North Carolina law that encourages discrimination. The law runs counter to our values and isn’t conducive to the type of events we want to attend. The FOSS4G NA conference organizers <a href="">have handled the situation remarkably well</a> as has <a href="">the City of Raleigh</a>, which in the end, influenced our decision to attend.</p> 2016-05-02T00:00:00+00:00 Development Seed Learning to Ask the Right Questions <p class="dropcap">Building a successful product means knowing your users and building your product with them in mind. Unfortunately, many times this is overlooked. As a result, product teams make assumptions and their products end up unintentionally being geared toward them, instead of the end user. This problem can easily be solved though by simply by integrating <a href="">user experience (UX)</a> practices such as personas, and user testing. To demystify and simplify these integral processes and encourage others to integrate them into their work, we’ll dive into why they’re important, what they are and how to you can implement them, here and within future blog posts.</p> <p>If you don’t have an understanding of your users and their lives, how do you know what technology they have, what kind of internet may or may not be available or even if they have a need for the tool you’re building? People’s lives, wants and needs are all so different that knowing exactly what will serve those needs is incredibly hard without asking your audiences the right questions.</p> <p>Being able to ask and get meaningful answers to these questions doesn’t have to be hard or time consuming: it just involves integrating research, care and empathy into each and every project. Here at Development Seed, we do this by building purposeful UX design practices into our projects up front, so that we’re thinking about and building for our users throughout the life of a project. Because we have a great understanding of our users from the beginning, it saves us time from potentially having to rebuild large parts of the product down the road. Also, knowing what our users want allows us to make informed design decisions, making this process easier and more staightforward.</p> <p>Of course every project that we do is different but the two UX practices we feel are the most integral, and would like to cover, are personas and user testing.</p> <p><strong>Personas</strong> - <a href="">Personas</a> are archetypes of who the users of your platform will be. There are many different methods for figuring out who your users are and/or who they should be, from <a href="">google analytics</a> to <a href="">ethnographic research</a>. Whichever you choose, building personas allows you to more deeply consider the lives of your users, be empathic and think about things from their perspective, making your product better geared toward them.</p> <figure class="align-center"> <img src="/assets/graphics/content/prose/user-personas.jpg" style="border: 1px solid #D8D8D8;" alt="Image" width="1440" height="360" /> </figure> <p><strong>User Testing</strong> - <a href="">User testing</a> is asking a relevant user to do tasks on a product and seeing how they perform. Whether you do it through a platform like <a href=""></a> or use other methods like <a href="">moderated usablity testing</a> as we do, any testing is good testing. Not only are you able to collect both qualitative (preferential) and quantitative (raw numerical) data, giving you the best insight into what needs to be changed, but also seeing first-hand how users interact and react to your product is invaluable.</p> <figure class="align-center"> <img src="/assets/graphics/content/prose/usertesting-screen.jpg" style="border: 1px solid #D8D8D8;" alt="Image" width="1440" height="360" /> </figure> <p>Over the next month watch for our posts that will dive deeper into these processes, using our own Development Seed site as an example. Want to join the process? We’ll be looking for people to participate for a half hour sometime during the month of May. Just fill out the following survey, <a href=""></a>, so that we can learn a little about you before we dive into the specifics.</p> 2016-04-28T00:00:00+00:00 Development Seed Alley Lyfe <p class="dropcap">Even though a few months have passsed since <a href="">our move to Blagden Alley</a>, we’ve only just finally unpacked the last of the boxes. I’m sure you can relate.</p> <p>We miss the garage, but our new place really feels like home. Come on by for a visit. If you come late in the day you might catch us on the deck enjoying the grill that we got as an office warming gift from <a href="">one of our favorite clients</a>. Here are a few photos of our new home, as only the talented <a href="">Tatiana</a> can capture.</p> <figure class="align-center"> <img src="/assets/graphics/content/prose/office-photos1.jpg" alt="Image" width="1440" height="360" /> </figure> <figure class="align-center"> <img src="/assets/graphics/content/prose/office-photos2.jpg" alt="Image" width="1440" height="360" /> </figure> <figure class="align-center"> <img src="/assets/graphics/content/prose/office-photos3.jpg" alt="Image" width="1440" height="360" /> </figure> <figure class="align-center"> <img src="/assets/graphics/content/prose/office-photos4.jpg" alt="Image" width="1440" height="360" /> </figure> <figure class="align-center"> <img src="/assets/graphics/content/prose/office-photos5.jpg" alt="Image" width="1440" height="360" /> </figure> <figure class="align-center"> <img src="/assets/graphics/content/prose/office-photos6.jpg" alt="Image" width="1440" height="360" /> </figure> <figure class="align-center"> <img src="/assets/graphics/content/prose/office-photos7.jpg" alt="Image" width="1440" height="360" /> </figure> 2016-04-27T00:00:00+00:00 Development Seed Auditing India's Power Grid with Satellites <p class="dropcap">Two weeks ago I visited Delhi with a team from the World Bank to launch <a href="">India Lights</a>, a tool that uses nighttime satellite imagery to track electrification in India’s rural villages. India Lights visualizes light output for over 600,000 villages, using nightly captures over a period of 20 years. Using freely available data, we aim to provide the tools to shine more light on the country’s electrification efforts.</p> <p>Electrification is a top priority for the Indian government. In his Independence Day Speech a year ago, Prime Minister Narendra Modi committed to electrifying 18,452 villages within 1000 days. By the government’s own accounting, 7,696 villages have been connected in the past year. However, <a href="">some report the actual number is lower</a>, due to clerical errors, lack of followup, and poorly implemented electrification. Although the Ministry of Power tracks their efforts, their reliance on site visits and reports from affected villages makes monitoring their large territory understandably challenging.</p> <p>On the other hand, to a satellite, remote villages are as accessible as urban centers. Using nearly 6 billion individual light readings from the National Oceanic and Atmospheric Administration’s (NOAA) weather satellites, we derive a unique light output curve for each of India’s states, districts, and 600,000 villages. This lets users track the light output of individual villages and how it changed, and see which villages participated in rural electrification projects and how they’re doing. All of this is possible without humans in the field.</p> <figure class="align-center"> <img src="/assets/graphics/content/prose/india-lights-compare.png" alt="Examining nighttime lights on" width="1440" height="360" /> </figure> <p><em>Compare two different points in time at <a href=""></a>.</em></p> <p>Though satellite cover a lot of ground, there are issues. Cloud cover, especially during the summer monsoon season, can wash out days or weeks of recordings, and small amounts of indoor light may not show up. Accordingly, a tool like nightlights works best when supplemented (and calibrated by) field-based methods, making for better, smarter monitoring. To learn more about the challenges we faced working with India Lights data, <a href="">see our full post</a>.</p> <p>What’s next? We’re currently working to add data beyond 2013, and incorporate imagery from newer, more precise satellites. Also, we’ll be working with the Ministry of Power to see how they might incorporate daily nighttime images into their electrification monitoring system.</p> <p>In the meantime, check out the <a href="">new UI on India Lights</a>, stay tuned for updates as we start pulling in more recent data, and check out the <a href="">open API</a> that powers the platform.</p> 2016-04-04T00:00:00+00:00 Development Seed Government of Vanuatu opens drone imagery on OpenAerialMap <p class="dropcap">The Government of Vanuatu has just released new high-resolution aerial imagery into <a href="">OpenAerialMap</a>. After Cyclone Pam, a Category 5 storm that caused major damage across Vanuatu in March 2015, assessment teams needed access to imagery to understand the extent of the damage. The Vanuatu government worked with the World Bank and the <a href="">Humanitarian UAV Network (UAViators)</a> to use humanitarian drones to collect imagery in over 30 areas of the islands. We’ve worked with the teams over the last week to start to import the imagery and <a href=",-17.88465917954279,7">make it available on OAM</a>.</p> <figure class="bleed-full"> <iframe width="100%" height="500px" frameborder="0" src=""></iframe> <figcaption>Some of the hardest hit areas that were surveyed.</figcaption> </figure> <p>Tools like OAM to search and access drone imagery matter when conducting assessments. The damage assessment teams in Vanuatu needed quick access to imagery to understand the extent of the damage. OAM is now providing the tools to search and find this imagery to make it easier for future assessment teams to focus more on the analysis and less on the challenges of sharing large datasets.</p> <p>We’ve just started the import so expect to see more imagery online soon. Thanks to <a href="">Patrick Meier</a> and Keiko Saito for helping import the imagery into OAM and also to the UAV teams, Heliwest and X-Craft, for carrying out the UAV flights. See all the <a href=",-18.81271785640776,8">new images across the islands of Vanuatu on OAM.</a>.</p> 2016-03-31T00:00:00+00:00 Development Seed Building an Open-Source Community <p class="dropcap">Building a community around an open-source project is critically important to its success so that it can grow and stay relevant over time. However, figuring out how to start laying the groundwork for a vibrant community is not always easy or straightforward and is often the last thing a developer thinks about. When you get it right though, the benefits to the overall project quality, usage and impact can be immense. Here at Development Seed this is a challenge we’ve faced many times with projects like <a href="">OpenAQ</a>, <a href="">Prose</a>, <a href="">OpenAerialMap</a> and <a href="">landsat-util</a>. We’ll show you how to include people interested in helping your project progress and also how to deal with common issues like promoting community involvement and handling project management.</p> <p>So how do you get people to contribute; growing your community and your project?</p> <h4 id="give-people-a-problem-to-solve">Give people a problem to solve</h4> <p>The single biggest way to get people involved is to motivate them with an interesting problem or by providing them with access to tools/data that were previously unavailable. Hopefully, you have an interesting problem that you’re trying to solve and will help a lot of people, if not, why are you doing it? That’s all to say, people should be interested in what your project is trying to achieve.</p> <h4 id="show-people-what-needs-done">Show people what needs done</h4> <p>Once people are invested in the idea of your project, give them obvious ways to contribute. Have a maintained issues queue (e.g., <a href="">GitHub</a>, <a href="">Trello</a>, <a href="">Asana</a>) where visitors can see what they can help out on and potentially a project timeline so everyone knows the plan for upcoming work. Also, remember on many projects, there are often different types of tasks needed. Not everyone is a highly-capable JS/Python/Ruby developer, but they might be an awesome designer and may be able to provide a better design for your landing page. Or they might be willing to talk about your project via blog posts; or focus on building out your test coverage; or upgrade your documentation and examples. On most projects, there are different types of tasks and good project management can let everyone contribute.</p> <h4 id="make-it-easy-to-get-started-and-show-people-how-to-contribute">Make it easy to get started and show people how to contribute</h4> <p>Contributors will be coming from different backgrounds, coding styles and companies, so tools that help enforce standards are very beneficial to the overall continuity in the project and lead to a better experience for contributors. Make your system easy to stand up, develop on and contribute to. This means including things like:</p> <ul> <li> <p>Contributing guides<br /> Contributing guides are very useful in letting visitors know <em>how</em> they are expected to contribute. Do you require tests to be written or test coverage to increase, before code can be committed? Do you require every code change to be tied to an issue in a queue? Because all projects are slightly different, contributing guides can help remove any mystery. As examples, check out our contributing guides for <a href="">Prose</a> and <a href="">OpenAQ</a>.</p> </li> <li> <p>Tests<br /> Good tests are indispensable in helping contributors learn about functionality and make sure they’re not breaking anything when they suggest changes. This gives everyone more confidence in the code that is being submitted for review. In many cases, reading over the tests that have been written for a system are a great way for contributors to learn about its intended functionality. A full overview of the value of testing is outside the scope of this post, but take a look at <a href="">landsat-util’s tests</a> as an example of a well-tested open-source project.</p> </li> <li> <p>Linters<br /> Linters are small programs that check code for stylistic or programming errors and help keep it internally consistent. With them, you can enforce syntactical rules across your project like spacing, semicolon usage or variable naming. Also, linters are great for uncovering lots of easy to miss, common programming errors. If you’re using JavaScript, <a href="">eslint</a> is a good place to start.</p> </li> <li> <p>Style guides<br /> A style guide is a reference for the visual components of your site. If someone wants to contribute a new page with a form, how should that form look? How are the labels and tooltips handled? What are the primary colors? Ideally, there is one place where everyone can look and see what styles should be used across the site. For an example of an awesome style guide, check out 18F’s work on <a href="">U.S. Web Design Standards</a>.</p> </li> </ul> <h4 id="make-everyone-feel-a-part-of-the-community">Make everyone feel a part of the community</h4> <p>When trying to build an active community, it’s important to think about fostering long-term engagement from the very start by involving people early. One of the main ways to do this is through open communication channels. For the <a href="">OpenAQ</a> project, we set up a dedicated <a href="">Slack channel</a> where everyone can talk about general air quality issues, as well as ask specific questions about the platform. It’s been very helpful for consolidating communications and introducing newcomers to the existing community. Whenever gathering contributors, either virtually or physically, it’s a good idea to explicitly set community standards with a code of conduct. This is becoming more common for open-source projects and a few popular ones are from <a href="">the Django project</a>, <a href="">Python</a> and <a href="">Ubuntu</a>.</p> <p>Gathering contributors in person can be helpful to either just meet each other or to do mini-sprints to work on certain features. However, this is often difficult due to the geographically distributed nature of most teams. For both OpenAerialMap and OpenAQ we haven’t been able to meet in person frequently, but have been able to get people together at events community members were already attending, like State of the Map or the American Geophysical Union conference.</p> <h4 id="be-honest">Be honest</h4> <p>For most of us, working on an open-source project isn’t our full-time job. When issues arise (and oh they’ll arise), try to be honest with people about how and when you can go about fixing them, even if it’s going to be a month before you can. It’s better to set reasonable expectations, than leave someone wondering why their contributions are being ignored.</p> <hr /> <p>By giving people a problem to solve, showing what needs done and how to help and being inclusive and honest, you’ll be on the right path to getting your community off the ground and headed in the right direction. All of this can be difficult at times, but building an active and diverse community is incredibly rewarding and will make you see your project in new ways. From getting feedback from users you never even knew would be interested in the project, to being alerted to flaws you had never considered. Ultimately, all of this will greatly raise the potential for your project to have an impact, which is the real goal.</p> <p>Want to learn more about how to build an active and diverse community? There were a number of topics we lightly touched on here. Watch out for future posts that talk about them in more detail.</p> 2016-03-30T00:00:00+00:00 Development Seed Designing for Live Election Data <p>Real-time data is great. Building real-time interfaces is hard.</p> <p>We are working with The Washington Post to build tools for the company’s live election coverage of the US primary elections. The Washington Post wanted to create a experience that was informative and highly visual and aimed at readers following election coverage on a mobile phone or tablet device and often while watching another screen. Our challenge was to build a real-time data app that engages users and make it easy to track the most important information. Inspired by interactions and visual presentation from fantasy football apps, we designed tools for live election tracking that make it clear when the data is changing and provide contextual information to make these changes understandable.</p> <figure class="align-center"> <img src="/assets/graphics/content/prose/wapo-rep-super-tuesday.png" alt="Image" width="1440" height="360" /> </figure> <h3 id="reporting-live-events-through-data">Reporting live events through data</h3> <p>We noticed similarities between the football games were were tracking and the primaries we were building for. There is a winner. The results unfold over 2-4 hours. There are close games and blowouts. These situations can translate into interesting events during a primary race. For example, when the lead frequently flips or when a candidate outperforms expectations.</p> <p>With any time based event, what piques a user’s interest isn’t necessary what happens during one point in time but how the data or information changes moment-by-moment. Sports apps address these challenges on a daily basis. We formed a small fantasy football league, to practice tracking multiple games simultaneously through apps and websites. We evaluate how these apps informed users of real-time updates. A regular NFL Sunday became our preparation for Super Tuesday. We were frustrated by the apps that made it hard to track multiple games simultaneously. We loved the apps that showed us what had happened since the last update. The best apps had a clear hierarchy of information. They showed an overview of all the games but allowed you to easily dig in and flip between games. The best apps were selective about what data to show at what level. They let you know where the ball is, how much time is left, who is in ‘the red zone’, and what games are worth watching.</p> <p>We translated our findings from football tracking to election tracking. Election data can be overwhelming when results come in all at once from thousands of counties, across multiple states, for a plethora of candidates. We started with a clean interface that was selective about what data to show at the national and state level.</p> <h3 id="highlighting-new-information">Highlighting New Information</h3> <figure class="align-center"> <img src="/assets/graphics/content/prose/super-tuesday.gif" alt="Image" width="1440" height="360" /> </figure> <p>To make sure users are always up to date on the most important action, just like in the fantasy football apps, we introduced a design tool to highlight counties where something meaningful was taking place. If the leading candidates are within 1% of each other, a candidate has just overtaken another candidate, or the race has been called, that county receives a highlight on the map and an annotation in the tooltip. This was a way to highlight the ‘red zone’ in an election race. It offers a clean, non-intrusive way to help the Post’s readers make a little more sense out of the results coming in and to not miss any of the action.</p> <h3 id="context-layers">Context layers</h3> <p>The main map view shows who is winning in each county. This has the advantage of being extremely easy to understand and track over time. The disadvantage of this kind of map is that it can misrepresent the importance of large, rural counties with few votes. To compensate for this we added a population layer to give users more context for results. We used a light population stippling to give users a clean visual cues of which counties would have more votes. We continuously adjusted color palette, opacity, and shade of the data layer and the population stripling to make sure this layer stood out without mudding the map. We started with more saturated colors but ended up going with much lighter tones by Super Tuesday to allow the population layer to really shine through.</p> <figure class="align-center"> <img src="/assets/graphics/content/prose/mass.png" alt="Image" width="1440" height="360" /> </figure> <p>With many republican candidates and a tight democratic race, precise maps and a focused narrative are more important than ever. We hope the population layer and real-time curated updates give users the right visual cues to give them a better understanding of election data coming in night by night. You can try the app tonight <a href="">on The Washington Post website</a> while you track results from Florida, Illinois, Missouri, North Carolina, and Ohio.</p> 2016-03-15T00:00:00+00:00 Development Seed AWS Lambda Functions <p class="dropcap">When people talk about “the cloud”, Amazon Web Services (AWS) is often a big part of what they mean. AWS allows you to run complex web applications on a vast array of cloud computers around the world. Most web developers are familiar with AWS’s S3 buckets for file storage and EC2 instances for running applications. However, there is more beyond S3 and EC2–higher level services that can greatly simplify cloud services, at a cheaper cost, and requiring little maintenance.</p> <p>We recently worked with the <a href="">Missing Maps</a> OpenStreetMap Project to create <a href="">real-time user pages, badges, and leaderboards</a> for all Missing Maps contributions to OSM. We built <a href="">software to track all OSM contributions</a> and an infrastructure on AWS to process and aggregate this data in real time. Most of the contributions for the Missing Maps project occur during mapathons where hundreds of volunteers submit edits and additions over a couple of hours. This means that the system needs to handle large spikes of activity when thousands of edits are added. Outside of mapathons there is far less activity. Because of these spikes and lulls, we wanted an alternative to constantly running multiple EC2 instances. Lambda functions proved to be the optimal solution to solve this problem.</p> <p>Here we will show you the benefits of using Lambda and how to implement and deploy Lambda functions on AWS.</p> <h3 id="arent-lambda-functions-a-insert-most-any-language-here-thing">Aren’t lambda functions a [insert most any language here] thing?</h3> <p>The term originates from the lambda calculus, a logic system developed in 1936 by Alonzo Church, a mathematician and <a href="">Alan Turing</a>’s Doctoral advisor. Developers will likely be familiar with the term lambda function since it has become a feature of most major programming languages. A lambda function is an anonymous function (that is, it has no name), that takes in a single variable input. They are used when a function is made for a one-time or limited use and are able to be described with a more concise syntax than a regular function.</p> <figure class="align-center"> <a href=""><img src="/assets/graphics/content/prose/Alonzo_Church.jpg" alt="Who is the real Alonzo Church?" /></a> <figcaption>Alonzo Church, explaining the <a href="">Entscheidungsproblem</a></figcaption> </figure> <h3 id="aws-lambda-functions">AWS Lambda functions</h3> <p>An AWS Lambda function is a collection of code with a single entry point, or handler, and can be written in either Node.js (0.10.26), Python (2.7), or Java (8). While AWS Lambda functions do take a single input, they are of course not anonymous functions or else there would be no way to invoke them from the outside world. A Lambda function, generally, can be thought of as a simple function taking a single input and performing some transformation. Yet they are not restricted to simple operations. They can be quite complex, since libraries can be uploaded to the function. The Lambda function works by being configured to fire in response to some event, such as data added to a Kinesis stream, or files uploaded to an S3 bucket. Behind the scenes, Amazon stores the Lambda function code and configuration on S3 and when an event fires, it creates (or possibly reuses) a container, and passes the event data to the function handler.</p> <p>With this architecture AWS handles the management of the function and gives users three main advantages:</p> <h5 id="serverless-simple">Serverless (simple)</h5> <p>Lambda functions don’t require the maintenance of a server. The resources a lambda function uses is set only by specifying it’s memory usage, from 128 MB to 1536 MB. CPU speed is scaled as memory goes up and the memory allocation can be changed at any time.</p> <h5 id="auto-scaling-smart">Auto-scaling (smart)</h5> <p>There is no scaling to enable or to configure. Lambda functions spawn as necessary to keep up with the pace of events, although bandwidth may be restricted depending on other services accessed (e.g., bandwidth to a Kinesis stream is based on number of shards in the stream).</p> <h5 id="cost-effective-cheap">Cost-effective (cheap)</h5> <p>Compared to an EC2 instance which is up 24/7 and incurring costs, you are only charged based on how much the function runs, with no costs when it is not running. Furthermore, a function that has been allocated 512 GB of memory only costs 3 cents for every hour of computation. For a function that takes 1 second, those 3 cents can buy you over 3000 invocations of your function. Even for large scale operations, that are performing millions of functions a month, the cost will still typically be less than $20.</p> <h3 id="deploying-lambda-functions-with-python-and-boto3">Deploying Lambda functions with Python and boto3</h3> <p>The <a href="">AWS console</a> is a great way to get started on Lambda functions. It steps you through the process of creating one and includes templates for different languages. However the AWS console lacks an automated way to add new functions and update existing ones. The <a href="">AWS CLI</a> (command line interface) can be automated, however when the Lambda functions are complex (for instance, when they require event source mappings and IAM roles and policies) doing these actions in Python scripts using <a href="">boto3</a> is easier.</p> <p>Using a simple example, I’ll demonstrate how to use boto3 to create a function with an associated role and policies, and how to update that code via Python scripts. We’ll start with a simplified version of one of the AWS Lambda example templates in the file</p> <p>{% highlight python %}<br /> import base64<br /> import json</p> <p>def lambda_handler(event, context):<br /> print(“Received event: “ + json.dumps(event))<br /> for record in event[‘Records’]:<br /> # Kinesis data is base64 encoded so decode here<br /> payload = base64.b64decode(record[‘kinesis’][‘data’])<br /> print(“Decoded payload: “ + payload)<br /> return ‘Successfully processed {} records.’.format(len(event[‘Records’]))<br /> {% endhighlight %}</p> <p>Next, create a zip file containing the code including any additional dependencies needed in the same directory (boto3 is already included).<br /> <code> $ zip </code></p> <p>We’ll then use a python script to create a Kinesis stream, an IAM access role, create a Lambda function with the zip file, then finally map the stream to the Lambda function.</p> <p>{% highlight python %}<br /> #!/usr/bin/env python</p> <p>import time<br /> import json<br /> import boto3</p> <p>kinesis = boto3.client(‘kinesis’)<br /> iam = boto3.client(‘iam’)<br /> l = boto3.client(‘lambda’)</p> <p>def create_stream(name):<br /> “”” Create kinesis stream, and wait until it is active “””<br /> if name not in [f for f in kinesis.list_streams()[‘StreamNames’]]:<br /> print ‘Creating Kinesis stream %s’ % (name)<br /> kinesis.create_stream(StreamName=name, ShardCount=1)<br /> else:<br /> print ‘Kinesis stream %s exists’ % (name)<br /> while kinesis.describe_stream(StreamName=name)[‘StreamDescription’][‘StreamStatus’] == ‘CREATING’:<br /> time.sleep(2)<br /> return kinesis.describe_stream(StreamName=name)[‘StreamDescription’]</p> <p>def create_role(name, policies=None):<br /> “”” Create a role with an optional inline policy “””<br /> policydoc = {<br /> “Version”: “2012-10-17”,<br /> “Statement”: [<br /> {“Effect”: “Allow”, “Principal”: {“Service”: [“”]}, “Action”: [“sts:AssumeRole”]},<br /> ]<br /> }<br /> roles = [r[‘RoleName’] for r in iam.list_roles()[‘Roles’]]<br /> if name in roles:<br /> print ‘IAM role %s exists’ % (name)<br /> role = iam.get_role(RoleName=name)[‘Role’]<br /> else:<br /> print ‘Creating IAM role %s’ % (name)<br /> role = iam.create_role(RoleName=name, AssumeRolePolicyDocument=json.dumps(policydoc))[‘Role’]</p> <pre><code># attach managed policy if policies is not None: for p in policies: iam.attach_role_policy(RoleName=role['RoleName'], PolicyArn=p) return role </code></pre> <p>def create_function(name, zfile, lsize=512, timeout=10, update=False):<br /> “”” Create, or update if exists, lambda function “””<br /> role = create_role(name + ‘_lambda’, policies=[‘arn:aws:iam::aws:policy/service-role/AWSLambdaKinesisExecutionRole’])<br /> with open(zfile, ‘rb’) as zipfile:<br /> if name in [f[‘FunctionName’] for f in l.list_functions()[‘Functions’]]:<br /> if update:<br /> print ‘Updating %s lambda function code’ % (name)<br /> return l.update_function_code(FunctionName=name,<br /> else:<br /> print ‘Lambda function %s exists’ % (name)<br /> for f in funcs:<br /> if f[‘FunctionName’] == name:<br /> lfunc = f<br /> else:<br /> print ‘Creating %s lambda function’ % (name)<br /> lfunc = l.create_function(<br /> FunctionName=name,<br /> Runtime=’python2.7’,<br /> Role=role[‘Arn’],<br /> Handler=’lambda.lambda_handler’,<br /> Description=’Example lambda function to ingest a Kinesis stream’,<br /> Timeout=timeout,<br /> MemorySize=lsize,<br /> Publish=True,<br /> Code={‘ZipFile’:},<br /> )<br /> lfunc[‘Role’] = role<br /> return lfunc</p> <p>def create_mapping(name, stream):<br /> “”” add a mapping to a stream “””<br /> sources = l.list_event_source_mappings(FunctionName=name,<br /> EventSourceArn=stream[‘StreamARN’])[‘EventSourceMappings’]<br /> if stream[‘StreamARN’] not in [s[‘EventSourceArn’] for s in sources]:<br /> source = l.create_event_source_mapping(FunctionName=name, EventSourceArn=stream[‘StreamARN’],<br /> StartingPosition=’TRIM_HORIZON’)<br /> else:<br /> for s in sources:<br /> source = s<br /> return source</p> <p>name = ‘alonzo’</p> <h1 id="create-kinesis-stream">create kinesis stream</h1> <p>stream = create_stream(name)</p> <h1 id="create-a-lambda-function">Create a lambda function</h1> <p>lfunc = create_function(name, ‘’, update=True)</p> <h1 id="add-mapping-to-kinesis-stream">add mapping to kinesis stream</h1> <p>create_mapping(name, stream)</p> <p>{% endhighlight %}</p> <p>If it runs without error, you should have an <a href="">IAM role</a> named alonzo_lambda, and a <a href="">Kinesis stream</a> and <a href="">lambda function</a> named alonzo.</p> <p>Now, to test it. Use the AWS CLI to add a JSON record to the stream.<br /> <code> $ aws kinesis put-record --stream-name alonzo --data "{'0': 'the', '1': 'lambda', '2': 'calculus'}" </code></p> <p>You should get back JSON indicating the ShardId. Take a look at the logs in <a href="">CloudWatch</a> to see if the function worked. Under Logs there should be an “/aws/lambda/alonzo” log group. Within that are different log streams. New log streams will be created periodically, but a single log stream may hold the logs from more than a single invocation of the function. You should see the output of the event and the decoded JSON we went into the stream.</p> <figure class="align-center"> <a href=""><img src="/assets/graphics/content/prose/lambda_logs.png" alt="the lambda logs" /></a> <figcaption>Memory usage and duration to help plan memory allocation and expected costs</figcaption> </figure> <p>caveat emptor: While Lambda functions cost nothing when not running, it is typically used in a system where there are other resources which do cost something. Kinesis streams are charged per hour per shard. This example only creates a single shard so your alonzo stream will cost you $0.36 a day. When your done playing, make sure you delete the resource through the <a href="">AWS management console</a>.</p> <h5 id="security-considerations">Security Considerations</h5> <p>In order for Lambda functions to access other AWS services, such as S3, a Kinesis stream, or a Virtual Private Cloud (VPC), they must be granted access through policies using the Identify Access Management (IAM) service. A role should be created specifically for your Lambda function, and then policies added to that role to grant access to the services mentioned above.</p> <p>If your lambda function requires access to an EC2, RDS or other resource inside a VPC and those have restricted access, more work is required to access them with the Lambda function. Just granting a policy to allow VPC configuration is not enough (although that too is required). The Lambda function must be assigned at least one security group (as shown below), and then you must add an Inbound Rule to the EC2 or RDS security group to allow access to the Lambda function security group. To keep organized, it is recommended to create a security group specifically for each service (e.g., Lambda, EC2 instance) and give it the same name as your service name (e.g., alonzo_lambda).</p> <figure class="align-center"> <img src="/assets/graphics/content/prose/lambda_vpc.png" alt="allow lambda VPC access" /> <figcaption>Assign a VPC, subnets, and at least one security group to the lambda function</figcaption> </figure> <p>A drawback when doing this is once ‘placed’ within your VPC, the function will be unable to access any other resource outside of your VPC (as if it is within the internal network). To gain access to the outside a NAT gateway must be set up to route responses back to the Lambda function.</p> <h3 id="conclusion">Conclusion</h3> <p>The example above uses a pull model where it pulls data from a Kinesis stream. Other services, such as S3, can invoke the Lambda function directly, which is the push model. See the Lambda documentation for a full list of <a href="">event sources</a>. An example of how the push model works is when monitoring additions to an S3 bucket. To do this an event is added to the bucket directly and the Lambda function is invoked when the criteria is met. In addition to this, you could have the Lambda function automatically update metadata in a database, process the new data, or even deploy newly uploaded code to additional Lambda functions. The possibilities are endless.</p> <p>Breaking down problems into a series of functions that each operates on discrete variables is exactly what the lambda calculus was all about. Even if AWS Lambda functions aren’t lambda functions in the truest sense, no doubt Alonzo Church would find it in the spirit of the lambda calculus.</p> 2016-03-08T00:00:00+00:00 Development Seed Sentinel-2 imagery live for comparison <p class="dropcap">Sentinel-2 is now live on the <a href="">Satellites in Global Development Landscape Report</a>. Sentinel-2 is the European Space Agency’s newest satellite providing open imagery data. Its 10m resolution imagery and 13 spectral bands make it particularly useful for tracking climate change, land monitoring, and disaster response. The <a href="">Landscape Report</a> is a living document we’ve helped to build about the uses of satellite data for global development.</p> <figure class="bleed-full"> <a href=""><img src="/assets/graphics/content/prose/sentinel-2-landscape.png" alt="Sentinel-2 on landscape report" /></a> </figure> 2016-03-03T00:00:00+00:00 Development Seed OpenStreetMap Badges and Leaderboards <p><a href="">OpenStreetMap</a> now has real-time user analytics. We’ve rolled <a href="">user profiles</a> and <a href="">leaderboards</a> into <a href="">Missing Maps</a>, a project to map the most vulnerable places in the developing world on OSM.</p> <h3 id="get-your-badges">Get your badges!</h3> <p>Badges reward users for different types of contributions, such as the number of buildings created or kilometers of road added. Every OSM user who contributes to a Missing Maps project now has badges for progress tracking.</p> <figure class="align-center"> <a href=""><img src="/assets/graphics/content/prose/mm-user.gif" alt="Check out Missing Maps user profiles" /></a> </figure> <h3 id="track-your-mapathons-with-leaderboards">Track your mapathons with leaderboards</h3> <p>Live leaderboards allow you to track contributions in real-time. They are great for powering a mapathon or tracking an activation. OSM users can now compare their contributions on live leaderboards.</p> <figure class="align-center"> <a href=""><img src="/assets/graphics/content/prose/mm-leaderboard.gif" alt="Check out Missing Maps user profiles" /></a> </figure> <p>Working with the <a href="">American Red Cross</a> we developed the infrastructure to make real-time analytics work. Since 2014, Missing Maps volunteers have made more than 22 million edits. Every contribution with a #missingmaps hashtag is now tracked in real-time. The infrastructure that powers Missing Maps has the potential for application at scale across OSM.</p> <p>The implementation code is all open source <a href="">on GitHub</a> and builds on <a href="">our previous work</a> on real-time OSM tracking. We hope to roll out badges and leaderboards to more corners of OSM soon.</p> 2016-03-01T00:00:00+00:00 Development Seed Ballot box stuffing in Uganda Elections <p class="dropcap">Uganda held general elections on February 18th, that were <a href="">widely criticized</a> by <a href="">media</a> and <a href="">independent observers</a>. On Thursday, the Ugandan Electoral Commission released the <a href="">results in PDF</a>. Many concerns about the electoral process will not be evident in the results alone, however, analysis of the data can still be valuable in detecting some types of fraud.</p> <h2 id="evidence-of-ballot-box-stuffing">Evidence of ballot box stuffing</h2> <p>Our preliminary analysis found evidence of blatant ballot box stuffing in concentrated areas. We used <a href="">“election fingerprinting”</a> to quickly look at the distribution of election returns and identify anomalies.</p> <blockquote> <p>Election fingerprints are two-dimensional histograms of the number of units for a given voter turnout (x axis) and the percentage of votes (y axis) for the winning party (or candidate)</p> </blockquote> <figure class="align-center"> <img src="/assets/graphics/content/prose/uganda-fingerprint.png" alt="Ugandan election fingerprint" /> </figure> <p>Results in the upper right corner (very high turnout, very high percentage of votes for the winner) are clear signs of ballot stuffing. Bi-modal distributions can arise naturally in certain countries but generally don’t differ by average turnout and are often a sign of incremental fraud.</p> <p>Of the 28,010 voting stations, 130 of them had 100% voter turnout, 113 of which voted 90% or more for the eventual winner and incumbent, Yoweri Museveni (42,768 votes for him in these stations). 105 of these highly suspicious stations occurred in just 4 districts:</p> <figure class="align-center"> <img src="/assets/graphics/content/prose/uganda-districts.png" alt="Ugandan districts" width="400px" /> <figcaption> Mbarara, Sembabule, Kiruhura, and Nakaseke</figcaption> </figure> <h2 id="open-election-data">Open Election data</h2> <p>This analysis was possible because the election data was provided at the polling station level by the Ugandan Electoral Commission. To support further analysis of the data, we parsed this PDF and converted it to a <a href="">machine-readable format</a> (CSV). Because of the size of the file, it was difficult to parse using <a href="">Tabula</a> so we wrote custom scripts relying heavily on <a href="">pdfminer</a>.</p> <p>Truly open elections mean providing timely, machine-readable, and easily accessible results. We look forward to seeing what you do with the data. Find it on <a href="">GitHub</a>.</p> 2016-02-29T00:00:00+00:00 Development Seed Open Mapping Happy Hour <p class="dropcap">Yesterday, Development Seed hosted an <a href="">Open Mapping Happy Hour</a> at our office in Blagden Alley. We were delighted that over 100 open mappers and FedGISers braved the rain for some great conversation and scheming.</p> <figure class="align-center"> <img src="/assets/graphics/content/prose/openhappy.jpg" alt="Open Mapping Happy Hour" /> </figure> <p>A few highlights of last night’s presentations include:</p> <ul class="cta-list"> <li><a href="">Dale Kunce</a> announced the launch of the new <a href="">Missing Maps</a> website featuring <a href="">user pages</a> and <a href="">leaderboards</a> for tracking OpenStreetMap edits.</li> <li><a href="">Jubal Harpster</a> showed off POSM (Portable Open Street Map), a field-deployable <a href="">OpenMapKit</a> server.</li> <li><a href="">Derek Lieu</a> spoke about <a href="">Macrocosm</a>, an OpenStreetMap clone for a governments or large institution to collaboratively manage map data</li> <li><a href="">Mikel Maron</a> spoke about <a href="">Mapbox Open Source Initiatives</a>.</li> <li><a href="">Becky Chen</a> announced the launch of Astro Digital’s new <a href="">Digital Imagery Browser</a>. (As seen in <a href="">TechCrunch</a>!)</li> <li><a href="">Kiwako Sakamoto</a> talked about <a href="">India Lights</a> a tool to explore 20 years of night time imagery over India</li> <li>Krystal Wilson noted <a href="">The Tauri Group’s</a> new <a href="">Report on Space Startups</a></li> </ul> <p>Thanks to everyone who came out last night. We had an awesome time hanging out and talking open mapping. Thanks also to <a href="">Mapbox</a> for cohosting the event.</p> 2016-02-25T00:00:00+00:00 Development Seed Fast, easy satellite monitoring <p class="dropcap">The new <a href="">Astro Digital Imagery Browser</a> launched today. It is incredibly easy to process satellite imagery for the places that you care about – today and into the future. Use the platform to track urban sprawl, detect illegal logging, or monitor the agricultural modernization project that you are about to kick off.</p> <figure class="align-center"> <img src="/assets/graphics/content/prose/ad-next.gif" alt="Astro Digital Imagery Browser" /> <figcaption>Fast and responsive. We use <a href="" target="_blank">Mapbox Vector Tiles</a> to quickly filter through hundreds of thousands of satellite metadata records right in your browser.</figcaption> </figure> 2016-02-24T00:00:00+00:00 Development Seed Welcome Ali! <p class="dropcap">We’re happy to welcome <a href="">Ali Felski</a> to the Development Seed family! Ali has led design teams at Sunlight Foundation and iStrategyLabs. She is going to help us improve design practices across Development Seed, including integrating UX and usability research into the fabric of each project.</p> <figure class="align-center"> <img src="/assets/graphics/content/prose/ali.jpg" alt="Ali and a very small horse" /> <figcaption></figcaption> </figure> <p>A native <a href="">Yooper</a>, Ali is more recently a proud Washingtonian, appreciating the weather down here a little more. Over the past decade, Ali has brought good design to the far corners of Washington DC. She improved usability at the CIA, built the Sunlight Foundation’s design team from the ground up, and systematized usability research at iStrategyLabs, where she served as user experience director. Not to mention winning Best Personal Portfolio at SXSW. And while her dream job would be as a taste-tester of artisanal chocolate, she’s convinced us that transforming design through UX thinking is a close second.</p> <p>High-five Ali on <a href="">Twitter</a>, and follow her <a href="">Github</a>.</p> 2016-02-18T00:00:00+00:00 Development Seed Twenty Years of India at Night <p class="dropcap">Satellite imagery is among the most powerful open data. The Defense Meteorological Satellite Program captures images of the earth just after dusk every night–and it’s been doing so for over 20 years. Working with the World Bank and the University of Michigan, we’ve extracted and organized the data from every night for the past two decades in all of India’s 600,000 villages.</p> <p>These six billion data points<sup><a href="#footnote-1" title="View footnote">[1]</a></sup> that power <a href="">India Night Lights</a> tell a rich story of India’s urban development and electrification from 1992-2012. The data is complex and hard to work with. But from the chaos emerges real insights, such as <a href="">role of politics in service provision</a> and the <a href="">the impact of state funded electrification projects</a>.</p> <figure class="align-center"> <a href=""><img src="/assets/graphics/content/prose/india-lights-compressor.gif" alt="interact with 20 years of nighttime lights for 600,000 villages" /></a> </figure> <p>The India lights explorer is the first of its kind, but more countries will roll out soon. The software that powers the <a href="">Night Lights API</a> and the <a href="">Night Lights Data Explorer</a> is all available on github.</p> <ol class="footnotes-list"> <li id="footnote-1">Those checking our math at home, some villages have multiple readings per night.</li> </ol> 2016-02-18T00:00:00+00:00 Development Seed USG Mappers, we salute you! <p class="dropcap">Federal data drives US commerce, helps us untangle environmental and social issues, and supports decision-making around the world. Development Seed salutes the mappers in the USG and we’d love to buy you a beer.</p> <p>Come by <a href="">Development Seed</a> on February 24th for a <a href="">Fed Mapping Happy Hour</a>. We’ll have drinks, snacks and lightning talks from the team and our open source friends at Mapbox.</p> <p><a href="">RSVP here</a> so we have enough brews on hand.</p> <figure class="align-center"> <a href=""><img src="/assets/graphics/content/prose/open-mapping-hh_info.jpg" alt="Open Mapping Happy Hour" /></a> <figcaption>Free as in beer, and Free as in ", Land of the"</figcaption> </figure> 2016-02-08T00:00:00+00:00 Development Seed Live Iowa Caucus Results <p class="dropcap">Today we are all looking at Iowa. Starting at 7:00pm Central Time, around 300,000 Iowans will caucus at 1,681 election precincts across the state. As results come in, follow the action live at <a href="">Washington Post</a>.</p> <figure class="align-center"> <img src="/assets/graphics/content/prose/iowa-caucus-live.gif" alt="live caucus updates on" /> </figure> <p>The Washington Post’s live election app shows the latest election results in realtime. We flag counties with the tightest race and alerts when a county leader changes, so you can follow the action as it unfolds. Mobile users will especially love this tool. Follow on your phone to track the latest numbers before the TV networks update their graphics.</p> 2016-02-01T00:00:00+00:00 Development Seed Welcome Matthew! <p class="dropcap"><a href="">Matthew Hanson</a> joined the Development Seed team! Matthew will expand our growing satellite imagery and remote sensing portfolio. Matthew is the author of <a href="">GIPS</a> and a major contributor to <a href="">GeoNode</a>. He is going to help us build open tools to make geodata more accessible and help to solve complex global problems with geographic information. Matthew brings a wealth of experience at the nexus of geospatial and hard engineering. He’s worked with data ranging from optical imagery, radar, LIDAR, to climate models, often building the data infrastructure from the ground up. We’re excited to have him on the team.</p> <figure class="align-center"> <img src="/assets/graphics/content/prose/matthew-wonderland.jpg" alt="Matthew Wonderland" /> <figcaption>Matt is the one on the left.</figcaption> </figure> <p>You can find Matthew on <a href="">Twitter</a> or <a href="">GitHub</a>. Say hello or give him a high five at the next open geo conference.</p> 2016-01-21T00:00:00+00:00 Development Seed Come be an intern! <p class="dropcap">We’re looking for enthusiastic and talented developers, designers, and mappers to join us for a summer internship in Washington DC or Lisbon. You’ll help us bring fresh ideas to our <a href="">open source tools</a> and contribute to <a href="">innovative projects with leading civic and media organizations</a>. Along the way you will <a href="">Learn new skills</a> and make a positive contribution to society.</p> <p>Sound interesting? <a href="/about/intern/">Check out the details</a>.</p> 2016-01-11T00:00:00+00:00 Development Seed Roll your own OSM with Macrocosm <p class="dropcap">Last week we launched <a href="">Macrocosm</a>, a NodeJS version of the <a href="">OpenStreetMap API</a>. This is the first part of an open toolkit we are developing to make it easier to set up your own version of OpenStreetMap.</p> <p>Governments and NGOs manage massive amounts of spatial data. They want to make this data open, but have <a href="">good reasons why they can’t simply publish to OSM</a>. At the same time, they want to benefit from the excellent OSM software for <a href="">collaborative editing</a>, for looking for <a href="">data errors and inconsistencies</a>, <a href="">bulk data upload</a>, and for publishing it in <a href="">usable and open formats</a>.</p> <p>Macrocosm is part of an ecosystem of tools that make it easier to host an maintain a walled garden OSM. It is built using newer technologies that are lighter, easier to maintain, and which more easily integrate with modern web apps.</p> <p>The current version is not a full port of the OSM API, but contains the main features of the editing API. We will roll out more of Macrocosm over the next few months. In the meantime we invite you to check <a href="">out the repo</a> and give it a spin.</p> 2015-12-16T10:00:00+00:00 Development Seed Come to our Holiday Party! <p class="dropcap">It’s our first big bash at our <a href="">new home in Blagden Alley</a>! Join us on Friday, December 18th for one last drink before you head home for the holidays.</p> <figure class="bleed-full"> <a href=""><img src="/assets/graphics/content/prose/DS-Holiday-Party-RSVP.png" alt="DS Holiday Party RSVP" /></a> <figcaption>It's been a great year. We're going to celebrate with good friends and nog.</figcaption> </figure> 2015-12-07T15:00:00+00:00 Development Seed Welcome Becky Chen! <p class="dropcap"><a href="">Becky Chen</a> just migrated down the east coast to join Development Seed! Becky is a user experience and visual communications designer with a penchant for social design. Her user research and ability to deconstruct complex social issues get at the heart of building great products. Becky is going to help us to deliver truly impactful experiences.</p> <figure class="align-center"> <img src="/assets/graphics/content/prose/becky.jpg" alt="Becky with helmet" /> </figure> <p>Becky comes to us by way of <a href="">Teach for America</a>, where she designed brand assets and campaign materials in support of recruiting teachers for high need communities, and the <a href="">Center for Social Design at the Maryland Institute College of Art</a>. While at MICA, Becky partnered with International Rescue Committee to create an orientation program for refugees to equip them with knowledge and resources to live more self-sufficiently in the United States. If you see her around town, ask her for a <em>competitive</em> game of badminton or tell her your best pho recommendation.</p> 2015-11-24T14:00:00+00:00 Development Seed 260,000 more buildings in Zambia <p class="dropcap">OpenStreetMap in Zambia now has <a href="">260,000 more buildings</a>. We have now completed a massive building import for northern Zambia. Building data in OSM enables on the ground teams access to a critical shared resource and this new data is supporting active malaria prevention programs across Zambia.</p> <p>Over the last few weeks, we’ve been working with <a href="">Akros Global Health</a>, <a href="">Ona</a>, and <a href="">USAID’s Geocenter</a> to import this massive building dataset. Akros has collected over a million buildings through mSpray, their Indoor Residual Spraying (IRS) program for malaria prevention funded by the <a href="">President’s Malaria Initiative (PMI)</a> and <a href="">Bureau for Global Health</a> at USAID. These teams need data to know where, when and what to spray. Using geospatial data enables teams to more effectively carry out spray campaigns and offer real-time monitoring of spray team logs ensuring goals are being met. This import is just the beginning for these programs as they look to leverage OSM as a shared resource for baseline data.</p> <figure class="bleed-full"> <iframe width="100%" height="550px" frameborder="0" src=",zoompan.html?access_token=pk.eyJ1IjoiZGV2c2VlZCIsImEiOiJnUi1mbkVvIn0.018aLhX0Mb0tdtaT2QNe2Q"></iframe> <figcaption>260,000 buildings across northern Zambia</figcaption> </figure> <p>This new data comes just in time for <a href="">OSM Geography Awareness Week</a>. If you’re in Lusaka, join the <a href="">local OSM Zambia community for a mapathon</a>. Mapping events are happening around the globe this week to celebrate OSM. <a href="">Find an event nearby</a> and join in the celebration.</p> 2015-11-16T00:00:00+00:00 Development Seed SatSummit Recap <p class="dropcap">The first <a href="">SatSummit</a> gathered <a href="">156 leaders from the satellite industry, global development and humanitarian organizations</a>. The day was packed full of great content and announcements.</p> <p>Some of the highlights included:</p> <h3 id="world-bank-and-development-seed-launched-an-open-source-guide-to-using-satellite-imagery-for-humanitarian-efforts">World Bank and Development Seed launched an open source guide to using satellite imagery for humanitarian efforts</h3> <blockquote class="twitter-tweet tw-align-center" lang="en"><p lang="en" dir="ltr">What&#39;s 50cm satellite image? Cost? <a href="">@WorldBank</a> kickstarts this tool to get answers <a href="">#satsummit</a> <a href=""></a> <a href=""></a></p>&mdash; Bruno Sánchez-A Nuño (@brunosan) <a href="">November 9, 2015</a></blockquote> <script async="" src="//" charset="utf-8"></script> <p>The most important aim of SatSummit was to promote broader understanding of how satellites can be used for social good. <a href="">Bruno Sánchez-Andrade Nuño</a> demoed <a href="">our latest collaboration</a> with the World Bank Innovation Labs. The site provides an easy to understand starting point for anyone looking to get more use out of satellite imagery.</p> <h3 id="planet-labs-further-outlined-their-commitment-of-60m-in-imagery-for-sustainable-development">Planet Labs further outlined their commitment of $60M in imagery for sustainable development</h3> <p>In September, Planet Labs announced their pledge of <a href="">$60M of imagery to support the UN Global Goals</a>. <a href="">Amit Kapadia</a> was on hand to showcase their first tangible result: <a href="">Open California</a>. This same platform will be used to host the next imagery release for a yet-to-be-determined developing country. This data is all available under the <a href="">CC BY-SA 4.0</a> license to allow open use by researchers and humanitarian organizations alike.</p> <h3 id="airbus-previewed-its-haps-program-which-combines-benefits-of-satellites-and-drones">Airbus previewed its HAPS program which combines benefits of satellites and drones</h3> <p>Jeremy Hale shared details on the latest advances made by the Airbus pseudo-satellite, <a href="">HAPS</a>. These devices combine the persistence (via solar power) of satellites with the real-time response of drones. These qualities make them well suited for natural disaster response and long-term monitoring of a specific areas. After more than a decade in development, operational tests have taken place across the world in the past year and we’ll soon have access to this incredible new tool.</p> <h3 id="amazon-announced-that-aws-on-landsat-served-up-500-million-requests">Amazon announced that AWS on Landsat served up 500 million requests</h3> <p><a href="">Landsat</a> data is some of the most valuable open data that the US Government provides. But without the <a href="">fast, programmatic access</a> that <a href="">AWS provides</a>, we aren’t getting the full impact. <a href="">Jed Sundwall</a> shared some stats on how fast their program has been growing and how <a href="">different organizations</a> are making use of their hosting.</p> <h3 id="continuing-the-conversation">Continuing the Conversation</h3> <figure class="align-center"> <img src="/assets/graphics/content/prose/sat-summit-conversation.jpg" alt="People talking at SatSummit" /> </figure> <p>We can only accomplish so much in one day. Here’s how you can continue the conversation about satellite use in global development:</p> <ul> <li>Read the <a href="">World Bank “Satellites in Global Development” Report</a> and hit <a href="">us</a> or <a href="">Bruno</a> up with your feedback. We’re working hard to get this open on GitHub in the near future.</li> <li>Check out the <a href="">presentations</a> and let us know what you think!</li> <li>Follow <a href="">SatSummit</a> on twitter for ongoing discussion on this topic and more info on the next event.</li> </ul> 2015-11-13T00:00:00+00:00 Development Seed Meaningful public procurement data <p class="dropcap">Quality data and analytics is of crucial importance in public procurement. It allows civil society to hold governments accountable, and allows individuals within government to ensure that the procurement is conducted in a fair, timely and cost efficient way.</p> <p>Together with the <a href="">World Bank Governance Global Practice</a> and the Mexican government, we developed a <a href="">set of dashboards</a> that explores over 500 000 federal procurement procedures. Mexico has shown great commitment to open contracting by opening up <a href="">their data</a>, but also by driving the development of these kind of tools.</p> <figure class="align-center"> <a href=""> <img src="/assets/graphics/content/prose/proc-dashboards.png" alt="The dashboard providing a summary of the Compranet data" /> </a> <figcaption>The dashboard providing a summary of the Compranet dataset</figcaption> </figure> <p>Mexico is not alone in <a href="">their efforts to improve public procurement</a>. Governments around the world are working to make their processes more transparent, efficient and inclusive. That’s why the dashboards ingest data in the <a href="">Open Contracting Data Standard</a>. Agencies reporting data in this format are able to fork the tool and adapt it so it addresses policy issues that are important to them. Whether that’s the inclusion of SMEs in the procurement process, battling corruption, or ensuring fair prices.</p> <p>The current dashboards are a pilot, capable of driving discussions around which tools governments need to understand and improve their procurement performance. The code powering the dashboards and the data processing scripts are all <a href="">available on Github</a> under an open source license. Feel free to fork them and use them for your own use case.</p> 2015-11-04T00:00:00+00:00 Development Seed Know Your Online Privacy <p class="dropcap">We believe deeply in an open and secure internet, and try to use services that respect our privacy. Knowing which companies do is way harder than it should be. Our friends at <a href="">Ranking Digital Rights</a> just made this easier.</p> <p>Their first <a href="">Corporate Accountability Index</a> measures how well 16 internet and telecommunications companies perform on respecting user privacy, employing solid security practices, allowing encryption, and more.</p> <p>Their work distills mile-long TOS agreements, occasional transparency reports, and other public statements. The <a href="">ranking</a> show those companies that have good policies and follow through, and those that don’t.</p> <p>As a whole, the internet services that we rely on <a href="">have a long way to go</a>. Companies do not properly disclose how they <a href="">collect</a>, use, <a href="">store</a>, and <a href="">share user information</a>. Neither do they <a href="">communicate about third-party requests to remove or share user data</a>, as in the case of a court order or subpoena.</p> <p>By and large, citizens <a href="">cannot encrypt their own data while using services that internet companies provide</a>. <a href="">Nor do they have any say over how a company collects and shares their data</a>.</p> <p>The <a href="">what and why</a> of this report should be quite clear: we are leaving massive footprints on the internet and have little knowledge of how it’s used. Ranking Digital Rights has made the <a href="">full data available for download, including researchers’ comments and responses from the corporations where available</a>. We were pleased to partner with Ranking Digital Rights and <a href="">Beekeeper Group</a> to develop a set of web tools to communicate and explore the data.</p> <p>The Guardian have <a href="">put together some extensive coverage of the report</a>. It’s worth a read. Also worth a shout-out is the <a href="">Mapbox privacy statement</a>, which we think should be a model.</p> 2015-11-03T12:00:00+00:00 Development Seed Howdy Miles Watkins! <p class="dropcap"><a href="">Miles Watkins</a> is the newest member of our team! Miles is a self-taught Pythonista who loves exploring new open datasets and creating useful tools. He has a background in econometrics, statistical policy evaluation, and geospatial analysis.</p> <figure class="align-center"> <img src="/assets/graphics/content/prose/miles-harry-potter.jpg" alt="Yer a wizard, Miles!" /> </figure> <p>Miles joins us from the <a href="">Sunlight Foundation</a> as one of the maintainers of the <a href="">OpenStates</a> project. He’s going to help us build visualizations, maps, and software that are information-dense but easy-to-use.</p> <p>Outside of work, you can find Miles enjoying soccer, hiking, travel, Wikipedia binging, and Super Smash Bros. He likes his board games German, his map projections equal-area, and his Pokémon first-gen.</p> 2015-10-29T10:00:00+00:00 Development Seed Open Tools for Open Government <p class="dropcap">The open data movement is evolving. For years we were primarily concerned with opening data any way possible. It has quickly become clear that it matters how we open data. We need to be open about the methods that produced the data, get the right type of open license, solve for reliability and sustainability, and consider the potential users and value of the data. And the software we use really matters.</p> <p>At Development Seed <a href="">we build open source tools for open data</a>. We built <a href="">Libra</a> and <a href="">landsat-util</a> to make it easier to work with open satellite imagery data. We are working to deploy the software behind <a href="">OpenStreetMap to allow the Philippines to collaborative manage road data</a> across the whole of government. <a href="">And many more.</a></p> <p>There are strong reasons to use open source tools in open government.</p> <ul> <li><strong>As resources for open data evolve, open software can more easily be adapted to new business models and deployment strategies.</strong> Open data companies have been critical in helping quickly scale open data practice and to solve the hard technical challenges involved in heavy and complex data. Open data companies creating open tools give government better ability to weather changes in the market, and give governments the flexibility to take on their own management of the system as their resources grow or shrink.</li> <li><strong>Open source tools offer citizens transparency into the open data pipeline.</strong> This allows citizens to check the math, to replicate results, and to identify technical issues that compromise the quality or availability of the data.</li> <li><strong>Open source allows us to better pool our resources for better tools.</strong> Governments on the cutting edge can help to subsidize the market. Better software will be available for governments with limited resources and the barriers will be lower for open source startups in developing democracies.</li> </ul> <p>Open source may not work for every need. But governments that are committed to tools for citizen empowerment, should strongly consider open tools when investing in software.</p> <p>If you are at OGP, we will have a great panel at 3:00 on the use of open source tools for open government. <a href="">Please join us</a>.</p> <figure class="align-center"> <img src="/assets/graphics/content/set/opentools_1final.svg" alt="The Open Data pipes aught to be open" /> </figure> 2015-10-28T00:00:00+00:00 Development Seed Open Geo at the OGP summit <p class="dropcap">Mexico City is the stage of the <a href="">Open Government Partnership summit</a>, bringing together 1500 open data advocates from civil society, businesses, and government officials from 70 countries. One big theme at this years conference will be open geodata.</p> <p>Managing geo data is one of the areas that traditionally has been overlooked, despite its importance for government. Mikel Maron has <a href="[email protected]bal-goals-5a71a2a42d96#.bopvashen">a great post</a> on how open geodata is going to be vital to achieving global development goals. It’s great to see that open geo is a substantial part of this year’s agenda and that the open geo community has rallied around the event. Please join us at any of the following sessions:</p> <ul> <li><strong>Wed 12:30pm</strong> - join the <a href="">OSM Mapathon</a> and contribute to a better map</li> <li><strong>Wed 5pm</strong> - <a href="">Civic Tech: the New Tool for Democracy</a> will include OpenStreetMap founder Steve Coast</li> <li><strong>Wed 6pm</strong> - we will showcase our work on <a href="">OSM as a software platform</a> during a <a href="">speed geek session</a> organized by <a href="">GeoCensos</a></li> <li><strong>Wed 7pm</strong> - have a drink with us at the <a href="">Open Mapping happy hour</a> and talk mapping, open geo and open tools in general</li> <li><strong>Thu 9am</strong> - the <a href="">So you want to Open Geo</a> panel highlights the practical aspects of opening up geodata</li> <li><strong>Thu 12pm</strong> - <a href="">The Open Mapping Revolution and What It Means for Government</a> will cover the best of opening geo from within government</li> </ul> <p>Related, on Wednesday at 3pm, we’ll talk about <a href="">Open Tools for Open Government</a>, which will discuss the benefits of open source tools to managing open geodata.</p> <p>Olaf and I will be in Mexico the whole week and look forward to meet all those that do interesting things in the space. Hit <a href="">me</a> or <a href="">Olaf</a> up on Twitter if you want to connect.</p> <p>Photo by <a href="">Eneas De Troya</a></p> 2015-10-27T00:00:00+00:00 Development Seed Open Mapping Happy Hour <p class="dropcap">The Open Government Partnership summit is about to kick off, bringing together 1500 participants from all over the world. The mapping community is well represented and organizing a <a href="">happy hour</a> to close the first day of the event in style. You should join if you want to talk open geo and open tools.</p> <figure class="align-center"> <a href=""> <img src="/assets/graphics/content/prose/ogp-hh.png" alt="Sign up for the OGP Happy Hour" /> </a> </figure> <p>In case you can’t make it to the happy hour, there are lots of other mapping related sessions during the event. We encourage you to check out the <a href="">OpenStreetMap Mapathon</a> and help build a better map, or join any of the other geo sessions on the <a href="">agenda</a>.</p> <p>For more info about the happy hour and RSVP, please see the <a href="">event page</a>.</p> 2015-10-23T00:00:00+00:00 Development Seed Open Data to Insure the World's Poorest <p>2.8 billion people live on less than two dollars per day. For this half of the worlds population, any economic shock can be crippling and even fatal. The microinsurance industry attempts to lessen these shocks by providing small, low-premium insurance policies to those in need. The availability of mobile phones has made it easier to enroll customers, accept payments, and deliver payouts. However a lack of data still presents a tremendous barrier to creating new insurance products. Better data can lower the barriers to providing low cost, sustainable insurance to the world’s poorest.</p> <p>The <a href="">Microinsurance Network</a> launched a <a href="">World Map of Microinsurance</a> to provide market data on microinsurance in over 120 countries. This data allows insurers to create more effective products and promotes transparency within the industry. Governments and development organizations can use this data to craft better policies and market opportunities.</p> <figure class="align-center"> <a href=""> <img src="/assets/graphics/content/prose/microinsurance-01.png" alt="World Map of Microinsurance" /> </a> <figcaption>World Map of Microinsurance</figcaption> </figure> <p>The <a href="">World Map of Microinsurance</a> allows users to explore microinsurance data collected by the <a href="">Microinsurance Centre</a> from Latin America, Africa, and Asia. Multiple filters and aggregations create many ways to explore the data. Small cards show more detailed data at the country level. And if you want access to the raw data, there’s always a link to the CSV.</p> <figure class="align-center"> <img src="/assets/graphics/content/prose/microinsurance-02.png" alt="World Map of Microinsurance" style="height:250px" /> <figcaption>Raw data provides additional opportunities for transparency and data distribution.</figcaption> </figure> <p>Gathering data for this industry will remain important as the industry continues to emerge. Check out the <a href="">World Map of Microinsurance</a> and explore the latest data that is available. As always, feel free to check out the <a href="">code and data on GitHub</a>.</p> 2015-10-21T00:00:00+00:00 Development Seed We are moving! <p>Development Seed is moving. On Monday we’ll open our new Washington DC office in Blagden Alley.</p> <figure class="align-center"> <img src="/assets/graphics/content/prose/dsmove_unload2.jpg" alt="Truck Unloading" /> </figure> <p>We are still settling in, but expect a big party to celebrate! <a href="">Follow us</a> for the invite.</p> <p>It has been great working from the Garage alongside <a href="">our very good friends at Mapbox</a>. We’d love to stay, but both groups are growing too fast. Our new office will let us keep our culture and the character of the Garage.</p> <p><em>Starting Monday, find us at our new digs:</em></p> <figure class="align-center"> <iframe width="100%" height="400px" frameborder="0" src=",zoompan.html?access_token=pk.eyJ1IjoiZGV2c2VlZCIsImEiOiJnUi1mbkVvIn0.018aLhX0Mb0tdtaT2QNe2Q#17/38.90635/-77.02437"></iframe> <figcaption>Our new office in Blagden Alley</figcaption> </figure> 2015-10-16T00:00:00+00:00 Development Seed Building Open Aerospace <p class="dropcap">Two of our space industry partners <a href="">Aquila Space</a> and <a href="">Astro Digital</a> were featured in a <a href="">recent article by Re/code</a>. The article does a great job of discussing the social and development implications of their approach. Frequently updated imagery and a solid distribution pipeline get imagery into the hands of decision makers. These are powerful tools for everything from precision agriculture to forestry management to monitoring for elections.</p> <p>The article fails to mention the powerful commitment both of these organizations have made to open knowledge. Aquila sells satellites and licenses their designs for commercial use, but they are also opening up all their hardware designs under GPL for public use. Astro Digital recognizes the value of open source imagery processing. When we built Astro Digital’s platform we highly leveraged <a href="">landsat-util</a>, <a href="">landsat-api</a> and <a href="">Libra</a>. Throughout, Astro Digital supported the development of Libra and encouraged us to contribute back to landsat-util. Further, Astro Digital has committed to host Landsat data on their platform for free for programs such as <a href="">OpenAerialMap</a>.</p> <p>Aquila Space and Astro Digital know that supporting open source helps them grow and thrive. We couldn’t agree more. We’re proud to work with them and with other satellite companies that open their data for research and humanitarian purposes.</p> <figure class="align-center"> <img src="/assets/graphics/content/prose/aquila-trip.jpg" alt="A trip to Aquila Space" /> <figcaption>A tour of the Aquila Space facilities, my aerospace professors would be so proud.</figcaption> </figure> 2015-09-29T00:00:00+00:00 Development Seed An OSM firehose <p class="dropcap">We just created <a href="">Planet Stream</a> a Twitter-like firehose of OSM data. Planet Stream combines the <a href="">Augmented Diffs</a> capabilities of the Overpass API with the contribution metadata from <a href="">osm-meta-util</a> in a fully-featured real-time data stream that developers can use to analyze OSM contributions in real-time.</p> <p>Planet Stream is a powerful tool for analyzing OSM feature data and contribution metadata side-by-side. You can use Planet Stream to coordinate tracing efforts around a natural disaster, to build an app showing the leading OSM contributors in your neighborhood, to quickly build a community of people editing hiking trails, or to provide automated feedback for common tagging mistakes.</p> <p>Mapping efforts such as <a href="">MissingMaps</a> and the <a href="">HOT tasking manager</a> use hashtags to track efforts. During the Nepal crisis, organizations used <a href="">osm-meta-util</a> in combination with <a href="">OSM History</a> to analyze volunteer contributions per hour. Planet Stream takes this even further by providing access to complete OSM data in real-time. <a href="">Dylan</a> and I built an <a href="">OSM Hashtag Leaderboard</a> that uses Planet Stream to show what hashtags are trending in contributions over the last six hours. Tools like the OSM Hashtag Leaderboard can help to build better mapathons and increase community engagement.</p> <figure class="bleed-full"> <iframe width="100%" height="600px" frameborder="0" src=""></iframe> <figcaption>Trending Tags on OSM -- <a href="">View full screen.</a></figcaption> </figure> 2015-09-28T10:00:00+00:00 Development Seed Hello Dylan Moriarty! <p class="dropcap"><a href="">Dylan Moriarty</a> has joined our growing team as a designer and cartographer. His enthusiasm and wide range of styles and skills will help us put out products that are engaging and pleasant to use.</p> <figure class="align-center"> <img src="/assets/graphics/content/dylan-curling-card.jpg" alt="Dylan curls" /> </figure> <p>Dylan moved to DC from Madison where he recently finished his degree in History, Mathematics, Cartography and GIS. He has some mean <a href="">illustration skills</a> which he applies to his comics and drawings, but also to <a href="">hand-drawn maps</a>. We’re very happy to have him on the team and look forward to sharing the awesome things he’s already working on.</p> <p>Say hi to Dylan on <a href="">twitter</a>, or check out his <a href="">personal site</a> for samples of his work.</p> 2015-09-24T10:00:00+00:00 Development Seed