Even I had started to work without knowling much of Java. I had joined a class for Java after I started working. It really did help me a lot as most of the fundamentals got really clear. But it helped me because I was already working and my perspective while going to the class was purely learning and not just getting the certificate!
But let me warn you of the following:
1. Is he really ready to put in the effort to work and then goto the class for 2 hrs per day regularly?
2. Is he really serious about learning by going to the class or just want to console himself that he is doing the class and things will get better?
3. Find the right institute. Majority of them are pure crap. Even if you show sincerity most of them are unprofessional. I had to change almost 3 classes before I found the right one.
so unless he knows exactly what he wants and what he is doing only then should he go for this option.
It gets really difficult if you are working the whole day and then you go for the classes 8 to 10pm at night after work and again to work the next day! It is like crazy but it is all worth the pain if he is really willing to put in the efforts in the name of Java.
Also, dont expect that someone will be teaching you everything in Java. You need to be very proactive, catch hold of some good knowledged instructor and work in the right direction.
I personally think learning while you are working is always advantageous, as you tend to relate your tasks with the knowledge you are gaining. It is a great learning curve in itself!
The feeling you get while working on something and then when it clicks you that Ohh.. Yes! this is what I learnt in the class is just amazing!!!
Also there are many concepts that you wont learn by just working. It is a great advantage to know basic fundamentals of Java inside out as it will provide you a very strong foundation.
There are lots of ifs and buts in doing all this but in my case it worked wonders!
Cheers!
[ April 05, 2007: Message edited by: Rohit Nath ]