In order to produce a single view of GIS data derived from multiple sources, it is necessary to abstract the rendering of the data from the actual datasources. This is similar to the concept of a Services Oriented Architecture in which business data are rendered from their system domain to a domain specific language that suits the needs of the enterprise.

The term that is given to the systems required to perform the rendering function are called ?stacks? in the GIS world.
The Stack typically is composed of: Spatial Database, Internet Mapping Server (map services), Mapping Client, and Web Mapping Client.
There are a few different technology streams available for provisioning stacks. I have been doing research into the different stacks available for service enabling GIS data. (More)

Very exciting news - an article co-authored by Barry Lawrence of BSTGlobal and myself based on a system now in production at Matrix has just been published in the Microsoft Architecture Journal.

The article is on the subject of Enterprise Identity Synchronization and describes a synchronization pattern and associate system architecture for keeping enterprise identity data up to date between disparate systems. In effect - it is a system for replicating identity memes around an organization.

This has proven to be a fascinating project from a number of standpoints, and I have learned a great deal from the experience of being involved in designing and building a services oriented workflow architecture. The implementation of the system has also been very fascinating, and is a real case study in how systems, people and processes are inherently intertwined. I will write a number of blog posts on the outcome of this project over the next few weeks.


Just finished reading The Big Switch – excellent book. The key to making the firm I work for (Matrix Solutions) successful is to minimize overhead and infrastructure costs as much as possible. While Matrix’ only product is information, as your book points out, we are in the business of collecting, interpreting and managing knowledge for our clients – not building and managing IT infrastructure.

Therefore - I am always looking for ways to reduce costs of IT by leveraging wherever possible the kinds of ‘utility’ services discussed in the book, and have for some time been a believer in SAS.

Matrix right now is still very much in the ‘older’ model of IT services, in which we still own and manage an IT infrastructure based on Microsoft servers and applications which the company owns. (More)

Investigating this forms processing engine I am working on has lead me to software factories. I have been reading the Software Factories book - its good.

Here are some additional resources I have found while investigating this.

 (More)

I have been building a fairly sophisticated business metrics and time managment system for my employer recently.

To bring the tool to the next level, I am making use of a number of third party components. There are some excellent resources out there for this sort of develompent, both commercial and open source.

 (More)

 Identifying Risk
Posted on Tuesday, January 04, 2005 2:14 PM
The one-minute risk assessment tool
Communications of the ACM Volume 47, Number 11
by Amrit Tiwana, Mark Keil

An analysis of risks in software development, using data from senior IT managers, produced surprising results. Our one-minute assessment tool applies those results to assessing the risks of specific projects.

Of the $2.5 trillion spent on IT during 1997–2001, nearly $1 trillion was wagered on underperforming projects [3]. A large number of underperforming projects ultimately fail, costing U.S. companies more than $75 billion each year [8]. While some events cannot be predicted or controlled, many of the risks that repeatedly plague software projects can be assessed and managed.

 (More)

An article on ways to optomize performance of ADO coming back from microsoft related constructs from msdn - is quite detailed and has lots of good information about best design practices on the microsoft platform.

Agile database design: http://www.martinfowler.com/articles/evodb.html

Object databases: http://www.15seconds.com/Issue/030407.htm

Blog on database design: http://blogs.ittoolbox.com/database/design/


Good blog resource on search engines: http://glinden.blogspot.com/2004/04/google-cluster-architecture.html

Paper on the google cluster: http://www.computer.org/micro/mi2003/m2022.pdf

Semantic geospatial web: http://www.spatial.maine.edu/~max/SGW02.pdf

Original stanford google paper: http://www-db.stanford.edu/~backrub/google.html

Whats next for google: http://www.technologyreview.com/articles/05/01/issue/ferguson0105.asp?p=1

Google file system (Very detailed): http://www.cs.rochester.edu/sosp2003/papers/p125-ghemawat.pdf

General article on Google cluster: http://www.internetweek.com/story/INW20010427S0010

Search engine watch: http://searchenginewatch.com/

Page rank explained in detail: http://www.iprcom.com/papers/pagerank/