‹ BackHN Continuity

Thread

Small programming tricks

681 points · 294 comments · signa11

  1. kccqzy · · focus · HN ↗
    A lot more tricks can be learned from just watching AI work. Instead of allowing AI to work autonomously, go back to the old days where you manually approve every command the AI runs. Just recently while doing performance optimization work, I found Opus using the `perf` command in ways I didn’t know possible. Just give AI a real task and carefully read what commands are used by the AI to solve the problem; most likely the AI uses a trick or two that you didn’t know existed.
    1. throwaway219450 · · focus · HN ↗
      There are several keyboard shortcuts that you would never find out from watching an agent, but are mindblowing to new Linux users. I suck at remembering vim keybindings, but I have ingrained ctrl+a ctrl+e for jumping to the start/end of a string (which also works all over OS X). I had been a developer for an embarassing amount of time before I discovered those.

      There are other terminal specific shortcuts for removing last word (ctrl+w) but they don't seem to be as portable.

      1. gosub100 · · focus · HN ↗
        Another one, not quite as handy but still awesome: ctrl s / ctrl-q. This freezes/unfreezes the terminal output so you can read it, without interrupting your program. Useful for very fast walls of text.
        1. TeMPOraL · · focus · HN ↗
          Oh so that is what this is for. I thought ctrl-q / ctrl-s are there as a nasty way to screw with users, who every now and then accidentally press one of these, and find their terminal frozen and no longer visibly reacting to input, for no apparent reason.
          1. [deleted] · · focus · HN ↗

            [deleted]

          2. zem · · focus · HN ↗
            there was an old riddle I saw on usenet, "there is a key I use for one of its intended purposes several times a day, but when it stopped working I never missed it. what key was that?". the answer was the caps lock key, one of whose intended purposes was reverting back to normal after accidentally pressing it to go into caps mode.
            1. abustamam · · focus · HN ↗
              I rebind capslock on all my new computers, usually to ctrl or cmd.
              1. spider-mario · · focus · HN ↗
                Mine is usually Esc or, when it’s an option, “Esc when pressed, Ctrl when held”.
          3. mkehrt · · focus · HN ↗
            You can disable this misbegotten feature with

            stty -ixon

          4. throwaway219450 · · focus · HN ↗
            Ah this is also a fun default feature of Powershell, except it works on mouse click.
          5. zh3 · · focus · HN ↗
            That's actually XON/XOFF - in the old days when computers could send serial data to your VT100 or whatever faster than it could handle it (and we're talking 9600 baud here), the terminal would send XOFF (ctrl-S) telling the computer to stop sending - then, when the terminal caught up, it would send XON (ctrl-Q) to let the system know it could resume sending.

            The advantage of doing it this way ('software flow control') is it worked with just TX and RX lines, rather than having to connect up additional wires to indicate when the terminal was busy ('hardware flow control').

            1. gosub100 · · focus · HN ↗
              I remember the ole flow control :(rts/cts | xon xoff) from hyperterminal on windows :)
        2. kccqzy · · focus · HN ↗
          It can’t always not interrupt your program. Think about it: after you press Control S to trigger XOFF, the fast output has to be buffered in memory. That memory is certainly not unlimited. There’s no way for the program to keep outputting text. Indeed some programs (including Claude Code, at least a while ago) really don’t like it when you press Control S and let the terminal be frozen for a very long time.
          1. mkehrt · · focus · HN ↗
            Interesting; I assumed the write to stdout would just hang for the writing program.
        3. SAI_Peregrinus · · focus · HN ↗
          I remember when the Pause key did that! It's long enough ago that I don't remember which systems did so, and most laptops don't even have a Pause key any more, but it was often very handy for reading fast-moving console output.
Open on Hacker News to reply ↗

Unofficial Hacker News client; not affiliated with Y Combinator.