Outside of the academic track, most work in CS or IT, etc is a craft, a trade skill. Apprenticeship programs are more appropriate and if you squint at advice directed to youths interested in a career in IT, it all sounds like roll-your-own apprenticeship programs.
I often catch flack for this view, but I think it's that crafts and trades are considered lower status. Anyone doing the work to keep things running and improving them where they can is doing honest labor.
Here in Germany it wouldn't get you flack, there's several vocational tracks for programmers and I've worked with a lot of people who didn't go through academia and they were just as good at writing software, sometimes better than peers simply because they did it for longer professionally.
Academic CS programs make sense for people who want to go into research, the sciences, or theory heavy application, but I never understood the inflated college programs across the pond.
Germany pulled off a vocational school miracle that North America still can’t figure out. Here (in Canada and the U.S.), skilled trades workers are heavily looked down upon as low status.
Indeed, if you actually talk to people working in a lot of them you’ll hear stories about alcoholics and drug addicts who barely manage to show up to work. You’ll have 1-2 highly experienced, highly skilled trades workers who can get all the work done, and the rest are useless trouble-makers.
This perception bleeds over into the public eye and the entire field is treated with disdain. Even higher level trades like electricians are caught in it, and so it’s seen that going to vocational school is low status so there must be something wrong with you. The problem is entirely cultural!
In Germany it depends on how you look at it, at the more conservative / "traditional" companies (which is still a lot of them, including almost everything I hear about outside Berlin/Hamburg) programmers without degrees aren't looked down on relative to programmers with degrees, but programmers as a whole are looked down on compared to even the lowest managers (who probably have a postgraduate degree), and aren't trusted to do anything themselves. It's more that degrees aren't valued at all for programmers, than a widespread belief that someone without a degree can still make good decisions.
After passing the CPA exam, I had to work under a licensed CPA for a year in order to be issued my license. I felt that most of what I learned that applies to real-world issues was acquired while working during that year.
The CPA exam was a mix of practical information and a bit of unnecessary gatekeeping in my opinion. I felt that I had already learned most of that information during my undergrad degree and that my graduate degree was overkill. Having to spend more time studying for the exam after two degrees and then spend a year working under someone was too much in total. I believe that accounting is a craft that can be learned while working under a master. I feel similar about my software engineering career now.
My experience with all of the credentials to become a CPA is a big reason why I decided to self-teach computer science rather than pursuing another degree. I recognized that if I studied the fundamentals and then worked underneath someone highly skilled, I would be able to build up my skill set as a developer. So far I think that direction has worked out.
I often catch flack for this view, but I think it's that crafts and trades are considered lower status. Anyone doing the work to keep things running and improving them where they can is doing honest labor.