First thing for some one to get started on a project, I would suggest, keep a well documented project. Documentation, even though boring if long, should be kept as concise and as to the point, it could be
I have a python, java, C background. And mostly I prefer python. So let me put my examples in python
My python documentation is of such a format. choose a style which is followed strictly in your project.
"""
This program does so and so, a single line explanation
arg1 does so and so. arg2 acts on so and so. It returns a list of something
Detailed explanation of exceptions, process etc.
>>> code.samples
expected result
>>> code.samples.failed
traceback
...
SomeError
"""
Anyone with interest would start reading some sample codes, so this will be a good point to start, which explains what a function, class, or method does.
Next up.
Maintain a wiki, there are n number of wiki engines out there. For python, you can use moin-moin.
Thirdly,
For a newbie, it is hard to just put him stay, he would definitely bored, instead of boring trainings and all, you can just throw him into pair programming with one of the experts. This is an well tried formula in extreme programming. see wiki http://en.wikipedia.org/wiki/Pair_programming
Any newbie will learn faster, if he is explained some concepts in person, rather than him reading things from other written sources.
Lastly,
Put give a newbie some work to do, he can start on building tests for a program, he can compile the programs if you are using a compiled language(C/C++/Java). Let him, work on changing a functions while sticking to unittests.
These would be my two cents on getting a newbie started. Don't just put him into courses and trainings, let him work on the project, even if he tends to break stuff, let him work on his own copy.
Again, see that the newbie is really interested into programming, else all this will not work for him. I have seen some guys who just get onto projects, just to satisfy their personal agenda, and sometimes just jeopardize the project. Avoid such ppl.
Most of what I said, refer to an open source projects or community maintained projects, might not just be holding true for enterprise or corporate projects, which stick by their own rules. Always follow rules.