Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (Cyborg)
  • No Skin
Collapse
Brand Logo

CIRCLE WITH A DOT

  1. Home
  2. Uncategorized
  3. In the last week, I’ve seen an uptick in ‘AI is good for boilerplate’ posts.

In the last week, I’ve seen an uptick in ‘AI is good for boilerplate’ posts.

Scheduled Pinned Locked Moved Uncategorized
25 Posts 19 Posters 0 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • david_chisnall@infosec.exchangeD david_chisnall@infosec.exchange

    In the last week, I’ve seen an uptick in ‘AI is good for boilerplate’ posts. It is 2026. Metaprogramming is over 50 years old. Why are we writing boilerplate at all, much less creating expensive tools that let us write more of it faster?

    eka_foof_a@spacey.spaceE This user is from outside of this forum
    eka_foof_a@spacey.spaceE This user is from outside of this forum
    eka_foof_a@spacey.space
    wrote last edited by
    #3

    @david_chisnall
    Agendas...

    I suspect somebody is desperate to drown out bad publicity, and/or make their IPO seam better.

    1 Reply Last reply
    0
    • david_chisnall@infosec.exchangeD david_chisnall@infosec.exchange

      In the last week, I’ve seen an uptick in ‘AI is good for boilerplate’ posts. It is 2026. Metaprogramming is over 50 years old. Why are we writing boilerplate at all, much less creating expensive tools that let us write more of it faster?

      P This user is from outside of this forum
      P This user is from outside of this forum
      peterludemann@mathstodon.xyz
      wrote last edited by
      #4

      @david_chisnall Boilerplate is a strong indicator that the API is badly designed. "Wizards" even moreso.

      1 Reply Last reply
      0
      • david_chisnall@infosec.exchangeD david_chisnall@infosec.exchange

        In the last week, I’ve seen an uptick in ‘AI is good for boilerplate’ posts. It is 2026. Metaprogramming is over 50 years old. Why are we writing boilerplate at all, much less creating expensive tools that let us write more of it faster?

        yeslikethefood@infosec.exchangeY This user is from outside of this forum
        yeslikethefood@infosec.exchangeY This user is from outside of this forum
        yeslikethefood@infosec.exchange
        wrote last edited by
        #5

        @david_chisnall I've had this conversation so many times with people and it's has confused me since day one. Isn't the point of boiler plate to write once and use those same pieces forever? I suspect this actually means that it creates scaffolding when they don't know how to start a project, which to me is more of an indictment on project setup and layout tooling than anything else.

        1 Reply Last reply
        1
        0
        • david_chisnall@infosec.exchangeD david_chisnall@infosec.exchange

          In the last week, I’ve seen an uptick in ‘AI is good for boilerplate’ posts. It is 2026. Metaprogramming is over 50 years old. Why are we writing boilerplate at all, much less creating expensive tools that let us write more of it faster?

          jscholes@dragonscave.spaceJ This user is from outside of this forum
          jscholes@dragonscave.spaceJ This user is from outside of this forum
          jscholes@dragonscave.space
          wrote last edited by
          #6

          @david_chisnall The exact meaning of "boilerplate" in these discussions is unclear to me.

          Are we talking about the sort of common cross-project tasks that libraries (our own or other people's) can be brought in to solve? E.g. reading and validating a config file, handling HTTP requests, playing audio.

          Or, is it the sort of smaller utility functions we all end up writing/copying into every project? Formatting a duration, pluralising some text.

          Is it both, or something else entirely? Are these in fact the same?

          root42@chaos.socialR 1 Reply Last reply
          0
          • david_chisnall@infosec.exchangeD david_chisnall@infosec.exchange

            In the last week, I’ve seen an uptick in ‘AI is good for boilerplate’ posts. It is 2026. Metaprogramming is over 50 years old. Why are we writing boilerplate at all, much less creating expensive tools that let us write more of it faster?

            rommix0@mindly.socialR This user is from outside of this forum
            rommix0@mindly.socialR This user is from outside of this forum
            rommix0@mindly.social
            wrote last edited by
            #7

            @david_chisnall my question to you what is your solution? No sense complaining about boilerplate when you don't either have a solution or an idea for an alternative.

            1 Reply Last reply
            3
            0
            • R relay@relay.publicsquare.global shared this topic
              R relay@relay.mycrowd.ca shared this topic
            • jscholes@dragonscave.spaceJ jscholes@dragonscave.space

              @david_chisnall The exact meaning of "boilerplate" in these discussions is unclear to me.

              Are we talking about the sort of common cross-project tasks that libraries (our own or other people's) can be brought in to solve? E.g. reading and validating a config file, handling HTTP requests, playing audio.

              Or, is it the sort of smaller utility functions we all end up writing/copying into every project? Formatting a duration, pluralising some text.

              Is it both, or something else entirely? Are these in fact the same?

              root42@chaos.socialR This user is from outside of this forum
              root42@chaos.socialR This user is from outside of this forum
              root42@chaos.social
              wrote last edited by
              #8

              @jscholes I think it is both? LLMs are good at translating. You can tell them „look at this function and struct, now make a vector cross product function that works with the datatypes you just saw.“ and it will work well. Replace cross product with some other not-too-complex function that the LLM has seen in a different language and/or with different datatypes. It will be able to „translate“ the structure of the code into the new requirements.

              dimpase@mathstodon.xyzD 1 Reply Last reply
              0
              • david_chisnall@infosec.exchangeD david_chisnall@infosec.exchange

                In the last week, I’ve seen an uptick in ‘AI is good for boilerplate’ posts. It is 2026. Metaprogramming is over 50 years old. Why are we writing boilerplate at all, much less creating expensive tools that let us write more of it faster?

                jripley@mastodon.socialJ This user is from outside of this forum
                jripley@mastodon.socialJ This user is from outside of this forum
                jripley@mastodon.social
                wrote last edited by
                #9

                @david_chisnall Many people I've worked with were excited about the possibility "AI" would make mash-ups of apps so much easier. You just get an "agent" to go through the UI of apps in the background, and complete tasks for you, instead of having to figure out how to drive each of these APIs.

                But this is software engineering *failure*. The problem is shitty APIs, and if you go down this path, you're never writing good APIs—only documentation for your shitty "agents" to infer actions from.

                1 Reply Last reply
                0
                • david_chisnall@infosec.exchangeD david_chisnall@infosec.exchange

                  In the last week, I’ve seen an uptick in ‘AI is good for boilerplate’ posts. It is 2026. Metaprogramming is over 50 years old. Why are we writing boilerplate at all, much less creating expensive tools that let us write more of it faster?

                  the_art_of_giving_up@mastodon.socialT This user is from outside of this forum
                  the_art_of_giving_up@mastodon.socialT This user is from outside of this forum
                  the_art_of_giving_up@mastodon.social
                  wrote last edited by
                  #10

                  @david_chisnall From time to time, I use it to reduce boilerplate. I don't respect, say, bash enough to truly desire to learn more about it. Enough has been said about their limitations elsewhere. I have better things to do than code-golfing bash, but I want the result - my bash to be terse.

                  Never point LLMs at things you love. I don't love nix the language or C++17 and I never will

                  dngrs@chaos.socialD 1 Reply Last reply
                  0
                  • david_chisnall@infosec.exchangeD david_chisnall@infosec.exchange

                    In the last week, I’ve seen an uptick in ‘AI is good for boilerplate’ posts. It is 2026. Metaprogramming is over 50 years old. Why are we writing boilerplate at all, much less creating expensive tools that let us write more of it faster?

                    shapr@recurse.socialS This user is from outside of this forum
                    shapr@recurse.socialS This user is from outside of this forum
                    shapr@recurse.social
                    wrote last edited by
                    #11

                    @david_chisnall I want emacs macros for every AST. I want the power of a refactoring browser for every language.

                    1 Reply Last reply
                    0
                    • R relay@relay.an.exchange shared this topic
                    • root42@chaos.socialR root42@chaos.social

                      @jscholes I think it is both? LLMs are good at translating. You can tell them „look at this function and struct, now make a vector cross product function that works with the datatypes you just saw.“ and it will work well. Replace cross product with some other not-too-complex function that the LLM has seen in a different language and/or with different datatypes. It will be able to „translate“ the structure of the code into the new requirements.

                      dimpase@mathstodon.xyzD This user is from outside of this forum
                      dimpase@mathstodon.xyzD This user is from outside of this forum
                      dimpase@mathstodon.xyz
                      wrote last edited by
                      #12

                      @root42 @jscholes
                      LLMs are hopeless in translating things.
                      We tried a couple of times to fix old makefiles-only build systems for 30+ years old C code, asking an LLM to create a cmake configuration we could use. An epic fail, both times - it didn't even get close to what's needed.

                      root42@chaos.socialR 1 Reply Last reply
                      0
                      • david_chisnall@infosec.exchangeD david_chisnall@infosec.exchange

                        In the last week, I’ve seen an uptick in ‘AI is good for boilerplate’ posts. It is 2026. Metaprogramming is over 50 years old. Why are we writing boilerplate at all, much less creating expensive tools that let us write more of it faster?

                        mattmcal@fosstodon.orgM This user is from outside of this forum
                        mattmcal@fosstodon.orgM This user is from outside of this forum
                        mattmcal@fosstodon.org
                        wrote last edited by
                        #13

                        @david_chisnall I love metaprogramming but you may as well ask why we even still have to write code at all in 2026, given that surely every problem in the field of computer programming has already been solved decades ago

                        david_chisnall@infosec.exchangeD 1 Reply Last reply
                        0
                        • dimpase@mathstodon.xyzD dimpase@mathstodon.xyz

                          @root42 @jscholes
                          LLMs are hopeless in translating things.
                          We tried a couple of times to fix old makefiles-only build systems for 30+ years old C code, asking an LLM to create a cmake configuration we could use. An epic fail, both times - it didn't even get close to what's needed.

                          root42@chaos.socialR This user is from outside of this forum
                          root42@chaos.socialR This user is from outside of this forum
                          root42@chaos.social
                          wrote last edited by
                          #14

                          @dimpase I would disagree. Make and CMake are two very different beasts. They function very differently, so I would say that there is not much translation. Instead you have to have a deep understanding of what’s happening in the Makefile. And LLMs can’t do that. What they CAN do pretty well is translate patterns from one language (human or programming) into another. Not flawless, but surprisingly good at times. As soon as deeper understanding comes into play, they break horribly.

                          1 Reply Last reply
                          0
                          • david_chisnall@infosec.exchangeD david_chisnall@infosec.exchange

                            In the last week, I’ve seen an uptick in ‘AI is good for boilerplate’ posts. It is 2026. Metaprogramming is over 50 years old. Why are we writing boilerplate at all, much less creating expensive tools that let us write more of it faster?

                            pcdevil@mastodon.socialP This user is from outside of this forum
                            pcdevil@mastodon.socialP This user is from outside of this forum
                            pcdevil@mastodon.social
                            wrote last edited by
                            #15

                            @david_chisnall I got this argument two years ago from various colleagues, as "look, LLM is very good at generating boilerplate for front-end tests, back-end api functions...".

                            my immediate reply was *why do we need those boilerplates? why don't we create an abstraction layer that does all of those and call that every time we need it?*
                            they usually just answered with dismissal and vaguely explaining it would be too much work - so instead of reducing complexity, we added more via "AI" agents 🫠

                            markhughes@mastodon.socialM 1 Reply Last reply
                            0
                            • mattmcal@fosstodon.orgM mattmcal@fosstodon.org

                              @david_chisnall I love metaprogramming but you may as well ask why we even still have to write code at all in 2026, given that surely every problem in the field of computer programming has already been solved decades ago

                              david_chisnall@infosec.exchangeD This user is from outside of this forum
                              david_chisnall@infosec.exchangeD This user is from outside of this forum
                              david_chisnall@infosec.exchange
                              wrote last edited by
                              #16

                              @mattmcal

                              I write new code to solve new problems. I write boilerplate to solve the same problem in a different place. I have no problem with the former.

                              1 Reply Last reply
                              0
                              • david_chisnall@infosec.exchangeD david_chisnall@infosec.exchange

                                In the last week, I’ve seen an uptick in ‘AI is good for boilerplate’ posts. It is 2026. Metaprogramming is over 50 years old. Why are we writing boilerplate at all, much less creating expensive tools that let us write more of it faster?

                                benjamingeer@piaille.frB This user is from outside of this forum
                                benjamingeer@piaille.frB This user is from outside of this forum
                                benjamingeer@piaille.fr
                                wrote last edited by
                                #17

                                @david_chisnall I agree with you, but I wonder if metaprogramming deserves more attention from programming language designers than it’s been getting. A couple of years ago my colleagues and I used Scala’s new and improved macro system to write a library that generated validating newtypes for arbitrary types. We wanted constants to be validated at compile time, so it was impossible to construct an invalid instance. This was surprisingly hard (but possible) to implement. Maybe widespread use of LLMs for boilerplate could motivate language designers to design more powerful, more ergonomic macro systems?

                                david_chisnall@infosec.exchangeD 1 Reply Last reply
                                0
                                • the_art_of_giving_up@mastodon.socialT the_art_of_giving_up@mastodon.social

                                  @david_chisnall From time to time, I use it to reduce boilerplate. I don't respect, say, bash enough to truly desire to learn more about it. Enough has been said about their limitations elsewhere. I have better things to do than code-golfing bash, but I want the result - my bash to be terse.

                                  Never point LLMs at things you love. I don't love nix the language or C++17 and I never will

                                  dngrs@chaos.socialD This user is from outside of this forum
                                  dngrs@chaos.socialD This user is from outside of this forum
                                  dngrs@chaos.social
                                  wrote last edited by
                                  #18

                                  @the_art_of_giving_up you may nevertheless be interested in https://mywiki.wooledge.org/BashPitfalls
                                  🙃

                                  1 Reply Last reply
                                  0
                                  • benjamingeer@piaille.frB benjamingeer@piaille.fr

                                    @david_chisnall I agree with you, but I wonder if metaprogramming deserves more attention from programming language designers than it’s been getting. A couple of years ago my colleagues and I used Scala’s new and improved macro system to write a library that generated validating newtypes for arbitrary types. We wanted constants to be validated at compile time, so it was impossible to construct an invalid instance. This was surprisingly hard (but possible) to implement. Maybe widespread use of LLMs for boilerplate could motivate language designers to design more powerful, more ergonomic macro systems?

                                    david_chisnall@infosec.exchangeD This user is from outside of this forum
                                    david_chisnall@infosec.exchangeD This user is from outside of this forum
                                    david_chisnall@infosec.exchange
                                    wrote last edited by
                                    #19

                                    @benjamingeer

                                    I think it's worth separating compile-time and run-time metaprogramming. Smalltalk and Lisp did a lot with the latter to remove boilerplate. Higher-order abstractions that let you just write code for the things where you're deviating from some template are very easy in these languages. Python inherits this ability, but it seems to be used a bit less. JavaScript also inherits it and uses it even less.

                                    Compile-time metaprogramming features are often less flexible but have two additional benefits: better performance (code specialisation at compile time, versus additional dynamic dispatch indirection at run time) and the opportunity to do better error reporting. The latter is the killer feature for me of C++ and Rust over C in systems programming: I can write APIs that will fail to compile if you use them wrongly. That's incredibly valuable, but it doesn't necessarily reduce the amount of code that you need to write.

                                    Features like key-value coding and key-value observing in Objective-C didn't do anything at compile time but massively reduced the amount of code that you needed for GUI apps by allowing the frameworks to ship 100% generic controller classes that just needed to be parameterised on key names.

                                    benjamingeer@piaille.frB 1 Reply Last reply
                                    0
                                    • david_chisnall@infosec.exchangeD david_chisnall@infosec.exchange

                                      @benjamingeer

                                      I think it's worth separating compile-time and run-time metaprogramming. Smalltalk and Lisp did a lot with the latter to remove boilerplate. Higher-order abstractions that let you just write code for the things where you're deviating from some template are very easy in these languages. Python inherits this ability, but it seems to be used a bit less. JavaScript also inherits it and uses it even less.

                                      Compile-time metaprogramming features are often less flexible but have two additional benefits: better performance (code specialisation at compile time, versus additional dynamic dispatch indirection at run time) and the opportunity to do better error reporting. The latter is the killer feature for me of C++ and Rust over C in systems programming: I can write APIs that will fail to compile if you use them wrongly. That's incredibly valuable, but it doesn't necessarily reduce the amount of code that you need to write.

                                      Features like key-value coding and key-value observing in Objective-C didn't do anything at compile time but massively reduced the amount of code that you needed for GUI apps by allowing the frameworks to ship 100% generic controller classes that just needed to be parameterised on key names.

                                      benjamingeer@piaille.frB This user is from outside of this forum
                                      benjamingeer@piaille.frB This user is from outside of this forum
                                      benjamingeer@piaille.fr
                                      wrote last edited by
                                      #20

                                      @david_chisnall “it doesn't necessarily reduce the amount of code that you need to write” but I’ll happily write more code to make it less likely that I’ll get woken up in the middle of the night to deal with an incident in production.

                                      1 Reply Last reply
                                      0
                                      • david_chisnall@infosec.exchangeD david_chisnall@infosec.exchange

                                        In the last week, I’ve seen an uptick in ‘AI is good for boilerplate’ posts. It is 2026. Metaprogramming is over 50 years old. Why are we writing boilerplate at all, much less creating expensive tools that let us write more of it faster?

                                        vladimir_lu@hachyderm.ioV This user is from outside of this forum
                                        vladimir_lu@hachyderm.ioV This user is from outside of this forum
                                        vladimir_lu@hachyderm.io
                                        wrote last edited by
                                        #21

                                        @david_chisnall @simon because you see if we had people with expertise in metaprogramming they would demand to be paid like experts and it’s much easier to have some opex to a third party than to have expensive humans do the work. Bonus if labour costs lessen as a result.

                                        david_chisnall@infosec.exchangeD 1 Reply Last reply
                                        0
                                        • david_chisnall@infosec.exchangeD david_chisnall@infosec.exchange

                                          In the last week, I’ve seen an uptick in ‘AI is good for boilerplate’ posts. It is 2026. Metaprogramming is over 50 years old. Why are we writing boilerplate at all, much less creating expensive tools that let us write more of it faster?

                                          K This user is from outside of this forum
                                          K This user is from outside of this forum
                                          kumbunterland@mastodon.social
                                          wrote last edited by
                                          #22

                                          @david_chisnall because quite often the source of boilerplate isn't mine, e.g. terraform or fitting into an existing project. I wish my life was just the interesting parts!

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups