Ron, the issue is that lots of programmers (myself included) have several mindsets when programming based on many years experience. If I am writing software for a phone (limited screen size, touch input) then I write with those limitations in mind. When I write software to run on a glass TTY (like old DOS programs) then I write for the kind of IO I expect.
The problem with software for Windows now is that we have classic Windows programs (a la Win7), Metro or Universal apps (Win8, 8.1, Win10). And that software will run on a high end server, or home machine or laptop or simple old laptop or tablet. If you don't design with gamut of machines and features available users may use, then you end up with software that is clunky on a tablet and great on a desktop/laptop or great on a tablet and clunky on a desktops. It has suddenly become very hard to ensure the UI works on all the Windows devices and it leads to a perfectly normal concepts - Shift+click or Shift+right click becoming a nightmare on a touch device.
It's anything but trivial and leads to a plethora of versions having to be supported for all the different options. MS tried to make it work with Universal apps but that just made most things clunky on all devices. And fugly too!