Also, a key aspect of a good programmer is experience. If kids start early say for example at age 12, by the time they are 18, they have 6 years experience already. Think about the things you can do with that much experience? It could lead to innovations in software far beyond what we see right now.
I'm a senior developer and I teach my methods to my colleagues all the time. It doesn't hurt me, but helps the team and the cause immensely. It makes going to work much more enjoyable when everyone is on the same page and pushing each other.
I'm twenty-five years old. My wife and I have four cats, a home, two cars, and more than six figures of combined student loan debt.
I earn 75% of our total income as a Software Engineer. We can't survive on my wife's income alone and we don't have any family members to fall back on if times get tough.
So you, a senior web developer at JPC, might say "bah-humbug" to job security, but I, for the reasons listed above, do not.
We owned one car prior to university and took out an auto loan to get my wife her own car.
We work in opposite directions and we each have a commute time of ~20-25 minutes, so moving closer to her job would increase my commute time and moving closer to my job would increase hers.
Our schedules are too different to make carpooling a possibility anyway. Also, there's no way to get to either of our jobs using public transportation.
I'm not worried about job security. But I am excited about what armies of coders can invent.