News for hackers. Stuff that matters.
Re:Will low and no code tools ever truly disrupt tech develo... by danielvaughn on Thursday August 11, 2022 @10:04AM (#32425753)
My main issue with low-code/no-code is that it attempts to solve the complexity problem, without understanding what "complexity" is. Code is perceived to be complex, but when you look deeply into what people mean when they say that, it's almost entirely a social perception. They see these weird characters and it looks like gibberish and they assume that the people who understand this gibberish are somehow on another level of intelligence.

Code is really just a formalized expression of what you want. It happens to be used for very complex problems, because it's very good at solving complex problems. This in and of itself does not make code inherently complex.

Re:Will low and no code tools ever truly disrupt tech develo... by aeruder on Thursday August 11, 2022 @10:29AM (#32426206)
100%. I worked at a company that really went in hard on Agilent Vee for hardware testing in the early 2000's. Absolutely a thing where a manager saw a "Hello World"-like demo and was so impressed that they went 100% full buy in.

Besides the obvious UI issues (like the fact that you couldn't really zoom out, you could just pan around your code), we had a bunch of engineers that still needed to do things like "get the three largest values from this array" and it just turned into the most ridiculous bubble-sort implementation you've ever seen.

Its pretty hilarious seeing some of the old screenshots now [1].

Anyways, I think it will always be really easy to sell some simple demos on low-code/no-code, but then the second you need something slightly outside the eco-system it just turns into a substandard mess that doesn't work well with source-control (or diffs) and in general is just harder than the code-full solution.

[1] https://i.imgur.com/KsVliNE.png

Re:Will low and no code tools ever truly disrupt tech develo... by fizzynut on Thursday August 11, 2022 @11:00AM (#32426771)
Yeah the main issues with visual programming are:

- Logic tends to take up a lot more screen space than real code

- There is no defined way to read the code. In real code you start top left and read left to right and down, but in visual code if there are lots of "paths" then your eyes end up darting around everywhere.

Re:Will low and no code tools ever truly disrupt tech develo... by ciarcode on Thursday August 11, 2022 @11:43AM (#32427462)
In automotive, development of control algorithms for the engine is entirely “visual”, through simulink/matlab. You design the model on simulink, then it generates the C code. I don’t have direct experience outside the automotive sector, but I believe that this approach is used in other sectors like aerospace. Maybe designing models is better than writing low level code for control algorithms?
Re:Will low and no code tools ever truly disrupt tech develo... by archi42 on Thursday August 11, 2022 @01:06PM (#32428741)
Yes, IIRC some aerospace companies also use simulink. It's popular with safety critical stuff.

> Maybe designing models is better than writing low level code for control algorithms?

If you need both the code and the model, then generating the code from the model is also much easier than proving that your handwritten C code behaves exactly like the model used for verification. Having visual control flow for complex control systems might be less error prone than manually writing C (or Rust or Zig or $flavour_of_the_day) code. You probably know that, but other folks shouldn't forget that automotive and aerospace control software often means "programming errors might result in people getting injured or worse".

Re:Will low and no code tools ever truly disrupt tech develo... by liketochill on Thursday August 11, 2022 @12:57PM (#32428626)
In power generation control when electrical engineers are discussing or analyzing the behavior of a governor or exciter block diagrams representing transfer functions are used. I would program turbine controls primarily in function block diagrams since it a great visual representation of the algorithms that makes It easy for some one to understand and observe how it works. I started with computer programming and it was quite an adjustment in my way of thinking to implement algorithms this way but no question it is the right tool for the job in controls.
Re:Will low and no code tools ever truly disrupt tech develo... by wolpoli on Thursday August 11, 2022 @12:53PM (#32428584)
I don't have any experience in the automotive sector. But when you say that the development of control algorithms for the engine are visual, I immediately thought finite state machine. My question: Are they finite state machines or is there more to it than that?
Re:Will low and no code tools ever truly disrupt tech develo... by gmadsen on Thursday August 11, 2022 @01:04PM (#32428714)
Depending on how complex, it would be a hybrid system. You have finite discrete states, but also continuous dynamics that need to be controlled (like a PID)

Control systems have always been designed in a connected box fashion. Before gui software existed. Visual coding is just an extension of what was being done on a blackboard

Re:Will low and no code tools ever truly disrupt tech develo... by themoonisachees on Friday August 12, 2022 @08:05AM (#32437224)
The single most important point that is keeping visual programming from ever being taken seriously in corporate settings is the fact that there are currently no version control compatible with it (for good reason). You can't collaborate without version control.
Re:Will low and no code tools ever truly disrupt tech develo... by habeyer on Thursday August 11, 2022 @02:40PM (#32429985)
Text characters are always going to be way more concise than their visual representations.
Re:Will low and no code tools ever truly disrupt tech develo... by danielvaughn on Thursday August 11, 2022 @10:44AM (#32426487)
I work out of a co-working space. A few months ago I walked past some people fidgeting with Zapier. Some (former) employee had built this crazy complex system of integrations, with connections going back and forth everywhere. It looked very much like this diagram, and I couldn't help but laugh, because it's the same kind of problem that coders face on a daily basis.
Re:Will low and no code tools ever truly disrupt tech develo... by sgarland on Thursday August 11, 2022 @10:53AM (#32426638)
IMO, Zapier is a little different because it's connecting disparate APIs.

Disclaimer: I work for Zapier.

Re:Will low and no code tools ever truly disrupt tech develo... by danielvaughn on Thursday August 11, 2022 @11:10AM (#32426934)
Ah yes true. My point was really that any tool can generate complexity, it's all about the underlying problem you're trying to solve.
Re:Will low and no code tools ever truly disrupt tech develo... by habeyer on Thursday August 11, 2022 @02:42PM (#32430015)
Yeah, I think Zapier is one of if not the only example I've come across in my software dev career of a low-code-type tool that devs will reach for before doing stuff by hand.

Great example of where low-code is a better alternative for a very narrow use case of development.

Re:Will low and no code tools ever truly disrupt tech develo... by actionfromafar on Thursday August 11, 2022 @10:41AM (#32426440)
The graph makes for a good laugh.

Also, I want to agree, but algorithm code can look ridiculous in any language, graphical or not.

I think graphical coding and "real" coding will merge from both ends. An advanced IDE today is already sort of beginning to look graphical.

Re:Will low and no code tools ever truly disrupt tech develo... by galdosdi on Thursday August 11, 2022 @12:18PM (#32427983)
I think this is very right. We have only scratched the surface in terms of creatively experimenting with the IDE UI to give the developer more ways to quickly explore and refactor code. Text in/text out is a serious loss in fidelity from the overall input/output capabilities of a computer.
Re:Will low and no code tools ever truly disrupt tech develo... by icefo on Thursday August 11, 2022 @11:13AM (#32426972)
I've had the misfortune of participating in a large-isch LabVIEW project and it looks similar.

Vcs integration and merge were also a big pain so most of the development was done on a single computer in the lab by many people.

The hardware that runs the LabVIEW code is solid tho and once you wrestle LabVIEW into doing what you want it works well

Re:Will low and no code tools ever truly disrupt tech develo... by __alexs on Thursday August 11, 2022 @10:46AM (#32426514)
Getting flashbacks to programming ABB ACS800 motor controllers with some hideous block diagram based thing many years ago. Oh god.

We also had a ton of horrendous LabView spaghetti which was even worse.

Re:Will low and no code tools ever truly disrupt tech develo... by WediBlino on Thursday August 11, 2022 @12:14PM (#32427920)
So counter intuitive Scratch ?
Re:Will low and no code tools ever truly disrupt tech develo... by ehnto on Thursday August 11, 2022 @10:37AM (#32426357)
I think any discussion about no-code/low-code and if it's effective has to take into account Unreal Blueprints. Game development is full of inherently complex problems, but some people are able to pull it off with Blueprints. What's important about that though, is that Blueprints live inside a complex codebase focused on game development, so the graphical/node based toolbox you have is extremely powerful because developers have coded those blocks and tools for you. The majority of the engine is abstracted away.

So it might be that node based programming is a good way to allow non-devs to interact with parts of an otherwise code based solution, inside niches. Examples that come to mind are eCommerce shopping rules. They can be complex, and really arbitrary, and in many ways having a developer implement them is really inefficient. Giving a node based pipeline editor for shopping cart rules would be a boon for power-users and take time off the dev's hands to focus on implementing the surrounding ecommerce solution, something you definitely don't want to be writing in a graphical editor.

Re:Will low and no code tools ever truly disrupt tech develo... by danielvaughn on Thursday August 11, 2022 @10:42AM (#32426447)
I almost put in my original comment that no-code/low-code becomes more useful as it gets more specific to a domain. Game dev is a perfect example - building complex shaders becomes much easier with a visual editing tool. I think of Google Sheets as a highly useful tool in this space. Same for Google Data Studio.
Re:Will low and no code tools ever truly disrupt tech develo... by basch on Thursday August 11, 2022 @11:28AM (#32427214)
Isn't the domain of most no-code/low-code "business process"? It's some glue between systems to collect or input data. It allows the expert on the business process to directly translate the manual process without others.
Re:Will low and no code tools ever truly disrupt tech develo... by happimess on Thursday August 11, 2022 @11:48AM (#32427537)
That's right, but "business process" is a much larger solution space than "texture shaders for video games."
Re:Will low and no code tools ever truly disrupt tech develo... by fendy3002 on Thursday August 11, 2022 @11:39AM (#32427398)
I think no, since usually the condition for each Business process state is usually complex, which no code / low code won't help much and is usually worse on performance compared to native implementation.
Re:Will low and no code tools ever truly disrupt tech develo... by yourapostasy on Thursday August 11, 2022 @12:01PM (#32427742)
Low-/no-code environments are really great for exposing domain-specific landscapes to non-coders, but that significantly reduces the hype value of the lingo, which aims to convince buyers that they can replace those pesky non-specific domain problem spaces and coders with capex and a smidge of opex. The value proposition of these products is the same as before because this is a repackaging of fourth-generation languages, and the economics have not changed.

The more narrow the domain, the easier it gets to figure out a low-/no-code environment that will work for the users. But the smaller the base of purchases. And distilling the complexity to just the right level still takes some really bright domain experts with extremely good intuition of where the most profitable use cases lay (the hardest role to fill) and highly empathetic coders (also hard to fill) who work well together (extremely rare), or a single person who embodies both (unicorn).

If energy and money were no object, low-/no-code is absolutely A Thing. I believe there is some kind of emergent Shannon–Hartley theorem behavior here, where complexity down a communications network with certain noise/bandwidth/etc. properties has some suspected hard physics-as-we-know-it limits.

Re:Will low and no code tools ever truly disrupt tech develo... by failrate on Thursday August 11, 2022 @10:07AM (#32425815)
Yes, and I have never struggled to execute something complex as I have with no-code tools. Nocode usually makes the HelloWorld trivial and anything meaningful more challenging than it would be to do in a general purpose language.
Re:Will low and no code tools ever truly disrupt tech develo... by duped on Thursday August 11, 2022 @10:41AM (#32426424)
This isn't just true of NoCode, it's endemic to young tools. These products are over-optimized toward low friction on-ramps because the only thing that matters is growth in DAUs.

NoCode is just attractive because it propagates the myth that you can do things without programmers, and programmers are expensive. So you've got low friction + perceived lower cost == more users signing up.

Re:Will low and no code tools ever truly disrupt tech develo... by rzwitserloot on Thursday August 11, 2022 @11:01AM (#32426793)
Java is somewhat legendary for being rather overly wordy. But, if a new language starts off its list of 'why should you use this' with comparing how to write to the console (java: `System.out.println`, other languages: a simple `puts` or `printf`) always strikes me as silly and turns me off of the language.

Who cares? When I'm writing toy command line apps, complexity is never going to be the problem, certainly not in the 'what do I print to the terminal' part of the code. And if I'm writing actual software where complexity is actually an issue, the odds that this code has any business writing directly to standard out in the first place are infinitesemal. Your language is optimized to do stuff I'm never going to care about. How silly.

However, perhaps it's not _just_ about the short sightedness of inexperienced devs who get tricked into thinking a language is all that because of optimisations to the 'write some toy stuff' process flow.

Think about it, how would you write a tutorial or 'sales pitch' for a dev environment/programming language _without_ focussing on how easy it is to write Hello World and other toy projects?

How would you highlight how the namespacing system seems like overkill for an app whose entire codebase is half a page of text in a large font, but is actually really good at making an easily navigable codebase once we hit the 5 personyears level? I really have no idea how you would show it. You could talk about it and pray that the reader is familiar enough with the challenges of codebases that have grown beyond 'one person tinkering around for a weekend', but almost by definition I don't think you can bash that down into a tutorial or pitch you can consume in 5 hours, let alone 10 minutes.

Still, languages could do more. I think most languages are just kinda bad at natively supporting the idea of DAG-based modular isolation: As code bases grow larger you want to be able to strictly enforce the ability to take a much smaller chunk of that base, draw a circle around it, and say: This can be understood on its own, it is dependent only on these things, and only these parts are 'public API', 'public' here meaning: accessible to other circled-off parts of the entire code base.

Maybe because it demos bad. And that's a real shame. It's many orders of magnitude more important than 'You can just write `puts` to echo to terminal, and there is no need to declare a method for the main entrypoint!'

Re:Will low and no code tools ever truly disrupt tech develo... by galdosdi on Thursday August 11, 2022 @12:23PM (#32428055)
If I made a tool that was good for large codebases, I'd demo it by making a video ostensibly demonstrating someone unfamiliar with a large codebase reading a simple JIRA ticket for the first time and then using the IDE/language/toolset to explore the codebase and figure out what actually needs to be done, the whole time narrating and pointing out each feature of the language, tool, IDE, etc that makes this experience quicker, easier, better.

It could even be a relatively fake example and I think it would still land if your audience has had experience exploring large codebases

Re:Will low and no code tools ever truly disrupt tech develo... by to11mtm on Thursday August 11, 2022 @07:10PM (#32432961)
> It could even be a relatively fake example and I think it would still land if your audience has had experience exploring large codebases

The problem is this can get pervaded quickly.

In most extreme cases, the 'example' is literally only useful for hello-world style things, and anything more complex requires digging deep into docs to understand (I can think of at least one .NET library where this 'blogger-friendly' API structure exists...) And then as alluded to, every example shows this simple case that doesn't help anyone know how to configure things in ways that are testable/etc.

Re:Will low and no code tools ever truly disrupt tech develo... by failrate on Thursday August 11, 2022 @11:15AM (#32427008)
I appreciate your feedback but can you point to a single nocode tool that does not have this problem?
Re:Will low and no code tools ever truly disrupt tech develo... by galangalalgol on Thursday August 11, 2022 @10:21AM (#32426053)
This has been my universal experience with graphical code generation. Simple tasks are super simple, and easy to change, all good there, but the second you try to take that and grow it to do something you actually care about, it actually increases the complexity, as well as lengthening your development loop.
Re:Will low and no code tools ever truly disrupt tech develo... by danielvaughn on Thursday August 11, 2022 @10:26AM (#32426153)
It's like a very fast car that's perfect for driving straight into a ditch.
Re:Will low and no code tools ever truly disrupt tech develo... by habeyer on Thursday August 11, 2022 @02:49PM (#32430090)
I don't think low-code as a "generalized" solution will ever gain traction with developers, but has a future as small, focused tools to solve specific dev problems.
Re:Will low and no code tools ever truly disrupt tech develo... by metadaemon on Thursday August 11, 2022 @10:20AM (#32426046)
To expand on this, you will have to house the complexity somewhere. For low/no code tools, it's swept under the rug, or rather, under layers of abstraction.

I don't think it's a good idea (in a disruptive-amount of cases) to deviate from the simplicity of straight forward code.

We are growing closer and eventually will realize as a society that programming doesn't have to be hard or scary. I'm sure that the futuristic lay-person will have a better basal understanding of technology and how it's made.

Re:Will low and no code tools ever truly disrupt tech develo... by pessimizer on Thursday August 11, 2022 @10:38AM (#32426375)
> I'm sure that the futuristic lay-person will have a better basal understanding of technology and how it's made.

I feel like we actively discourage people from having an understanding of technology for fear that they will understand it and complain about it and/or be in a better position to judge the quality of alternatives to our products. As a result, it seems like more people understood basic computer operation and architecture 30 years ago than they do today, but maybe I'm in a weird bubble. I'd think with the opportunities for the far more opaque operations and algorithms that deep learning has given us, people will understand even less about computers in the future.

Re:Will low and no code tools ever truly disrupt tech develo... by hbn on Thursday August 11, 2022 @12:22PM (#32428047)
University professors in recent years have been finding themselves shocked that students don't understand how file systems work[1]. Additionally I recall hearing a teacher say that they were trying to teach something in a computer lab, and none of the students knew how to work a windowing system or multitask, and they only operated by having every program maximized and using one at a time, likely because it's the computing paradigm they grew up on, using smartphones and tablets.

I think the idiot-proofing of modern computing is only making people less aware of how computers work. Think of how many 20-something programmers got into programming from learning how to make Minecraft mods. Or even just learning to install a mod in the old Java version of Minecraft or any other PC game, where you had to dig into weirdly-named folders, copy-paste files into various directories, maybe modify a data file here and there. Kids growing up on the iPhone version of Minecraft are never being exposed to the basics of how their device works.

https://www.theverge.com/22684730/students-file-folder-direc...

Re:Will low and no code tools ever truly disrupt tech develo... by metadaemon on Thursday August 11, 2022 @11:07AM (#32426895)
I say it like I'm sure, but honestly I worry about this. It's possible we achieved such a technological peak that future generations won't be able to understand the basics; only the simplifications, leading to the premise of Idiocracy.

That being said, we've always built knowledge on top of the backs of others and never really had to deal with supporting its weight without necessarily knowing the basics. It would really make for an interesting case study if it led to the collapse of society.

Re:Will low and no code tools ever truly disrupt tech develo... by pessimizer on Thursday August 11, 2022 @12:35PM (#32428247)
> It's possible we achieved such a technological peak that future generations won't be able to understand the basics

I don't think it's this, and I don't think programming is so hard (it's the business logic that is hard when you have to specify it exactingly, to reference the thread.) I think that the manufacturers of the various computers we use make it unbelievably difficult and scary to touch anything, and cast quite a bit of suspicion on you for even wanting to change anything.

Re:Will low and no code tools ever truly disrupt tech develo... by pid-1 on Thursday August 11, 2022 @10:45AM (#32426505)
Anecdotally, most kids I know only interact with devices that feature strong guard rails like phones and tablets.

Those kids are generally more ignorant of how software systems work than someone who grew in the 2000s.

Re:Will low and no code tools ever truly disrupt tech develo... by toss1 on Thursday August 11, 2022 @11:33AM (#32427294)
Exactly! I was going to comment on the same phenomena.

We now have a "digital native" generation coming of age for whom the only thing they have known is a ubiquitous internet. We might expect that they would be more intimately familiar with the workings of the technology that has surrounded them than we could ever be.

Yet the opposite seems true, and I think you've put your finger on a primary reason — they've only interacted with devices that are basically appliances — you turn it on and use the app, but it is very difficult to get inside either the hardware or software. So, it just becomes another box that either works or doesn't.

It is not dissimilar to the generations of people who grew up with automobiles. the more "user friendly" they technology gets, the fewer people even understand what goes on 'under the hood'. If you don't need to understand how to change a tire or change the oil, or check the valve backlash, because these are rare events, few people even have a clue how to do it, unless someone took a special effort to teach them and they took a special effort to learn.

Kind of a sad paradox.

Re:Will low and no code tools ever truly disrupt tech develo... by alephnil on Friday August 12, 2022 @10:43AM (#32439424)
You saw the same with cars. Back in say 1950, most car owners would know how to do basic maintenance and repairs, both because the cars was mechanically simpler, but also less reliable. With higher reliability and more complex cars, that is no longer the case. Now the same thing is happening with computers.
Re:Will low and no code tools ever truly disrupt tech develo... by danielvaughn on Thursday August 11, 2022 @10:31AM (#32426238)
Totally agree. I've been working on a programming language for UI designers, but it's been years and I doubt I'll ever release it at this point. The idea was to offer a syntax that conforms to their vocabulary and mental models. So if you were designing a button:

  elements
    shape Wrapper
      text Label

  style Wrapper
    fill: blue

  style Label
    content: Click Me
    fill: white
edit: no harm in sharing the demo page that I never released. Warning - it's very broken. But it kinda works: https://matry.design/demo
Re:Will low and no code tools ever truly disrupt tech develo... by bartread on Thursday August 11, 2022 @10:40AM (#32426419)
Yeah, this is the reality. I'm not going to name the tool but I went to a training session for one of these things recently and it pretty quickly devolved into programming: looping, branching, conditionals, etc. Except rather than raw text this was rendered as (basically) a set of bubbles containing icons and text, and with arrows between them. It was even vertically oriented the way code is.

I actually pointed out in the training that this is still coding - at least at a scripting level - with all the pitfalls that involves. Nobody there really understood, and some actively tried to deny this point of view (I thought that was a bit weird and culty, but there you go).

One problem is that if you, as J Random HR Employee, implement something with a bug in it (which you will do at some point), you may not be well equipped to diagnose and fix the issue. It's not that hard, not at this level, but the training sort of glossed over that.

And then I asked a question about the fact that all these services that were being integrated together were distributed, so what happens when something fails part way through a flow? What happens with consistency across the different systems you're integrating? Well... it depends on the adapter for each specific integration, but in most cases you're supposed to implement failure handling yourself.

In fairness they showed us an example with failure handling and enforcement of consistency for something that integrated perhaps half a dozen systems together... and it looked pretty complex, just as you'd expect it to.

And that's where I think these things fall down. You can build a happy path flow pretty quickly - in fact I suspect a lot of non-programmers could do that - but it's what happens when things go wrong where it gets really gnarly.

Basically, if something goes wrong either IT or DevOps are getting a call, or somebody in a business, HR, or finance function is manually logging into a bunch of systems to update them and bring them into a consistent state.

I don't think this is terrible necessarily, but I do think the capabilities of these low/no code solutions - particularly with respect to their use by non-techies - are way oversold.

Re:Will low and no code tools ever truly disrupt tech develo... by sbf501 on Thursday August 11, 2022 @10:44AM (#32426486)
Automobile engines are also very complex, but no one talks about no-mechanic cars. In highschool where I grew up, the bottom academic 50% of boys ended up being mechanics of one type or another. At one point in time, being an auto mechanic was an elite, rare profession, and that complexity was encapsulated as something that low-performing academic students could bank on for a career.

I see the exact same thing with code: the complexity is eventually abstracted away until it becomes a vocation that doesn't require a college degree (think mechanical engineer vs mechanic, computer scientist vs programmer).

Re:Will low and no code tools ever truly disrupt tech develo... by hkleppe on Thursday August 11, 2022 @10:51AM (#32426608)
I see it differently.

I see the low-code stuff as an opportunity to let the business-folks handle the usecases where the complexity is low, and value of rapid iteration with deep domain-knowledge is more valuable.

Also, they might get a better understanding of why the code stuff might make sense when stuff is actually getting complicated :)

Re:Will low and no code tools ever truly disrupt tech develo... by ehnto on Thursday August 11, 2022 @11:02AM (#32426810)
I can imagine a few instances where giving a node-editor to business would have been a way better solution than having us re-implement it in code continuously. That said, that was always in the context of a larger, domain specific piece of software. Where I think low-code falls flat is trying to be a general purpose programming tool, which means for someone to do their domain specific tasks, learning how to make a general purpose program from scratch is a big ask. I think low-code editors should focus on this portion of the user's journey. Getting data in, data storage, manipulation, image processing, reaching out to APIs, all that stuff needs to be as easy as possible.
Re:Will low and no code tools ever truly disrupt tech develo... by drewcoo on Thursday August 11, 2022 @11:21AM (#32427099)
Low code isn't about tinkering under the hood. It's about going places.

Most cars have automatic transmissions now. Cars don't have manual chokes anymore. They're reliable enough now that most people don't need to know anything about repair, engine or otherwise, whereas that used to be widespread knowledge.

Re:Will low and no code tools ever truly disrupt tech develo... by sbf501 on Thursday August 11, 2022 @01:18PM (#32428928)
Yes, I agree. I thought that was obvious in my response. Modern cars are "low code", so mechanics don't need advanced degrees to fix them. Also: "the complexity is eventually abstracted away", which is exactly what you are saying.
Re:Will low and no code tools ever truly disrupt tech develo... by soco on Friday August 12, 2022 @05:18AM (#32436173)
Most cars do exactly the same thing, while programs there are not two the same.
Re:Will low and no code tools ever truly disrupt tech develo... by cmiller1 on Thursday August 11, 2022 @12:13PM (#32427910)
I always have the same response to discussion of low/no-code and graphical programming environments:

If you think it will make things easier you have confused typing to be "the hard part"

If you think it isn't real programming, you again have confused typing to be "the hard part"

Re:Will low and no code tools ever truly disrupt tech develo... by snarf21 on Thursday August 11, 2022 @10:11AM (#32425874)
Complexity is definitely the problem. I think the main problem with most LC/NC solutions is that they offer TOO MUCH customizability. I think there will be more in roads when it becomes a little more opinionated. People always think they want all these features and weird use cases but they forget about any kind of 80/20 or 90/10 rules.
Re:Will low and no code tools ever truly disrupt tech develo... by rvense on Thursday August 11, 2022 @10:40AM (#32426418)
The hard part of my job is rarely the programming itself. The hardest part is figuring out what to build, in enough detail for the blinking computer to understand it.
Re:Will low and no code tools ever truly disrupt tech develo... by jerf on Thursday August 11, 2022 @10:29AM (#32426210)
The classic Mythical Man Month makes a crucial distinction between "accidental" and "essential" complexity. Accidental complexity is stuff that it is in your solution, but is not necessary. For example, you added a layer of abstraction that ultimately isn't necessary and doesn't have benefits outweighing the costs. Essential complexity is intrinsic to the problem itself. For example, if you write software to help you file your taxes, you have a certain fundamental amount of complexity that no amount of clever code can get you around, because the problem itself is complicated.

One of the core errors of the most breathless low-/no-code advocacy is that they clearly see that code as it stands today is very complicated, but they think it's all accidental complexity. If we just did the right things... if we just made it easy enough... if we just had the right visual user interface... all this complexity could go away! And then anyone could code! And lo, Utopia would emerge.

There is a grain of truth in this. Code does have accidental and unnecessary complexity. Some traditions and codebases have more, some have less. The low-/no-code approaches can help with this... though I have to qualify it a bit because at times they add their own accidental complexity to problems that traditional approaches don't. But they can be easier sometimes, certainly.

The problem is that even a hypothetically perfect low-/no-code solution with absolutely zero accidental complexity still wouldn't do anything to eliminate the essential complexity of the problems people want solved. I don't care how amazing your no-code UI is. I don't care how visual it is, and how you can grab any 12-year-old off the street and show them your UI and they can grasp everything that's going on. I don't care how much work you put into it. If someone tries to use it to create a tax preparation service, they are going to ram face first into the brick wall of the essential complexity of the problem.

No matter what you do, there are going to be people in the future who have developed a skill set in dealing with that sort of thing, and it isn't going to be a skillset everyone develops to the same degree. Even if you stipulate a domain expert who knows literally everything about the tax code, it will still be a distinct skill to learn how to explain that correctly to a computer, even a zero-accidental-complexity computer.

It is further inevitable that the people dedicated to that will have their own toolset that tunes the expertise and power level to the fact that they are able to pour more time into developing skills that have a longer-term payoff than people who are "programming" for six hours a year.

It is literally impossible for low-/no-code to take over. Even if I pushed a magic button that replaced everything in the world with low-/no-code solutions right now, the world would still bifurcate into the people who further develop their skills with the system, learn how to use it efficiently and effectively, and people who do other things like build houses, provide clean water, etc. The only way to make it so there is no such thing as a "programmer" is to forcibly cap the capability of the universal low-/no-code system so low that there is no way to become better at it, which is just inconceivable.

Re:Will low and no code tools ever truly disrupt tech develo... by galdosdi on Thursday August 11, 2022 @12:39PM (#32428329)
Everything you said would happen, I saw happpen. I literally witnessed this.

I started my career at a company that sold a graphical programming product. It's exactly the typical "no code" thing described elsewhere. Nodes and edges to implement Ifs, Loops, actions, subroutine calls, etc.

We sold this to customers but also had an in house professional services type department that used it. Those folks were indeed at a whole nother level with that tool and knew all kinds of tricks and had developed special scripts to transform the XML formatted files that the "programs" were saved in, etc. They had developed a long slew of best practices to try to tame some of the problems of the tool.

Then someone added a "execute arbitrary javascript" action and it was open season on everything...

I think when I left someone was working on a linter!

Re:Will low and no code tools ever truly disrupt tech develo... by marcosdumay on Thursday August 11, 2022 @11:59AM (#32427710)
I venture the opinion that the overwhelming majority of the complexity on most current software is accidental. It's the kind of share that you measure in 9s, not on raw percentage.

Some stack that avoids all that complexity would be technically "low-code". But the format of the low-code stacks people push around today is incompatible with general development, and doesn't actually make most of the complexity go away.

Re:Will low and no code tools ever truly disrupt tech develo... by danielvaughn on Thursday August 11, 2022 @10:46AM (#32426521)
Perfect way to say it, yes. It's a mirage in the desert that we'll be chasing forever, because to the business stakeholder's eyes, the water is just right there over that hill.
Re:Will low and no code tools ever truly disrupt tech develo... by konschubert on Thursday August 11, 2022 @10:40AM (#32426415)
Great comment, fully agree.
Re:Will low and no code tools ever truly disrupt tech develo... by bloqs on Thursday August 11, 2022 @11:03AM (#32426832)
This is the issue. I've worked a lot with low and no code tools, and what happens is the complexity becomes absolutely ridiculous to do very simple operations.

A perfect equivalence is if you were to do math exercises but instead of operators you used written English prose to describe what you are doing.

Much less intimidating, but mind blowingly verbose

Re:Will low and no code tools ever truly disrupt tech develo... by Footkerchief on Thursday August 11, 2022 @12:21PM (#32428038)
I basically agree that most complexity lies in correctly formulating ideas -- though depending on language, there is a great deal of time and effort wasted on the overhead of expressing those ideas.

For example, Javascript's stdlib has long lacked tools for simple data transformations (group array items by a function, transform values of an object by a function, etc). These operations can still be accomplished, but only by writing bug-prone manual transformations or using third-party packages like Lodash. There is no standard idiom for expressing these ideas, which causes significant overhead.

No-code/low-code, in contrast to general purpose languages, is savagely optimized for idiomatic expression of a small set of ideas, at the expense of the ability to express any arbitrary idea.

Re:Will low and no code tools ever truly disrupt tech develo... by pxue on Thursday August 11, 2022 @10:43AM (#32426473)
Low code allows "less" sunken cost when the inevitable misalignment of requirements happen.

It's same reason why design starts on napkins, then wireframes, and then low def, high def and eventually a fully interactive prototype.

In software we dive into code way to eagerly and way too early in the product process.

Equating no/low code tools to full on dev is impossible. Just as you wouldn't/shouldn't equate a design prototype to napkin scribbles.

Re:Will low and no code tools ever truly disrupt tech develo... by ElectricalUnion on Thursday August 11, 2022 @12:08PM (#32427822)
> In software we dive into code way to eagerly and way too early in the product process.

Low code doesn't help at all? It's still code.

> Low code allows "less" sunken cost when the inevitable misalignment of requirements happen.

Sunken cost is about investment already incurred that can't be recovered. It's very likely that low code increases software sunk cost problems.

If you use low code as a prototype thing to throw away, that's almost a complete waste of investment.

Wrong low code often is much harder to programmatically test for correctness and debug, so you often need a larger investment to fix it.

Re:Will low and no code tools ever truly disrupt tech develo... by 88913527 on Thursday August 11, 2022 @10:18AM (#32426009)
The problem is difficulty in developing the business requirement. I have to plead with Product owners to give me more than a few sentences about what it is they want to built. It makes no difference what the tool we use to express requirements is if we cannot have a firm grasp of the requirements themself.
Re:Will low and no code tools ever truly disrupt tech develo... by burlesona on Thursday August 11, 2022 @10:50AM (#32426587)
This is actually the strongest case in favor of "no code" tools IMO. Get the PM to spend time actually modeling what they want, as close as they can get, in no-code tools. They get to bash their head against the wall for a while until they give up and bring in engineering. But now (a) the PM actually has some intuition around how complex things are, and (b) their no-code solution is probably a better approximation of a spec than they would have written.
Re:Will low and no code tools ever truly disrupt tech develo... by ianmcgowan on Thursday August 11, 2022 @03:56PM (#32430953)
Much the same experience using Excel - people describe a problem in English with a lot of glossing over of details, but asking them to mock something up in a spreadsheet brings home some of the complexities.
Re:Will low and no code tools ever truly disrupt tech develo... by pessimizer on Thursday August 11, 2022 @12:38PM (#32428320)
That's an interesting perspective. No-code tools to enable businesspeople to write good specs.
Re:Will low and no code tools ever truly disrupt tech develo... by soco on Friday August 12, 2022 @05:16AM (#32436159)
That's just the start. Soon the business people will become overwhelmed and pass ALSO this task to the developers.
Re:Will low and no code tools ever truly disrupt tech develo... by gautamdivgi on Thursday August 11, 2022 @11:39AM (#32427393)
If you work for a company where software is not a core function the explanation you posted will sound like an alarming number of dollars to your executives.

The problem these days is everyone wants great software (big tech impostor syndrome) without splurging on software talent like big tech. That’s the sweet spot low code companies target when marketing.

Graphical coding is bad in general. It’s not just paid products. I’ve had the misfortune of using Apache NiFi - which is “low code data movement”.

Re:Will low and no code tools ever truly disrupt tech develo... by q-big on Thursday August 11, 2022 @10:27AM (#32426176)
> They see these weird characters and it looks like gibberish and they assume that the people who understand this gibberish are somehow on another level of intelligence.

Honestly: if you come to such a (dubious) conclusion, the conclusion is actually likely true (with respect to you), because if you were smarter, you would sooner or later realize the mistake in this flow of thoughts.

Re:Will low and no code tools ever truly disrupt tech develo... by danielvaughn on Thursday August 11, 2022 @10:49AM (#32426571)
I myself had that perception before I learned how to code. I even still have that perception when it comes to math. Every single time I hear mathematicians talk on HN I feel like I hear a whole new set of words I've never heard before, and looking at math diagrams makes my brain hurt. It makes you feel stupid, but it's just an illusion.
Re:Will low and no code tools ever truly disrupt tech develo... by q-big on Thursday August 11, 2022 @02:47PM (#32430070)
> It makes you feel stupid, but it's just an illusion.

You realized where the mistake in your flow of thoughts is. This is, as I wrote, a good sign.

Re:Will low and no code tools ever truly disrupt tech develo... by stirfish on Thursday August 11, 2022 @10:38AM (#32426392)
Can you help me be smarter?
Re:Will low and no code tools ever truly disrupt tech develo... by q-big on Thursday August 11, 2022 @02:45PM (#32430052)
> Can you help me be smarter?

If you want to become smarter in math: Plan to understand work that some Fields medalists of your choice produced. If available, get a modern textbook treatment of their work (these, in most cases, are better for understandable than their original papers). Of course, you won't understand much at the beginning. So you know in what areas on mathematics you have deep knowledge deficits. So get some good textbooks on these topics to fill these knowledge deficits. Iterate.

-

If you want to become smarter in physics (the following advice is what a good friend of me gave who I really trust regarding this): Start with the 10 books of "Course of Theoretical Physics" by Lev Landau and Evgeny Lifshitz.

> https://en.wikipedia.org/wiki/Course_of_Theoretical_Physics

Having read these books should (according to him) give you at least some very basic foundation of physics on which you can then, as a next step, build by reading much more advanced textbooks.

Re:Will low and no code tools ever truly disrupt tech develo... by hkleppe on Thursday August 11, 2022 @10:46AM (#32426527)
> My main issue with low-code/no-code is that it attempts to solve the complexity problem, without understanding what "complexity" is.

I get your point. But without low/no-code tools I would argue a lot of simple workflows have to be implemented using code. These usecases, where the technology-side is simple, is a good fit for low/no-code platforms IMO

Re:Will low and no code tools ever truly disrupt tech develo... by chasd00 on Thursday August 11, 2022 @01:16PM (#32428891)
The magic will always be in deciding where to stop using low/no-code and start using actual code. domain specific and opinionated low/no-code tools with clear boundaries on what the tool can and can't do would be a good thing but the markets would be small and that's a bad thing.

I've seen teams spend a lot of time in low/no-code tools and either it grows more complex than actual code or they resort to the escape hatch (node that executes user defined code) and the visual tool basically becomes a container for actual code.

Also, the dream usually is put the effectiveness of software developers into the hands of people who are not software developers. However, it never seems to fail that the low/no-code work ends up back in the lap of software developers because of the typical product/project delivery lifecycle.

Re:Will low and no code tools ever truly disrupt tech develo... by to11mtm on Thursday August 11, 2022 @07:15PM (#32433006)
> I've seen teams spend a lot of time in low/no-code tools and either it grows more complex than actual code or they resort to the escape hatch (node that executes user defined code) and the visual tool basically becomes a container for actual code.

The ideal state alluded to is that Dev teams write modules that cleanly 'plug in' to the flowchart mess, but the reality is that a Dev team that can write code at that level (in a modern world, it implies at least an abstract/subconscious understanding of mid-advanced FP-ish concepts, including merging Procedural things like calling the bizarre webservice you're probably integrating with, while striving for idempotency based on the provided args/context.)

At that point, said devs likely are of a skillset they could build a framework for lower TCO, or at the very least are productive enough that they aren't the problem.

Re:Will low and no code tools ever truly disrupt tech develo... by danielvaughn on Friday August 12, 2022 @07:54AM (#32437106)
Agreed. The cynic in me hears business execs saying “we want non-programmers to be as effective as programmers”, and what I really hear is “we don’t pay these people nearly as much, can we get them to do it instead?”
Re:Will low and no code tools ever truly disrupt tech develo... by civilized on Thursday August 11, 2022 @10:59AM (#32426753)
Reminds me (once again) of the famous Salesforce marketing campaign, "The End of Software".

What they meant was "the end of on-prem software and its installation headaches" because the software was in the cloud - which was innovative at the time.

What appeals to people in "The End of Code" is the end of being forced to use a superficially illegible formal language.

Re:Will low and no code tools ever truly disrupt tech develo... by treis on Thursday August 11, 2022 @10:29AM (#32426209)
IMHO there's no such thing as "no code" or "low code". It's "bad code". Or less catchy programming languages that usually lack the tools and features that widely used programming languages do.
Re:Will low and no code tools ever truly disrupt tech develo... by ren_engineer on Thursday August 11, 2022 @12:01PM (#32427724)
it just comes down to abstraction and associated tradeoffs. Low-code/no-code fundamentally isn't all that different from the difference between using Python vs a lower level language.
Re:Will low and no code tools ever truly disrupt tech develo... by andsoitis on Thursday August 11, 2022 @11:30AM (#32427244)
I don't disagree.

At the same time, on a deeper level there are things that can be hard to deal with like asynchrony, performance, etc. These are not social but inherent in computing architecture etc.

Re:Will low and no code tools ever truly disrupt tech develo... by catwind7 on Thursday August 11, 2022 @10:57AM (#32426719)
formalized expression is detail and while that detail may not be complex for a programmer it can be completely meaningless to a user. I agree with you in part but i think worth recognizing that if we all had this attitude then we wouldn't be building business applications / consumer apps for non-developers

whether you think it's complex or not, we're hiding information on procedural tasks from users in the products we build because information to someone who is not a programmer IS complex

Re:Will low and no code tools ever truly disrupt tech develo... by habeyer on Thursday August 11, 2022 @02:39PM (#32429976)
Agreed 100%.

You CANNOT solve complexity by just making things "visual". Biggest low/no-code mistake.

Re:Will low and no code tools ever truly disrupt tech develo... by graypegg on Thursday August 11, 2022 @10:32AM (#32426262)
Exactly. It’s procedural writing at the end of the day: designed by humans, for humans to write.
Re:Will low and no code tools ever truly disrupt tech develo... by analog31 on Thursday August 11, 2022 @12:52PM (#32428552)
A contributing factor is the belief that "everything graphical is easier."