Canadian software engineer living in Europe.

  • 6 Posts
  • 75 Comments
Joined 2 years ago
cake
Cake day: June 7th, 2023

help-circle
  • As someone else said here, programmers are not a monolith. However, I’ve seen it multiple times on the job and in social media where programmers are using these tools to write code voluntarily. The code produced is often garbage, and I have to reject it at review time, but there are a lot of programmers using these things willingly.



  • I don’t think there’s an official “way”, but here’s mine (which I love):

    On start-up I open all the apps I usually use, one per designated workspace:

    1. Slack/Teams/Mattermost, whatever my work requires.
    2. Thunderbird
    3. Kitty
    4. PyCharm/RustRover, whatever the job requires
    5. Firefox

    Workspaces 6-9 are left empty, ready for whatever app I need in the moment, but only ever one app per workspace.

    With this setup, I’ve mapped Ctrl+Fx to each workspace, so Ctrl+F4 takes me to PyCharm where I write the code, and Ctrl+F5 followed by another F5 takes me to Firefox and reloads the page. Ctrl+F3 is always the terminal, etc., so you quickly start building these shortcuts to mean Fwhatever is $APP_NAME.

    I almost never use the mouse, unless what I’m doing is necessarily mouse-driven: browsing or drawing charts etc. Everything else is keyboard-driven.



  • I have a few interesting ones.

    Download a video:

    alias yt="yt-dlp -o '%(title)s-%(id)s.%(ext)s' "
    

    Execute the previous command as root:

    alias please='sudo $(fc -n -l -1)'
    

    Delete all the Docker things. I do this surprisingly often:

    alias docker-nuke="docker system prune --all --volumes --force"
    

    This is a handy one for detecting a hard link

    function is-hardlink {
      count=$(stat -c %h -- "${1}")
      if [ "${count}" -gt 1 ]; then
        echo "Yes.  There are ${count} links to this file."
      else
        echo "Nope.  This file is unique."
      fi
    }
    

    I run this one pretty much every day. Regardless of the distro I’m using, it Updates All The Things:

    function up {
      if [[ $(command -v yay) ]]; then
        yay -Syu --noconfirm
        yay -Yc --noconfirm
      elif [[ $(command -v apt) ]]; then
        sudo apt update
        sudo apt upgrade -y
        sudo apt autoremove -y
      fi
      flatpak update --assumeyes
      flatpak remove --unused --assumeyes
    }
    

    I maintain an aliases file in GitLab with all the stuff I have in my environment if anyone is curious.



  • I have much the same:

    • Files on the network with NFS
    • Kodi on an old laptop under the TV so we can watch said files.
    • Syncthing on our phones and laptops to pull films from there onto that file server.

    The only difference is that I’m using a Synology 'cause I have 15TB and don’t know how to do RAID myself, let alone how to do it with an old laptop. I can’t really recommend a Synology though. It’s got too many useless add-ons and simple tools like rsync never work properly with it.