I’m a robotics researcher. My interests include cybersecurity, repeatable & reproducible research, as well as open source robotics and rust programing.

  • 30 Posts
  • 28 Comments
Joined 3 years ago
cake
Cake day: June 9th, 2023

help-circle



  • Mainly the official git CLI for controlling branches and sub modules, and sometimes the GitHub CLI if quickly checking out a pull request from a forked repo.

    Also use the source control tab in VSCode rather often, as it’s really convenient to review and stage individual line changes from its diff view, and writing commit messages with a spell check extension.

    If it’s a big diff or merge conflict, I’ll break out the big guns like Meld, which has better visualizations for comparing file trees and directories.

    About a decade ago, I used to use SmartGit, then tried GitKraken when that came around, but never really use much of the bells and whistles and wasn’t keen on subscription pricing. Especially as the UX for GitHub and other code hosting platforms online have matured.












  • If there was a simple Debian based distro that I could declaratively manage via a single config file, I think I’d try it. I.e. not using Puppet or Chef that can only bootstrap a system state, but something to truly manage a system’s entire life cycle, including removing packages and anything littering the system file tree. But since there isn’t, I’m using NixOS instead.

    Having a DSL to declare my entire system install, that I can revision control like any other software project, has been convenient for self documenting my setup and changes/fixes over time. Modularizing that config has been great for managing multiple host machines synchronously, so both my laptop and desktop feel the same without extra admin work.

    Nixpkgs also bolsters a lot of bleeding edge releases for the majority of FOSS packages I use, which I’m still getting used to. And because of how the packaging works, it’s also trivial to config the packages to build from customer sources or with custom features. E.g. enabling load monitoring for Nvidia GPUs from btop that many distros don’t ship by default.















  • I’m using a recent 42" LG OLED TV as a large affordable PC monitor in order to support 4K@120Hz+HDR@10bit, which is great for gaming or content creation that can appreciate the screen real estate. Anything in the proper PC Monitor market similarly sized or even slightly smaller costs way more per screen area and feature parity.

    Unfortunately such TVs rarely include anything other than HDMI for digital video input, regardless of the growing trend connecting gaming PCs in the living room, like with fiber optic HDMI cables. I actually went with a GPU with more than one HDMI output so I could display to both TVs in the house simultaneously.

    Also, having an API as well as a remote to control my monitor is kind of nice. Enough folks are using LG TVs as monitors for this midsize range that there even open source projects to entirely mimic conventional display behaviors:

    I also kind of like using the TV as simple KVMs with less cables. For example with audio, I can independently control volume and mux output to either speakers or multiple Bluetooth devices from the TV, without having fiddle around with repairing Bluetooth peripherals to each PC or gaming console. That’s particularly nice when swapping from playing games on the PC to watching movies on a Chromecast with a friend over two pairs of headphones, while still keeping the house quite for the family. That kind of KVM functionality and connectivity is still kind of a premium feature for modest priced PC monitors. Of course others find their own use cases for hacking the TV remote APIs:









  • Only just got a 120Hz monitor recently, so reading scrolling text now is so much easer and faster than before. Looking forward to any IDE that can match that kind of framerate performance as well.

    Too bad I don’t own a mac to be able to test out the current release of Zed as an IDE. However, I’m not sure about the growing trend of rasterizing the entire GUI, as compared to conventional text rendering methods or GUI libs with established accessibility support.