a topic every dev will stumble upon sooner or later are no code/ low code solutions and the questions around it.
Especially when you are new to the trade you might doubt if it’s worth learning with these options around. I’m currently trying out Webflow and similar web development services.
Has no code/ low code have an impact on your job? After all I read
and watched I’m not too worried. Most apps will break and experience
“bit rot” at some point and guess who’s coming to save the day: The
That said are there nc/lc services that are useful and you are even
implementing? I will focus on the frontend and backend nc services
could save development time for my projects for example.
Thanks for your insights and thoughts.
I joined the professional software development field full-time back in 2001. I think it was the first time I had heard of software that does coding. And for one or two years where I worked, it was discussed often. (I think at the time there was a kind of visual studio ide that looked up Java functions and their params. for you which was a very nice feature back then and could do some limited automatic code development but I cannot recall so many years later what the exact details were)
But my point here is, I agree that there is no real concern here. These systems are mainly to allow people who cannot code to make their own apps, and essentially are removing barriers to entry for regular people to be online and offer services online. They are not replacing any real jobs in the market. (Not yet anyway). But maybe they threaten contractors who do the same piece of work over and over for different small business customers. (I don’t need a web dev if I can just click a few buttons and have a hosted website with usable graphics and commonly used features within a few days)
Having said that, I do hope they have developed beyond what I remember in terms of automated testing. I especially recall the monotony of testing graphical interfaces back then! (Not to mention the reams of documentation on how to test every button and link!) I hope people are not still suffering through that!
Same goes for internationalization of these GUI testers. We had whole teams of testers descend from around the world to sit in a room and test interfaces all day because we couldn’t automate the non-English tests.
The market for simple websites has been dead for a long time I think. Wordpress has been here for while.
Talking of Wordpress, that even created jobs I got from a video today, because people added more features to turn what was a blog service into an app builder.
I noticed that most of the Wordflow vids out there are already two years old, smells like a hype and WF seems to have the thumb on you with expensive hosting.
You would be surprised then that I am often asked by friends with small businesses and small charities to help with this. (I have had to turn everyone down because they always need webstores for cheap with customization and I currently don’t have the skills they need nor do I have the time or patience to shepherd them through it)
Someone please tell all people outside the industry that a modern costume E commerce app is one of the most complex projects out there. If you want to have a site/ app that doesn’t break when more than two people are using it.
You will still get folks that want you to build Amazon for a grand, sure.
I worked at a no code startup for a number of years.
The #1 problem with the entire concept of a no-code system is the balance between abstraction and complexity. It’s the same problem developers face at the code level.
Abstraction is where you take a complex problem and “abstract” it away to a simpler interface so it’s easier to approach. However the disadvantage of this is you don’t get as much control to the “lower levels” of your solution.
Complexity is where the problem you’re trying to abstract to be too complex to make a simple enough via abstraction while still providing enough capabilities to solve the actual problem(s).
You see this struggle with the advent of frameworks/languages/libraries being created all the time. Each with their own “abstraction” to tackle some level of “complexity”.
So this brings us to no-code platforms. On one side you can create very powerful and complex no-code platforms, however at some point you create a platform that has minimal abstraction as it can tackle highly complex problems. A prime example are Excel spreadsheets, which are very powerful, useful and flexible, but they are also very complex to the point you can higher “pros” who know how to use Excel.
Ultimately no-code platforms fit a firm niche at a specific level of complexity where someone who isn’t a coder can understand and work on a project leveraging the correct level of complexity that matches with their given use-case. In those cases no-code platforms work great.
It’s only once you want to expand out or beyond that specific level of complexity do you run into problems. This is the exact same problem if you’re using the wrong tools/approaches within code. The difference is as a developer you already are at a significantly higher complexity level in regards to what you can leverage. IE code is its own “solution” that is a specific abstraction to solve basically any problems.
So long story short, if you know how to code, you have a path in solving any problem. The same isn’t true if your locked into a specific no-code platform’s capabilities which are built specifically for specific problems.
That’s interesting, that we have someone that worked in a no code start up. Did you write or use it and what was your role?
If you dig through old posts on this forum or go check out any community board for programmers you will see that its extremely common for a new student to ask some variation of “will website builders/no-code tools make us obsolete?” and all of the experienced developers saying some variation of “No. The job keeps changing, but more code is being written than ever before.”
As programmers, automating anything that can reasonably be automated is one of our goals. If we find ourselves writing the same code repeatedly, copy-pasting heavily, or reusing skeleton code we try to make that process less manual. We write helper functions and scripts and templates to make our work less repetitive and boring. That’s what these low/no code platforms are. Do you know what else they are? Software. And someone needs to write that software.
The primary job of a developer isn’t typing syntax. It’s understanding problems and inventing solutions.
As a newcomer I was wondering as well of course, but soon found out that the no code companies don’t talk much about how niche their products still are.
Like bradtaniguchi said, with more abstraction you give up control. Control you don’t want to lose for example in complex E commerce apps. Too much can break that can result in big financial losses. I’m not too worried anymore.
I’m a developer so I helped develop the no-code software itself. I also used it internally (dogfooding) and was able to interact with customers who used the software and pointed out their pain points.
The pain points are more or less generalized above, and are also the same pain points we saw in competitor products.
An e-commerce app is a use-case that can be handled rather gracefully as its such a common problem you can “abstract” away a large majority of it and cover all the expected complexities.
Think of an online store front, odds are whatever features you think of someone else though of. This is where lots of no-code software exists and can cover this use-case. As selling stuff online is very common there can be a range of choices that each provide their own take on this problem.
However, this sort of problem is “abstracted” away from “no-code” to really “what-code” sort of level where you aren’t really focused on building software, rather your focused on solving a specific problem using dedicated software.
For example, you wouldn’t think about “no-code” if you’re writing an email, you’re just writing an email. The problem of actually sending/receiving emails is complicated, but it’s also a well examined use-case.
Its only when the problem becomes less common, or completely new do you start getting into “no-code”/“low-code” or “code-code” situations as you need to build something that doesn’t already exist.
Users do not care how a site is made. They care about its usefulness.
Upper management does not care how it is made, they care about the bottom line.
Developers love new technology, reinventing the wheel, and over-engineering. They often forget about the users and management.
Low/no-code solutions are quick out the gate but they do not scale and eventually, they will have to be rebuilt. This may be the right choice in some cases as you can get an MVP out the door quickly and see if it works or not.
It is up to the developers to make sure they do not bet on a horse that will die before it reaches the finish line. Low/no-code is often not a good long-term solution. But there are instances where low/no-code solutions are much better than poorly implemented from the ground-up solutions, like E-Commerce systems for example.