This is what I do (pro baker):
Whip 215g egg whites with 150g caster sugar until just off stiff peaks - nice and glossy but the peak is just dropping over a little bit (10 mins ish if using a machine).
Mix together 350g sifted icing sugar and 250g sifted ground almonds.
Add almond mix to egg mix: no more than 30 stirs and they need to be big, swooping folds around the mix, not annoying little ineffective stirs. Over-whip the eggs a bit to allow for you knocking out some air when you mix in the almonds.
You know you have the right consistency when you slap the surface of the mixture and it slowly smooths out, not too fast and not too slow... You really need to see a demo of the perfect consistency, it's so hard to explain! If it's too thin (smooths out too quick), there's nothing you can do. If too thick, beat some air out.
Add gel colour before you start mixing.
Pipe onto lined trays.
Tap trays hard on a surface a few times to bring air bubbles to surface - otherwise your finished shells will have holes in.
Leave the macaron shells to form a skin - 30 mins to 2hrs depending on the conditions. A hot kitchen won't work, you need somewhere with a through-breeze. They're ready when they are not sticky when you lightly touch the surface with your finger. Nothing should come off on your finger and it should look like you never touched the macaron. If you skip this stage the shells will have splits in them when baked.
Bake for 8-12 mins at 140C fan depending on your oven.
Remove while meringues still slightly sticking to tray (try lifting one off with a palette knife), but hold their shape. Like all eggs they'll keep cooking once you remove them from the heat. Once they've cooked they should come away from the paper easily and in one piece :)