None of the other desktop/mobile platforms require specific hardware , Windows/Linux/Android can all be virtualized/cross compiled to. The only reason you cannot cross compile/virtualize from other platforms is because Apple doesn't want you to. Its possible, there are projects that allow you to do so, but it violates Apple's license.
https://github.com/tpoechtrager/osxcross
Also its not fair to compare hobbies like photography or music to programming, you don't need any physical hardware other than a computer for majority of the cases, except testing (even that can be done somewhat reliably by virtualization), and when you are artificially forced to buy hardware just to publish to a platform.