• hperrin@lemmy.ca
    link
    fedilink
    English
    arrow-up
    33
    arrow-down
    8
    ·
    2 days ago

    “No-code software”, aka, CMS.

    Why do we need a new term that is vastly worse than the old term?

    • chobeat@lemmy.mlOP
      link
      fedilink
      arrow-up
      25
      arrow-down
      1
      ·
      2 days ago

      A CMS is a specific type of no-code software. N8N or Appsmith are definitely not a CMS

      • hperrin@lemmy.ca
        link
        fedilink
        English
        arrow-up
        8
        arrow-down
        2
        ·
        edit-2
        2 days ago

        Can you define no-code software?

        From the article:

        You have a program, WordPress, to create more software, namely your specific website. It is more than a bunch of options to select, but it doesn’t really require coding for most things.

        So… is it just software that has a plugin architecture?

        • chobeat@lemmy.mlOP
          link
          fedilink
          arrow-up
          23
          arrow-down
          2
          ·
          2 days ago

          You’re focusing too much on the WordPress example. There are a dozen tools mentioned in the article that will clarify what’s possible.

          • hperrin@lemmy.ca
            link
            fedilink
            English
            arrow-up
            10
            arrow-down
            12
            ·
            2 days ago

            I don’t see what these things have in common other than just being software tools, generally for managing content. And I really don’t understand the term “no-code software”. It’s all built with code. If I use an operating system to run a program, that doesn’t mean I’ve invented some sort of new software system, that’s just what they’re designed to do. Using a tool in a way that it’s designed to be used isn’t really novel.

            • Luke@lemmy.ml
              link
              fedilink
              English
              arrow-up
              35
              ·
              2 days ago

              On the off chance you aren’t being intentionally obtuse to troll:

              No-code is a term that refers to the perspective of the end user. Of course it is built using code, that’s not the point. The person ultimately using it doesn’t need to use any code to construct whatever the tool is enabling (automatons, websites, etc), which massively increases the target demographic who can use the tool.

              • hperrin@lemmy.ca
                link
                fedilink
                English
                arrow-up
                9
                arrow-down
                5
                ·
                2 days ago

                Yes, I get the intention of the term. I don’t understand why it exists. It’s unnecessary. Most software is designed to not require you to write code to use it.

                • Luke@lemmy.ml
                  link
                  fedilink
                  English
                  arrow-up
                  4
                  ·
                  edit-2
                  2 days ago

                  Hmm okay, that’s true. I guess there’s another aspect missing from my description above then: no-code is for doing tasks in ways that resemble how you’d do them with code, but without directly using code.

                  Think about the nodes in Blender or Node-RED, or the blocks in visual scripting for kids to learn. It’s using the same concepts of code, but with varying amounts of abstraction depending on which example we look at.

                  WordPress is a CMS, that’s true, and is usually how it’s described. Specifically, though, the block editor is what I assume the OP was referring to as no-code. That part of WordPress is abstracted more than a tree of nodes in Blender, but they’re both examples of an effort by those softwares to make doing those tasks more approachable to users.

                  Inkscape could probably also be described as no-code if you squinted hard enough, since it’s letting you manipulate SVG tags directly without needing to open a text editor and know the SVG spec.

                  • bufalo1973@piefed.social
                    link
                    fedilink
                    English
                    arrow-up
                    1
                    ·
                    1 day ago

                    Then every office program is a “no-code”. And every program from the user perspective when the user is not coding is a “no-code” 🤷🏻‍♂️

            • iglou@programming.dev
              link
              fedilink
              arrow-up
              2
              ·
              1 day ago

              “no-code” software is a very specific category of software that aims to enable users to build something that usually is built by a dev, without needing one.

              And while “no-code” can be a weird name, it makes sense when you read the definition I just gave. Just like “serverless” does not mean there is no server involved (obviously), but simply means you don’t even need to think about the server part.

              • hperrin@lemmy.ca
                link
                fedilink
                English
                arrow-up
                3
                arrow-down
                2
                ·
                1 day ago

                Yes, so it’s software with logic abstractions. Why do we need a name like that? That covers almost all software, and you can just say extensible and configurable software. That name actually makes sense.

                • iglou@programming.dev
                  link
                  fedilink
                  arrow-up
                  1
                  ·
                  1 day ago

                  No, it definitely does not cover almost all software. Most software does not aim to allow a random user to build something that usually requires a dev.

                  When you use an OS, you build nothing. When you use a browser, you build nothing. When you use a game, you build nothing. When you use a graphics editor, you build something, but it’s not something that a dev could do.

                  I could go on with a list of almost all software like this, but that’s not a good use of my time, and I hope it is not necessary.

                  • hperrin@lemmy.ca
                    link
                    fedilink
                    English
                    arrow-up
                    2
                    arrow-down
                    2
                    ·
                    edit-2
                    1 day ago

                    What do you mean “usually requires a dev”?

                    I am a dev, and nothing I’ve built (by writing code) is something any of this software could do. Why would someone hire me to build something that’s already available? The reason I write things is because they can’t be done with existing software.

                    I build things with an OS all the time. I built a media center PC by installing Bazzite on a mini pc. Doesn’t that make Bazzite no-code software? I also built a living room gaming console with Bazzite. And I built an automatic sorting system in my Minecraft world. Minecraft is no-code software. I built some bookmarklets in Firefox, so Firefox is no-code software. (Ok, to be fair, I wrote code to do that, so I guess Firefox is code software.) I built a parametric font with Inkscape. Isn’t that no-code software? Oh, I built a 3D printed wood joiner bracket with FreeCAD, so that’s no-code software too.

                    Does none of this count? What is the exact specifications of the things you can build with a piece of software that make it no-code software vs not no-code software?

            • Joël de Bruijn@lemmy.ml
              link
              fedilink
              arrow-up
              6
              ·
              2 days ago

              Naming things is hard. But if you have a better category name to distinguish from classic cms software I am all ears.

              And yes no-code software itself is written with code.

              But I dont mind having a name for software in which

              • you can add and manage workflows
              • you can define tables/data/attributes and views
              • that are not scoped to specific use cases up front
              • query and scripts are abstracted away by a friendy UI
              • hperrin@lemmy.ca
                link
                fedilink
                English
                arrow-up
                3
                arrow-down
                2
                ·
                edit-2
                2 days ago

                It is classic CMS software. Wordpress is listed. That’s an CMS. And what you listed doesn’t fit all the things called no-code in the article.

                Maybe this would be easier. Can you name some software that isn’t no-code software and tell me why? (I mean, obviously other than software you use to write code.)

                • chaos@beehaw.org
                  link
                  fedilink
                  arrow-up
                  3
                  ·
                  1 day ago

                  My characterization would be that there’s a spectrum here:

                  • 100% yes code: compilers, IDEs, scripting environments, databases, you wanna get something done, you are going to be specifying it in something that at the very least looks like traditional source code.
                  • Completely on the other side of the spectrum, traditional consumer-oriented software: word processor, web browser, accounting/bookkeeping (not spreadsheets though, we’ll get to those), photo/video/audio editor, maps, music player, etc.

                  That first side of the spectrum is pretty easy to pin down. It has little to no metaphor or abstraction, and the pointy tip of this side is no metaphor at all, just writing machine code and piping it directly into the CPU. A higher level language will let you gloss over some details like registers, memory management, multithreading, maybe pretend you’re manipulating little objects or mathematical functions instead of bits on a wire, but overall you are directing the computer to do computer things using computer language, and forced to think like a computer and learn what computers can and cannot do. This is, of course, the most powerful way to use a computer but is also completely inaccessible to almost everybody.

                  The second, I’d link together as all being software with a metaphor that is not particularly related to computing itself, but to something more real world. People edited music by physically splicing tapes together, an audio editor does an idealized version of that. Typewriters existed, and a word processor basically simulates that experience. Winamp wasn’t much more than a boom box and a sleeve of CDs. There is usually a deliberate physicality and real-world grounding to the user’s mental model of the software, even if it is doing things that would be impossible if the metaphor were literal. You don’t need to use code, but you also don’t get anything code-like out of it.

                  No-code is in between. It’s intended for a similar audience as the latter category, who want a clear, easy-to-understand mental model that doesn’t require a computer science degree, but it tries to enable that audience to perform code-like tasks. Spreadsheets are the original example of this; although they originate as a metaphor for paper balance sheets, the functions available in formulas fundamentally alter the metaphor to basically “imagine if you had a sheet of paper that could do literal magic” and at that point you’re basically just describing a computer with a screen. Everything in a spreadsheet is very tactile, it’s easy to see where your data is, but when you need to, you can dip into a light programming environment that regular people can still make work. In general, this is the differentiator for “no code” apps: enabling non-coders to dip their toes into modifying program behavior, scripting tasks, and building software. They’re limited to what the tool provides, but the tool is trying to give them the power that actual coding would provide.

                  I’d never thought of WordPress as low-code, but I think that fits. Websites go beyond paper or magazines, and WordPress allows people to do things that would otherwise require code and databases and web servers and so on.

                  • hperrin@lemmy.ca
                    link
                    fedilink
                    English
                    arrow-up
                    3
                    arrow-down
                    1
                    ·
                    1 day ago

                    So basically any software that has logic abstraction? So, almost all software. Why not call that logic-abstraction software? Why invent some (seemingly purposefully) confusing term that doesn’t even apply to half of what people label with it.

                    Spreadsheet software has literal programming languages written for it. That’s not no-code. VBA is code. Also, I wouldn’t use the term magic, but rather math. Spreadsheets are akin to a sheet of paper that can do math. If you write the math wrong, you get the wrong answer.

                    Browsers are ridiculously code-full. Press F12 and there’s a terminal. You can even launch a remote debugging environment.

                    Same as video and audio editors. With very few exceptions, professional media editors have full fat scripting language support built in. Same with bookkeeping software.

                    I just think the term “no-code software” is essentially meaningless, vague & ill defined, and therefore useless. Just say advanced or extensible software.

            • Joël de Bruijn@lemmy.ml
              link
              fedilink
              arrow-up
              2
              arrow-down
              3
              ·
              2 days ago

              No-code goes further then the “configuration” level and its features are very generic, to make endless use cases possible.

              • hperrin@lemmy.ca
                link
                fedilink
                English
                arrow-up
                3
                arrow-down
                2
                ·
                2 days ago

                It’s a meaningless term then. Is Apache “no-code software”? What about Windows?