Archive for May, 2009|Monthly archive page

Helpful Hints

By not providing a way to use table hints for spatial indexes in ArcSDE, it seems like ESRI is encouraging developers to write code that directly queries SqlServer tables, bypassing ArcSDE.

More on table hints here.

I wonder if having multiple spatial indexes on a column would make sense. For example, if I find the best index for a point in polygon spatial join differs from the best index for a polygon overlay, I could just have two indexes and specify the appropriate one using a hint, depending on the type of join.

Table hints are usually frowned upon for non-spatial tables, but I think it will be a long time before query optimizers are smart enough to pick the best spatial index.

Terrorism, Lawns and the GeoWeb

Mow West, Young Man
Sayyid Qutb traveled from his home in Egypt to visit Greeley Colorado in the 1950’s. The things he saw in Greeley greatly influenced his ideas about society. One thing that really bothered him was the local’s lawn care rituals.

The mowing habits of his Greeley neighbors helped provoke Qutb to write a book sparking a fundamentalist movement that eventually led to the formation of al Qaeda.

While we may be tempted to slack off on lawn care, especially during a drought, we must remain vigilant. Communism wasn’t defeated through appeasement, and neither will terrrorism. This is not a conventional turf war: terrorists view an un-mowed lawn as an admission of defeat.

GRASS Won’t Cut It
Extreme times require extreme measures. What the GeoWeb needs is a service where users can develop lawn mowing mission plans. By bravely volunteering their geographic information not only would homeowners help out in the war on terror, but could also save a bit of leg work. A good plan can minimize wasted effort spent pushing a mower across areas already mowed. Think of it as situational awareness on the home front.

Someone should seek funding from the Department of Homeland Security to develop a Lawn Mowing Mission Planning Application. This app could leverage existing REST services, like those used to support the City of Greeley’s showcase web site.

For example, a home owner would fire up Sketchup and configure a Dynamic Component for the lawn to reference the url of the parcel, which returns coordinates. The user would then digitize their lawn using 3D tools to describe low hanging branches, then save it to the Google Maps Data API.

Once the lawn is in the datastore users could do things like request mowing plans, or bids for mowing services.

Mow Forth And Sin no More
Sketchup is not a thin client though. Silverlight could be leveraged to write one. Flex would work too, but it lacks multithreading. While ESRI will be providing a KML layer in the Silverlight API, there doesn’t seem to be much support for KML with XAML. Maybe the Microsoft Virtual Earth Silverlight control will address this. If Google would provide SWIG interface files for C#, it seems like we could start doing this. For a company whose unofficial motto is “don’t be evil”, a bit of C# support could buy a lot of absolution.