brianwelsch wrote: until you've applied a concept several times, you won't really grok it. Exactly. I "know" C++, but can I sit down at the computer and compose a Windows program? Not a chance. It's not a hard language, but I need a handful of reference books and hours of trial and error programming to get one to work. When I did it for a living, programming was easy; so, for that matter, was electronics design. I had half a dozen languages I used regularly and several hundred electronic components I was intimately familiar with. Even a mediocre school will give him access to information, whether they teach it properly or not. It's up to the student to make the effort to become excellent, and that can be done almost anywhere. I've felt much better since I gave up hope.