After DirectionMag hosted Esri’s free webinar, ArcGIS Notebooks – Using GIS and Python Notebooks for Workflow Automation last year, a number of attendees followed up with us, many admitting that they lacked the skills to do the kind of work presented. Some wondered whether it is really important to have programming skills in today’s GIS environment; others wondered how they could get the skills they needed quickly and inexpensively. In today’s post, I want to address both of these questions.
How important are programming skills in today’s GIS environment?
The answer depends on how badly you want the job.
“…the skills set of programming together with a capacity to problem-solve is a particularly powerful and pertinent combination for those eager to procure—and maintain—GIS employment.”
—Diana Sinton, “GIS Jobs of Today: How does ‘Open’ Fit into The Mix?,” 2016
Over four years ago, Diana Sinton, DirectionsMag columnist and the executive director of the University Consortium for Geographic Information Science, wrote a series of columns on the requirements of GIS jobs. Even then, there was consensus on the importance of programming skills.
“Without a doubt, GIS professional with Python and other programming language skills will get the best positions. Those with programming expertise garner higher salaries and are more valuable to employers.”
—John Gabriel, co-owner of Alsea Geospatial Inc., from “GIS Jobs of Today: Should you have programming skills?” by Diana Sinton, 2016.
Taking a quick look through the GIS job ads in 2021, there is little doubt that programming is highly valued by hiring managers. So, the question isn’t if you need the skills, but rather, why have you hestitated?
Python was chosen by Esri for ArcGIS specifically because it is easy to learn, while also being scalable and complex enough for experts. There are literally hundreds of online resources for learning it, so there is no more room for excuses. It’s time to get to work!
How can I learn Python as quickly and inexpensively as possible?
There are two schools of thought on this one:
1. You can learn Python within the context of ArcGIS, and rely heavily on Esri tutorials, or
2. You can learn open-source Python coding, then tweak your knowledge to use Python within ArcGIS.
If ArcGIS is your primary concern, a good place to start is with Esri’s free, interactive webcourse, “Python for Everyone.” The course takes about 3 hours to complete.
Then hop back into LinkedIn and sign up for Jennifer Harrison’s 2.5 hour course, Learning ArcGIS Python Scripting.
These courses, along with a copy of the book, “Python Scripting for ArcGIS Pro” by Paul A. Zandbergen, will give you a solid foundation of skills. (DirectionsMag ran a review of the first edition of this book in 2013. To get an idea of how effective the book will be, you may be interested in reading the reviews before picking up a copy.)
Finally, reinforce your skills and get a look at their larger context, with Penn State’s Geog 485: GIS Programming and Software Development course.
If you’d rather learn Python generally, and dive into ArcGIS later, take a look at Google’s Python Class, UDACITY’s Introduction to Python, and this free online tutorial from the University of Chicago to get your feet wet.
With the basics behind you, consider moving into some of the low-cost training courses available from online academies; Penn State’s Geog course material recommends the beginner-friendly courses offered by codeacademy.
If you are still looking for more, the wiki “Python for Non-Programmers” provides a huge list of resources to explore.
After working your way through these resources, you’ll be feeling pretty comfortable with Python, but heed this word of warning. Head over to DirectionsMag for this quick read before you dive into ArcGIS: “10 Common Python Errors of Beginning ArcGIS Programmers.”
You’ll be more than ready for our next Python-related webinar!
Reposted from The DirectionsMag Geospatial Community Blog, an extension of Directions Magazine. Visit us for daily geospatial news, exclusive articles, geospatial webinars, and podcasts. If you are interested in contributing, please email email@example.com. https://www.linkedin.com/pulse/yes-you-need-python-skills-heres-how-get-them-rebeckah-flowers/