The No-Code Generation is Arriving (techcrunch.com) 154
An anonymous reader shares a column: In the distant past, there was a proverbial "digital divide" that bifurcated workers into those who knew how to use computers and those who didn't. Young Gen Xers and their later millennial companions grew up with Power Macs and Wintel boxes, and that experience made them native users on how to make these technologies do productive work. Older generations were going to be wiped out by younger workers who were more adaptable to the needs of the modern digital economy, upending our routine notion that professional experience equals value. Of course, that was just a narrative. Facility with using computers was determined by the ability to turn it on and log in, a bar so low that it can be shocking to the modern reader to think that a "divide" existed at all. Software engineering, computer science and statistics remained quite unpopular compared to other academic programs, even in universities, let alone in primary through secondary schools. Most Gen Xers and millennials never learned to code, or frankly, even to make a pivot table or calculate basic statistical averages.
There's a sociological change underway though, and it's going to make the first divide look quaint in hindsight. Over the past two or so years, we have seen the rise of a whole class of software that has been broadly (and quite inaccurately) dubbed "no-code platforms." These tools are designed to make it much easier for users to harness the power of computing in their daily work. That could be everything from calculating the most successful digital ad campaigns given some sort of objective function, or perhaps integrating a computer vision library into a workflow that calculates the number of people entering or exiting a building. The success and notoriety of these tools comes from the feeling that they grant superpowers to their users. Projects that once took a team of engineers some hours to build can now be stitched together in a couple of clicks through a user interface. That's why young startups like Retool can raise at nearly a $1 billion valuation and Airtable at $2.6 billion, while others like Bildr, Shogun, Bubble, Stacker and dozens more are getting traction among users.
There's a sociological change underway though, and it's going to make the first divide look quaint in hindsight. Over the past two or so years, we have seen the rise of a whole class of software that has been broadly (and quite inaccurately) dubbed "no-code platforms." These tools are designed to make it much easier for users to harness the power of computing in their daily work. That could be everything from calculating the most successful digital ad campaigns given some sort of objective function, or perhaps integrating a computer vision library into a workflow that calculates the number of people entering or exiting a building. The success and notoriety of these tools comes from the feeling that they grant superpowers to their users. Projects that once took a team of engineers some hours to build can now be stitched together in a couple of clicks through a user interface. That's why young startups like Retool can raise at nearly a $1 billion valuation and Airtable at $2.6 billion, while others like Bildr, Shogun, Bubble, Stacker and dozens more are getting traction among users.
wat (Score:4, Insightful)
Re:wat (Score:5, Interesting)
We're all going to be more ignorant. There's more code between you and the metal--more to know what it does, and more surface area for issues.
The taller the stack (and it's very tall, these days), the less sure a person can be of what's really happening. The speculative execution vulnerabilities are a textbook example of this.
Re: (Score:2)
Hell, I remember when this problem was solved in way back in 1981 [archive.org]!
Re: (Score:2)
How to feed and otherwise maintain a horse
How to tune my car engine, although I know how to change spark plugs and oil but I choose not to do so.
How to write assembler code, although I know C
Re: (Score:2)
So young people are going to be more ignorant of the underpinnings of the technology than their seniors?
My 13-year-old niece wanted to play a game on her grandmother's smartphone while in a restaurant and wanted the wifi password. We told her she wasn't allowed to play games with network/internet access and especially not on an unknown wifi network. She said it didn't use the network or internet, but it just worked better when on wifi. No amount of explaining would convince her that if the game "worked better" when on wifi then it was (probably) using the network/internet -- I'm a software engineer and syste
Re: (Score:3)
My kids can play any game they want, with or without networking.
But electronic devices at the dinner table? Absolutely not.
Re:wat (Score:4, Interesting)
My 9 and 13 year old kids have never seen a command line. They wouldn't know the first thing to do if one popped up. Sure, they've used an Apple UI their whole life. They can putz around in Minecraft. They know their way around an app. I don't see any of those skills as being particularly valuable when setting up software. If anything, the younger generations are at a disadvantage to the Millenials and Gen-Xers when it comes to the use of computers in general.
Re:wat (Score:4, Interesting)
I'd agree.
Trying to trouble-shoot token ring and coax LANs with terminators and t-bars to play a game was a fixture for a lot of my generation's teenage years. Now? Just fire it up, connect to the WIFI, text your buddy for their username, and you're doing multi-player.
It's going to start sounding a lot like "uphill both ways in the snow", but we had to be creative and smart just to play games together. That sort of creative problem-solving was far outside of what's needed now. We had to learn how to build computers, set jumpers, wire networks, install OSes, hack drivers, etc. Getting multiplayer up and running was HARD.
I poked around with Among Us to see what the fuss was all about, and the public servers are a shitshow. The barrier to entry is so low, the quality of players is abysmal. All it takes to play is to download the app, open it, and click play.
Fucking morons weren't able to game when I was a kid, because a fucking moron couldn't build a computer, get it up and running, get things installed on it, get it connected to the network, etc. Now? As long as you can find the on switch and are barely literate enough to navigate a menu, you're in.
I do wonder if this will severely cut down on the next generation of CS grads. I can't imagine how much more time I would have put into playing games if all I had to do was look at a computer and it turned on for me, already connected to the internet. If I could just ask a question while sitting in a chair and a voice from the heavens would give me an answer.
Would I have spent more time learning valuable things rather than troubleshooting dodgy tech issues, or would I have just played more games? I wouldn't be surprised if I just played more games. And while they have their own challenges and problem solving, it's not the same as swapping video cards and processors between 3-4 computers to figure out which ones are good and which ones are bad.
Re: (Score:2)
Re: (Score:2)
So young people are going to be more ignorant of the underpinnings of the technology than their seniors? These tools aren't exactly hard to use and something only young people are going to figure out. This is retarded.
I have no idea how to fix most things on a car, and my situation is not at all uncommon. A couple of generations ago, such lack of knowledge would be unthinkable for a middle-aged male. This is the natural evolution of technology: it becomes more ubiquitous, more reliable, more complex, less novel, and less interesting to the generation that grew up surrounded by the mature version of it. The older generations who invented the tech or refined it to a mature state can't understand why the kids aren't inte
Re: wat (Score:5, Interesting)
No, they aren't. I'm developing a very specialized, niche web store with quite specific use cases in Bubble, a service that's been around for several years, and it's working quite well. The company is sound, profitable, and its stack is expensive, but we'll worth it as it's allowing me to make in a month of work something that'd take me at least six months of either extensively tweaking WooCommerce with tons of custom PHP and JavaScript, or programming from scratch. The error in articles about these no-code platforms isn't in that it makes coding irrelevant, but in saying non-programmers can do with them the same programmers can. Quite the opposite: programmers are the most effective users of these tools precisely because we already know what goes into them and can think about it at a much higher abstract level compared to non-programmers, thus making actually good use of them.
Re: (Score:3)
Very interesting. But how do you feel from the lock-in perspective? If the provider instituted dealbreaker terms or unmanageable price increases overnight, how quickly could you switch the business logic over to a competitor?
Re: (Score:3)
They would eat the costs and complain.
Re: (Score:2)
Very interesting. But how do you feel from the lock-in perspective? If the provider instituted dealbreaker terms or unmanageable price increases overnight, how quickly could you switch the business logic over to a competitor?
It wouldn't be quick or easy, true. As the other comment said, my client would most likely simply accept it.
The thing, however, is that this service is designed for sites that "Make Money", so whatever they charge for the service it's still likely way, way less than any site built on it earns, which can be seen by their standard prices. The baseline paid package, which we're using for this project, already costs $29/month. The next level jumps to $150/month. And then, if I'm not mistaken, to something aroun
When they sell it... (Score:2)
Not if but when these stacks are sold to another company they will milk the existing customers for everything they can get then kill the project entirely.
Re: (Score:2)
Not if but when these stacks are sold to another company they will milk the existing customers for everything they can get then kill the project entirely.
Shrugs. By then, who knows, maybe someone will have developed a full open-source drop-in replacement capable of importing a project backup, which come a JSON file, and have it running with minimum downtime. If not, then recreating the application from scratch it'll be.
Re: (Score:2)
Re: wat (Score:5, Insightful)
The error in articles about these no-code platforms isn't in that it makes coding irrelevant, but in saying non-programmers can do with them the same programmers can. Quite the opposite: programmers are the most effective users of these tools precisely because we already know what goes into them and can think about it at a much higher abstract level compared to non-programmers, thus making actually good use of them.
These types of tools and these types of promises have been around forever. Every few years, a new generation of tech journalists join the workforce, discover these tools, and feel compelled to write about the "new game changing technology" that's basically an evolution of old software that's been around that everyone already knows about.
The problem is always the same. Even though these programs are directed at everyday business users who "only need to input business rules," you actually need technical people to make them actually work. The more technical the worker, the better.
Further, there's always some use case that just doesn't work or doesn't work right. There's a bunch of corner cases that are simply ugly. Or, the whole system is downright slow. That's because you're constantly working to adjust your use cases to the chosen framework that has all these preconceived ideas on how your workflow should actually look and work. You spend a large chunk of time fighting against the framework to make it do what you want it to do.
At some point, any business that wants to be successful in the long term will find the limitations of the framework overwhelming, get rid of this software, and code something themselves from scratch.
Re: (Score:2)
Further, there's always some use case that just doesn't work or doesn't work right. There's a bunch of corner cases that are simply ugly.
True, but sometimes it involves an adjustment in perspective. One problem I have, and I'm still adjusting to, is that this kind of service doesn't use full relational database models. Sure, you can link tables and such, but there's nothing similar to a full-syntax SQL language for you to build complex queries. So those who, like me, come from a context in which normalizing everything is the norm, we have a hard time adapting to do things this way. The solution suggested? Embracing data duplication everywher
Re: (Score:3)
Re: (Score:2)
That's kind of true of every new programming tool. High level languages were supposed to make programming more accessible - they surely did but they also allowed good programmers to be way more productive.
Re: (Score:2)
Open source could be said to have a similar effect. If you publish high quality code for free, who needs expensive programmers any more?
In fact the reverse happened. Those open source libraries meant the final cost of the things developed with those librarie
Re: (Score:2)
Aren't 'non coders' going to create things that are non-standard, buggy, hard to maintain, hard to modify, poor error handling, poor edge cases, etc? In other words, won't a lot of the non-coding be throw away one-time use stuff?
Most certainly yes! And then, if any of that is actually important, programmers will be hired to rewrite it all into something actually functional, so in a way it's still a win-win situation, just delayed. ;-)
If it helps, think of those as scripting languages or, even better, as macro languages. Most of them are one-time use stuff. Only rarely any of it needs to become more than that, and then real programming enters the picture.
No Code - Low Code (Score:5, Insightful)
Paradox - it even had "artificial intelligence" to help you program!
PowerBuilder - Do everything in datawindows!
Clarion - No coding needed with templates!
Also HyperCard, Visual Basic, Access/Filemaker... programming has been going away for decades. But, there are ever more and more programmers...
Re: (Score:2)
I wonder if some of the need for this stuff doesn't come from the expectations that software be GUI based, which adds a lot of complexity. Back in the late 90s, I wanted to make a simple GUI-based program to help my wife learn a (human) language. I was an experienced C and assembly (8086 and Z80) programmer (command-line and embedded stuff). But dealing with a GUI was super intimidating. I ended up putting it together in HyperCard (already long out of date), which just made dealing with a GUI less scary eve
Re: (Score:2)
Indeed. One of the things I liked about VB is that to get a GUI set up, you simply "drew" it using the tools on the form designer. Need a button? Draw it. Need it to do something on double click? Right click, pick the action, browse for the method in the list from your code.
Conversely, my first GUI for Java took pages of code to get the same thing - a square, with a button and label, and the button did something when you clicked it.
Java finally "caught up" with FXML and Scenebuilder. Any similar tools f
William Tell missed, son's brain bleeding (Score:2)
I agree that with VB 5 & 6, you didn't have to spend much time on the GUI side of things, which freed you up to work on domain logic.
What should have been done is to combine the best lessons from all these tools rather than throw it all out and start over with web stacks. Controlling UI on the web is a royal pain in the arse.
We sacrificed so much in terms of features and complexity to get "progressive" web UI's, but most businesses still do their real work with mice on PC's. The industry "fixed" the wro
Re: (Score:2)
Re: (Score:2)
And we still have Cobol coders.
Seems simple enough (Score:4, Insightful)
as long as you don't have to do any database queries or excel macros beyond summing up some columns or rows.
You want the "sophistication" of a BookFace page or GoDaddy page, you'll get what you pay for.
Better than before? (Score:2)
But are these no-code platforms better than the failed no-code platforms from two decades ago?
Re: (Score:2)
But are these no-code platforms better than the failed no-code platforms from two decades ago?
Yes, they are getting better. There will always be limitations, but the set of things you can do without coding is expanding.
Also, it isn't either code or no-code. Many of these tools allow you to slap together a GUI with a no-code tool and then link it to your code that implements custom functionality.
If you are a coder, you will still have plenty of job security, but you may need to shift your skillset.
Re: (Score:2)
Yes, they are getting better. There will always be limitations, but the set of things you can do without coding is expanding.
Also, it isn't either code or no-code. Many of these tools allow you to slap together a GUI with a no-code tool and then link it to your code that implements custom functionality.
How is that any different than what Visual Studio has been doing for 25 years? Draw the UI and write the event handlers to link it to business logic.
So, what? Oh! it's an investment ad. (Score:5, Informative)
What was the point of this? *Reads it again*
OH! It's a fundraising investment advertisement for vaporware apps. Got it. Have a good day.
heard this all before. (Score:5, Insightful)
The second you want something in an application that it doesn't have a pre-built option for, you need a programmer. When you need security for anything in your programmer then you need a programmer. It's nice that you can quickly prototype shit with mouse clicks but if you're building anything serious then you're going to need a programmer.
No code? Know code. (Score:3)
No-Code systems are always going to present limitations compared to things you code yourself.... and someone has to build the no-code systems...
You will always be better off if you Know Code.
The Mythical Man Month applies here (Score:5, Insightful)
Fedrick Brooks addressed this in his under apricated book "The Mythical Man Month"
I believe the essay's title is "There is no Silver Bullet"
If you haven't had the opportunity to read that book, do so as soon as you can. He addresses this fallacy that programmers won't be needed someday. This is just an often repeated promise that we've made to ourselves since programming was invented back in the 40's. There is no silver bullet, just more layers of abstraction that some "programmer" will need to understand and "code" to do what he/she wants.
Re: The Mythical Man Month applies here (Score:2)
Re: The Mythical Man Month applies here (Score:2)
It's the same with engineering. The tools make the job easier but don't eliminate the experts. People forget the tools themselves rely on assumptions that only an expert will take into account.
To a certain degree we were more sure in the past when we calculated things from scratch as it required you to think of all the assumptions and possiblies and write them out logically.
Re:The Mythical Man Month applies here (Score:4, Interesting)
It is called No Silver Bullet [ucsf.edu].
I once had a manager who wanted me an my colleague to perform miracles on a very old codebase. I told him we are constrained by the large codebase, and we are not free to do with it what we want, without a total rewrite.
And I told him about this very essay, and who the author was.
His response was repeating silly meaningless stuff like "work smarter, not harder".
Re:The Mythical Man Month applies here (Score:4, Interesting)
His response was repeating silly meaningless stuff like "work smarter, not harder".
Ah, the classic "if you're intelligent you'll go and find a better job working for a manager that knows what he's doing" response.
Microsoft Flow (Score:3)
I get the joy (or not) of using Microsoft Flow for certain things. Its a no code platform. Except if you want to say adapt a timestamp to a timezone or string manipulation, or any number of things. When you hit the end of the no-code bit you are left with some Excel style formulas/functions. Ever have a bunch of nested if statements in Excel? Excel gets hard to read and edit really quickly with lots of nested functions, same with Flow. I want Flow to just show me the code and get out of the way.
LabView is another that is really frustrating to use. Just show me the code.
Re: (Score:2)
I get the joy (or not) of using Microsoft Flow for certain things. Its a no code platform. Except if you want to say adapt a timestamp to a timezone or string manipulation, or any number of things. When you hit the end of the no-code bit you are left with some Excel style formulas/functions. Ever have a bunch of nested if statements in Excel? Excel gets hard to read and edit really quickly with lots of nested functions, same with Flow. I want Flow to just show me the code and get out of the way.
LabView is another that is really frustrating to use. Just show me the code.
I wouldn't go ahead and forget regex just yet.
Oh my god, i am scared for my employability!!! (Score:2)
NOT.
I programed in any language (2-3 assemly lang, basic, C, C++ , pascal, LISP, java, javascript, shell lang, perl, python, tcl/tk, several domain based languages) which crossed my path, and guess who in our team is most proficient in "no code" tools (hooray, they call pivot tables a "no code" tool, around since the mid-90s). Who is the quickest in clicking together a working SharePoint page.
In my experience "no code" tools are just very condensed way to access complex patterns (to be very clear, i find ma
Re: (Score:2)
Consider engineering simulation software, to aid electronic and mechanical design. This is stuff I did not use for many years. I am very much a paper + pencil + calculator designer. What I found when I did start using electronic simulation, in the form of SPICE, was that it helped a great deal to have an idea of what the answers to some problems should be, using my old-fashioned methods. This would trap gross errors, due to incorrect model specification, or just misuse of modelling tools. With my old way of
title mislead me (Score:4, Interesting)
Good for simple stuff (Score:2)
Re: Good for simple stuff (Score:2)
The license probably prohibits that.
Re: (Score:2)
Ah, yes, "throw away" software (Score:2)
Usually far more expensive in the end than not having it in the first place. The only "superpower" these platforms give is supercharged stupidity.
I've worked with this generation (Score:2)
great! (Score:2)
I've already got someone coming to me, desperate to connect AirTable to something it doesn't already connect to.
The more of these do it yourself Frankenshambles people construct, the better for me :)
And you can script them! (Score:2)
What a crock! (Score:2)
In many ways I think the earlier you give a kid tech the dumber most will be. Tech is just a tool that can be helpful or not so helpful on a case by case basis.
Re: (Score:2)
For most people that use computers every day at work, they just need to know how to run the applications they need, and organize their data and communications. I do not expect the woman that calculates my salary and taxes every month to write a program to do it, but I do expect her to use accounts software properly, so I get paid the right amount, and the taxman does not jump on me.
No-code is not no coding at all. (Score:2)
Re: (Score:2)
If you are not coding, someone else needs to do your dirty work.
The Eloi and Morlocks come to mind. The power users will dance around corporate HQ in their clean, white smocks. Every once in a while, the BOFH will blow a whistle and a few Eloi will disappear.
Playskool/Lego 'computing' (Score:2)
This is now the ultimate expression of that. What someone I used to work with years ago would call 'monkey button pusher' stuff. No access to anything really nuts-and-bolts-level powerful. Dumbed down so the end user can't get in trouble. Too bad you're stuck with whatever it is you end up with.
I used to think that people were getting dumber. Then I thought
Company valuation means what exactly? (Score:2)
Its annoying that Slashdot of all places still refers to the speculative dollar 'valuation' of a company, "That's why young startups like Retool can raise at nearly a $1 billion valuation and Airtable at $2.6 billion..." as some proof of the underlying technology or long term trend. Recent history is littered with firms that used to have big valuations but were proven to be hollow shells.
They're arriving... (Score:2)
Car analogy (Score:2)
The "no wrench" generation is arriving.
In the early days of automobiles, I'm sure a lot more people fixed it themselves out of necessity. As cars improved and became more complicated, people tended more towards hiring mechanics. Wrenches never went away.
Knowing what you want. (Score:2)
The interesting thing about all these interfaces is that they tend to make people believe that they don't need to understand what's going on.
How much of that data is signal, how much noise, is it clean, is it damaged, how's it processed? Have you explicitly defined your end criteria successfully?
Those are all the parts that are handled in specification of a product, or a result. And it's the most often overlooked.
There seems to be this immediate rush for instant gratification where you can click a couple
only for beginners and prototypes (Score:3)
I've been writing software essentially all my life.
I quite like FileMaker, for example, and Behavior Designer for Unity and a bunch of prototyping and "visual coding" stuff - for prototyping. I have a Unity3D project right now where I started with one of those things where you can have interactions with a few clicks and drag-this-here. Then I had figured out what I actually needed in the game, thanks to being able to quickly try various options and iterate rapidly. Now I'm throwing out all of that framework and replacing it with more specialized and specific code that serves my actual use case better and does exactly what I need without all the hoops and oh-you-want-it-this-way gotchas.
Same for a current FileMaker project. Putting together the UI visually as nice. But once past the prototype stage, the interesting part again happens in code.
No, all these tools don't replace programmers. They take care of the easy, boring stuff. As soon as you're a bit more complex than Hello World, you end up writing code, or living within the narrow confines of a framework.
Why no, this isn't a shill post (Score:2)
Sure, I get making a random post to try and whatever startup sector you are in seem interesting. But, sorry if anybody with a sense of history isn't buying it. This has a been a holy grail for a half a century or more because people ignore a critical point in order to sell stuff.
The critical point: If you can think in enough detail to refine a business process to be automated by a computer, they a programming language is *not* a barrier to doing so. In fact, it quickly becomes a more concise and effective w
I have seen this (Score:2)
Re: (Score:2)
... it's a way for non-coders to prototype things and then pass it on to the pros to make it into something grander.
Most likely what would happen is that the pros look at the "non-code" prototype, use it as a rough guide for customer requirements, write a proper spec, then throw the prototype out. I have been on the receiving end of marketing people making detailed design decisions. You just had to work around the idiocies. Or maybe just lie a lot.
1% or less of the population (Score:2)
You don't need a billion software engineers (literally). That's nuts. The idea that everyone must learn to code is either naive or disingenuous. Especially when contrasted with our problems with education. Lower literacy rates in adults costs us significantly in terms of economic growth. The general public's poor grasp on science combined with politically-motivated bad science is an existential threat. We don't necessarily have to choose between coding and literacy, we could have both. But if our resources
Like a spreadsheet? (Score:2)
An engineering professor told me about 1990 that his need for programmers to do custom work for his traffic models had been eliminated by the spreadsheet, though even those he had his grad students develop.
If Excel from about 2001 been suddenly invented, complete with VBA that created whole userforms with a dozen-odd lines of code, for custom data input, and easy controls to tweak assumptions until the graph looked like you wanted it, that would have been touted as "the end of coding", too.
Everything Old is New Again (Score:2)
Re: (Score:2)
The 'no code' mantra is as old as computers themselves.
It goes back at least to Grace Hopper, with her introduction of machine-readable mnemonics, i.e. assembler code. She was later involved in the development of COBOL, which was one of many attempts to make it possible for people to "talk to" computers in something resembling a human language. All of this appears to be doomed to failure, because it makes a fundamental error: that computers can think.
Dustin Hoffman did some fine acting in Rainman, portraying someone who is phenomenal at calculating tasks, but i
Heard of Excel? (Score:2)
This whole pitch is straight up marketing nonsense. People without formal coding skills have learned to utilise technology in this same way for a long time, using Excel. I can immediately think of multiple people I know who fit this category and have their own custom spreadsheets doing pretty interesting things. And many small businesses don't have their own custom built IT solution and yet somehow manage to get things done. There are thousands upon thousands of spreadsheet templates out there to do whateve
Re: (Score:2)
Excel, or spreadsheets in general, are an interesting case. They do actually work.That is, you can glue together data and formulae in a graphical manner, that does not require knowledge of computer language structural grammar. Just a bit of schoolboy algebra will do in most cases. However, I have seen cases where a spreadsheet can produce erroneous results, particularly due to rounding rules applicable to accounting applications. The problem there is lack of mathematics knowledge, rather than a software def
How do I print? (Score:2)
Just today, upon delivering a new feature into an existing platform, I discovered that most office workers (after years and decades of working for this and other companies) don't know how to print in Chrome.
Full-time office workers, with desks and everything. Years of office experience. Way above minimum wage.
Don't see a print button. Never heard of keyboard shortcuts.
And you want me to believe that they'll chain together some computer vision libraries?
But wait...with 3D printing, you'll be able to fabri
Re: (Score:2)
Chrome on Windows has no menu.
It has a "hamburger icon" somewhere in the corner which no one - except braindead google employees - recognize as "click here - here is the menu".
I would blame no one not knowing how to print in Chrome, tried those office suits with ribbons? Why is open/save as/print on a completely different "dimension" than all the rest of it?
Programming != knowing how to use a certain program, get used to it.
Just like flying cars (Score:4, Insightful)
[Begin git-off-my-lawn mode]
No-code and RAD is the flying cars of programming. It's always "just around the corner" just as somebody is always claiming to have invented a practical one.
The key here is what's known in the industry as "total cost of ownership". Maintenance is roughly 2/3 the cost of typical software and has been for decades. Such tools may make initial development easier and quicker, but they usually are more difficult to maintain. If they are too simple, they don't give enough options to do what's necessary to be practical. If they are sophisticated enough to be sufficiently flexible, then they are just as complex, if not more so, then regular tools. It's sometimes said they make the first 80% of the project simple, but gag on the last 20%.
Drag-and-drop tasks, wizards, rule lists, and interactive flow-charts may work for simple stuff, but they either cannot handle or get overly complex for more involved domain logic. And it's usually hard to factor repetition into the equivalent of functions/methods/classes so you end up copying and pasting similar looking branches. If all those copies turn out wrong or need changing, good luck! It's like un-delivering newspapers.
Further, newbies don't understand data normalization. If you get normalization wrong, data gets bleeped over time, with duplicates, preventable typos, and missing references.
I haven't seen anything new under the sun that solves old problems of RAD and "code-free" programming. It's just repackaged ideas with newfangled names. Does anyone want to claim and point out a truly new RAD invention? I'm game.
That being said, our current web stacks are becoming over-complicated such that there's pressure to find alternatives for small and medium projects. Web stacks are not saying "no" to all the latest fads or "enterprise/web-scale" features like no-sql, microservices, pretty url's, responsive, async/await, etc., let alone a lot of fancy dancy JavaScript toys full of bugs. Featuritus adds up. Architects feel compelled to stuff their resume with every buzzword they can. The humans can't handle choice responsibly, grabbing every candy type in the store regardless of taste because their friends and enemies are doing the same.
Thus, there is a dearth of get-er-done tools for smallish projects that MS-Access, Paradox, Visual Basic 6, Clarion, File-Maker-Pro, etc. used to handle. These were coding based, but assisted by IDE's that handled most of the grunt work and were close fits to the UI domain of GUI's. It was almost like you were one with GUI so that you are not chasing references to references like current stacks often result in.
Sure, they were mostly "walled gardens", but that helped maintain consistency. I hate to say it, but there are too many who can't handle choice.
Some complained they didn't "separate domain logic from UI", but if the tool is simple enough, you don't need to: that often just created busy-work interface maintenance. The separation is only needed if your stack becomes an e-bureaucracy of specialists to handle the stack's bloat. (Conway's Law.)
The statelessness and inconsistent DOM of web (non) standards stuck a screwdriver into the heart of such tools, leaving repetitiously redundant e-bureaucracies like MVC and organic trial-and-error-and-error shit like Bootstrap and URL route mappers. It didn't used to take rocket science to make the screen match the fucking napkin sketch. "But it's progressive!" Yes, it's progressing into a melted Salvador Dali UI. Shove your rocket. They didn't used to need "UI specialists" (from the technical perspective).
The industry if currently trying to unfuck itself from the web mess. Interest in RAD is probably a symptom of this.
Re: (Score:2)
Re: (Score:2)
I remember when I set up an Asterix phone system on a Linux server. It was only a small company, so it should not have been a major job. But Asterix configuration files use some hellish syntax, that I always got wrong. So I downloaded a PHP application that gave me a dashboard in a browser, to make things easier. The demos worked mostly, but I still could not do quite what I wanted for the real system. So now I had an extra problem on top of the original one. I have come across PHP dashboard stuff before. I
Another Visicalc (Score:2)
This will be equivalent to the introduction of the Visicalc spreadsheet software and it's successors like Lotus 1-2-3. It'll be a boon for individuals wanting to develop their own solutions to their problems at work without having to go through the process for formal software development by the engineering team. As soon as their tool has to go beyond being a personal solution, though, all the problems that have always plagued such attempts will raise their ugly heads. We'll be right back where we were when
Bring It! (Score:2)
As a professional developer, I know these tools suffer from a variation of the 80/20 rule in that your best "no code developer" can get only 80% of what they need. They struggle with the last 20% until, well, they give up and call me in.
It is at this point I have to break the news to them that the tool simply cannot deliver the remaining 20%, it is just not capable of supporting the code necessary to get the 20% and therefore I'd have to rewrite it all using a classic implementation in a real programming la
Re: (Score:2)
Didn't they say this about... (Score:3)
and Visual Basic
and Powerbuilder
and Forté 4GL
and Access
and a bunch of other development platforms I've forgotten about?
Incredibly Unintelligent--Never Worked Yet (Score:2)
I've been developing software since the mid 1980's and every so often, there are claims of codeless programming tools soon to make all else obsolete. The example and the reasoning is clear that that is seriously boneheaded.
Nobody has ever come up with a visual way of implementing complex logic. Furthermore, the underlying bloat, inflexibilities, and failure to consider all possible requirements continues to plague any such systems. It also tends to be tedious and, like much vendor software today, forces
"No Code" = Vendor Lock-In (Score:5, Insightful)
All of these new-fangled "even your CEO can now build apps!" platforms have two things very much in common:
- They are cloud-hosted, subscription-based services.
- You can never walk away with an independent copy of "your" app (even with frozen functionality). You'll be lucky if you can walk away with your data.
They suck you in when you build some easy CRUD apps to replace a few legacy Excel files, and before you know it, you have a whole slew of business-critical functions running in their cloud... mostly apps that would've been trivial to build internally with modern tooling and a decent developer. But now you are at the mercy of some tiny company's success, their ethics, their security, their future subscription fees, and their future desire/ability to support your growing needs.
No-code? Again? (Score:2)
Re: (Score:2)
No, Delphi was never sold as a no-code tool. It offered RAD and wysiwyg UI creation.
For desktop applications it was superb for its era. It died primarily because Borland were better at creating technology than selling it, and because Java turned up promising to do desktop, browser and server-side all in the same language.
I put multiple systems into production that were written in various versions of Delphi, and all were solid performant software. All of them needed proper programming.
Code is not the hard part (Score:5, Interesting)
When building anything non-trivial, it's not the code that's hard. It's the design. Anyone who has ever tried to get a business to clearly state what they want built--say, a PowerBI dashboard--knows that the hardest part is nailing down exactly what is wanted. Once that is known, the coding / building of it is generally quite straightforward.
SSRS and Crystal Reports both claimed to allow anybody to be able to create their own reports, with no code. As many software developers learned, regular people didn't know what they wanted to build, so they had to get programmers to figure it out for them.
Re: (Score:2)
Amen to this. As a software engineer half my work is working with the business side to expand their initial half-baked request into a set of requirements and needs that can actually be implemented in software. And about 3 times out of 4 my initial guesses as to what they'll want built are a better match for the final requirements than the business's initial "requirements" statement. As an engineer it's troubling that I know business's requirements better than the business does that often.
Re: (Score:2)
Your experience is not unusual. But I'm not sure it's so troubling. Consider having a house built. If builders asked customers whether they prefer plumbing with PVC pipe or with PEX, the buyer won't have a clue how to make that decision. In many settings, it's on the engineers to really understand the business and make many of the decisions that allow the department managers to be successful. Most programmers don't make good managers.
Re: (Score:3)
The problem is it's not technical questions like you pose that I'm better at answering. It's fundamental questions like "Do you want carpeting in the kitchen or should it be linoleum/composite?". All too often the business does the equivalent of "We said we wanted carpet in the house, that means carpet everywhere.". It's bad enough when I ask them whether they really want to deal with carpet in the kitchen given what'll happen when spills happen and they think a moment and go "You're right, make it linoleum
Taught some children to use ArduinoBlocks (Score:2)
Not that long ago I taught some young kids how to use ArduinoBlocks to program a simple robot. It didn't take very long before they discovered the option to show the generated C++ code, and it didn't take too long before they would rather work with the C++ code directly, than mess about with an awkward GUI. Was very interesting and heartening to see.
I remember something similar back in the day with Lego Mindstorms. When I finally started using NQC (not quite C) to program it, it really opened things up fo
Bullshit (Score:2)
In the distant past, there was a proverbial "digital divide" that bifurcated workers into those who knew how to use computers and those who didn't. Young Gen Xers and their later millennial companions grew up with Power Macs and Wintel boxes, and that experience made them native users on how to make these technologies do productive work.
I know plenty of GenXers and Millennials who are incapable of using a computer for more than posting to social media. Growing up with computers being ubiquitous is about as likely to make everyone competent with them as growing up with cars makes everyone a good driver.
GIGO (Score:2)
None of these systems can, or will ever be able to, remove the need for someone that is able to think critically about the problems, state them clearly, and then clearly state a pathway to solve them.
All programming is a three step process:
1) Define the problem
2) List the resources available to solve the problem
3) Arrange the available resources to solve the problem.
Most software projects that fail, do so in step one.
No code was always there. Code isn't going away. (Score:3)
The point of no code solutions is to not require code for solving well understood tasks. We really should not be coding common tasks. That should be reserved for creative tasks.
I remember the whining of HTML coders from over 20 year ago when FrontPage and Dreamweaver emerged.
CoffeeCup HTML editor tried to capitalize on this and tried to play their egos up by calling them "Gun Coders".
But HTML coding never went away.
I remember when people bragged that their high-level software was written exclusively C, or heck even assembler, because for them even MFC was bloated. Good for you. Now good luck rapidly evolving it and feature matching your competitors.
People thought scripting languages weren't real programming languages or that garbage collection made people lazy.
But it wasn't always a one-way progress. If anything, we write more code to build a GUI than we did 20 years ago. Delphi was great. We mostly lost the RAD workflow.
New tools are emerging are emerging for plotting, ETL operations and building AI/Data Mining/Machine Learning. These simply lower the barrier of entry, just like Visual Basic lowered it to people who would not otherwise become programmers. People who need to go beyond them will always reach for code. And coding is simpler than ever.
Don't worry. It's better than ever, for most part. A smaller *proportion* of computer users may be coding, but the number of people with access to a computer exploded and there are more coders than ever before, not less.
Re: (Score:2)
17 years is a long time to wait for failure.
Welcome back to Slashdot, moran!
Re: (Score:2)
C'mon man don't leave us hanging...in 17 years what happens?
(Btw you misspelled "frist psot")
Re: (Score:2)
(Btw you misspelled "frist psot")
Bah! It's "Fritz Pots" nowadays.
Re: First post (Score:2)
Re: (Score:2)
I'd argue they're more dire - a T-rex getting out of his pen only affects those nearby. This kind of thing could cause hate and discontent worldwide.
Re: (Score:2)
Runtimes and libraries bloat software, that's a part of modern software development. It's sometimes just a lack of priority on the part of compiler and operating system developers (link-time optimization can help a lot in some languages like C/C++). And other times it's a deeply complicated issue that may never be resolved. (i.e. Go #6853: binaries too big and growing [github.com])
100MB for Hello World but 300MB for a fully featured application is fairly typical. And in most cases that's considered quite acceptable by b
Re: (Score:2)
No such "digital divide" ever existed.
Oh fuck yes it did. I worked for IT companies that had managers that couldn't use a fucking computer.
Although the summary is flawed. It says that all you had to do was switch the thing on. No, there were entire college courses on "how to use a word processor" for people scared by this new fangled technology.