Monday, January 19, 2009

From GIS User to Developer - Part 1

I've been doing this four years now and gotten a chance to experience the GIS field from multiple perspectives. I'd like to share these experiences in the hope that someone traveling along the same path can learn from my successes and, of course, the embarrassing mistakes I've made. But first, some backstory: Motivation: I have two basic motivations to get more technical in my job. First, I love tinkering. I build my own computers, jump in on the newest software betas (example: posting from Windows 7), and long before I knew it was worthwhile for employment purposes, I was messing with programming. I wrote a terrible, but fully functional C++ tic-tac-toe game at 15. This means basically nothing now of course, with 8-year-olds routinely getting major Microsoft certifications ("BOY OR GIRL!"), but it was pretty cool to be able to bend a computer to my will. The second motivation has to do with the future of GIS. Future of GIS: There are basically two schools of thought here. The technophile psuedo-utopia/distopia school - depending on your point of view - involves always on, complete geographical awareness via mobile devices or Matrix-style head jacks. Go out for a night on the town and you'll know where your friends are, you find breadcrumbs (static notes) that tell you the places that are crowded/cheaper/better/live nudes/whatever. Hold your phone camera up to the skyline and see information on all the buildings and places in the distance. Almost everything is web based, served by a number of gargantuan server farms run by Amazon (EC2), Microsoft (Azure), or Google (basically everything they do). While somewhat fanciful, a lot of this stuff is here already and running. Check out the 4D map setup D.C. put together so people that go to the inauguration might have a chance to commute out of Washington before the next election. The second school believes this change will happen more slowly, with a place for paper maps and existing uses of GIS in desktop and imbedded applications. Despite advances in mobile internet architecture, it would be foolish to marry all applications to the cloud because the possibility of service interruption for, say, rescue workers is a non-starter. Plus a ton of the data kept by organizations is sensitive in nature and the data giants mentioned above are not as good of stewards of some information. Cartographers and analysts using desktop applications won't go away, particularily for extremely hardware intensive uses. I still consider myself fairly new to the field, but it would appear to me the first group is probably closer to the mark. Of course there will be applications for GIS that will not easily translate into the web; customized statistical modeling, data model design, and anything with heavy raster manipulation comes to mind. But powerful tools for bringing GIS to the masses, to shamelessly add an abominable cliche to this tirade, have been found to be increasingly popular. The dominant player in GIS - ESRI - is quickly moving in the direction of the first school. To make this happen you need developers who are creative and interested in geography. You need analysts and data modelers to make the back end work, and cartographers/designers to make it usable and pretty. The common thread with these folks now is that, to get your stuff online, you'll have to know at least Javascript. Oh sure. You can get away with using a wizard or template system to make a web map, but to do anything really interesting you'll want to pick up a scripting language and probably more. Thus begins this story. I was a student having just finished up a GIS oriented Geography degree. If you are in a similar situation, or anywhere between that and an actual GIS dev, this might help you. Sorry this first bit is somewhat slow.

No comments: