Comment by shagie
3 years ago
They typically also require 1000-2000 hours (over the course of the entire degree) of instruction time in things relating to software development. Part of that is homework and the practice of the craft of software development.
One of the key things that self taught developers miss is the instruction and review of the code. You write code differently if you're going to be graded or if its a throw away script.
In theory, job code that is going to last for more than a run should be written closer to the rigor of the graded code while people who have self taught have never had their code reviewed in their instructional period and tend to (not always, but tend to) write code that wouldn't stand up as well to review.
There are plenty of graduates who don't write code that stands up to review either... but there is a "you have spent a few hundred hours writing code and had it graded, and changed how you write code to get a better grade."
For a person who comes into a CS degree program without experience at coding, and they do their homework, I tend to believe that they will have code that stands up better to review and fewer bad habits than someone who followed a self taught progression.
As a self-taught programmer, I tend to be pretty self-conscious about my code quality for precisely this reason. As such, I’ve never had issues on this front.
If you go to school or learn by yourself you are always self taught.
The quality of reviewable code from a cs student is not surprisingly not great but languages like python force some standards.
Neither prepare a student like a community college. Usually the most successful group in the job market.