At 10.1 ESRI have taken what was already excellent geoprocessing and made it much more interactive!
To review, with the arcpy site package, you can already script any geoprocessing tool that exists in ArcGIS. Python is a simple and effective language that is very easy to learn. It is really a pleasure to work with, and as a developer, I am often a little embarrassed by how simple the solutions turn out to be.
One great addition to arcpy site package at 10.1 are add-ins. Python add-ins are an easy way to get the powerful and simple geoprocessing scripting you can already do into the user interface. For example, at 10.0, you could take a geometry and overlay it with a list of layers to identify the intersecting features. Now, you can allow the user interactively to digitize that geometry in ArcMap and script the overlay automation behind the scenes the moment the user finishes drawing.
To learn more about Python add-ins, visit resources.arcgis.com.
The Data access module (arcpy.da)
10.1 also introduces the data access or arcpy.da module. arcpy.da exposes the ArcMap Editor to scripting. It allows you to script interactions with SDE versions. Let’s carry on with the example we just used. We already allowed the user to digitize a feature and overlay a list of features. With arcpy.da, we can open the ArcMap edit session against a particular SDE version, write those features to a target feature class, save and close the edit session, all within our script!
To learn more about the data access module, visit resources.arcgis.com.