Dry.io Wants To Democratize Software Development Using AI (venturebeat.com)
An anonymous reader writes: We've seen companies big and small build everything from AI-driven developer tools to AI-powered developer environments. But what if instead of having AI merely help developers write code, it did all the heavy lifting? Dry.io, a developer playground that helps you write web apps using just a few lines of code, began accepting signups today for its first wave of external testing. The programmable software platform lets you set the parameters of what you want to build, "and the AI takes care of the rest."
Simple webapps are just barely software development. If your use case is this simple, Ruby on Rails pretty much does this already and you don't really need an experienced software developer involved. More AI buzzword crap.
The hard part isn't the coding, it's figuring out the boundaries of the problem. I have no doubt it can write it's slack alternative in 50 lines of code or a "social network" in 150 lines, but they'll be trivial examples that don't take into account the realities of complex software development.
This whole concept of ultra-high level was tried before with Visual Basic and Java and Scratch and other languages that promised to make programming accessible to everyone, the problem is that the *problems* are complex to understand. Most programmers that are capable of understanding edge cases and corner cases don't struggle so much with the language. On the other hand, people who start off programming and are struggling with the languages are likely going to have trouble with articulating the non-trivial edge cases. So for them, making the programming language faster and easier doesn't really solve the underlying problem.
It's nice to think about functions and objects as being "plug-and-play", of having square and circle and triangle connectors that only let you attach them certain ways. The reality of software development is that the glue interactions between modules are much more complex than that. You can do some tutorials and say 'oh that makes sense' or even build some trivial apps for yourself and gain false confidence, but as soon as you try to build a real world application you'll realize that hiding complexity doesn't remove the need for understanding complexity.
What's the point of software development anyhow? presumably to solve problems not to develop software.
Douglas Adams proposed the interface of the future would be a desk you work at trying to solve a problem. The computer would observe what you were doing, then write an algorithm to do it for you. At the time he meant this as a joke. But this is infact exactly the sort of problem that so-called Artifical Intelligence is getting good at. It's getting good at recognixing a start on something then completing it. For example deepFakes fills in a face into a removed face. Adobe's eraser removes defects and fills them back in. And combinatorial material ascience is having success in taking in some basic physics and examples of compounds that exhibit desired properties and then suggesting new molecules that might have similar properties.
AI is really crappy at figuring out what to do. It's really good at observing what you think is important then extrapolating that. Thus Douglas Adams desk interface is no long a joke concept.
How hard would it be to have a computer write a sorting algorithm just by watching someone sort numbers? It's plausible.
Some drink at the fountain of knowledge. Others just gargle.
People have been touting variations of this concept for decades, and it NEVER pans out.
You know what happens when you let "AI" do the "heavy lifting" of writing code?
You wind up with crap like Dreamweaver's garbage HTML code...
This MAY work for trivial, formulaic crap like CRUD coding, but for the 50% (minimum) of programming that requires coming up with something novel to address a unique situation? It's going to produce nothing but non-performant, fragile, unmaintainable garbage.
They make it sound like that's the easy part.