The Game Boy is simple enough because you can get away with a lot of inaccuracies and still see results. It's good for beginners since it teaches a number of fundamentals about game console emulation. It's a good starting point. The Game Gear/Sega Master System is also nice; somewhat simpler in other regards (like handling ROM reads).
I wouldn't recommend NES at first because there are plenty of tricky timing situations you need to get correct for many games to work, and plenty of edge cases that need to be addressed (Sprite 0 test hit or whatever it's called really messes up beginners). As your 2nd or 3rd emu project, you shouldn't have a lot of trouble with the NES. It's extremely well documented.
Some GB and SMS emu tutorials -> http://www.codeslinger.co.uk
As for getting involved with Dolphin specifically, you can do that without prior experience on other emulators, or without having made your own. Find an area you like, or a feature you want improved, then have at it. Choose something that really interests you, then study the problem carefully. If you want low-level work, there are always a bunch of feature requests that can be implemented, or you can clean up code, or try to find small optimizations to code structure.
Dolphin has a dev IRC channel (#dolphin-dev on Freenode.net), so ask around as much as you need to. Additionally, take a peek at Dolphin's GitHub and check out commits and pull requests just to see what's going on with the project at the moment. It may give you some inspiration or insight.
I wouldn't recommend NES at first because there are plenty of tricky timing situations you need to get correct for many games to work, and plenty of edge cases that need to be addressed (Sprite 0 test hit or whatever it's called really messes up beginners). As your 2nd or 3rd emu project, you shouldn't have a lot of trouble with the NES. It's extremely well documented.
Some GB and SMS emu tutorials -> http://www.codeslinger.co.uk
As for getting involved with Dolphin specifically, you can do that without prior experience on other emulators, or without having made your own. Find an area you like, or a feature you want improved, then have at it. Choose something that really interests you, then study the problem carefully. If you want low-level work, there are always a bunch of feature requests that can be implemented, or you can clean up code, or try to find small optimizations to code structure.
Dolphin has a dev IRC channel (#dolphin-dev on Freenode.net), so ask around as much as you need to. Additionally, take a peek at Dolphin's GitHub and check out commits and pull requests just to see what's going on with the project at the moment. It may give you some inspiration or insight.

