why cant companies give development hands on practice by making trainees work on some opensource project. That way the trainees can get to see some real community approved style of coding. That will improve their coding skills and technique also. Its like the trainees having the whole opensource community as mentors.. till they are ready to work on internal projects that is. After which it depends on the company policy whatever.
Steven