Having taught at a coding bootcamp, I can tell you that some people will never in their lives be capable of writing functional software. People exist, with college degrees, who cannot in months of lessons, understand the idea of a variable.<p>Not every person in the world needs to or is capable of writing software. Probably a majority are given the right exposure but there's a big difference between being able to write any piece of code and creating business value with code.
My experience is that most office workers are perfectly capable of writing software, especially if they have access to some basic training material and documentation.<p>However, most office workers would rather not write software and think that the whole pay-someone-else-to-do-it paradigm is great.
I caught an interesting podcast this morning, about an artist who set out to create her own AI chatbot, with zero programming experience. She went to "a magical place called Github", where the software was provided along with a fair bit of assistance. The input was conversations with her family, which were presumably transcribed somehow. It's unclear how much programming she learned, but she did say that she spent 18 months "tweaking the algorithm".<p>She did figure out, one way or another, how to cobble together a microphone, speaker, and computer to make a talking chatbot. (Along with a 3D printed case to hold it.)<p>It wasn't especially good, but I found it remarkable that she was able to put all that together. I'm a professional programmer and that project would take me a while to pull off, just because I'd have to learn the specific technologies. I've actually wanted to do a Shakespeare-generating bot for a while, which should be an introductory project but is rather daunting to begin.<p>I really like the idea of more people programming. Most of what I do isn't difficult. In particular, I want to see less of a gap between "the programmers" and "the people who actually do stuff". As a programmer, perhaps my greatest skill is not the languages and frameworks and debugging tactics, but my ability to talk to the people who need stuff and quickly learn enough of their needs to help. It would be even better if they could do a lot of it themselves, and bring me in for the hard parts.
I'm semi-technical & worked mostly in non dev roles. I've been coding apps all the time in my previous jobs. Mostly this was done in JIRA or Excel - creating a workflow, validating new data that comes in. Easy repetitive things that frustrated everyone on the team & myself the most. Now I am helping other to do this as the co-founder of a no-code SaaS (Chartmat). the amount of people who love to build without depending on devs is mind-blowing. I'm looking forward to this next decade in which building websites, dashboards and apps becomes more of a commodity that everyone can do and devs move on to more complex and critical functions such as writing smart contract & scaling apps.
Assuming you want to use Python or JavaScript why not ?<p>It's much safer than working on your own car.<p>Hell it's even safer than fixing a bike.<p>I would never impose this on people though. Many people just don't want to do it.
Then the "geek elite" would spend more time fixing things they should have learned before starting. Devs who have fixed general office worker's abominations of Microsoft Access and turned them into proper apps would agree. This isn't to belittle the creations, just an observation. The work the normal office workers build had value to the business or their managers wouldn't have let them build it. The issue comes in risk to the business when best practices are unknown and not followed. When the Access app collapses under its own weight is often when "geek elite" are summoned to pull the team's mission critical homegrown application out of the fire, and the expectations are often not matched when they build something the wrong way it takes a few days and it might take a few sprints to "do it right." The solution is probably to meet in the middle and take the apps made by the regular office workers and migrate the ones with value as soon as possible. Accruing technical debt is cheaper and it can be unpaid until disaster strikes so that is often the choice of management especially if the environment or relationship between front line office workers and internal app developers is strained.
Quite a few "non-programmer" workers do indeed write software already, and have been doing so for decades now. The only trouble is that said software exists in the form of Excel spreadsheets and Access databases ;)<p>It'd be interesting to see such "programming-but-it-doesn't-really-feel-like-programming" environments get generalized a bit into something that can produce proper general-purpose applications (preferably in a form that's actually friendly to sensible version control systems).
<p><pre><code> The interface may look cluttered: the landing
page jams in 150 buttons and a local-news ticker
</code></pre>
Apps like this aren't new - huge chunks of the business world have been running on Visual Basic / Delphi / etc monstrosities with the same design sensibility for decades.
I think the next big thing in software is going to be that almost every office worker will start writing basic software. Maybe in a python like language.<p>People spend a lot of time and effort to do simple repetitive stuff that anybody can do with a 10 line python script. They don't do it because nobody has told them it's that easy.<p>30-40 years ago, an average office worker wouldn't use a word processor for typing out documents. They would have probably used a typewriter or written it by hand. Now everybody uses Microsoft Word. And they use it well, without major issues.<p>The same thing will happen to python or another language like it.