I am afraid I disagree with you. I think the ArcGIS help/forums/blogs/vids/etc give a great perspective on what you can achieve with the ArcGIS range of products.
Your not limited to Python to manipulate your spatial data. You can still use VBA at 931 and 10 to access the ArcObjects library, or you could take it a step further and use .NET to do all sorts of things, and again this is well documented.
I also think the shortcuts for ArcGIS Desktop are great, and you can create your own shortcuts via the Customise dialog if need be.
If you dont want to learn how to code, there is also modelbuilder which is a great way of automating tedious tasks/common workflows, particularly with geoprocessing.
I am being biased, but I do have experience with other products. I know MapBasic has its problems and not a very rich community behind using it.
I know that python does lack the power of providing easy to taylor interfaces to present to users, but as I mentioned, with VBA/.NET you can put together content-rich forms to give a custom interface for users to do what they need to do.
I will be interested to see what other platforms people can suggest, and to see what additional functionality they could provide that ESRI cannot.
- With .NET you can script against MXDs (e.g. Loop through a folder of MXDs and open each MXD, do some stuff, then move onto next MXD
- Manipulating default values in your spatial data is also achievable with ArcObjects.
Perhaps you could provide some more examples of what you expect to achieve and I could provide some pointers on how to achieve it. It might be that you are not aware of some of the capabilities of ESRI?