I have been spending the past few weeks dealing more with data and mapping than I have in quite a while. It’s given me a chance to regain my footing with map-making, reconnect with some end-user tools like Arc2Earth, and build a little more proficiency with things like GDAL, QGIS, and TileMill. Of course, I’ve been able to sneak in some coding as I’ve identified gaps in my workflow.
Arc2Earth
Data, Apps, and Maps
It’s been a quiet month-and-a-half here on the blog, mostly owing to an abundance of project tasks. I recently started a short-term project to help one of my Federal customers extend data source support for an application they have been developing. This customer is technically a new one but the project team is made up of government developers that I have worked with on a few other projects so there is a great deal of familiarity.
The application, which has been under development for some time, is written in .Net and make use of the open-source (MIT) GMap.NET mapping library. The application features a desktop version running in Windows and a mobile version running on Android tablets. The .Net back end works seamlessly on both through the use of Xamarin, although I have not had the chance to get my hands dirty with that yet due to limits on Xamarin licenses and available Android devices. To its credit, GMap.NET seems to work fairly well in both environments.
Arc2Earth: Choose Your ‘Cloud’
For various reasons, I can’t attend today’s inaugural FedGeoDay at the Woolly Mammoth Theatre in Washington, DC, though I’ll be watching the hashtag with great interest. Jack Flood of Arc2Earth, however, has already posted his slides to SlideShare:
[slideshare id=16811994&w=427&h=356&sc=no]
While neither ArcMap nor Arc2Earth are open-source themselves, Jack points out that Arc2Earth acts as a bridge between ArcMap and several geospatial hosting platforms that are built on open-source technology but, also just as important, are successful at making data more openly available. These platforms include CartoDB and MapBox, among many others.
The Biggest News You May Have Missed…
In case you missed it, this tweet floated across the Twitters last week: Blogged: TileMill Connect – Open Mxd Documents in @mapbox TileMill http://t.co/hDicr4z0 — Arc2Earth (@Arc2Earth) November 15, 2012 Yes, the team at Arc2Earth is apparently working on a new feature in Arc2Earth Sync, called TileMill Connect, that will link ArcMap MXDs with TileMill. … Read more
Personal Geospatial Workflows
I’ve had a couple of people ask me recently about the geospatial tools I use. Year-over-year, that answer changes but here’s how I answer that right now:
As a Federal contractor, I spend a lot of time working with the Esri stack during my work day. A few years ago, I added a few open-source geospatial tools into my tool set and, since then, have also done a respectable amount to consulting work them as well. The balance between the two varies over time, depending on the requirements of individual customers and projects. Lately, commercial customers have seemed much more interested in open-source tools while my government customers are sticking with Esri. Since those observations are based on the the extremely heavy filter of my own recent experience, I’d be hesitant to draw any larger conclusions from them.
I’ve always believed that proficiency with a wide range of tools makes me a better consultant and integrator, so I am always exploring and trying new things. With those commercial customers, and in my own personal side projects, my recent workflows have gelled around a core set of tools, both commercial and open-source:
Cutting Tiles for ArcGIS Server Using TileMill
There’s been a lot of talk about TileMill and CartoCSS lately, with good cause. TileMill makes it very easy generate beautiful map tiles using the Mapnik engine and CartoCSS provides a familiar method to author the cartographic representation of spatial data. As Brian Timoney points out, CartoCSS has the added bonus of making best practices shareable via copy-and-paste.
Naturally, the best way to take advantage of TileMill is to export your tiles to MBTiles and use MapBox hosting. If that’s not an option, you can pretty easily self-host with TileStream. That said, there are some organizations that, due to larger GIS workflows, IT policies, and a host of other legitimate reasons, need or choose to use ArcGIS Server to do map hosting. For those organizations, TileMill is still an option to create attractive basemaps, within certain constraints.
So I set out to see if I could bridge the gap between the two. Two blog posts pointed the way. A while back, Dan Dye blogged about how he had forked mb-util and added support for exporting WeoGeo tilepacks from MBTiles. Also, a co-worker of mine, Eric Mahaffey, had blogged some time ago about how to use Arc2Earth to manage tile caches across air-gapped networks. Using these posts for guidance, I was pretty sure I had all the pieces I needed.
Arc2Earth Focusing On Google Earth Builder
Arc2Earth (disclaimer: my company is an Arc2Earth reseller) has focused a lot on extending their integration with the Google cloud infrastructure. This started with Cloud Services, which provided the ability to push data into Google AppEngine and serve it through emulation of the Esri REST API (among other options). This was expanded to include live editing of data hosted on AppEngine. More recently, Arc2Earth added support for Google Fusion Tables.
Late last year, they announced their Arc2Cloud initiative to expose Google’s spatial data services to ArcGIS users. This has seemed to fall of the radar a bit lately but, as we know, there have been changes brewing on the on the Google end of things so some delays from Arc2Earth are understandable.
My Day At the 2011 FedUC
For a variety of reasons, I only spent one day at the FedUC this year. I chose Thursday because that was the day of the DevGeo session, as well as the National Security Session and a SIG in which I was interested. As a result, I did not see the plenary or any of the big-screen demos. With a few meetings crammed in, my day was a whirlwind. What follows is my view of the FedUC but it is by no means comprehensive. To get a more complete picture, I suggest checking out Adena’s updates over at Directions.
Ten-Second Tidy
Things have been a bit hectic the last few weeks and that’s left little time for blogging. Quite a bit has happened so I thought I’d do a little round-up (if for no other reason than to clear my own head).
[youtube=http://www.youtube.com/watch?v=cJa7P6dfmco]
In no particular order:
Steve Coast to Microsoft (I told you it had been a while) – Firstly, congratulations to Steve (#sincerity). Secondly, this clearly is the final proof that crowd-sourced data in general, and OpenStreetMaps (sic) in particular, has no real value when compared to “authoritative” data sources (#sarcasm).
Google Fusion Tables – The only real problem at this point is the size limitation but, otherwise, this will be a game-changer for storing and sharing data. In its current form, it’s already fairly easy to push your data up and expose it through Google’s APIs. It’ll be interesting to see if it gets easier. Support for spatial queries hints at some analytical capability, too. Speaking of which…
Analytics in GeoCommons – This is one to watch. They are debuting a new function each day on their blog. FortiusOne builds their platform API-first, UI-second so everything they are showing should be exposed through their APIs. This will be a huge step in moving cloud-based geospatial technology from the “bit-bucket” stage to having a more complete workflow on the cloud infrastructure.
Arc2Earth Supports ArcGIS Server Tile Caches
I just got an e-mail announcement from Arc2Earth (disclaimer: my company is a reseller) regarding some updates to version 3 that have come out since the ESRI UC. One of the updates that catches my attention is:
ArcGIS Server Tile Cache Format – You can now create or manage tile caches that can be used with ArcGIS Server. use Arc2Earth tile management tools (like the Change Detection Level) to dramatically reduce the time it takes to update tile caches