Gaël has a blog post on PowerGUI showing the way future software products should provide UI providing you with scripts for whatever you do so you can easily automate the tasks you need.
I would also add another aspect to this: full customization of the UI: being able to add a tree node or action by simply searching for functionality or plugging in a script (which you could in turn get from the code you got from previous tasks). This is so much different from the old way on which you basically had to stick to whatever a software vendor shipped, and the only way to have the UI changed was to submit a change request (ever sent emails to email@example.com?) and wait for another year or two before the vendor (provided they get another million of similar requests) release an updated version with some kind of implementation of the way they understood you.😉
In case you don’t speak French, here’s a translation of Gaël’s post.