Dry.io Wants To Democratize Software Development Using AI (venturebeat.com) 122
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."
Not Really Software Development (Score:2, Insightful)
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.
Re: Not Really Software Development (Score:1, Funny)
Millennials need job security too, you asshat.
Re: (Score:3)
Ironically Millennials are in a much better position than you aging dinosaur-juice boomers and your coal mines and dollar store greeters
That's kind of obvious considering their lifespans.
Re: (Score:2)
Boomers lived the high life and are enjoying old age. You'll get none of that AND then old age. Enjoy living your good years in poverty, kid.
Exactly. "Push all the costs onto the next generation" only works once. We won. Millennials lost. We just need to make sure they earn enough to pay for our social security checks.
Re: Not Really Software Development (Score:5, Insightful)
Boomers lived the high life and are enjoying old age. You'll get none of that AND then old age. Enjoy living your good years in poverty, kid.
Exactly. "Push all the costs onto the next generation" only works once. We won. Millennials lost. We just need to make sure they earn enough to pay for our social security checks.
Kinda funny, kinda not. When My father passed away (part of "The Greatest Generation") he had a startling amount of money willed to me. I wish he had spent more on himself. But he never made more than me - even at my first job.
But when I entered the workforce, I was bombarded by the same thing - those old folks screwed up the world, there's no use in saving for retirement, because you won't be able to retire. The cancer on retirement was inflation then. Same old, same old with inflation and the old folks destroying the world. Whining about no possibility of retirement even back in the early 1970's.
Then he taught me something. "There will always be people claiming you can't save enough for retirement. But you'll be getting old before you know it, and if you haven't saved, your retirement will stink. And you will retire if your employer says so."
So many of my friends, some who made more than me, didn't heed that advice, and still can't retire. Meanwhile, I retired early, on what I was making while working.
If you plan on using SS as anything other than walking around money, you've already lost.
So the best advice I can give millenials is "listening to the people who say you can never retire will guarantee that you won't be able to retire.
Re: (Score:2)
In the 80s we started moving away from saving and into investment, particularly in property. People view their property as their retirement fund. Sell it for a nice profit, downsize and no need to have a really good pension.
Of course investment is much more risky than saving. Governments won't let property prices fall too much because it would destroy millions of people's retirement funds.
Meanwhile the younger ones are spending all their money on rent and mortgages. They can't save much. In fact they only w
Re: Not Really Software Development (Score:2)
Re: Not Really Software Development (Score:2)
Re: Not Really Software Development (Score:2)
maybe it's problem solving (Score:5, Insightful)
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.
42 (Score:2)
Also noted the common failing that you get what you ask for not what you want, which AI has made even more relevant than it was before
Re: maybe it's problem solving (Score:2)
Re: (Score:1)
How hard would it be to have a computer write a sorting algorithm just by watching someone sort numbers?
Sir, I think you just figured out how to benchmark their concept.
Er, wot? (Score:1)
"Founded in April 2018, Dry.io has not raised any money" - Shouldn't that be kind of a red flag or something? Maybe they should let the AI run the business side too?
Re:Er, wot? (Score:4, Interesting)
"Founded in April 2018, Dry.io has not raised any money" - Shouldn't that be kind of a red flag or something?
No, it is not a red flag. Most companies should not need to "raise" (borrow) money to stay in business.
When a company funds growth from their own revenue stream, that is good, not bad.
I'm not holding my breath..... (Score:5, Informative)
Re: (Score:1)
Same her. Actually it has gotten somewhat worse. It used to be "Start project, write software, done...".
Now it's "Start project, decide framework, get framework set up install all libraries, write software, done" most of the time.
Re: (Score:1)
For custom CRUD apps, what used to take one hybrid programmer/analyst in the late 90's with desktop IDE's now often takes 4x the staff. It's a lot of cross-module (re) wiring-together busywork.
Sure, the Web made deployment (mostly) easier, but made development harder. And, MS has improved auto-deployment of Windows apps such that it's almost seamless.
Many shops got fairly close to the 90's with MS Web Forms, but then got spooked MS was going to pull the plug like it did with VB6, leaving them without a migr
Re: (Score:1)
Well, I agree that if one settles on a particular set of conventions, R-on-R can eventually be tuned to be productive, but it takes longer to get to that stage.
Re: (Score:2)
If my memory isn't failing with age, people have been saying that for a lot longer than that.
Re: (Score:2)
Re: (Score:2)
Dude, I heard about pocket computing for the first 3 decades of my life, and then, as if overnight, it was here.
Re: I'm not holding my breath..... (Score:3)
Only a matter of time (Score:2, Informative)
I've been coding for 30 years, and for the last 5 years I could see this coming. Recently I've been telling people that there is maybe 2 more years left in this field before the door starts to close. Some types of work will continue, but the overall era of throwing rooms full of coders at software will have ended. Surprised it took this long; much of my work for the last 10 years has been a process of cut/paste from my earlier work, or just Goolge a question, follow a link to Stackoverflow, read a few posts
Re: (Score:2)
...much of my work for the last 10 years has been a process of cut/paste from my earlier work, or just Goolge a question, follow a link to Stackoverflow, read a few posts for 10 minutes, and only then copy/paste.
Huh, I hate to say it, but it sounds like you really should not have been employed for the past 10 years.
If I wrote code that way I would have for sure been fired LONG ago...
Re: (Score:2)
Not to mention the copyright implications of re-using code willy nilly like this. That's just screaming for a lawsuit...
Copyright issues, security issues(!), structural issues, efficiency/bloat/spaghetti issues, orphaned crap laying around (that the Copypasta Coder is not experienced enough to know whether to pitch or keep) issues, (remote but still) potential for patent issues...
Depending on how much and how easy it is to decompile/examine, it's kinda ugly from damned near every angle, really. But then, a lot of it does depend on the skill level of the guy copying all this stuff...
Okay for little scripting crap I guess, but
Re: (Score:2)
...much of my work for the last 10 years has been a process of cut/paste from my earlier work, or just Goolge a question, follow a link to Stackoverflow, read a few posts for 10 minutes, and only then copy/paste.
Huh, I hate to say it, but it sounds like you really should not have been employed for the past 10 years.
If I wrote code that way I would have for sure been fired LONG ago...
Rubbish. 90% of all coding these days is plumbing libraries. Computers have gotten so fast that glue code now is not inefficient. While at the same time big data wrangling, and numerical optimization and network management have become so complex it's literally dangerous to role your own. Much better to borrow code that has been demonstrated to work well and adapt it.
This is not to say that research algorithmic development, or scaling of research algorithms does require artisanal coding. But THAT is tha
Re: (Score:2)
if I should mulitply by 2 or add x+x
Neither, you should shift left by one.
Re: (Score:2)
Not if you're using floats. Even if you managed not to mess up the exponent, you're causing a lack of precision.
Re: (Score:2)
I agree!
Re: (Score:2)
Computers have gotten so fast that glue code now is not inefficient.
You realize efficiency is not the same thing as out right speed right? Something can be wildly inefficient and still run fast through brute force. And most new software falls into that category. I'm reminded of the idiotic re-implementation of Win95 in JS. They took an OS that ran well on a 32bit 33mhz single core, in order scalar processor and 8 megs of single data rate memory on a 32 bit data bus and now requires a 64bit multicore processor and a few gigs of ram once you factor in everything running benea
Re: (Score:2)
First gen is reference code. THen for a while people hack it for speed. Then some saint refactors it to generalize the issues that cause speed problems. And then the refactorization allows a consistent acceleration.
Re: (Score:2)
If I wrote code that way I would have for sure been fired LONG ago...
Fired for code reuse? Programmers get paid for solving problems, not for reinventing wheels.
Professors want to see original work. Employers prefer plagiarism.
Re: (Score:2)
read a few posts for 10 minutes
So you spent 10 minutes doing some VERY high level discrimination to determine, in the context of the problem as understood by your brain, which already written solution fits your particular problem
and only then copy
If you copied it, somebody else wrote it in the first place.
Step one is a really, really big deal. The copied code isn't too small a deal either.
Re: (Score:3)
Doubtful you are a real developer, but an AI can't even do what you describe.
Re: (Score:2)
Re: (Score:2)
You must have been incredibly lucky or haven't challenged yourself.
Easily half of my programming career has been spent understanding existing code (ie. not my own) as part of reimplementing it in another language or on top of another set of libraries/frameworks. Two-thirds would be writing code that is specific to the problem at hand (ie. no solution would be found by Googling). Maybe one-tenth of the problems I see can be solved with heavy inspiration from a search.
But I do see the writing on the wall
Not sure about that (Score:2)
I'm a big proponent of AI myself, but I think it simply shift what work gets done - that is to say, there will still be a lot of programmer jobs, but they will be more about directly higher level concepts than lower level programming we are used to...
But even with that, two years sound really optimistic for taking over programming, because there is such. large mash-mash of things it could possibly help with.
I think we'll have real honest-to-goodness self driving cars running around the world long before we
For trivial example cases, maybe (Score:2, Insightful)
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 co
Re: (Score:2)
A distinction should be made between easy to learn and easy to use. Easy to learn means the learning curve to decent productivity will be shorter. Easier to use generally means it's less hand and eye movements to get what you want, although it may take longer to learn.
Granted, the terms are often commingled, but I seperate them here at least as a working definition.
To some extent one can achieve both by making the language or tool closer to the domain. The tool's objects/parts then are conceptually closer t
Re: (Score:2)
A distinction should be made between easy to learn and easy to use.
Not always, but a lot of the time, these are contradictory goals.
In Other News (Score:2)
I want to cure world hunger, I have a hand-wavy idea about giving food to hungry people.
Maybe we should save news articles until people actually accomplish something instead of wanting to?
Re: (Score:2)
...but how then are they going to Slashvertise their next funding round??
Re: (Score:2)
Oh, Lordy (Score:4, Insightful)
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.
Re: (Score:2)
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...
And when you let a compiler generate assembly, you end up with something an assembly programmer might regard as crap as well. But since you're not the consumer of the result, who cares?
It's going to produce nothing but non-performant, fragile, unmaintainable garbage.
Yep, and the solution is to re-generate the results from the inputs. Just like with any other toolchain.
Re: (Score:2)
...But since you're not the consumer of the result, who cares?
False assumption on your part. Being responsible for maintaining the end result DOES make me the consumer, which means I do have a vested interest in a tool that creates a readable and maintainable product.
Yep, and the solution is to re-generate the results from the inputs. Just like with any other toolchain.
Which only ever works properly if the problem you are working on is one of the few things the toolchain author was able to predict in advance (so again, possibly usable for CRUD coding). The minute you need to write code that the author was not able to predict you would need to write in advance, the whole
Re: (Score:2)
Being responsible for maintaining the end result DOES make me the consumer, which means I do have a vested interest in a tool that creates a readable and maintainable product.
You're the guy who maintains C programs by editing binaries in a hex editor?
Which only ever works properly if the problem you are working on is one of the few things the toolchain author was able to predict in advance (so again, possibly usable for CRUD coding). Better to just write the code yourself the first time around than risk getting "locked in" to a toolchain that is going to cost you more in the long run than you get from the short-term benefits.
I actually happen to use Lisp macros properly, thank you.
Re: (Score:2)
And when you let a compiler generate assembly, you end up with something an assembly programmer might regard as crap as well. But since you're not the consumer of the result, who cares?
That's all fine unless you someday have to tweak the lower-level code in a way not supported by the thing that generated it in the first place. And if you need to re-generate the code, and re-apply your changes... a creek named shit.
Re: (Score:2)
Re: (Score:2)
Then you update your generator, obviously. That's the only systematic approach.
If I need a generator to write code for me, what are the chances I'm capable of augmenting the generator itself for my requirements?
Re: (Score:2)
Re: (Score:2)
Pretty high, I'd say, since in both cases you have an understanding of your needs, i.e., what it should be doing
Okay. How often do you find yourself making changes in your C compiler because it doesn't support some feature you'd really like? I always thought it'd be nice if C could have a bound-safe array. I think I'll add it. I'm sure it's just a small change. After all I understand my needs so it'll be simple.
The target for code generation tools are higher-level folks. They don't understand coding. That's the whole point. Software development without software development (or with much higher level constructs).
Re: (Score:2)
Re: (Score:2)
What if they integrated something with e.g. Visual Studio Code, such that as you program, it starts figuring out what you want to do? You start giving it an explanation of how you want various pieces to interface and it starts making suggestions about improving your data structures, interfaces, various options for design patterns.
In other words: a person like me, who knows quite a bit about program architecture and can competently do anything with programming languages but isn't a programmer, can use t
"set the parameters of what you want to build" (Score:5, Insightful)
They make it sound like that's the easy part.
Re:"set the parameters of what you want to build" (Score:5, Insightful)
They make it sound like that's the easy part.
Indeed.
Question: What do you call specified parameters of what you want to build?
Answer: Source code.
Commitstrip.com [pinimg.com]
Re: (Score:2)
They make it sound like that's the easy part.
Indeed.
Question: What do you call specified parameters of what you want to build? Answer: Source code.
. . . and then the customer says:
That's what I asked for . . . but not what I need!"
Re: (Score:2)
. . . and then the customer says: That's what I asked for . . . but not what I need!"
This is why you should not write code based on rigid BDUF [wikipedia.org] specs. Instead, the customer needs to be involved in the process, providing regular feedback.
If you use Agile, you should have a customer rep at the bi-weekly sprint meetings. Both to review what was accomplished in the last sprint, and to set the priorities for the next sprint.
Re: (Score:3)
Except that the customer doesn't necessarily want to be part of the process. The customer just wants to tell the development team what he or she wants, not necessarily coherently, then go away and have the development team deliver what the customer needs.
Re: (Score:2)
They make it sound like that's the easy part.
Exactly!
We just might need some sort of structured language to set those parameters with ... hmm, what could we call it ... programming?
Great.... (Score:1)
Dry.io, a developer playground that helps you write web apps using just a few lines of code
Just what the world needs. More crappy web apps....
So, other than for ideological reasons, why would you event want to democratize coding? Why not have people who are good coders code? I mean, is it important that I, as a coder, can take out an appendix? Should medicine be democratized?
And in terms of ideology, I'm all in favor of fairness. I think all should be given equal opportunities, and when social conditions are such that that can't happen, fixes
The dream of businesses since the dawn of coding (Score:4, Interesting)
The dream of businesses since the dawn of programming ... yes, as long as you can fully specify all the branches of logic, the machine can write the code for you!
Of course, it would help if we could devise some sort of symbolic written language to represent the logic, since human languages tend to be imprecise ...
Then the computer could tell you if you got the syntax wrong with the symbolic language or something.
It should only take Marketing a few years to get up to speed with using this. (In the meantime they will stop actually marketing, is that a problem?)
Hurrah, no more pricey programmers!
Re: (Score:1)
What about all the people that (Score:2)
are 'learning to code'? Are they out of a job already?
Coding is not a democratic process (Score:2)
It needs people with insight, skill and experience. Doing it by committee routinely produces the worst possible outcomes.
Re: (Score:2)
The "democratize" buzzword here appears to not have connection to anything. There's no sort of group social decision making involved.
Re: (Score:2)
So I should have read the story then? Well, the title was all the stupidity I could stand, but thanks for pointing this out.
Word Press, Etc (Score:2)
This is probably more of an attempt to let the software pick the underlying software for you with pre-packaged open source software ready to configure. Rather than going to WordPress for a blog, Shopify for a store, or whatever, you just go to one provider and their software picks the package that suits your needs.
Developers will always have a job because the skilled ones already have the toolbox for setting up the baseline software or working with the existing software. They are paid good money to fill t
DRY vs. Auto-Bloat [Re: Word Press, Etc] (Score:1)
I don't understand why data-dictionaries are not used more. Automatic code generation speeds up initial development, but is still difficult to maintain, as you have to sift through auto-generated verbos
Re: (Score:1)
Clarification: I meant specific spots or areas of the application, not "problems" in the puzzle sense. An example would be for a particular listing were screen real-estate is at a premium such that I want the column title to be "Emp. No." instead of "Employee Number". A systematic way is needed to locally override the default title.
Also a way is needed to create dummy columns for specific needs that are not necessaril
Seems somewhat similar to ... (Score:1)
Novelty (Score:2)
I'm probably missing something, but did they just re-invent fourth-generation programming languages? Or maybe they're just recycling the hype, because now "AI" which no-one can even define in the first place.
Re: (Score:2)
Fourth-generation programming languages were primarily pushed in the 80s, as I remember, so reviving them when it's thirty years later means that most of the people in the field won't remember why they didn't work.
systems blindness (Score:2)
Most any project worth having is a system at heart.
Sometimes a quick chunk of code will get you a feature. But wherever true systems roam, actually software developers will be found to formulate the interactions and clean up the mess.
Coding already is not the hard part (Score:2)
For years now, the hardest part of creating any new software was...getting the requirements for what it should do.
At my company, the development bottleneck is not the programmers, it's the business analysts, trying to figure out what the company wants to build. Once they decide, our team is able to build it quite quickly with existing tools.
Like pre-fab houses (Score:2)
Houses today can be build pre-fabricated in a factory, and thrown together in a few weeks. You get what you pay for. If you want a quality house, you still have to build it from the ground up, on site, using more traditional methods.
Software isn't much different. If you use tools that use "AI" (i.e., pre-fabricated parts), you'll get what pre-fab can do. Crap.
Yet another 4GL or RAD tool (Score:2)
All the tools that came before it were good at building some very specific kind of software. The most common use case is data entry screens. Yeah, that's easy. It's also easy with traditional tools. If you want to do something sophisticated, "AI" isn't going to get you any farther than the old 4GL or RAD tools did.
Re: (Score:1)
Thank You, humans; and also thanks for being delicious!
- Bot #847