It's a combination of principle, practicality, and choice. Since most programmers have industry standard interfaces (mostly either Centronics or USB), it should be possible to use them with any (sufficiently fast) computer that is equipped with said interfaces, as long as it is running a fairly common OS. Why should I have to boot a different operating system just so I can use that device? The late 90s and early 00s are over, darn it: both Linux and Mac OS X are pretty much mainstream operating systems these days! We have interface and protocol standards for a reason.
And don't even get me started on "planned obsolescence"!