For #2,
For gaming, if you use steam, you may not face more than the following:
- game does not work with no well known way to resolve. You can find this out by checking protonDB
- game does not work because it needs to enable some options. Very easy to fix, and you can find the options on proton db for each game.
- does not work because you didn’t setup steam right. You often need to enable proton, which in short is steam’s emulator or windows
- does not work because your gpu drivers did not install. This depends on distro and they should all have a guide on how to do it, but usually it is just a matter of installing something.
For programming, you will love your life because everything programming is way easier on Linux.
Unless you pay from the exchange’s wallet