using Uno to multiplex 200 common-cathode RGB LEDs, not sure about resistors

I'm a software developer by trade, so I'm sure I can manage enough abstraction to make things develop somewhat smoothly.

Well a lot of 'professional' software people I have known abstract things to such an extent that they don't work, this is because they assume that CPU cycles and memory are infinite. Embedded programming sometimes means you have to do things to save memory and increase speed that you would not consider on a desktop machine.

My favorite gripe is the multy levels of subroutines that in the end only return the number you sent it.