In your article you mention that you'll discuss it another time, but I'm really curious how you separate the triggers without XInput?
As I understood it, robust trigger support is one of the main reason to use XInput.
(For those that don't know: The XBox360 controller L and R triggers share the same Axis, L moving the axis to -100% with R moving to +100%. If you press both at the same time, the two will cancel each other out, and the axis will go back to 0%, which appears like they are both not pressed. XInput separates these two for you, but does it behind the scenes.)