Recently in the UK, they have started a new 'programming' initiative for schools. The basic idea is that programming should become something that all school students study since computers and IT are so common now, that most of us might well benefit from this.
It's all great but in the great tradition of governments doing a $50 job for $5M, they have decided that loads of teachers need to be trained accordingly and this requires however many hundred specialists to teach the teachers. Clearly, the teachers were not employed for their programming skills and the idea that they will be able to adequately teach programming to school children after a few days of training is laughable. It's like expecting them to teach medical science after a week in a hospital!
What seems to be really lacking is schools capitalising on the skills of local industry and/or parents of children at the school who are experts in a whole range of subjects, not limited to programming. When was the last time you heard of a school inviting a bank employee in to explain mortgages to students or an engineer to talk about how power generation works. These would be really interesting and more importantly, they would provide the vast expertise of industry directly into schools, allowing children to ask all manner of questions and get honest informed answers, something they could clearly not expect from a teacher teaching something second-hand. Most of these people would do it for free, some would even be able to commit to a regular weekly slot as part of an ongoing programme.
I'm sure some schools do this but it doesn't seem to be very common. Perhaps it is just easier to not get people in from outside, perhaps teachers have an ego thing where a non-teacher couldn't possibly be allowed to teach a subject to a class. Whatever the reason, with all the social-networking that occurs nowadays, it should take 10 seconds for a school to find a relevant expert to teach whatever they need teaching and make it happen. Make it happen!