Esri software allows users to perform complex spatial analysis through toolboxes; however it also offers considerable scope for users to customise processes, build their own toolbox and interact with functionality though SDK's and API's.
Python is an open source programming language. You can writing Python add-ins for ArcGIS Desktop to create custom processing routines and it is widely used in the Geospatial community, not just in ArcGIS applications. Here are some useful resources to get you started:
Build Applications for web, mobile and desktop with Esri's cloud services, developer APIs, ready-to-use content and self hosted solutions. All you have to do to start using the Developer Tools is to sign up for a Free Developer Account.
Find out more...
Esri UK has been supporting hackathons, like the oxHACK. Part of this includes sending along experienced Esri UK programmers who can demo the tools that are available through the Developer accounts and help hackers realise the power of spatial.
If you are organising a hack and think we should be involved, please send an email to email@example.com
Photo credit: Elena Olivo, NYU Photo Bureau