Provides an in-depth introduction to the customization of Esri ArcGIS using Python with hands-on experience with ArcGIS, ModelBuilder, Python, geoprocessing, and ArcPy. The focus is on automating tasks and workflows in ArcMap using ModelBuilder; applying Python programming in ArcMap and for ModelBuilder; applying practical methods of debugging, tool input parameters, and tool and code documentation. Students will create a GIS data processing tool, useful to their work or area of interest, using Python or Python and ModelBuilder. The tool must be documented and capable of gracefully handling errors. Software: ArcGIS Desktop, Notepad++, IDLE - Python IDE, other Python IDE according to student choice.