I also have a coworker from Sri Lanka who speaks Japanese very fluently. He is much better at Japanese than I. His advice to me was to watch Japanese TV. He credits his fluency in Japanese to watching TV. Before he started watching lots of TV, he said used to have a hard time with Japanese.
There is also a comment on Steve's blog about watching TV that is not dubbed into your own language by Jamie.
I think one of the reasons that TV is such a great tool would be that you can get lots of input from TV. You don't need a native speaker or a teacher or a tutor. You can get as much input as you want from TV without relying on anyone else.
Steve, your point about TV programme dubbing is an important one which is often understated. I live in Holland, where nearly everyone speaks English. Kids are already functional well before the age when they receive formal English at school (not until 11 by the way). The reason is exposure, and by having a wealth of English-speaking programmes, films, cartoons etc. on TV that they like watching. i.e. Meaningful input.
My Dutch neighbours speak excellent English, not through schooling or of necessity through work, friends etc., but by what they watch on TV: English programmes and films (often using Dutch or even English subtitles). They have made this point themselves.
The situation is not the same in other European countries, such as France and Italy, where programme dubbing is commonplace. And the average standard of English in these countries is much lower, despite the fact that English is taught in schools.