It is fairly common that microcontroller output pins can sink more current in the low state than they can source in the high state.  As a result, designers got used to putting LEDs, or anything else that needs a high (for a microcontroller pin) current between power and the pin instead of between ground and the pin.  When the micro has symmetric source/sink capability, this is not necessary, but does no harm either.

When the LED requires more current than a digital output can handle, or at least more than you want to let it handle, you need to use a external transistor.  A low side switch is the natural and simple choice.  The LED is then connected between power and this transistor.