Training

OCT 9-10 2017

ArcGIS Development Using Python: Tools, Add-ins and the ArcGIS API

Two-day workshop conducted at the 32nd Annual Northwest GIS User Group Conference

David Howes, David Howes, LLC

Boise Centre, Boise, ID

Workshop Description

The goal of this workshop is to teach attendees how to extend the Esri ArcGIS platform by using Python to create functionality that can run as standalone programs or operate inside the software as geoprocessing tools or add-ins and serve to support a wide variety of GIS needs, such as analysis, visualization and administration.

Four primary topics will be addressed: (1) Basic Python and the use of JetBrains PyCharm for program development; (2) ArcGIS for Desktop and ArcGIS Pro script tools, Python toolboxes and standalone scripts; (3) ArcGIS for Desktop add-ins; and (4) the ArcGIS API for Python, a relatively recent product that is designed for use with ArcGIS Online and ArcGIS Enterprise and which, using Esri’s wording, “is a powerful, modern and easy to use Pythonic library to perform GIS visualization and analysis, spatial data management and GIS system administration tasks.”

The workshop will consist of a balance between lectures and hands-on exercises. Those who would like to complete the exercises during the workshop will need to bring a laptop with ArcGIS for Desktop 10.4.1 (or a newer version) and JetBrains PyCharm (Community Edition) installed.

Attendees will be able to leave the workshop having a strong basis for recognizing and pursuing their ArcGIS customization needs, increasing the value of their ArcGIS investment and enhancing their standing and employability as GIS professionals.

Intended Audience
GIS professionals familiar with the ArcGIS desktop and online products.

Learning Objectives

  • Extend the capabilities of the ArcGIS platform using Python
  • Explore the relative merits and applicability of the Python extensibility options
  • Create Python standalone programs, geoprocessing tools and add-ins

FEB 16 2016

Extending ArcGIS: Python Geoprocessing Tools and Add-Ins

Full-day workshop conducted at the 50th Annual Alaska Surveying & Mapping Conference

David Howes, David Howes, LLC

Hilton Anchorage Hotel, Anchorage, AK

Workshop Description

The goal of this workshop is to show how the capabilities of ArcGIS for Desktop can be extended by using Python to create functionality that can run as standalone programs or operate inside the software as geoprocessing tools or add-ins. The relative merits and applicability of the Python extensibility options will be explored using supporting examples, such that attendees will be able to increase the value of their ArcGIS investment and enhance their standing and employability as GIS professionals.

Intended Audience
GIS professionals familiar with ArcGIS for Desktop and basic Python programming in ArcGIS.

Format
The workshop will not be hands-on, but will instead provide thorough content that is best delivered without the complications typically associated with supporting attendee exercises, for which a longer class would be more appropriate.

Supporting Materials
Slides and code will be made available to attendees following the workshop.

OCT 28 2015

Spatial Analysis Using Python

Workshop conducted at the GeoAlberta 2015 conference

Jason Pardy, Jason Pardy Consulting

Delta Edmonton South Hotel and Conference Centre, Edmonton, Alberta, Canada

Workshop Description

The goal of this workshop is to highlight the value of coding for GIS by demonstrating how Python can be a valuable resource for use in solving spatial problems, extending the capabilities of software and streamlining workflows. Geoprocessing tools and interactive Python commands in ArcMap and QGIS will be employed to prepare data and perform exploratory analysis to support, as an example, an investigation of whether an invasive plant is spreading in a random pattern. The processing steps will then be merged in a Python script to provide a fully-functional and shareable geoprocessing tool.

OCT 18-19 2015

Extending ArcGIS for Desktop with Python and .NET: Geoprocessing Tools and Add-Ins

Two-day workshop conducted at URISA GIS-Pro & NWGIS 2015, Spokane, WA, USA

David Howes, David Howes, LLC
Jason Pardy, Jason Pardy Consulting

Grand Hotel, Spokane, WA

