I hate Clouds - a personal perspective on why I think Clouds suck - eviltoast

I hope this won’t be counted as some form of self-promotion, even though I am sharing a post from my own blog.

As a tech worker who works in a Cloud shop, I wanted to elaborate the many reasons why I find working with Clouds terrible, from multiple points of view.

I tried to organize my thoughts in a (relatively long) post, in which both technical aspects and political aspects (which are very related) are covered.

I am sure many people will have different perspectives, and this could be potentially also a nice prompt for a discussion.

  • Lettuce eat lettuce@lemmy.ml
    link
    fedilink
    English
    arrow-up
    8
    ·
    4 months ago

    Very good read. I totally agree with your sentiment that more and more, “engineering” is becoming just gluing together and managing cloud services and features.

    My job as a sys admin has become the same. It’s not about actually understanding the technology at a deep level and troubleshooting problems, it’s about learning specific applets and features to click on and running down daily and weekly checklists.

    • loudwhisper@infosec.pubOP
      link
      fedilink
      English
      arrow-up
      5
      ·
      4 months ago

      I feel you very much. Security work is also somewhat similar.

      I think this takes a way basically the component that made it interesting, understanding what you are doing to the point that you can build stuff.

      it’s about learning specific applets and features to click on and running down daily and weekly checklists.

      Well said.

    • rottingleaf@lemmy.zip
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      4 months ago

      “engineering” is becoming just gluing together and managing cloud services and features.

      Temporarily becoming.

      Just like China had some social and cultural changes since being closed and till the Opium wars.

      Systems are built around people and limited by what a human can conceive and make work. We don’t evolve that fast.

      Also dependency on big centers has led to catastrophes in the past and will lead to those again.

      It will all crash with a huge bang.

      I’m confident of this, anyone who wants may call me a luddite.

      • Lettuce eat lettuce@lemmy.ml
        link
        fedilink
        English
        arrow-up
        2
        ·
        4 months ago

        Let’s hope that people will start to favor on-prem solutions and smaller independent cloud providers vs the massive trillion dollar corpo clouds that control so much now.

    • Tja@programming.dev
      link
      fedilink
      English
      arrow-up
      3
      arrow-down
      5
      ·
      4 months ago

      And that’s a good thing, IMHO. As an architect I don’t want to rely on some single genius knowing secret incantations or anything like that.

      Boring, tried and true services, repeatedly put together and if the organization allows the time for it, with excessive documentation.

      • conciselyverbose@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        5
        ·
        4 months ago

        No one’s talking about secret incantations.

        They’re talking about knowing how your applications actually work, so you’re not tied to the whims of a third party.

              • conciselyverbose@sh.itjust.works
                link
                fedilink
                English
                arrow-up
                1
                ·
                edit-2
                4 months ago

                That’s literally the entire chain you clicked down.

                The fact that cloud provider calls aren’t based in any kind of core principles and force you to spend all your resources understanding their nonsensical structure instead of what your code actually does.

                • Tja@programming.dev
                  link
                  fedilink
                  English
                  arrow-up
                  1
                  arrow-down
                  2
                  ·
                  4 months ago

                  Wrong. You don’t know how it’s implemented, but you very much know what they do. Even heard about abstraction?

                  • conciselyverbose@sh.itjust.works
                    link
                    fedilink
                    English
                    arrow-up
                    1
                    ·
                    4 months ago

                    Abstraction is great. When it’s meaningful.

                    Cloud abstraction adds massive complexity that has no correlation to what your code does.

      • Lettuce eat lettuce@lemmy.ml
        link
        fedilink
        English
        arrow-up
        5
        arrow-down
        1
        ·
        4 months ago

        Straw man. I’m encountering sys admins and systems “engineers” who don’t know how to spec out a server, don’t understand how certificates work, don’t understand basic IP addressing principles, don’t understand basic networking topology.

        They just know how to click a list of specific buttons in a GUI for one specific Corpo vendor.

        Maybe that is fine for a Jr. Admin just starting out, but it isn’t what you want for the folks in charge of building, upgrading, and maintaining your company’s infrastructure.

        There’s nothing wrong with making interfaces simpler and easier to understand. And there’s nothing wrong with building simplified abstractions on top of your systems to gain efficiency. But this should not be done at the cost of actual deep understanding and functionality.

        The people you call when things go badly wrong will always be the folks that have that deep understanding and competency. It already has started hitting the developer community in the last few years. The Jr. Devs that did a 3 month boot camp where they learned nothing but how to parrot code and slap APIs together, are getting laid off and cannot find work.

        The devs that went to school for Comp Sci, that have years of real world experience, and actually understand the theory and the nuts and bolts of the underlying tech, they are still largely employed and have little trouble finding work.

        I think the same will happen soon in the IT world. Deep knowledge and years of dirty, greasy hands will always be desirable over a parrot that only knows how to click GUI buttons in a specific order.

      • loudwhisper@infosec.pubOP
        link
        fedilink
        English
        arrow-up
        3
        ·
        4 months ago

        Is that what you get with Cloud? Because there are still a million ways to shoot yourself in the foot. The main difference is that the single genius doesn’t need to implement things him/herself, but decisions still need to be taken and fragile setups can still be built.

        Imagine an ec2 instance in a satellite account performing some business critical function with an instance role, whose custom IAM policy allows to do it in another account. Clouds are not giving you good engineering, they are giving you premade building blocks, you can absolutely still make a mess with those. Even more, the complexity and the immense portfolio of features can allow very creative ways to build very low-quality systems.

        I think you can have good, boring, simple systems built by engineers. With or without Cloud services.

        • Tja@programming.dev
          link
          fedilink
          English
          arrow-up
          1
          ·
          4 months ago

          You can still make a mess, but you can’t fuck up the building blocks, so it’s a big improvement.

          Using an ec2 instance is already a yellow flag, you have higher level services for most tasks.

          • loudwhisper@infosec.pubOP
            link
            fedilink
            English
            arrow-up
            1
            ·
            4 months ago

            Yeah in general you can’t mess the building blocks from the PoV of availability or internal design. That is true, since you are outsourcing it. You can still mess them up from other points of view (think about how many companies got breached due to misconfigured S3 buckets).