• takeda@lemmy.world
    link
    fedilink
    arrow-up
    53
    arrow-down
    9
    ·
    1 year ago

    I’m Bill I don’t comment my code (except complex parts), instead I try to make code clear, including using proper variable and function names and try to keep functions short. I don’t think I ever got lost in my own code in my 20+ years of experience. Even got complements about it.

    The programming language is meant for humans to read/write, if you need to put comments to understand your code then your code sucks.

    • NuXCOM_90Percent@lemmy.zip
      link
      fedilink
      arrow-up
      34
      arrow-down
      3
      ·
      1 year ago

      Commenting is an art. Too much and it is outright misleading after the first hotfix. Too little and only the original developer can maintain it

      But uncommented code is a dick move. And, more importantly, it means you can’t punt bug fixes to the intern

    • suodrazah@lemmy.world
      link
      fedilink
      arrow-up
      18
      ·
      1 year ago

      Use comments to describe the philisophy of the code, the why. And any non obvious extended relationships. Risk. Etc.

      Comments on function are typically a waste of space.

    • krellor@kbin.social
      link
      fedilink
      arrow-up
      10
      ·
      1 year ago

      When writing basic business code, structuring the code well and having good naming standards means you shouldn’t need a ton of comments, but you should still have some. Plus, using structured function content blocks gives you intellisense in some languages and IDEs, which is important for code reuse in teams.

      However, when I was doing scientific programming I’d have comments for almost every line at times where I put the mathematical formula and operations the line represents. Implementing a convolution neutral network with parameters to dynamically scale the layers or MPI stochastic simulations is much different than writing CRUD functions or basic business logic.

  • Prunebutt@feddit.de
    link
    fedilink
    arrow-up
    25
    arrow-down
    2
    ·
    1 year ago

    Comments are lies that will happen sometime in the future

    Comments are always overlooked if gode gets refactored. Language servers can’t/won’t parse them and they’re easy to overlook.

    If you name your functions/variables clearly, put complex logic into clearly named functions and keep the same level of abstraction in every function (which never exceeds roughly 50 lines), you hardly need any comments, if any.

    Comments are for behavior that’s not possible to convey clearly through code.

    • Archive@lemmy.world
      link
      fedilink
      arrow-up
      7
      arrow-down
      3
      ·
      1 year ago

      If a block of code needs a comment, then you can easily move that block into a function and summarise the comment into a name for that function. If you can not easily move a block of code into a function, then you may need to rethink your design.

      This isn’t always true of course, but it’s a good mindset to have.

  • drolex@sopuli.xyz
    link
    fedilink
    arrow-up
    12
    ·
    1 year ago

    Wow this job has massive amounts of unnecessary stress, I wonder what the cause can be.

    The cause is me, 6 months ago.

    (Written for comedic purposes only. Managers are my single source of stress)

  • anti-idpol action@programming.dev
    link
    fedilink
    arrow-up
    9
    ·
    1 year ago

    This is Bill.

    Bill doesn’t need to minify his code, he names things using a single character even in compiled languages.

    Bill is a heckin chad who can guess what the code does merely by looking at types and control flow.

    Be like Bill

    • ChickenLadyLovesLife@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 year ago

      I started coding with TurboBasic. My favorite thing about TB was that you could have variable names of any length but the compiler only used the first two letters - and case insensitive at that. So “Douchebag” and “doorknocker” looked like different variables but were actually the same thing.

    • towerful@programming.dev
      link
      fedilink
      arrow-up
      2
      arrow-down
      2
      ·
      1 year ago

      Classic comments.

      Code is spaghetti.
      Comments describe what it used to do.
      Comments are no longer relevant.

      Comments should be about how/what a code block does something.
      Not what a line of code does

  • SpeakinTelnet@programming.dev
    link
    fedilink
    arrow-up
    8
    arrow-down
    2
    ·
    1 year ago

    I don’t care how much you think your code is readable, plain text comments are readable by everyone no matter the proficiency in the programming language used. That alone can make a huge difference when you’re just trying to understand how someone handled a situation.

    • Fal@yiffit.net
      link
      fedilink
      English
      arrow-up
      3
      arrow-down
      1
      ·
      1 year ago

      There’s nothing keeping the comments up to date with the code. Comments should be sparse and only on sections that aren’t obvious why they’re being done

  • graycube@kbin.social
    link
    fedilink
    arrow-up
    3
    arrow-down
    1
    ·
    1 year ago

    I hate fixing other people’s code. It is one of the reasons I don’t like letting an AI write my code first draft either.

  • stevecrox@kbin.social
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    Basic rule if someone claims X magically solves a problem they don’t follow X and are a huge generator of the problem.

    For example people who claim they don’t need to write comments because they write self documenting code are the people that use variable names x1,x2,y, etc…

    Similarly anyone you meet claiming Test Driven Development means they have better tests will write code with appalling code coverage and epically bad tests.