I'm seriously considering getting into DC development — my friends have been urging me to get into some kind of programming, and I heard the DC had a very forgiving architecture for developers, at least at the time. But when it comes to programming, I've been living under a rock. What baselines should I focus on first? What language should I learn? Etc.

And how feasible is testing in an emulator to preserve CDs? Am I right when I guess that, if it works in the less capable nullDC, it'll definitely work on a real console?