On 08/31/2018 07:47 PM, Jonathan M Davis wrote:

However, many
teachers really aren't great programmers. They aren't necessarily bad
programmers, but unless they spent a bunch of time in industry before
teaching, odds are that they don't have all of the software engineering
skills that the students are going to need once they get into the field. And
most courses aren't designed to teach students the practical skills.
This is why we really should bring back the ancient practice of apprenticeship, that we've mostly gotten away from.

Doesn't have to be identical to the old system in every detail, but who better to teach XYZ to members a new generation than those who ARE experts at XYZ.

Sure, teaching in and of itself is a skill, and not every domain expert is a good teacher. But like any skill, it can be learned. And after all: Who really stands a better chance at passing on expertise?:

A. Someone who already has the expertise, but isn't an expert in teaching.

B. Someone who is an expert at teaching, but doesn't posses what's being taught anyway.

Hint: No matter how good of a teacher you are, you can't teach what you don't know.

Heck, if all else fails, pair up domain experts WITH teaching experts! No need for any jacks-of-all-trades: When people become domain experts, just "apprentice" them in a secondary skill: Teaching their domain.

Sounds a heck of a lot better to me than the ridiculous current strategy of: Separate the entire population into "theory" (ie, Academia) and "practical" (ie, Industry) even though it's obvious that the *combination* of theory and practical is essential for any good work on either side. Have only the "theory" people do all the teaching for the next generation of BOTH "theory" and "practical" folks. Students then gain the "practical" side from...what, the freaking ether???? From the industry which doesn't care about quality, only profit??? From the "theory" folk that are never taught the "practical"??? From where, out of a magical freaking hat?!?!?

Reply via email to