Syndicate content
Thursday, October 1, 2015

On 30 September 2015, I gave a talk to the Southern Maryland GIS User Group titled "Interactive Maps Without Map Servers." This post consists of the slides from that presentation interspersed with my "talk track" in order to provide context.

Today, I’m going to discuss publishing interactive maps without using a map server. I’m going to do this by focusing on a specific case study for one of our customers, the US Commission on Civil Rights. This example is fairly simple and I chose it for its ease of illustration for today’s talk. Before I get started, I think it’s necessary to clear up some terminology.

Thursday, February 5, 2015

Managing a team of Geospatial Analysts, and all their ongoing projects, requires a decent bit of effort for the Project Manager on one of our current contracts. At the onset, the PM would ask each GA what they were working on, obtain it verbally or via email, and manually enter the information into an excel spreadsheet. He would then discuss the spreadsheet with the client each week, noting any task updates or closures. The importance of the spreadsheet and the weekly client meetings cannot be understated; however, I believed that the amount of labor associated with tracking tasks could be greatly reduced.

I originally got the idea for semi-automating our task-tracking system during a seminar at the ESRI International User’s Conference in San Diego. A presenter in one of the technical sessions showed how he and his team built a project tracking system using python code and an open source GUI. I took some notes, and knew that any similar workflow I created would have to be built off IDLE, because downloading any new programs to my government machine often proves to be prohibitively difficult.

Wednesday, September 3, 2014

While working with geospatial information, it is often advantageous to find out how close one particular piece of data is to other pieces of data. This leads to a greater understanding of the area of study. The knowledge of how things relate to one another spatially is articulated in Waldo Tobler’s First Law of Geography. It states that “everything is related to everything else, but near things are more related than distant things.”

Friday, April 4, 2014

Over the past decade, GIS professionals who can manipulate the software both manually and automatically are becoming increasingly more marketable within the industry. Automating mundane/repetitive tasks frees up time to focus on more advanced analyses and other GIS processes.  

On one of our current contracts, we are required to create map products in response to “breaking news” events. These maps provide situational awareness to our client regarding the status of assets within their area of jurisdiction. Time is of the essence during these events, and the faster a map product can go out, the better.

Thursday, January 23, 2014

We often hear that we should use the right tool for the right job. The problem for developers is becoming aware of those different tools. So I want to save you some time and introduce you to an old tool that is good for simple processing of CSV files. The language is so simple that an experienced programmer can pick it up in an afternoon.

Awk is a text processing utility that happens to be a programming language. It was created back in the 70s by Aho, Weinberger, and Kerningham, hence its name. Awk was probably most popular during the 80s until Perl, strongly inspired by Awk, replaced it.

So is Awk obsolete? It is obsolete as a general purpose language. But when used for text processing, such as when we work with CSV files, it is good tool to have around.

Thursday, January 2, 2014

A while back, my colleague Barry Schimpf touched upon some of the tools that we use in conjunction with the Platform Independent Model (PIM). Today, I will delve into one of the tools we use to generate physical schemas from the PIM. Before, I jump in, let’s review what a PIM is and what it does.

The PIM is an approach we have developed to enable proper configuration management of geospatial data models. We have used it successfully for federal customers to track multiple versions of complex data models, validate physical implementations of those models, and support profiling and adaptation of the models across user communities. The focus of a PIM is on the data model as opposed to the actual geospatial data so a PIM itself doesn’t store any geospatial feature data. It is merely a representation of the logical model; defining the feature types, attributes, relationships, and constraints necessary to build a geospatial data set that is in compliance with a particular data standard.

Friday, August 9, 2013

The combination of Microsoft and Esri products is common across Federal information infrastructures and, as a result, we find ourselves integrating these tools often. SQL Server Reporting Services (SSRS) is still a widely-used solution for generating dynamic reports in many government settings. Invariably, some users want to use their Esri tools to embed maps into their reports. This post discusses a simple approach to using ArcGIS for Server to dynamically provide maps in SSRS reports based on report parameters.

Tuesday, June 4, 2013

With the increasing focus on information security across all sectors of government, IT policies are placing increased restrictions on information architectures, including GIS. While these restrictions may not prevent the development of a robust enterprise geospatial architecture, the approval and accreditation processes can introduce significant delays, during which work must continue. This is where workarounds come into play.

