Training

APR 23 2018

Developing ArcGIS Pro Python Tools and Processes

Thee-hour workshop conducted at GIS In Action 2018

David Howes, David Howes, LLC

Portland State University, Portland, OR

Workshop Description

The goal of this workshop is to teach attendees how to extend ArcGIS Pro by using Python to create functionality that can run as standalone programs or operate inside the software as geoprocessing tools.

Four topics will be covered: (1) ArcGIS Pro Python overview and setup; (2) Upgrading ArcGIS for Desktop tools for use in ArcGIS Pro; (3) Running Python scripts; and (4) Creating geoprocessing tools (script tools and Python Toolboxes).

JetBrains PyCharm (Community Edition) will be used for coding demonstrations and a brief introduction to its features and capabilities will be provided.

The workshop will consist of a balance between lecture material and hands-on exercises. Those who wish to complete the exercises during the workshop will need to bring a laptop with ArcGIS Pro (latest version) and JetBrains PyCharm (Community Edition) installed. Anyone unfamiliar with PyCharm is advised to work through the introductory materials available from the JetBrains website before arriving at the workshop.

Intended Audience
GIS professionals familiar with ArcGIS Pro and having basic experience in Python programming.

Learning Objectives

  • Extend the capabilities of the ArcGIS Pro using Python to create geoprocessing tools and standalone programs.
  • Explore the relative merits and applicability of the Python extensibility options.

MAR 27-28 2018

Introduction to the ArcGIS API for Python

Two-day workshop to be conducted in association with Geospatial Training Services

David Howes, David Howes, LLC

Portland, OR

Workshop Description

The ArcGIS API for Python is a powerful, modern, and easy to use Pythonic library for performing GIS visualization and analysis, spatial data management and GIS system administration tasks that can run both interactively and using scripts. The API works with the online and on-premises web GIS platform provided by ArcGIS Online and ArcGIS Enterprise respectively and has Python modules, classes, functions, and types for managing and working with elements of the ArcGIS platform information model.

The class will consist of a balance between lectures and hands-on exercises. The examples will make use of publicly available GIS resources, but students may work with their own online resources if they so wish.

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.

This course is offered in a variety of formats including live-classroom, live-online, and hybrid. This is a hands-on style workshop with lots of exercises designed to teach you how to automate your ArcGIS geoprocessing tasks with Python.

Intended Audience
GIS professionals familiar with ArcGIS Online and having a basic knowledge of Python programming.

Course Modules

  1. ArcGIS API for Python Overview
  2. API and Jupyter Notebook Installation
  3. The GIS
  4. Mapping and Visualization
  5. Feature Data and Analysis
  6. Data Management
  7. Vector Data Analysis
  8. Raster Data Analysis
  9. Geoprocessing Tools
  10. Advanced Concepts

Registration
Please register at the Geospatial Training Services website: http://geospatialtraining.com/introduction-to-the-arcgis-api-for-python/

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