• escapesamsara@discuss.online
    link
    fedilink
    arrow-up
    1
    ·
    2 years ago

    Python is legitimately the best language by far for the vast majority of non-performance critical tasks, and most tasks that need to be developed for are not performance critical.

  • Kushan@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    2 years ago

    That the entire industry is cyclical and the current trends are yesterday’s anarcisms. Oop Vs functional, separating concerns Vs vertical slices, there’s examples all over the place.

    All of this has happened before and all of this will happen again.

  • popcar2@programming.dev
    link
    fedilink
    English
    arrow-up
    1
    ·
    2 years ago

    Web development feels like it’s stuck in the early 2000’s. I’ve ranted a lot about it over the years but I just don’t know how everyone is okay with it. I’m sure tons of people will disagree.

    HTML is bad. The language itself feels unintuitive and is clunky compared to modern markdown languages, and let’s be honest, your webpage just consists of nested <div> tags.

    CSS is bad. Who knew styling can be so unintuitive and unmanageable? Maybe it made sense 25 years ago, but now it’s just terrible. It’s very clunkily integrated with HTML too in my opinion. Styling and markdown should be one easier to use language where 50% of it isn’t deprecated.

    Javascript has been memed to death so I won’t even go there. Typescript is OK I suppose.

    And now for my hottest take: ~10+ years ago I saw web building tools like Wix and I completely expected web development to head in the direction using a GUI to create, style, and script from one interface, even allowing you to create and see dynamic content instantly. I’ve seen competitors and waited for “the big one” that’s actually free and open source and good enough to be used professionally. It never happened. Web dev has just gone backwards and stuck in its old ways, now it’s a bloated mess that takes way more time than it deserves.

    The Godot engine is actually a pretty good option for creating GUI apps and it’s exactly what I envisioned web dev should’ve been this past decade. One language, intuitive interface, simple theming and easy rapid development… Shame it never happened.</div>

    • AdmiralShat@programming.dev
      link
      fedilink
      English
      arrow-up
      0
      ·
      2 years ago

      One language

      Godot has native support for 3 languages and community support currently built for like 6 other languages.

  • lefixxx@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    2 years ago

    I like 1-index because its what I learned first, and you like 0-index because that’s what you learned first

  • million@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    2 years ago

    Refactoring is something that should be constantly done in a code base, for every story. As soon as people get scared about changing things the codebase is on the road to being legacy.

  • AdmiralShat@programming.dev
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    2 years ago

    If you don’t add comments, even rudimentary ones, or you don’t use a naming convention that accurately describes the variables or the functions, you’re a bad programmer. It doesn’t matter if you know what it does now, just wait until you need to know what it does in 6 months and you have to stop what you’re doing an decipher it.

    • fkn@lemmy.world
      link
      fedilink
      arrow-up
      0
      ·
      2 years ago

      Self documenting code is infinitely more valuable than comments because then code spreads with it’s use, whereas the comments stay behind.

      I got roasted at my company when I first joined because my naming conventions are a little extra. That lasted for about 2 months before people started to see the difference in legibility as the code started to change.

      One of the things I tell my juniors is, “this isn’t the 80s. There isn’t an 80 character line limit. The computer doesn’t benefit from your short variable names. I should be able to read most lines of code as a single non-compound sentence in English with only minor tweaks and the English sentence should be what is happening in most of those lines of code.”

      • MajorHavoc@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        2 years ago

        There’s no such thing as self documenting code, unless every method and variable name has the word “because” in it.

        Anyone can read what the code does. The comments are there to answer why it does what it does the way it does.

        Why is invariably lost to time, if it’s not committed to a comment here and there.

        • fkn@lemmy.world
          link
          fedilink
          arrow-up
          0
          arrow-down
          1
          ·
          2 years ago

          This is a pretty ridiculous position to take but if you believe it then I’m glad you write the comments you do.

          There is an argument that commenting on the lack of expected code is valuable for this reason, but it certainly isn’t true in all situations.

  • NBJack@reddthat.com
    link
    fedilink
    arrow-up
    0
    ·
    edit-2
    2 years ago

    Oh boy, here we go (inhales):

    Agile isn’t that bad. People just believe they are more productive if they are “heads down” and not held accountable for what they write/do.

    Functional programming isn’t that great and doesn’t solve all of the world’s problems; it just pushes the issues with state to other parts of your design, and doesn’t scale well in deeply nested solutions.

    IDEs with proper code support (i.e. automatic structure analysis, autocomplete, etc.) are one of the best ways to deal with a large codebase that needs refactoring. Doing widescale refactors without one is asking for trouble. If you believe you don’t need it, either your codebase is just that small (which is fine) or playing with fire.

    Much of the advice out there on architecture and tooling isn’t properly contextualized on the codebase, market, and team situation. If you believe you have the One True Architecture Solution, you are naive. (Ex. Microservices, large complex code pipelines, monorepos, etc.) Be especially wary of anything from FAANG engineering blogs unless you are also in another letter of FAANG.

    There. Got it out of my system. Have fun dissecting it.

    • SpaceCowboy@lemmy.ca
      link
      fedilink
      arrow-up
      0
      ·
      2 years ago

      The biggest problem with Agile is bad managers fucking it up. But bad managers will fuck things up no matter which way you do things.

      But they’re going to want to somehow see progress, and they’ll leave you alone if they see some cards moving on a board. Even if they have no idea what the cards mean.

      Whatever, it’s better than having to do status update meetings.

      • NBJack@reddthat.com
        link
        fedilink
        arrow-up
        0
        arrow-down
        1
        ·
        2 years ago

        I can’t speak for your managers, but my past managers didn’t need Agile to f things up. They can do that with anything!

  • BrotherL0v3@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    2 years ago

    Tools that use a GUI are just as good (if not better) than their CLI equivalents in most cases. There’s a certain kind of dev that just gets a superiority complex about using CLI stuff.

    • bouh@lemmy.world
      link
      fedilink
      arrow-up
      1
      ·
      2 years ago

      Just no. CLI can be automated, which makes it superior. It’s not a superiority complex, it’s a fact. I’m not a minimal wage worker pushing buttons I don’t understand. I’m not a technician who learnt your shitty software to do the most basic tasks.

    • stilgar [he/him] @infosec.pub
      link
      fedilink
      English
      arrow-up
      1
      ·
      2 years ago

      There are some massive intrinsic advantages of the CLI though, that apply for everyone, not just leetcoders:

      • The terminal can remember everything you ever did. Forgotten the command you wrote 2 months ago? You can do a search for it with a tool like fzfand run the exact same command again.
      • Communicating with others. GUI programs require step by step instructions, often accompanied by screenshots while CLI may be copy/pasted.
      • Combining programs together. There are a few different techniques for combining CLI programs to search/format output, use secrets without ever having them in the clipboard or on disk, monitor something frequently/constantly etc etc

      So while I agree with you that there’s plently of elitism around the CLI, you do yourself a disservice if you try to avoid it.

    • xantoxis@lemmy.world
      link
      fedilink
      arrow-up
      1
      ·
      2 years ago

      This comment fits the spirit of the question better than anything else in here, I will say that.