More and more I find that I can no longer assume that the developers and IT specialists I work with have any clue how to do their job.
The worst is when the only skill that people develop during a programming course is their skills at finding code on the web and disguising it as their own. At some point, it gets to the point that they even believe that they did it themselves. A while back I delegated a simple coding task to a senior computer science student that was part of my robotics team. It was a simple pattern-matching task, no big deal, maybe a few hundred lines of code or so. It took him about 3 months to get it done and what he delivered was clearly pieced together from 2 different sources, and still had the original authors' names in most of the source files. And of course, the code was completely inappropriate for the task given. And when I confronted him to those facts, he couldn't understand why I would say that he didn't do the work, but said that of course he didn't literally write the actual code himself, as he said "nobody does that anymore", some programmer he is. It never occurred to him that his programming courses were trying teach him to be able to write the actual code himself, he thought the point was to have a vague understanding of it and be able to cobble up code from the web to solve his problem, afterall that's all he ever had to do during his courses. And, of course, I had to write that code myself in a few hours at the last minute.
I also agree. When I was working on a team several years ago, I was senior member and young people was ask me how to do this or that. My response: RTFM! and use google to do research. If they still couldn't figure it out then I'd help them. It's surprising how much we can learn by reading manuals, learned a lot more than I had intended.
I totally agree.
I sometimes get a disparaging feeling that the coming generation (in high-school and undergrad today) has a bit of a generalized feeling that a lot of things (i.e., technologies) reside in black boxes labeled "magic" and it's forbidden to look inside. But at the same time, they want to work on or be experts about those very same things that they are not really willing to seriously look into. You hand them big manuals or spec-sheets, or any significant chunk of code, and they panic and freeze and don't know where to begin or what to do. They seem to somehow think that older people had their knowledge beamed into their brains, and somehow they'll never get it, and the worst is when they don't even seem interested in seeing how you do it when they finally get you to do it for them (by trickery or a pressing deadline).
For example, you give a task to a novice, knowing that you could do it in 20-30 minutes, you given him a day to do it, just to make sure he has plenty of time to learn to do it himself, and ask specific questions about it, but because he knows you can do it in 20-30 minutes he thinks "what's the point of even trying", so he waits one day, then says he couldn't figure out how to do it, and so, you sit down and get it done quickly to be able to move on with the schedule. The only real delusion here is the novice thinking that he got the best of it as he didn't need to do or learn anything, what a fool. He missed an opportunity to learn a useful skill and/or to shine for his accomplishment, and you lost 20 minutes of your day (which you probably would have lost anyways at answering his questions if he had seriously tried to do it) and now, you know who not to hire or promote in the future. Who's the loser?