But - I'm not really sure it's necessary in software. The skillset can be entirely self taught if you're intelligent enough. There are an abundance of resources and all it requires is a terminal. Good software engineering principles can be covered in a 200 page book.
You can't say the same for trades like plumber, electrician, etc. which still use apprenticeships.
Sure you can be self taught in plumbing. Overall we are just much less accepting of big screw ups with plumbing and electricity than we are with most software.
I'm skeptical of this. There is an extremely large barrier to entry in terms of the cost of the supplies and hardware. And how would you even begin to realistically get practice/experience working on and solving the countless issues plumbers are responsible for, all in different contexts with different setups? And then there's also a safety issue - plenty of environments and tasks plumbers are responsible for can be quite dangerous. Danger and self-learning isn't entirely a non-starter, but it's certainly an part of the 'balance' here.
By contrast software just isn't comparable at all. You can sit at your desk, pay $0, and the only limitations to your experience is the amount of time you're willing to dedicate.
Sorry, but in no way can you equate an electrical apprenticeship with being self taught. The variety and complete insanity of wiring in different installations requires wide exposure (under an experienced mentor) to be a competent electrician.
But - I'm not really sure it's necessary in software. The skillset can be entirely self taught if you're intelligent enough. There are an abundance of resources and all it requires is a terminal. Good software engineering principles can be covered in a 200 page book.
You can't say the same for trades like plumber, electrician, etc. which still use apprenticeships.