Select to view content in your preferred language

Diversifying my skillset

786
4
04-19-2010 05:51 PM
MatthewBelsky
Emerging Contributor
Hey all,

I???ve been in the GIS industry for about 5 years now, I???m getting my MA in Geography part time, and I will be graduating in about a year.  I am now planning for my departure from my current job, and I want to learn new software/languages that are applicable to GIS so that I can be more marketable.  My BA is in Art and thus far my focus has been more on the visual/cartographic/presentation side of things, but I realize I need to branch out.  However, based on my background I probably don???t want to get too into hardcore compiling/programming languages.

I have many options:  programming (python, C#, Java are a few), or web programming (ArcIMS, XML, SQL, etc).  Or, open source GIS?  But I am not familiar with that?  I am eager for new ideas and suggestions!  I have about a year to dedicate and I am looking for the most bang for my buck ??? but I always want to learn something that I will enjoy, something that will make me happy.

I can potentially roll my Master???s thesis into learning this new skill, and my job is an option as well but not the best one.  My school doesn???t offer great classes in this stuff so I???m largely on my own here.  I???m thinking online tutorials, books, but all options are open, as long as they???re reasonably affordable.

Anyone???s infinite wisdom is welcome!  Also, are there any other GIS forums that someone can recommend where I can get more feedback on these matters?

Many thanks,
Matt
0 Kudos
4 Replies
ElijahRobison
Occasional Contributor
Matt, hi.  In grad school I was a TA for a remote sensing class, and I used to tell the undergrads that "while you can use GIS to make maps, real return on investment comes from answering specific research questions.  Geographic Information Systems is 66% Information Systems."

If you have a year of school left, you're in a good position to give your resume a proper tweak before before you're out the door with nothing to guide you but hindsight.  I fully recommend a programming course or two, and in your spare time, experiment with some open source GIS options.

The programming direction you take should depend on whether or not you want to develop desktop applications (like extending ArcGIS with custom tools for specific research purposes) or if you want to go into web mapping.  One fair warning, learning to program requires grinding out examples you find in a book or on the web somewhere, preferably both.  Personnally, I always preferred to adapt existing examples to something specific I want to do to help motivate me.  And it will take awhile to become comfortable programming--to really feel like its something you can do-- but stick it out and you'll be amazed by the leap you make in your first year.  I'll talk about both options now.

Desktop Appplication Development:  You're admitting that you are fairly new to programming, so if you want to program for desktop applications, I recommend exposing yourself to Visual Basic.  If your school's geography/GIS program has a Programming ArcObjects course, take it.  You'll have an easier time digesting it if you complete an intro to Visual Basic course first, but you may not have that kind of time.  The best thing the course will provide, however, is structured, deadline-based learning.  Two good books: Getting to Know ArcObjects (Burke) and Programming ArcObjects with VBA (Chang).  Two good websites: 

Box Shaped World -- http://sites.google.com/site/boxshapedworld/tableofcontents

ArcScripts -- http://arcscripts.esri.com/ 
(Download other people's code and look through it, you'll absorb alot this way.)

The only downside to learning to develop specificially for Arc is that you really need a copy of the software at home.  I think they still provide a 1-year student license; get one if you go this route.  You get a 90-day eval license free with the Burke book, but you'll want more time with it.

Web Mapping:  There may be more "entry-level" programming jobs in this area, and you may find that the day-to-day goals are more geared toward improving user experiences and cartographic appearances/aesthetics than they are about developing research tools.  While that sounds easier, you might discover it takes knowledge of more than one language or technology to be effective at what you do.  Maybe not, depending upon how many co-workers you have.  But a one-man(or woman)-show at web mapping will likely not fare well knowing a single programming language, and here's why --> Most web mapping applications involve three tiers of operations: 1) the visible UI front end, and presently the languages to learn for UI development are Adobe Flex, Microsoft Silverlight, and/or AJAX, which stands for javascript and XML; 2) the "middleware", which is the logic language such as C#, PHP, etc. that truely drives the site; and 3) the database, which could be Oracle, MySQL, PostGREsql, etc., but will almost certainly be an SQL database.  In a big development house, you'll have specialists in each area, but in a smaller operation, you'll need to wear all the hats.  One good thing about web development is, there are ALOT of resources in print.  If you want to have some fun, pick up a book on Google Maps Mashups; I would recommend one using PHP and MySQL because those are free technologies, and you won't have to spend much money up front just to try them on for size.  Plus, if you learn PHP and MySQL, regardless as to whether or not you use them to map, those are two skills that can land you a job somewhere.

As for open-source GIS, check out Q-GIS (Quantum GIS).  You can even order Gary Sherman's book, Desktop GIS, Mapping the Planet with Open Source Tools.  Q is a free GIS with the familar GUI user experience.  It's evolving rapidly, and you'll be impressed by how much it can do.  You may even be impressed by how quickly you adapt to its features.  But, while you're at it, also check out FWTools.  FWTools is more difficult to adapt too because it uses a command-line interface.  If you want to break ground fast and gain some confidence, try processing a DEM into a hillshade.  Build from there.  By the way, the number of open-source GIS offerings is a long list, I'm just mentioning my two favorites.

In closing, if you stick with an arts exposure to GIS--unless you've been with an aerial survey outfit or a utility company for awhile--you will most likely start your next job handling digitizing work, which is basically tracing landscape features in aerial imagery or scanned maps.  And that may sound great and you may love that.  However, if you are a sort that is more driven by puzzles, I fully encourage you to start programming now.  Becuause there is so much ground-level understanding required to be an effective programmer, I wouldn't hire someone that merely "wanted" to learn to program because it wouldn't be worth training them; they might tuck and run after a month or two, and I would see no return on my effort to train them.  Every good programming job will require some experience, and frankly, most places are gradually increasing their requirements for entry-level opportunities, and that's mostly to ensure they hire serious applicants.  You will open doors for yourself if you learn to program now.  The question of which direction to pursue--Desktop App Development vs. Web Development--can guide what you learn next.

I hope you check back and find this discussion beneficial.  I wish you the best of luck, however you choose.
0 Kudos
KirkKuykendall
Deactivated User
I recommend leveraging your art skills, and getting into mobile.

IMO, Silverlight/WPF mastery would be a good way to do that.

You can download Expression Studio 60 day eval.  Use your art skills to make some compelling map symbols.
http://www.microsoft.com/expression/

Of course there's ESRI's free Silverlight/WPF SDK.
http://resources.esri.com/arcgisserver/apis/silverlight/index.cfm?fa=codeGalleryDetails&scriptID=165...

Also the free Windows Phone 7 SDK, (which supports silverlight).
http://developer.windowsphone.com/

Also should get into Visual Studio 2010.
http://msdn.microsoft.com/en-us/vstudio/default.aspx
0 Kudos
MatthewBelsky
Emerging Contributor
Elijah,

Thank you very much ... that is certainly a lot of information to take in!  A perfect response, exactly the kind of information I was looking for.

Truthfully, given your response I'm leaning towards web programming.  It sounds really intriguing, a lot more dynamic, and with a lot more pieces.  And I love wearing different hats, doing different things, learning different things.  Correct me if I'm wrong, but that's totally the feeling I got from your description, and I like the way it sounds.

My main fear is, I suppose, an inevitable turn away from mapping.  I like mapping, I want to work with maps in some capacity.  When it comes to web mapping and developing these tools, what is the "feel" of the work?  In other words, I fear staring at code all day, working in a box, etc.  Can you shed any insight on that?

My next question is - financial.  How can I learn these programs, really devote myself to them, totally get into them, without completely breaking my bank?

Thank you for the suggestions on open-source too.  I will certainly look into that.  I have bookmarked this thread, so I'll be coming back to it and referring to it.

Again, many thanks.  Hope to hear back from you.  The depth of your response is much appreciated.

Oh - for what it's worth, I am currently employed at a wind energy consultancy firm as a Modeling Specialist.  So my exposure in the field is a little bit more dynamic, and I wouldn't settle for for digitizing work, as I'm way beyond mastering that.  Hence my desire to learn more ...

-Matt
0 Kudos
MatthewBelsky
Emerging Contributor
By mobile, I assume you mean web mapping, yes?

I would like to leverage my Art skills, but I have a desire to diversify as well - hence programming.  I want to be able to speak both languages, and frankly I'm a bit tired of the art stuff.  I enjoy it, I just want more.

That being said, I will absolutely look into your suggestions.

Thanks much.

-Matt
0 Kudos