<story><title>Times are great for programmers now. How does it end?</title><url>https://vaghetti.dev/posts/times-are-great/</url></story><parent_chain><item><author>mrtksn</author><text>I think it ends with everyone becoming a developer.&lt;p&gt;Making machines do things will never end. However, the tools for making machines do things is evolving very quickly.&lt;p&gt;The general art of being a developer will continue to get specialized and at some point specialists at any field would be expected to be able to program their machines.&lt;p&gt;Very few people are learning how to run their servers and much more are moving into AWS type of infrastructure and “cloud literacy” has become a thing.&lt;p&gt;I would expect layers of abstraction to continue to build up and programming to become something like using spreadsheets to do your actual task.&lt;p&gt;Eventually, “true programming” will scale back to building these tools. It would be rather niche, very high skill serious engineering - an elite, hard to get in profession that continues to fetch high salaries. They probably will have some kind of association similar to the lawyers&amp;#x2F;doctors, the code they write will no longer tolerate bugs as a fact of life but they will be responsible as any other licensed professionals. Skipping unit test will land you in jail or very high fine due to malpractice if something goes wrong.</text></item></parent_chain><comment><author>HillRat</author><text>I think this tends to overestimate the amount of time folks who &lt;i&gt;aren&amp;#x27;t&lt;/i&gt; developers want to spend developing. Most spreadsheets, even of the complex variety, exist as steps in a chain of human decisions -- they basically replace notepaper and calculators. (Spreadsheets that act as inputs to software chains are usually created by developers.)&lt;p&gt;Having previously been involved in architecting and building enterprise low-code&amp;#x2F;no-code solutions, and then working as a strategy consultant thereafter (including partnering with other major low-code&amp;#x2F;no-code vendors), I can say that what the business wants to do is sketch out the rough plan of how a process works (with a couple of exception states) and have someone else go through not only the implementation, but the hard work of dealing with all the error states, data cleansing and ETL, deployment, and monitoring, while they get on with the hard work of actually doing their jobs. There just isn&amp;#x27;t an appetite for people to do two jobs at once.&lt;p&gt;What the article seems to miss is that companies are currently being much more aggressive in nearshoring work -- there&amp;#x27;s a huge boom in Mexico and LATAM development that&amp;#x27;s pushing up salaries there (as has happened in Eastern and Central European states). One thing that&amp;#x27;s distinct from the offshore boom is that, if you weren&amp;#x27;t a major consulting org, your offshore folks probably weren&amp;#x27;t colleagues, whereas with nearshore you&amp;#x27;re much more likely to see them integrated into the organization (again, due to TZ and the ability to fly someone in at the last minute for meetings). It&amp;#x27;ll be interesting to see what this does to the Mexican&amp;#x2F;LATAM economies -- Costa Rica, for example, with only $5mm people, punches &lt;i&gt;way&lt;/i&gt; above its weight in software services exports.</text></comment>
<story><title>Times are great for programmers now. How does it end?</title><url>https://vaghetti.dev/posts/times-are-great/</url></story><parent_chain><item><author>mrtksn</author><text>I think it ends with everyone becoming a developer.&lt;p&gt;Making machines do things will never end. However, the tools for making machines do things is evolving very quickly.&lt;p&gt;The general art of being a developer will continue to get specialized and at some point specialists at any field would be expected to be able to program their machines.&lt;p&gt;Very few people are learning how to run their servers and much more are moving into AWS type of infrastructure and “cloud literacy” has become a thing.&lt;p&gt;I would expect layers of abstraction to continue to build up and programming to become something like using spreadsheets to do your actual task.&lt;p&gt;Eventually, “true programming” will scale back to building these tools. It would be rather niche, very high skill serious engineering - an elite, hard to get in profession that continues to fetch high salaries. They probably will have some kind of association similar to the lawyers&amp;#x2F;doctors, the code they write will no longer tolerate bugs as a fact of life but they will be responsible as any other licensed professionals. Skipping unit test will land you in jail or very high fine due to malpractice if something goes wrong.</text></item></parent_chain><comment><author>JohnBooty</author><text>&lt;p&gt;&lt;pre&gt;&lt;code&gt;    I would expect layers of abstraction to continue 
    to build up and programming to become something 
    like using spreadsheets to do your actual task.
&lt;/code&gt;&lt;/pre&gt;
But in general, people have been saying this for 50+ years.&lt;p&gt;It hasn&amp;#x27;t happened yet for (at least) two reasons.&lt;p&gt;1. Increased demands on programmers have increased &lt;i&gt;at least as quickly&lt;/i&gt; as their productivity has skyrocketed.&lt;p&gt;2. Non-trivial systems will require some non-trivial encoding of business and data logic. You can simplify the tools all you like, but at some point the tools are no longer the limiting factor and some complex logic has got to be dictated to the dang computer, somehow, by somebody. It is then going to need to be tested and deployed. It is also going to have to be built in ways that are maintainable. Most programmers struggle with these things in 2022; we are nowhere near making this easy for laypeople. If anything I feel that infrastructure has gotten way more complicated in the last 10 years.&lt;p&gt;Something does need to change. The current situation is unsustainable, with programmers commanding insane salaries. At some point it becomes a limiting factor on the economy.&lt;p&gt;But our tools are decades away from being usable by non-programmers. I see no possible solution besides increasing the supply of programmers.</text></comment>