Their GUIs aren't bad. But the Python modules they offer for scripting are bad. The old one, "arcpy", was very un-Pythonic (e.g., no class for map layers, functions just returned layer names as strings). The new package, "arcgis", is better, but the documentation is bad. And you'll still need to use arcpy for some tasks.
I haven't used QGIS yet, but I'm probably going to start tinkering with it at home.