Threads for elorm

    1. 4

      Can someone explain the joke here?

      1. 41

        I’ll explain it to you once I finish this mad CrossFit workout. You should totally do CrossFit, by the way. Check out my InstaTok for some sick ideas on how ripped CrossFit can make you. CrossFit.

        1. 4

          Almost flagged the damn post as spam. Good one there, you definitely got me. 😂😂

          1. 4

            That’s pretty much the best explanation of the joke there is.

      2. 4

        Certain communities are known for being very vocal about their favorite things. In this case, Linux distro choice. IMO this is a few years late and for maximum currency it should’ve been “Local man installs Nix.”

      3. 2

        Arch is a Linux distro with a (arguably silly) mindset of installing things manually. When installing and using arch, one is required to fiddle with intricated parts of the system, often lower level than what most people need to handle. The installation also includes steps in which you do not have access to a graphical ui and are forced to do things on a terminal.

        There is the quite well deserved stereotype of arch users bragging about using as implying they are more l33t h4x0r than other people.

        The joke is spot on.

    2. 1

      Easy weekend here. Watching lots of football, especially the Europa and Champions league.

      I’ve been wanting to dive into a hobby Elm project, so I’m looking to get a hard start.

    3. 1

      Backing up stuff on my on both my laptops. I’m planning to wipe and do clean installs on them (ArchLinux from 2013) and (NixOs from 2018). I expect the backup and new setup to take most of my weekend. Also plan on reviewing some Haskell code I’ve left dormant for too long

    4. 8

      Setting up NixOs with xmonad on my new t570. I haven’t had any extensive luck with ricing xmonad in the past but i’m pretty determined to give my xmobar a polished look

      1. 1

        I use XMobar for work and Taffybar for my personal laptop. Both are very good!

        1. 1

          Would you, perchance, have any interesting configs you’d be willing to share ?

          1. 1


            Config { font = "xft:Bitstream Vera Sans Mono:size=10:bold:antialias=true"
                   , commands = [ Run UnsafeStdinReader
                                , Run Weather "YMLT" ["-t", "<tempC>C"] 36000
                                , Run Network "tun0" ["-t", "(VPN <rx>KB)"] 20
                                , Run Network "wlp6s0" ["-t", " <rx>KB|<tx>KB"] 20
                                , Run Memory ["-t", "Mem: <usedratio>%"] 20
                                , Run Cpu [] 20
                                , Run Com "sh" ["-c", "iwgetid -r || echo no connection"] "iwgetid" 10
                                , Run Date "%a %-d %H:%M" "date" 10
                                , Run CoreTemp ["--template" , "<core0>C"] 50
                   , template = "%UnsafeStdinReader%} {<action=`wpa_gui`><fc=#ee009a>%tun0%%wlp6s0%</fc></action> | <action=`gnome-terminal -x htop`><fc=#9a00ee>%cpu% %coretemp%</fc> | <fc=#009aee>%memory%</fc></action> | <action=`xdg-open`><fc=#00ee9a>%YMLT%</fc></action> | <action=`xdg-open`><fc=#ee9a00>%date%</fc></action>"


            import System.Taffybar
            import System.Taffybar.Information.CPU
            import System.Taffybar.Information.Memory
            import System.Taffybar.SimpleConfig
            import System.Taffybar.Widget
            import System.Taffybar.Widget.SNITray
            import System.Taffybar.Widget.Generic.PollingGraph
            memCallback = do
              mi <- parseMeminfo
              return [memoryUsedRatio mi]
            cpuCallback = do
              (userLoad, systemLoad, totalLoad) <- cpuLoad
              return [totalLoad, systemLoad]
            color c s = "<span fgcolor='#" ++ c ++ "'>" ++ s ++ "</span>"
            main = do
              let memCfg = defaultGraphConfig { graphDataColors = [(1, 0, 0, 1)]
                                              , graphLabel = Just $ color "009aee" "mem"
                  cpuCfg = defaultGraphConfig { graphDataColors = [ (0, 1, 0, 1)
                                                                  , (1, 0, 1, 0.5)
                                              , graphLabel = Just $ color "9a00ee" "cpu"
              let clock = textClockNew Nothing (color "ee9a00" "%a %b %_d %H:%M") 1
                  workspaces = workspacesNew defaultWorkspacesConfig
                  note = notifyAreaNew defaultNotificationConfig
                  mpris = mpris2New
                  net = networkMonitorNew (color "ee009a" "▼ $inAuto$ ▲ $outAuto$") $ Just ["wlp3s0"]
                  mem = pollingGraphNew memCfg 5 memCallback
                  cpu = pollingGraphNew cpuCfg 5 cpuCallback
                  bat = textBatteryNew "$percentage$%"
                  tray = sniTrayThatStartsWatcherEvenThoughThisIsABadWayToDoIt
              simpleTaffybar defaultSimpleTaffyConfig { startWidgets = [ workspaces, note ]
                                                      , endWidgets = [ tray, clock, bat, mem, cpu, net, mpris ]
                                                      , barHeight = 50
                                                      , widgetSpacing = 20
            1. 1

              Ha. I use a pretty similar xmobar config myself but your inclusion of the web calendar is a real smart piece of work here. I’m totally stealing that. Thanks man

      2. 1

        Nice. Here’s my NixOS config for P71 if you are interested.

        1. 2

          Small world.. I already used your config last night to resolve the challenges I had with the graphic drivers ( kept declaring only nvidia.) Do you have any interesting rice you’d be willing to share ?

    5. 40

      Whenever I read tech articles about reducing keystrokes I tend to roll my eyes. cd‘ing directories already takes up a very small portion of my time—optimization will never be worth it. Now if you can tell me how to make roadmap estimations that don’t put my team in peril, now that’s going to help me to not waste my time!

      Edit: It’s a cool tool, just maybe the article is touting it as more of a life saver than it actually is.

      1. 12

        I mean, I do too, but people do actually take this kind of thing seriously. I’ve had several people say they wouldn’t use ripgrep because the command was too long to type, but upon hearing that the actual command was rg, were much more satisfied. Maybe I missed their facetiousness, but they didn’t appear to be joking…

        1. 5

          Could they not have just alias’d the command if it was “too long”?

          1. 4

            The people in question don’t sound clever enough for that.

          2. 1

            Are you asking me? Or them? ;-)

        2. 4

          I wonder if these are different people than the ones who complain about short unix command names and C function names…

      2. 9

        For those of us with RSI, these little savings add up, and can make for a pretty big difference in comfort while typing.

        1. 8

          Oh please. If you’re really worried about a couple of words and keystroke saving, you’d setup directories and make aliases that will take you specifically where you want to go. Assuming it was even a GUI you were using with a mouse, you’d still have to click through all the folders.

          Overall, paying close attention to your workspace setting and ergonomics can go a long way in helping improve your RSI situation than this little jumper will ever do

      3. 4

        My thoughts exactly. I have often wasted time trying to optimize something which took so little time to begin with, even if I reduced the time to nothing it would have no significant impact on overall performance. And the less-obvious trap is optimizations like this add additional complexity which leads to more time spent down the road.

      4. 9

        All right, buddy. Cool.

        Did I say it a “life saver”? Nope. Did I say it could save you a lot time? Yup. If cd'ing into directories doesn’t waste your time, cool. Move along, read the next blog post on the list.

        I’m sorry about your roadmap estimations. Sounds like you’ve got a lot on your chest there.

        1. 31

          Let me just take a step back and apologize—nobody likes negative comments on their work and I chose my words poorly and was insensitive. I’m rather burnt out and, in turn, that makes me appear more gruff online. I’m positive that someone will find this useful, especially if they’re managing multiple projects or similar use cases.

          1. 23

            I really appreciate you saying that. The whole point of this piece was to share something that literally makes me whistle to myself with joy every time I use it. I hope you find some time to take care of your burn out. It’s no joke and I’ve suffered from it quite a bit in the past three years myself. <3

            I know it’s easy to look at everything as “this is just like X but not quite the way I like it” and I don’t blame you for having that reaction (like many here). AutoJump is to me the epitome of simple, delightful software that does something very simple in a humble way. I wish I had spent more time extolling the virtues of the simple weighted list of directories AutoJump stores in a text file and that ridiculously simple Bash implementation.

            The focus on characters saved was a last minute addition to quantity the claim in the title. Which I still think will be beneficial to anyone who remotely has frustrations about using cd often and may suspect there is a better way.

        2. 6

          If only there was a way to optimize crank posting. So many keystrokes to complain!

      5. 2

        the parent tool is probably overkill but a simple zsh function to jump to marked projects with tab completion is pretty awesome to have.

        alias j="jump "
        export MARKPATH=$HOME/.marks
        function jump {
        cd -P "$MARKPATH/$1" 2>/dev/null || echo "No such mark: $1"
        function mark {
        echo "mark name_of_mark"
        mkdir -p "$MARKPATH"; ln -s "$(pwd)" "$MARKPATH/$1"
        function unmark {
        rm -i "$MARKPATH/$1"
        #if you need it on another os.
        #function marks {
        #ls -l "$MARKPATH" | sed 's/  / /g' | cut -d' ' -f9- | sed 's/ -/\t-/g' && echo
        # fix for the above function for osx.
        function marks {
        \ls -l "$MARKPATH" | tail -n +2 | sed 's/  / /g' | cut -d' ' -f9- | awk -F ' -> ' '{printf "%-10s -> %s\n", $1, $2}'
        function _completemarks {
        reply=($(ls $MARKPATH))
        compctl -K _completemarks jump
        compctl -K _completemarks unmark
        1. 1

          I’ve tried this, but I keep end up making shortcuts and forgetting about them because I never train myself well enough to use them until they’re muscle memory.

          I think I’ll just stick to ‘cd’ and also extensive use of ctrl-r (preferably with fzf)

          1. 1

            And then you go to a work mates computer, or su/sudo/SSH and it’s unusable :)

          2. 1

            well this is one of the most useful shortcuts in my arsenal. type j <tab> or jump <tab> and it completes all the marked directories. If you get over the initial forget to use it curve it’s amazing and simple (just a folder in your home dir with a bunch of symlinks. and a few helpers to create those.)

    6. 7

      First week laid off my job, so time to get serious about my personal server project. Continue learning TLA+ and develop story map for the project.

      1. 6

        Condolences on the layoff. :(

        Remember, you’re worth more than just your job! :)

      2. 2

        Sorry to hear about the layoff. That sucks If you’re in the US, make sure you grab that unemployment claim.

    7. 1

      This week i’ll be attacking some Js work i’ve left for too long. That and working my way through Death’s End. It’s been incredibly difficult to read

    8. 1

      Easy reading week. Main goals are to complete Deaths End by Cixin Liu and Mindshift by Barbara Oakley.

      Also sometime during the week, the construction of a new dip station for calisthenics

    9. 5

      Personal: I’m trying to get back in shape by following the (in)famous Couch-to-5K program; I’m at the end of the fourth week, and to be honest I’m feeling better than ever! I’m trying to write more on my blog, but finding something interesting to blab about is harder than ever nowadays.

      University: I’m studying Turing Machines and finite-state automata theory: very interesting arguments, but hard to understand. As a project for another exam, me and a colleague wrote a small paper about differences in approach and performance between Go and C+MPI; turns out the good ol’ C approach to parallelism isn’t always the fastest option available (which was an unexpected conclusion, to be honest).

      Hacks: since the cryptocurrency mining world is getting interesting again, I might publish a service I’ve been working on for some time that could help miners to watch on their rigs more easily… But first, exams!

      1. 1

        Great job with your consistency on the C25k program. You’ve already cleared the hard part.

    10. 2

      Couldn’t complete my distro due to disk space issues. Looking forward to finishing that this week. I believe I’ve recovered from my knee injury sufficiently to start streaking again.

      1. 1

        I had same issue albeit slightly different: disc of an old one broke so Im making a LiveCD/USB for it use remaining CPU life for heavy computation. The backup was too full, though. Another day..

    11. 3

      I haven’t built a distro from scratch in about 3-4 years. This week i’ll be building a distro. Might begin working on a prototype package manager in a few weeks

      Also, a couple of books to read.

    12. 1

      This week I’m enjoying my newly found unemployment. I’m completing Death’s End by Cixin Liu, and a book by Dr Barbara Oakley