Workshop Description

Depending on your interests and needs, you can think of Esri’s ArcGIS for Desktop as a rich set of GIS functionality made available through the standard Windows mechanisms of menu items, buttons and forms, along with a comprehensive set of geoprocessing tools. For some users, this “out-of-the-box” functionality provides all the capabilities they need to be successful. Other users may find it helpful to complement what’s provided, for example, to take a process they have to repeat frequently and reduce it from, say, 20 clicks of the mouse to one or two clicks and, thus, save their time for other tasks. Alternatively, they may want to extend the capabilities of the software, building on what’s already there to provide new geoprocessing functionality. However, while this may sound appealing, the reality is that many users find the thought of customizing the software or creating their own tools quite intimidating. Through this workshop, we aim to show that this need not be the case.

The goal of the workshop is to show how to extend the ArcGIS for Desktop functionality by using Python and the Microsoft .NET development framework with the C# programming language to create geoprocessing tools that can run as standalone programs or operate inside the software. Standalone programs will be created as Python scripts and .NET form applications. For tools that run within the software, the focus will be on Python geoprocessing tools and Python and .NET add-ins.

Day one of the workshop will cover geoprocessing tools, starting with Python in the morning and continuing with .NET in the afternoon. Day two will cover add-ins, with the same progression from Python to .NET.

Attendees will be able to leave the workshop having a strong basis for recognizing and pursuing their customization needs, increasing the value of their ArcGIS investment and enhancing their standing and employability as GIS professionals.

Intended Audience
GIS professionals familiar with ArcGIS for Desktop and Python programming in ArcGIS.

Learning Objectives

  • Extend the capabilities of ArcGIS for Desktop using either Python or .NET (C#)
  • Explore the relative merits and applicability of the Python and .NET extensibility options
  • Create Python and .NET standalone programs, geoprocessing tools and add-ins

MAY 12 2014

Extending ArcGIS for Desktop Using Python and .NET Add-Ins

Full-day workshop conducted at the 2014 Washington GIS Conference

David Howes, David Howes, LLC
Jason Pardy, Voyager Search

Greater Tacoma Convention Center, Tacoma, WA

Workshop Description

Depending on your interests and needs, you can think of Esri’s ArcGIS for Desktop as a rich set of GIS functionality made available through the standard Windows mechanisms of menu items, buttons and forms, along with a comprehensive set of geoprocessing tools. For many users, this “out-of-the-box” functionality provides all the capabilities they need to be successful. Many other users, however, may find it helpful to make some changes to the software, for example, to take a process they have to repeat frequently and reduce it from, say, 20 clicks of the mouse to one or two clicks and, thus, save their time for other tasks. Alternatively, they may want to extend the capabilities of the software, building on what’s already there to provide new and valuable functionality. However, while this may sound appealing, the reality is that many users find the thought of changing or customizing the software quite intimidating. Through this workshop, we aim to show that this need not be the case.

The goal of the workshop is to show how to extend the ArcGIS for Desktop functionality through add-ins, a customization option introduced at ArcGIS 10.0. In simple terms, add-ins can be thought of as small programs that may be incorporated easily into ArcGIS for Desktop and may be made available for use with a minimum of effort.

The first half of the workshop will focus on core add-in concepts and possibilities using the Python programming language. The second half of the workshop will build on this introduction and cover the development of add-ins using the Microsoft .NET programming environment and, specifically, the C# programming language. Attendees should be able to leave the workshop having a strong basis for recognizing and pursuing their customization needs, increasing the value of their ArcGIS investment and enhancing their standing and employability as GIS professionals.

Intended Audience
GIS professionals familiar with ArcGIS for Desktop and Python programming in ArcGIS.

Learning Objectives

  • Extend the capabilities of ArcGIS for Desktop using either Python or .NET (C#)
  • Understand the Esri ArcGIS add-in framework
  • Explore the relative merits and applicability of the Python and .NET add-in options