• daisy@hexbear.net
    link
    fedilink
    English
    arrow-up
    54
    ·
    1 year ago

    I’m still trying to figure out why anyone would start a brand new web service project in PHP of all languages in 2021.

    • ScrewdriverFactoryFactoryProvider [they/them]@hexbear.net
      link
      fedilink
      English
      arrow-up
      33
      ·
      edit-2
      1 year ago

      The only thing worse than starting a PHP project in 2021 is starting a PHP project any time before 2021. I work in PHP at work and the code we’re writing today is night and day compared to the deranged shit that’s in some of our legacy services. And compared to the JavaScript framework hype train (or maintaining ancient jQuery) I can definitely see why someone would start a greenfield PHP+HTMX project today.

      That said, I’ve been starting hobby projects with Go+HTMX for about a month and that’s been pretty fun

      • silent_water [she/her]@hexbear.net
        link
        fedilink
        English
        arrow-up
        20
        ·
        1 year ago

        ngl, I hate writing go because they managed to design a language that learned nothing from 30 years of development on programming languages. the structure of the code is invariably obscured by the never ending boilerplate, it’s impossible to abstract over common patterns or even to write parameterized data structures, and a modern programming language with nulls is inexcusable.

        • sovietknuckles [they/them]@hexbear.net
          link
          fedilink
          English
          arrow-up
          14
          ·
          1 year ago

          “The key point here is our programmers are Googlers, they’re not researchers. They’re typically, fairly young, fresh out of school, probably learned Java, maybe learned C or C++, probably learned Python. They’re not capable of understanding a brilliant language but we want to use them to build good software. So, the language that we give them has to be easy for them to understand and easy to adopt.”

          • silent_water [she/her]@hexbear.net
            link
            fedilink
            English
            arrow-up
            15
            ·
            1 year ago

            it’s such a deeply reductive and patronizing view of the capacities of other human beings. one of the languages they’re referring to is Haskell, so using it as an example, someone took it to a primary school near where they lived and taught it as a summer school program to said primary school students (I believe in Brazil). they picked it up readily. conversely, adults who all ready know how to code struggle with the language.

            that is, it’s precisely because we presuppose that these languages are “too complicated” and don’t teach them that creates the circumstances where people struggle to learn. if you expect that people can learn and change and give them support, it’s feasible in most cases. if you presuppose that they can’t, well by golly what do you know, they can’t.

            in other news I hate Rob Pike.

            • Mardoniush [she/her]@hexbear.net
              link
              fedilink
              English
              arrow-up
              2
              ·
              1 year ago

              I’m not really competent at Haskell, but having my first language be FORTRAN of all things certainly flattened the learning curve. It’s not all that hard you just have to approach it without preconceptions.

        • daisy@hexbear.net
          link
          fedilink
          English
          arrow-up
          7
          ·
          1 year ago

          I feel that discussing Go is very much a “a vote for Bart is a vote for anarchy” situation. All those are perfectly valid points. But in the end do they really matter in day-to-day situations?

          Personally I’m willing to forgive a lot of interesting design choices for all the other benefits the language has. Super-fast compile times, massive standard library that’s automatically multithreaded, the elegant simple beauty that is the channel system, one enforced style that helps readability of others’ code, easy cross-compilation, memory safety, C-like syntax that’s easy to pick up, etc etc etc.

          • silent_water [she/her]@hexbear.net
            link
            fedilink
            English
            arrow-up
            8
            ·
            1 year ago

            personally the tedium of writing the same code over and over again + the inability to express invariants to the compiler so it can check my work for me is just plain worth more to me. I’m too dumb and ADHD for it.

      • daisy@hexbear.net
        link
        fedilink
        English
        arrow-up
        13
        ·
        1 year ago

        That said, I’ve been starting hobby projects with Go+HTMX for about a month and that’s been pretty fun

        Amen to that! Go is easily my favourite language for writing web backends. 95% of what one needs for the average web project is part of the standard library, including that really nice automatically-multithreaded web server. And the html templating is wonderful to work with. Most of what I write has to work javascript-free in a default-settings Tor browser. Go’s templating makes it really simple to do server-side rendering of complex pages.

        A nice bonus is that the very C-like syntax meshes well with my grew-up-on-C brain. For me PHP’s syntax is downright Lovecraftian.