Sunday, July 15, 2012

GIS Programming - Module 6 Assignment

I am still polishing some of the code required for this week's assignment, but wanted to go ahead an make my blog posting about some of the "Lessons Learned"

PART III: Module Summary
Write a summary of what you learned this Module. Try to come up with specifics from each exercise and assignment. List any problems (and fixes) you encountered, and any other notes you feel would be helpful to your ‘future-self’. Post this summary to your blog.

Lessons Learned:
Exercise 6a:
  • It is important to understand the pros and cons of relative and absolute paths (especially in terms of sharing your data with others)
  • Relative paths cannot span multiple drives
  • Absolute paths work best on static data
  • Relative pathnames work best when sharing data (remember you have to provide the data as well!)

Exercise 6b:
  • You can effectively share data with others by proper directory planning and relative paths.

Exercise 6c:
  • It is common to provide users with the tools and scripts in addition to the data
  • A recommended folder structure should have a data, scripts, scratch, and docs subdirectory
  • Getting messages out to the results window can be done with the arcpy.AddMessage() function
  • The ArcGIS tools have a section of their help documentation dedicated to sample code snippets
  • Password protection of embedded code is a great feature to help programmers maintain intellectual property (or keep the so called “power users” from messing up your code then entering a help desk ticket, but I digress….)

Exercise 6d:
  • Packaging data to deliver to clients is pretty straightforward in ArcGIS 10.x
  • You can use the Consolidate Map tool (which stores the references to data)
  • You can use the Package Map tool (which stores the data itself).   Think of the benefits of this when you are in the field with a laptop 20 miles from the nearest cell phone tower….

Assignment
The assignment felt like the real world kinds of things I need to do every day which is:
  • Understand the assignment
  • Research the tools
  • Struggle through a couple of false starts
  • Have that “a ha” moment where things start clicking

No comments:

Post a Comment