GRASS, being open source, should be a good starting point for ambitious amateurs. A late friend of mine was a great fan of it. My personal experience boils down to a project with GE Smallworld that never really took off; I was supposed to help with some integration tasks, but funding evaporated.
_________________________
Dragi "Bonzi" Raos Q#5196 MkII #080000376, 18GB green MkIIa #040103247, 60GB blue