Thursday, May 30, 2013

Light detection and ranging, or LIDAR, is a type of remote sensing technology that is similar to radar. It is used in a variety of geographic and environmental applications to model and analyze the physical world.

Often mounted to an airplane or motor vehicle, the sensing unit uses radio waves and the measured time delay between pulse transmission and reflected pulse receipt to determine the distance from an object. There are two styles in which this data can be received by the unit. Some units use what is called “discrete-return,” which only records data at predetermined precise locations (space or time). Some refer to this style as “point” because it returns information specific to locations. The other type of data receipt is called “waveform,” which records data nearly continuously from the unit.

Friday, December 7, 2012

I have been a part of three different data collection efforts that collected line geometry and infrastructure of recreational trails.  One effort was the development of the Fish and Wildlife Services (FWS) Trails Inventory Program.  This effort involved collecting trails data in FWS national wildlife refuges across the United States.  The second was an effort to collect trails data on all of the recreational trails at Haleakala National Park in Hawaii.  This effort was based upon the FWS trails data collection with a few minor changes to how the data was collected.  In the third effort I was responsible for taking the data to its final state and for training field staff employed by the Student Conservation Association.

Based on these experiences, I have come to understand that the keys to a successful data collection effort lie in:

·         Communication

·         Planning

·         Flexibility, and 

·         Very clear goals of what is to be accomplished. 

Thursday, May 24, 2012

So nearly everything we have discussed so far is not really useful unless we can figure a way to get it to help with what we need to do with geospatial data.  It's sort of like having the world's greatest bowling ball with no lanes.  How do we make this help us with increasing productivity, promoting sharing, reducing user frustration, and making us 'cost competitive?' The simple, practical answer is flexible, user modifiable applications.

What are these applications?

Making practical use of a data standard involves a number of required functions.  These are:

  1. Performing an initial load of the PIM from the user defined Standard and providing a mechanism for modification/update
  2. Generating Schemas or compatible physical implementations in a variety of GIS formats
  3. Validating (checking) user data in these same GIS formats against the Standard
  4. Assisting with both User to User translations and Version to Version migrations
  5. Enforcing a discipline that allows for performance of #2 though #4 above. 
Monday, May 7, 2012

Much of the conceptual background and structure managing a geospatial data model using a platform-independent model (PIM) has been outlined in previous posts.  And while it is useful to understand how the PIM is structured in the tables and views inside the PIM database, the critical knowledge relates to the way the PIM API retrieves and organizes this information, and details the properties and methods of the various PIM API objects.  So if you are not particularly interested in the conceptual, now would be a good time to pay attention.

This post begins the process of moving from the abstract to the concrete. In the next series of posts, we will begin to build a simple data model in order to not only demostrate the concepts that have been previously discussed but also to showcase many of the existing tools for helping with various management tasks such as version migrations, script generation and data validation. In this post, we'll begin discussing the API provides the business rules for interacting with the PIM, enables configuration management activities, and acts as the interface bewteen the PIM and the applications that use it.

Friday, April 27, 2012

The PIM now contains sets of features (the pimFeature) grouped into sets (the pimConfiguration) with properties and referencing sets of attributes (the pimAttribute).  For may GIS solutions, this is all that is required for collecting, validating, and displaying geospatial data. 

But the PIM also contains the ability to constrain attribute values in a variety of ways, in much the same way that many of the RDBMS data stores contain a similar ability.  Probably the simplest of these ways is the 'Nulls Allowed' property.  In nearly all cases, attributes will be coded as 'Nulls Allowed', but specific user preferences might dictate otherwise, provided the user fully understands the implications of this coding. 

Monday, April 16, 2012

A quick review of the pimConfiguration to the pimFeature shows...

Friday, April 6, 2012

In a previous post, we discussed the meaning of the pimConfiguration as a collection of elements in the Platform Independent Model (PIM).  One of those elements (in fact, the most important geospatial one) is the pimFeature.  The pimFeature is that table/object that defines the geometric object that gets displayed on the map, sometimes called the 'shape'.  It is defined based on the contents of the pimGeometry table within the PIM.  These are currently defined as Point, Line/Polyline, or Polygon but could be easily expanded to 3D geometries and multipart geometries.