Plus to dive into the code you have to have a reasonable idea where to start to look for your problem which can also be a barrier in a complicated project where the comments / guides / documentation is in English.
Just makes their jobs that much harder.
Westerners, who may have started programming out of personal interest, may simply spend more time after work building up social communities to solve problems they have at work.
In Japan programming may simply be viewed more as "a salary job" they could qualify for, filled with lots of uninspired folks who just want to grind through their shift and get the hell out of there at the end of the day.
At least that's how my friends who've worked in both Japanese and Western companies describe the situation.
Um, have you ever been to the US? It's like that here too.
I am from Austria and we need to do lots of coursework in English in economics because all the literature is English and you can't work in the profession without a good command of the language.
The biggest difference between myself and a Japanese programmer is that if I run into a problem I can jump on to Google and find huge amounts of English information (docs, forums, stackoverflow etc.) to help me solve it.
Japanese programmers who are not pretty damn fluent in English cannot do this and this really is a brick wall.
I haven't seen much NIH syndrome, mainly it is because they cannot effectively search the net libraries / apps that they can use; again due to the language barrier.
So in the end they make their own.