• @BatmanAoD@programming.dev
    link
    fedilink
    32
    edit-2
    2 years ago

    The programming languages you use, and the variety of languages you learn, deeply influence how you think about software design.

    Software would be much more reliable (in general) if Erlang had become one of the dominant languages for development.

    Go sacrifices too much for superficial simplicity; but I would like to see a language that’s nearly as easy to learn, but has a better type system and fewer footguns.

    Unit testing is often overrated. It is not good for discovering or protecting against most bugs.

    Build/test/deploy infrastructure is a genuinely hard problem that needs better tooling, particularly for testability.

  • Rikudou_Sage
    link
    fedilink
    82 years ago

    Modern PHP is great and people judging it by PHP 5 (version that’s almost 20 years old) are idiots.

  • Zoolander
    link
    fedilink
    English
    19
    edit-2
    2 years ago

    Most frameworks are garbage and most programmers that use them have no idea how they work and that makes them shitty programmers. I hate when people use frameworks without even knowing why they’re using them.

      • @FuckBigTech347@lemmygrad.ml
        link
        fedilink
        12 years ago

        This isn’t limited to JS. Too many times have I seen someone ask a question of how to do XYZ in language ABC where most of the replies were some form of “Just use this library bro” while not actually answering the question. And usually the library that’s being suggested is some big monolith that implements a ton of shit that no one really uses.

      • Zoolander
        link
        fedilink
        English
        12 years ago

        Yes…and, worse yet, the jQuery responses are almost never a good way to do things or they use things that are deprecated. It’s a hot mess out there.

          • @bouh@lemmy.world
            link
            fedilink
            12 years ago

            Oh I agree that questions are two often badly answered! The exemple of “why don’t you use this instead” is the worst offender. I didn’t understand you were talking about this, and I’m still traumatised by javascript after 14 years.

  • Thordros [he/him, comrade/them]
    link
    fedilink
    English
    152 years ago

    If you can’t find where you missed a closed parentheses, just add a bunch of them to the end of your project like this…

    )))))))))

    … until your editor’s syntax helper tells you it’s good. I am very good at coding.

  • @StudioLE@programming.dev
    link
    fedilink
    142 years ago

    My mantra has always been to bring solutions not problems. Applying that to code reviews makes for a far more productive experience.

    Rather than just pointing out errors in code help the developer with prompts towards the solution.

    Or, if you’re too lazy to explain why something shouldn’t be done then why should another developer have to act on your criticism?

  • PatchworkHorse
    link
    fedilink
    102 years ago

    Doing this is a hot take, but “clean architecture” is a joke.

    My company is obsessed with it.

    • TehPers
      link
      fedilink
      English
      3
      edit-2
      2 years ago

      You must trust your team’s abilities more than I trust my own. How often does your team merge bugs into main? We use CI primarily for running the full test suite, including integration tests and e2e tests that would be very difficult to run locally due to them using specific credentials to access testing resources.

        • TehPers
          link
          fedilink
          English
          12 years ago

          I trust my team. I don’t trust my or their ability to write and merge perfect code each time. I’m not sure how we’d fix that problem aside from becoming programming gods.

          • @vvv@programming.dev
            link
            fedilink
            12 years ago

            My point is, having PRs desn’t result in perfect code either. They might help sometimes, maybe 10% of the time if I’m being generous, but the rest of the time they are a hindrance. The problems people tend to try and solve with them, validation and indoctrination are better solved with a good CD pipeline, and pairing sessions.

    • T (they/she)
      link
      fedilink
      12 years ago

      Unless you have people that are known to delivery garbage code. Which is more common than you would imagine, lol.

    • fusio
      link
      fedilink
      52 years ago

      depends on the company/team culture. are other people gonna have to fix or extend code you wrote? are you the sole engineer working on entire modules? do you hate feedback?

    • We’v known this for twenty years and had the data ta back it up for ten. Github flow is one of the most damaging things to ever happen to software teams

      • fusio
        link
        fedilink
        32 years ago

        what data? just curios because there are so many ways to do PRs properly… like for everything, if it’s done badly better not do it. does not mean it is inherently bad

        • Check out the dora reports and the data Nicole Forsgren lays out in her book Accelerate. DORA reborts are free to access. She has found clear links between trunk based (no branching) development and a whole host of positive metrics. There is some suggestion that PRs are not too bad if always done at high quality and within the same day, but its weaker.

      • 10nica [comrade/them]
        link
        fedilink
        English
        32 years ago

        Omfg yes! Have nothing to add, but an upvote was not enough to express my hate for gitflow. So fucking stupid. And you’ll show stats from Jez Humble etc about trunk based, and my boss was still “eh not convinced”

        • @nous@programming.dev
          link
          fedilink
          English
          22 years ago

          gitflow != github flow

          Gitflow is far more complex and unnessaray for most places. You do not need a dev, main, and release branches. Github flow is far closer to trunk based dev - create a branch of master, PR back into master when done. If you keep your PRs small it gives you most of the benefits of trunk based dev with a CI check before you merge to the mainline.

        • Got asked about this twice so I’m cut/pasting my answer, but happy to discuss further

          Check out the dora reports and the data Nicole Forsgren lays out in her book Accelerate. DORA reborts are free to access. She has found clear links between trunk based (no branching) development and a whole host of positive metrics. There is some suggestion that PRs are not too bad if always done at high quality and within the same day, but its weaker.

    • @Sigmatics@lemmy.ca
      link
      fedilink
      22 years ago

      Depends how good you are at what you’re doing. I’d argue that humans err and it saves a bunch of time to catch bugs before debugging in the wild

      • fusio
        link
        fedilink
        112 years ago

        sounds like your company sucks. I’m sorry, must be lonely

  • @Crisps@lemmy.world
    link
    fedilink
    442 years ago

    Dynamically typed languages don’t scale. Large project bases become hard to maintain, read and refactor.

    Basic type errors which should be found in compilation become runtime errors or unexpected behavior.