I come from a C# background, used to do programming to control all the low-level stuffs (microcontroller, and HW related stuffs). I just changed job and is required to learn programming Dynamics NAV. I have never worked with database-heavy application my whole life, so the whole learning experience has been quite frustrating for me.

Questions:

1. Any newbie friendly website so that I can learn C/AL from zero?
2. Any website that I can go to that has small projects that I can copy and learn, ala CodeProject? (Some of CodeProject stuffs are small enough for newbie learning, although some are quite huge..)
3. Any recommended books?
4. Any advice to help me on my learning?