It's fun when people assume a CS Degree means you are a developer. Practically all development is self-taught, a CS degree is only handy for those moments where you dig into some abstract theory, which in most development jobs hardly ever happens. You mostly spend (or waste) time on tools, frameworks and interaction (both with humans and other systems). Lots of common development is rather mundane compared to all the…
CS is more than abstract theory. It gives you a foundation that you otherwise are unlikely to get. Self-taught means learning things useful for your existing job or things you find interesting. I'm work almost exclusively on the frontend, but my CS degree gave me enough foundation that I'm fairly familiar with compilers (I wrote one in college for a required course). I don't necessarily enjoy writing compilers. But t…
I liked your initial point, but the argument weakens... People absolutely have learned all the above things (and very well), on their own, outside of a CS degree, and I bet you could've.