• balsoft@lemmy.ml
    link
    fedilink
    English
    arrow-up
    6
    arrow-down
    2
    ·
    edit-2
    1 day ago

    You can write code just fine on 20 or even 30 year old hardware. Basically if it runs Linux, chances are it can also run vim and compile code. If you spring for 10-15 year old hardware, you can even get an LSP + coc or helix, for error highlighting and goto definition and code actions. And you definitely don’t need a beefy GPU for it (unless you’re doing something GPU-specific of course).

    Editing 720p videos (which, if you encode with a high enough bitrate, still looks alright) can be done on 10-15 year old hardware.

    Research is where it gets complicated. It does indeed often require a lot of computing power to do modern computational research. But for some simpler stuff - especially outside STEM - you can sometimes get away with a LibreOffice spreadsheet on an old Dell or something.

    From the looks of it we will have to get used to doing more with less when it comes to computers. And TBH I’m all for it. I just hope that either my job won’t require compiling a lot more stuff, or they provide me with a modern machine at their expense.

    • ExLisper@lemmy.curiana.net
      link
      fedilink
      English
      arrow-up
      5
      ·
      1 day ago

      Dude, I’m coding every day and I know what hardware requirements I have. You can write some code slowly on a potato but a lot of software development requires tons of RAM and powerful CPU. Linus Torvalds is using Threadripper 9960X for a reason.

      • balsoft@lemmy.ml
        link
        fedilink
        English
        arrow-up
        8
        ·
        edit-2
        1 day ago

        It’s nicer to develop anything on a beefy machine, I was rocking a 7950X until recently. The compile times are a huge boon, and for some modern bloated bullshit (looking at you, Android) you definitely need a beefy machine to build it in a realistic timeframe.

        However, we can totally solve a lot of real-world problems with old cheap crappy hardware, we just never wanted to because it was “cheaper” for some poor soul in China to build a new PC every year than for a developer to spend an extra week thinking about efficiency. That appears to be changing now, especially if your code will be running on consumer hardware.

        My dad used to “write” software for basic aerodynamic modelling on punchcards, on a mainframe that has about us much computing power as some modern microcontrollers. You wouldn’t even consider it a potato by today’s standards. I’m sure if we use our wit and combine it with arcane knowledge of efficient algorithms, we can optimize our stacks to compile code on a friggin 3.5GHz 10-core CPU (which are 10 year old now).

        • ExLisper@lemmy.curiana.net
          link
          fedilink
          English
          arrow-up
          2
          ·
          1 day ago

          I’m sure some people would still be able to code just fine on crap hardware but it’s silly to think Open Source will not suffer if access to good hardware is limited.

      • limer@lemmy.ml
        link
        fedilink
        English
        arrow-up
        1
        arrow-down
        1
        ·
        1 day ago

        I can code my stuff ok on an older model. I’m sure there are some stacks that need more resources, but I’m having a hard time thinking of which.

        Admittedly, on a laptop that is 20+ years old, I cannot surf the web AND run docker at the same time

        • ExLisper@lemmy.curiana.net
          link
          fedilink
          English
          arrow-up
          1
          ·
          1 day ago

          Just running rust-analyzer for not-so-big project requires 5GB of RAM. Inspecting libraries will start another process and I sometimes have 2 projects open at the same time. You can work without it, using simple text editor but DX will way worse and unless you’re some Rust guru you will work slower. Compilation time will be way worse on older CPU so you will iterate slower. That’s why Linus is using a Threadripper.

          Running integration tests for Java project I’m working on maxes out my 16 core CPU. My co-workers with older laptops struggled to set up the development environment and build the project because they were constantly running out of RAM.

          Yes, we were all writing code 20 years ago in vim with just syntax highlighting but new stacks and new tools require new hardware.

      • balsoft@lemmy.ml
        link
        fedilink
        English
        arrow-up
        1
        arrow-down
        1
        ·
        edit-2
        1 day ago

        Honestly it’s fine. LSPs are nice but you don’t need them per se. A combination of vim, tmux, entr, a fast incremental compiler, grep, and proper documentation can get you a long way there.

        A lot of critically important code that’s running the servers we’re using to communicate was written this way. And, if capitalist decline continues long enough, we will all eventually be begging for vim while writing code with ed.

        Personally I use helix with an LSP, because it helps speed up development quite a bit. I even have a local LLM for writing repetitive boilerplate bullshit. But I also understand that those are ultimately just tools that speed the process up, they do not fundamentally change what I’m doing.