HNHacker News
TopNewBestAskShowJobs

oftenwrong

15,024 karma · joined April 22, 2012

sfir6i2z@mailer.me
submissionscomments
oftenwrong··on JetKVM Mini
The cheap alternative I use is based on a USB switch hub and a monitor that has enough inputs for all of the computers I want to switch between.

The hub is a very simple and inexpensive device that essentially just lets you change USB devices between computers. It has 4 ports for USB devices, and 4 input ports for USB hosts. There is a wired remote control that allows you to switch between the hosts.

The way you turn this into a KVM-like device is by having each host connected to the monitor/s indepentently. In my case, I have only two hosts, and each one is connected via HDMI cable to my single monitor. Each host is set up to detect when the USB hub is connected, and then send a DDC command to switch the monitor input over to itself.

The end user experience is: I press a button on the wired remote, which is mounted on my keyboard tray, and then after a short delay the corresponding computer is on my screen and everything works normally.

On linux, this is trivially accomplished with a udev rule + a script calling ddcutil.

On my work machine, a Mac, I could not find a simple solution that worked reliably on my specific Macbook Pro model that I would recommend, so I had an AI write a custom daemon for this purpose.

The major benefit of this "poor man's KVM" is that you do not need an expensive and finnicky piece of KVM hardware. You do not need to worry about the video chip supporting your setup, or firmware bugs. You buy one cheap, commodity product. The downside is the reliance on the hosts, and on monitor features, and having to set up the functionality manually. In my case, this is the sort of thing I basically just set up and then never touched again, so it was a fine trade-off. If I get new computers, or a new monitor, or I change which porta the computers are attached to, then I have to change the code.

oftenwrong··on JetKVM Mini
At the beginning of my career, it was typical to have servers in the office, either in a server closet, or in a proper server room. Even if we had servers off-site, the development infrastructure was often still local. It was typical for experienced developers to know how to do basic "physical" maintenance. I was a system administrator before I was a developer, so often I was the one who ended up doing it. I imagine many HN readers remember those days. I miss it a bit!
oftenwrong··on Saving money on Google Photos with Immich: Your own personal photo storage
The greatest weakness of Google Photos is that it has no real incremental, automated backup features. If it could incrementally sync over to other services, it would be much better. The closest is to manually use Google Takeout to export specific time ranges, and then copy those elsewhere.
oftenwrong··on Saving money on Google Photos with Immich: Your own personal photo storage
That's me in a nutshell. I have close to 300GiB in Google Photos, mostly photos and videos of my children. I take a lot of photographs because getting a good shot, for me, is mostly a matter of luck. I don't delete that many photos because it's active work and I don't really care to spend the time. I do curate an album of decent ones, just so the few people who care can see new photos and videos every now and then. I pay a relatively small fee for 2 TiB of space.
oftenwrong··on How version control will evolve for the agent boom
I am anticipating a move away from git-style version control entirely.

One possible shape is something like unison-lang's CAS AST model:

https://www.unison-lang.org/docs/the-big-idea/

This model has some significant downsides for humans, but less so for automatons. It eliminates some major problems of software development like merge conflicts, dependency hell, etc.

oftenwrong··on In praise of memcached
Seems that it is already supported: https://docs.memcached.org/features/flashstorage/
oftenwrong··on Ohbin – uv wrapper for installing tools from GitHub
Somewhat similar: https://github.com/facebook/dotslash
oftenwrong··on Nobody cracks open a programming book anymore
I still have my copy of Learning Perl. Mostly because it represents a milestone in my learning. I have kept and obtained a number of other books simply because they are antiquated, special and/or classics that are interesting to read even if they are not that useful to me, like Codd's relational book, or Calendrical Calculations. I hope the AI is trained on these sorts of books, so that the knowledge can live on in a different way.
oftenwrong··on Why are we still using Markdown?
I have long used underscores for _emphasis_, but I never made the connection that it was meant to resemble an underline until now.
oftenwrong··on Ninja is a small build system with a focus on speed
I might be missing your sarcasm, but this is a common approach for large scale builds. Virtual filesystems are used to provide a pre-computed tree hash as a xattr. In a more typical case, you can read the git tree hash.
oftenwrong··on Mayor of Paris removed parking spaces, reduced the number of cars
Surely the school streets are a great benefit for families, yes? That seems as pro-child as public space allocation could be.
oftenwrong··on 1Password pricing increasing up to 33% in March
>The browser extension doesn’t work half the time. In addition to being frustrating, that makes it a less secure system, as one of the benefits is that it only fills the password on the specified domain. A lack of reliability of the extension leaves people more vulnerable to phishing, since they have to copy/paste passwords out of the app.

This is my main frustration with it as well. It is one of the main features in my mind, and it often does not work. It seems to work for many sites I use on desktop (Firefox on Linux, Mac), but doesn't work well at all on Android (Android app and Firefox). I can understand if this issue is outside of 1password's control because it possibly is due to specifics of Android's APIs, but I would prefer transparency in the matter.

oftenwrong··on Show HN: Unfucked - version all changes (by any tool) - local-first/source avail
I have used savevers.vim for many years as a way to recover old versions of files.

