Self-Taught Programmers vs CS-Educated Programmers
The one difference I see is that CS Educated Programmers that went to good schools took a lot of math.I have met very few self-taught programmers that also happen to be self-taught mathematicians.  This limits the type of code you can write.Linear algebra is required to deeply understand computer graphics.Calculus is required anywhere you have signal processing.  This means audio and video editing.Physics is required for simulation software and video games.Discrete and combinatorial math is required in systems software like databases.You're just not going to hit these issues if what you do all day is glue Javascript and Ruby together.