I feel like a big part of that is how programming is taught. There's almost a hatred of foundational skills, and an emphasis on having to figure out everything yourself. Instead of emphasizing talent you just wind up with a bunch of mediocre programmers who put the time in to brute force it and can't do anything once they burn out.