I think you are referring mostly to open source products since these are the only product that you can actually gain source access as a developer.
I think that WordPress (the blogging engine) is a relatively good example. It's open source, very easy to extend. The interface for both the blog and the admin tools is rather easy and understandable to most users.
The code itself is open source, so you can even modify and extend it further if the current API hooks are not enough (and they are enough in most cases).
There is a large install base and a relatively large eco-system if developers that have extended and even built custom solutions on top of WordPress.
All in all, if your application is well written, the UI should be split and not dependant on the underlying implementation too much, thus allowing you the flexability to tweak it to get the best user experience without compromising the maintainablility of your code.