From my perspective (a long-time Microsoft developer, using contemporary MS tools along with the .NET Framework), it seems like everything I'm seeing in terms of development tools, proprietary behaviors, etc. for the Z-Wave protocol comes from folks who have a fairly narrow perspective of both the marketplace and how software development is flowing on the planet. It seems like they are viewing the world from a fairly narrow plane involving embedded computing. The term "user friendly", used at all levels of computing (even the developers are "users" at some level), does not seem to compute with the folks who own Z-Wave. Of course, that will ripple downwards through all levels of expression, right down to the end, end-user, with a remote in his/her hand.
The result? Look around at Z-Wave. Check the forums, from X-10 to Z-Wave. See for yourself. It's stagnant. The hardware: stagnant. New software interfaces and innovation: stagnant.
Again, speaking for myself, when I grab someone's .dll and start coding against their stuff, I weigh the experience (user-friendliness) carefully, as I'd be a fool not to recognize time is valuable...my end-user time. I expect that .dll to be all inclusive as a tool for me, a developer, to start flying. Indeed, that expectation is not the exception. Check around, try on some REAL .NET stuff...grab some .dlls, code a bit. You will see what I mean.
With Z-Wave programming, even when using tools like Lutz' Reflector, I still spend most of my time with a question mark on my face, wondering what the hell is going on with this or that Z-Wave device. Hello? Anyone out there?