I agree whole heartily, and turning everyone into a programmer is a project I have been working on starting as recent as a few months ago. Not just make another tool or programming language, but rethinking the nature of programming and the nature of language itself.
While I would love to talk in detail about what I am working on, as anyone who is passionate about their project would naturally want to do; I will refrain from going into details until I have a version of my project that I can demo and copyright. But what I will say as to what it would take to make a universal programming language possible (things my project have achieved so far) include: 1 to be both intuitive and powerful, 2 allow for dynamic top down creation and editing, and 3 to be painless to transition to and universally supported.
When I say a universal language has to be both intuitive and powerful, I am saying, something (such as my current project) should be able to handle natural language (as Scott S. warned to be probably the slowest aspect of any language to be adopted), requiring nothing more than a single power point slide example to learn the language, and with only a few commands, do what took 100+ lines of code could do with other languages. I find something that helps with making a language more powerful is to make the language a top down language, something that allows you do design and sculpt ideas with, hot swapping parts to test out different ideas, rather than slowly build up a foundation and tools to create your ideas.
A major concern would be, not only developing a powerful language, but having so that it is painless to integrate. The less BS it takes to get up and running, the less reason people and companies have not to adopt a superior language. It should be a single download, run on any operating system on any device, and still allow veterans to continue to use the other tools they are comfortable with. Anyone who is interested, skilled or not with programming, should be able to hear about it, and after a quick search and download be able to make a program within the first 15 minutes of first hearing the name. Being able to capture peoples inspiration at the peak of their initial interest may be the key to launching a new language to the top of the charts, for both programmers and non programmers. While this seems unrealistic, it is something I have so far managed to handle well with my project (and is the primary reason I will not release any details until I have a version I can copyright).
After that, I guess when everyone is a developer, it would be more like everyone’s an artist rather than a designer, and since the origin of my project was actually me working on a custom game engine, I would expect one reason people would start using such power (to develop) would be to create things to share with others, such as small game projects. I have a friend who wants to make a new rpg system and I am hoping my language will be the tool they’ve been looking for to help them make their idea come to reality.
Some times thing (such as cooking) is both a science and an art. It’s a science because we have to figure out what makes something good or bad. It’s an art when after we learn the science and the rules, we then know how much free room we have and what rules can be bent or broken to allow for room for creativity. A skilled programmer can become an artist while others are still stuck at the science stage of gaining skills with programming. If my idea of a universal language is as powerful and intuitive as I think it is, and top down enough that not even having a technically oriented mindset is needed, then the science stage can be mostly skipped for most people.
Building on top of the idea that future devs may be more like artist than engineers, one thing I am working towards is embedded compiling. Essentially, a built in command line found in some games. In order to allow for powerful user input and control should game devs allow it. Mostly useful in RPG games that need to be flexible, be it table top or a vr game such as described in the novel/manga/anime series Overlord, but to be powerful it would have to use the same universal language system as what was utilized to create the game.
Can you tell you managed to start a topic I have an invested interest in? ;D
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.