Ask HN: How to reconcile “teach everyone to code” and “only hire the top 1%”?
Software engineering is genuinely hard. There&#x27;s no need to add elitism to it. This choice of vocation is already highly selective towards everyone who tries to enter that field.<p>I&#x27;ll share some numbers from my academic days pursuing a CS course. From an average group of say 100 students to graduate with a CS degree only about 3-4 actually had an aptitude to become a serious and wise professional. And even those would not necessarily take a programming job in the end. Some didn&#x27;t see good career perspectives in it. The rest of the group would come to a conclusion it&#x27;s just too hard and would spread out to whatever alternative jobs they can find, either IT-related or not.<p>The amount of computer-engineering talent is pretty constant and very low. You can encourage the general population to try it but that won&#x27;t accomplish anything. Anyone with genuine abilities and an inclination towards this line of work already goes into that industry.<p>What is possible is that through inconsiderate encouragement of large masses to enter IT you eventually get crowds willing to perform unqualified tasks for pennies, like building trivial smartphone apps, performing WordPress installations etc. In fact, this already is a reality. I see people around me abandoning their careers and moving into IT. This is in part caused by the economic crisis in my country (Russia) which devalued salaries almost three times, and lately everyone&#x27;s been thinking about getting into IT to improve their earnings. I also see that people just stumble at the basics. As soon as they realize programming is not about dragging &amp; dropping objects in a visual editor and you have to actually perform some intensive thinking, people just give up that idea and quit.<p>Ultimately, it will just make it more difficult to distinguish a professional in a larger crowd, but it will not make his&#x2F;her services cheaper. In fact, it will probably cause more people to be burned by amateurs posing as professionals and eventually they&#x27;ll be more ready to pay the premium in order not to have to deal with amateurs and risk their projects ruined. Software engineering services will then become more expensive in general.<p>Software engineering is hard and will remain hard. The amount of talent will also remain pretty small and launching a thousand of new programming schools is not going to change that. Smart people don&#x27;t need any schools at all. For those who aren&#x27;t smart, schools won&#x27;t help them much.<p>As to what the end game might be, it&#x27;s just too early to say. The society is transforming into a different community. Right now it looks like people with average abilities will have tough times landing a job as those become automated and replaced by computer systems of some kind, whereas it will be easier for the unqualified folks and for the highly qualified ones. The middle might just see some very rough times. We&#x27;ll just have to wait and see which way it goes.