The real enemy is latency. Physical switches that trigger an IRQ directly to be handled by the program within microseconds would be ideal for human gaming (edit: or directly reading hardware registers). Everything else is just another weak option, pretending to be a gaming system. Also while I'm on the topic, F microsoft for still preventing me from developing software for their system independently.