Don't you just love, when all works as you would expect? Me too. Sometimes, things don't quite work out like that. When it comes to technology, this is unfortunately the case more and more often.
In this particular case, I ended up with some issues with a sluggy operating system after upgrading to Yosemite on my iMac. The in place installation process to upgrade from Mavericks to Yosemite warns you about uncompatible software at the end of the installation. Unfortunately at this point the compatibility issue did not raise its ugly head. After rebooting the issue was clearly visible; All operations were crawling and my computer was renrered almost useless.
No reason to panic though, this is not unheard-of. I opened up the Activity Monitor and Console to see if there was some obvious reason visible. No such luck. All seemed to be ok, there was free resources left to be used by processes.
After some googling it become obvious, that I was not alone with my problem. In many cases the reason seemed to be related to external USB devices, to audio interfaces particularly. Here is Sweetwater Sound's excellent article on the subject. Success!
So I unplugged my USB audio interface from my Mac, and removed all the resources related to it. After reboot, no more slugginess!
One. As a consumer, I shoud be able to trust, that hardware and software vendors keep their products up-to-date and compatible with the operating systems, they promise to support. I have paid for these products and expect them to work.
Wait, what if the vendor does not yet even promise to support the brand new operating system? Well boo hoo, I still rightfully expect them to. Why, see my point Two.
Two. As I am involved with the industry, I know how unbelievable complex things can be. Still I believe there should, and can be better situation. As a product owner / manufacturer / developer I would carefully choose the platforms I plan to support. Then I would make sure, that I have enough competent people to do the job.
I would look very carefully on all the news from (operating and other related) system vendors regarding new versions, and be involved with their beta programs to test my own product for possible compatibility issues, as early as possible. For example Apple delivers very good beta program and developer support. Then I would be ready when the actual launch date occurs.
Still I would make sure, that I have enough people on my support right after these big launches, since a lot of my customers are going to upgrade to new operating system, no matter if I recommend otherwise. Why would they not? Stay clear from all the new goodness for some USB audio interface issues? Don't think so.
Three. At some point as a product owner, I would have to make the decision, that the product is at its end of life. I would clearly publish this information for my customers, so they can prepare and look for alternatives. What? You can't say a thing like that! That will lose sales! So make a better product to replace the old one. Or you will lose your customers. It still would be good customer service on my opinion.
In this particular case, I did vote with my feet, and bought a new and supported product. Supported from the day one of Yosemite.