There's a simple reason why so many software projects fail to deliver and become maintenance nightmares. It's because the coding is too complex. To quote Linus, "given enough eyeballs, all bugs are shallow". The big mistake is to express business logic in a 3GL, because too few eyeballs (i.e. only experts) can read it and the code rapidly becomes unmaintainable. SQL works so well because it occupies the middle ground where it can be read and understood by both domain experts and programmers. So let's have more DSLs.
I use it myself to code websites in such a way that no HTML or JS is visible, just English-like statements containing DOM and other objects, styles and a variety of everyday verbs. The problem is, being English-like it's not a closed vocabulary in the way most computer languages are, and although the architecture is designed for indefinite expansion I'm having trouble keeping up with my own ideas, which tend to run way ahead of what I can achieve. So I'd really like to interest other people in joining in and taking it forward. Such as:
Just vanilla JS; the structure is quite simple and everything outside the core is in plugin, independent modules. But there are potentially a lot of them. The general idea is you take a chunk of functionality - it could be as simple as setting an attribute or as complex as a Google Map - and devise a suitable script syntax to wrap it in. Then you code the wrapper. With practice it can be done in minutes or hours, not days. More skilled programmers can also offer advice on refactoring; something I'm sure there's plenty of scope for.
Only modest programming skills are needed; the key attribute is a clear view of what the site should do. The bigger the site, the better; EasyCoder excels at handling the needs of big single-page designs that pull in scripts and data on demand from a REST server and give a response time of a couple of seconds or less while doing so.
As above, but the aim being to show off the capabilities of the system and get it noticed.
It could do with a properly thought-out structure that's good for indefinite expansion. Something along the lines of JavaDoc, perhaps.
If you want to know more, contact details (email and Slack) are on the EasyCoder website:
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.