https://www.vim.org/scripts/script.php?script_id=89

It is comparatively unsophisticated, but I need it so infrequently that it has been good enough.

I do like the idea of maintaining a complete snapshot of all history.

This is a good application for virtual filesystems. The virtual fs would capture every write in order to maintain a complete edit history. As I understand it, Google's CitC system and Meta's EdenFS work this way.

https://cacm.acm.org/research/why-google-stores-billions-of-...

https://github.com/facebook/sapling/blob/main/eden/fs/docs/O...

oftenwrong··on Gawk 5.4.0 is released, with replaced MinRX matcher
https://github.com/mikehaertel/minrx
oftenwrong··on I Don't Like Magic

    #!/usr/bin/env java --source 25
    void main() {
        IO.println("Hello, World!");
    }
oftenwrong··on Spotify Honk AI Agent
Seems that the Google-style approach would be a good fit: mostly one codebase with a well-defined dependency graph, and build/test infrastructure that supports fast and comprehensive validation. This would seem to obviate the need for the catalog system described, but probably requires more investment in the build system.
oftenwrong··on What functional programmers get wrong about systems
This is one of the main problems I have banging my head on for the past decade, and many of the things mentioned, like Buf, Unison, and more, I only stumbled upon randomly on my own. It's refreshing to read an article on this subject simply because it's so under-discussed. I also wonder to what degree these problems have been solved within the high walls of the tech giants like Google and Amazon.
oftenwrong··on Company as Code
This is perhaps a bit different, but Fossil supports storing more types of written company artifacts in the repo:

>One notable feature of Fossil is that it bundles bug tracking, wiki, forum, chat, and technotes with distributed version control to give you an all-in-one software project management system.

https://fossil-scm.org/home/doc/trunk/www/whyallinone.md

oftenwrong··on Modetc: Move your dotfiles from kernel space
I have been doing this for decades. My files are in a sub-directory of $HOME. It also makes it very obvious when a piece of software does not treat your $HOME with respect.
oftenwrong··on Install.md: A standard for LLM-executable installation
What is the benefit of having this be a standard? Can't an agent follow a guide just as easily in document with similar content in a different structure?
oftenwrong··on Lessons from 14 years at Google
I don't think it's meant to be a point against abstraction or a point against complexity. I think it's widely understood that abstraction is part of how advancement is made in our practice, as well as in other disciplines. I have taken this saying to be an observation that there is almost always possible failure beneath the façade provided by the abstraction. Therefore, yes, you avoid having to let that complexity enter your brain, but only when the abstraction is holding. Beyond that point, often after pages are sent, you will still have to engage with the underlying complexity. A proactive measure following from this idea would be to provide support in or alongside your abstractions for situations where one must look under the bonnet.
oftenwrong··on 2026: The Year of Java in the Terminal?
You can do better now:

    #!/usr/bin/env java --source 25
    void main() {
        IO.println("Hello, World!");
    }
https://openjdk.org/jeps/330 https://openjdk.org/jeps/458 https://openjdk.org/jeps/512

I often combine these approaches with https://get-coursier.io/ when I need to fetch third-party dependencies.

oftenwrong··on A faster path to container images in Bazel
What you are describing is basically remote buildkitd. That allows all of your docker builds to share a big cache. The cache-to/cache-from approach is of limited usefulness.
oftenwrong··on A video on the details of how Trunk-Based Development worked at MFT Energy
This is based on this write-up:

https://www.linkedin.com/pulse/wont-main-break-all-time-your...

archive copies:

https://archive.is/wI4b0

https://web.archive.org/web/20251211132753/https://www.linke...

https://ghostarchive.org/archive/bN17w

oftenwrong··on Monorepo CI for GitHub Actions: Run the Tests You Need, Nothing More
Triggering off of changed file paths is not a great way to achieve this because it's disconnected from the underlying dependency graph.

This is also a standard feature of GitLab CI.

oftenwrong··on Influential study on glyphosate safety retracted 25 years after publication
What if I want to do something on my land that will poison the ground water for the area? What if I want to raise an invasive species on my land that will likely escape and devastate local wildlife? Should society be permissive and wait for the damage to be done before stopping me, instead of being proactive and stopping me from doing so before the fact?
oftenwrong··on Influential study on glyphosate safety retracted 25 years after publication
The problem is always how well one can prove that any harm was done, or that theoretical harm would be done.
oftenwrong··on Google Starts Sharing All Your Text Messages with Your Employer
This headline is misleading.

>This applies to work-managed devices and doesn’t affect personal devices.

"All Your Text Messages" implies _all_ messages, which is not the case.

oftenwrong··on Shai-Hulud Returns: Over 300 NPM Packages Infected
Maven does not support "scripts" as NPM does, such as the pre-install script used for this exploit. With scripts enabled, the mere act of downloading a dependency requires a high degree of trust in it.
oftenwrong··on Ask HN: My family business runs on a 1993-era text-based-UI (TUI). Anybody else?
I think some people would enjoy something akin to HyperCard for building custom TUIs and/or highly efficient web UIs.
Page 1 of 34Next →