If I were a small city GIS manager
…I would deploy significant portions of the City’s GIS infrastructure using free and Open Source technology. Why?… why not? It’s free to procure and provides top notch capabilities. In the absence of specific technological or organizational constraints, here are the components I would use.
The database would be PostgreSQL with PostGIS. Using PostGIS, anyone with even minimal SQL skills can develop spatial queries, integrate data between GIS and other business systems, and serve data to almost any application tier technology.
I would use Quantum GIS (QGIS) as the desktop GIS technology of choice. QGIS beautifully meets the 80/20 rule for ad-hoc GIS processing and display. Meaning – it has the geo tools required for most any task you throw at it. All it is missing are the obscure tools that rarely get used. (Has anyone ever used “Calculate Distance Band from Neighbor Count”?) The good news is, if I am that guy who needs a custom analytical tool, I could build it in Python (also Open Source), embed the functionality within QGIS, and share it with the QGIS community.
My server GIS would be powered with GeoServer. Nothing makes it easier to transform a table or view in a database into a functional web service ready to be consumed by most any viewer – Google Earth, Open Layers, or even ArcGIS Server.
Lastly, web applications would be built using Open Layers. I’m no web developer, so what makes Open Layers awesome to me is its simplicity. It lets me consume and expose whatever basemap I want. It can be Google Maps, Bing Maps, ArcGIS online, WMS, WFS – you name it, Open Layers can sprinkle your custom data on top of it.
All of this free, enterprise-class capability makes me marvel at the oodles of cash that are blown on proprietary software (and software maintenance) by cash-strapped local governments every day. As a former GIS Manager for San Mateo County, I have to ask what is it that you think keeps cities spending the money? Drop a line if you have any ideas.