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. More and more I feel that software is something that's inflicted on me rather than something I create or control that serves me.

More and more I feel that software is something that's inflicted on me rather than something I create or control that serves me.

Scheduled Pinned Locked Moved Uncategorized
26 Posts 14 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.
  • arclight@oldbytes.spaceA arclight@oldbytes.space

    So what am I actually arguing here?

    This is not 1995 and the expectations surrounding publicly distributed code are very different now.

    Some of those expectations are reasonable. If an author knows their code is dangerously broken, it should be fixed or be pulled from distribution. You need to be better than Matt from Matt's Script Archive. You should not be publishing to npm or PyPi or CRAN or CPAN or any of the public repositories unless you accept the minimal responsibility for fixing or retiring your code.

    _RETIRING CODE IS ALWAYS AN OPTION, EVEN IN A PUBLIC REPOSITORY_

    But let's take npm as a bad example. What happens when an author decides to retire their code and stops distributing it and pulling it from a public archive breaks other people's applications that rely on code from that public archive? Do we accept the breakage that results from our naïve expectations of the public archive or does the archive continue to distribute the retired code against the author's wishes without forking the code and taking responsibility for it?

    I was on call the night of Friday, December 31, 1999. The right answer is that organizationally, you take responsibility for your code _AND ALL ITS DEPENDENCIES_ and you factor in that the public repository is not guaranteed to be there when you need it and that any code you pulled in from the internet is your responsibility. You own those dependencies once you start relying on them. Unless you have an explicit agreement with the original author, they owe you _NOTHING_.

    That is apparently not the modern expectation. The modern expectation is that authors who make their code public owe free maintenance, development, and security fixes to corporations for free forever and if you ever try to extract yourself from this implicit serfdom by retiring your code, some asshole organization will keep distributing your retired code under your name and keep you yoked to that millstone.

    Am I arguing to have it both ways? No. It's reasonable to distribute code of average quality and maintain it on one's own schedule. It's also reasonable to retire code for any reason but specifically because you no longer have the time or interest to maintain it at an average or (personally) acceptable level of quality. Mark it as archived and unsupported so it's clear to everyone what the project's status is. In an extreme case, stop distributing the code - that's what should have happened with Matt's Script Archive.

    mdhughes@appdot.netM This user is from outside of this forum
    mdhughes@appdot.netM This user is from outside of this forum
    mdhughes@appdot.net
    wrote last edited by
    #21

    @arclight My view is that nobody should use Other Peoples' Code. You write code for yourself, or for your job. If you want to share it, fine, but nobody should use it. You MUST review/rewrite.

    But we live in a fallen world, & people are foolish & lazy, so they DO use OPC. That choice is not my problem.

    Even an operating system or language, you must be aware that you didn't write this, it's not yours or safe. Only Terry Davis lived free of sin, & he was insane.

    Digital Mark λ ☕️ 🫈 🚀 🌗 (@mdhughes@appdot.net)

    I wrote this as a ha-ha-but-seriously-yes: You should only use software you wrote for yourself, never let anyone else touch it. Other Peoples' Code is the work of the devil.

    favicon

    AppDot.Net (appdot.net)

    hatzka@tech.lgbtH arclight@oldbytes.spaceA 2 Replies Last reply
    0
    • mdhughes@appdot.netM mdhughes@appdot.net

      @arclight My view is that nobody should use Other Peoples' Code. You write code for yourself, or for your job. If you want to share it, fine, but nobody should use it. You MUST review/rewrite.

      But we live in a fallen world, & people are foolish & lazy, so they DO use OPC. That choice is not my problem.

      Even an operating system or language, you must be aware that you didn't write this, it's not yours or safe. Only Terry Davis lived free of sin, & he was insane.

      Digital Mark λ ☕️ 🫈 🚀 🌗 (@mdhughes@appdot.net)

      I wrote this as a ha-ha-but-seriously-yes: You should only use software you wrote for yourself, never let anyone else touch it. Other Peoples' Code is the work of the devil.

      favicon

      AppDot.Net (appdot.net)

      hatzka@tech.lgbtH This user is from outside of this forum
      hatzka@tech.lgbtH This user is from outside of this forum
      hatzka@tech.lgbt
      wrote last edited by
      #22

      @mdhughes @arclight

      That seems overly pessimistic. I can't imagine you grow your own food, built your own house, synthesize your own medicine. For all these things you rely on others, even though the stakes are higher than for most software.

      I think the difference is the lack of oversight. There are enforced regulations governing how each of these things are done, so that (at least ideally) you can rely on them being of a certain level of quality. Software is pretty unique in not having that yet, at least at a societal level.

      mdhughes@appdot.netM 1 Reply Last reply
      0
      • mdhughes@appdot.netM mdhughes@appdot.net

        @arclight My view is that nobody should use Other Peoples' Code. You write code for yourself, or for your job. If you want to share it, fine, but nobody should use it. You MUST review/rewrite.

        But we live in a fallen world, & people are foolish & lazy, so they DO use OPC. That choice is not my problem.

        Even an operating system or language, you must be aware that you didn't write this, it's not yours or safe. Only Terry Davis lived free of sin, & he was insane.

        Digital Mark λ ☕️ 🫈 🚀 🌗 (@mdhughes@appdot.net)

        I wrote this as a ha-ha-but-seriously-yes: You should only use software you wrote for yourself, never let anyone else touch it. Other Peoples' Code is the work of the devil.

        favicon

        AppDot.Net (appdot.net)

        arclight@oldbytes.spaceA This user is from outside of this forum
        arclight@oldbytes.spaceA This user is from outside of this forum
        arclight@oldbytes.space
        wrote last edited by
        #23

        @mdhughes We've been sold the notion of reusable code for decade. This history of LINPACK/LAPACK is interesting - the motivation in the early 70s was to have quality numerical routines instead of every dingus with a VAX writing their own matrix solvers badly, they modern equivalent of rolling your own crypto. DIY is usually a Really Bad Idea in these cases. On the other extreme is basically every interpreted code calling in an avalanche of nested dependencies because somebody didn't want to write a ten line function and they had DRY beaten into them.

        I think what's lost with frictionless dependencies is that devs don't question whether most dependencies are really needed. It seemingly costs nothing to import a dozen packages that rely on two dozen more behind the scenes. They've been taken in by the cult of DRY and velocity and they don't know how to operate in an environment where free fast internet access isn't available. And here the problem isn't lack of connectivity or bandwidth, it's the rapidly decaying trustability of third-party code. Between bad actors and AI(+) we're getting to a point where network doesn't matter because nothing on the network can be trusted.

        (+) Cue Pam: "These are the same picture."

        mdhughes@appdot.netM 1 Reply Last reply
        0
        • hatzka@tech.lgbtH hatzka@tech.lgbt

          @mdhughes @arclight

          That seems overly pessimistic. I can't imagine you grow your own food, built your own house, synthesize your own medicine. For all these things you rely on others, even though the stakes are higher than for most software.

          I think the difference is the lack of oversight. There are enforced regulations governing how each of these things are done, so that (at least ideally) you can rely on them being of a certain level of quality. Software is pretty unique in not having that yet, at least at a societal level.

          mdhughes@appdot.netM This user is from outside of this forum
          mdhughes@appdot.netM This user is from outside of this forum
          mdhughes@appdot.net
          wrote last edited by
          #24

          @hatzka @arclight I do some of those things, but mostly food, houses, etc. are solid & actually work.

          SOFTWARE IS A LIE. Reusable software doubly so.

          And I cannot stress enough, like violent revolution times, how much I do not want lawmakers dictating what software I write for myself.

          1 Reply Last reply
          0
          • arclight@oldbytes.spaceA arclight@oldbytes.space

            @mdhughes We've been sold the notion of reusable code for decade. This history of LINPACK/LAPACK is interesting - the motivation in the early 70s was to have quality numerical routines instead of every dingus with a VAX writing their own matrix solvers badly, they modern equivalent of rolling your own crypto. DIY is usually a Really Bad Idea in these cases. On the other extreme is basically every interpreted code calling in an avalanche of nested dependencies because somebody didn't want to write a ten line function and they had DRY beaten into them.

            I think what's lost with frictionless dependencies is that devs don't question whether most dependencies are really needed. It seemingly costs nothing to import a dozen packages that rely on two dozen more behind the scenes. They've been taken in by the cult of DRY and velocity and they don't know how to operate in an environment where free fast internet access isn't available. And here the problem isn't lack of connectivity or bandwidth, it's the rapidly decaying trustability of third-party code. Between bad actors and AI(+) we're getting to a point where network doesn't matter because nothing on the network can be trusted.

            (+) Cue Pam: "These are the same picture."

            mdhughes@appdot.netM This user is from outside of this forum
            mdhughes@appdot.netM This user is from outside of this forum
            mdhughes@appdot.net
            wrote last edited by
            #25

            @arclight Yes, the "Software Integrated Circuit"/black box idea was a massive failure, it does not work, you get nonsense like npm's left-pad or outright scams.

            Software as a library should be used for research only, like a real library. You go there, read what someone did, make notes, do your own thing entirely separate. So LINPACK should be a book; Numerical Recipes is. If someone's determined that it has to be preinstalled, everyone should still review it if they care if it works or not.

            1 Reply Last reply
            0
            • curtosis@lingo.lolC curtosis@lingo.lol

              @arclight Not a joke: I installed WordStar 7 in DOSBox-X today.

              Zero JavaScript. It doesn’t download anything. Doesn’t connect to anything. It *can’t* connect to anything.

              It’s gonna take a while for the muscle memory to come back, though.

              flyingsaceur@ioc.exchangeF This user is from outside of this forum
              flyingsaceur@ioc.exchangeF This user is from outside of this forum
              flyingsaceur@ioc.exchange
              wrote last edited by
              #26

              @curtosis @arclight be the machine god rewarding his loyal acausal servants with eternal simulation you want to see in the world

              1 Reply Last reply
              0
              • R relay@relay.mycrowd.ca shared this topic
              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