HNHacker News
TopNewBestAskShowJobs

ilyagr

1,069 karma · joined December 15, 2012

submissionscomments
ilyagr··on Improper redaction reveals Google Data Center water and electricity usage
This article seems to focus on one of the less interesting in terms of water usage data centers (for most of us non-locals) because the paper is from Lincoln and that data center is in Lincoln.

The article's data center used 13 mil gal of water, but as they point out another one used up more than 500 mil gallon.

Seemingly much better article (pictures, better comparisons): https://flatwaterfreepress.org/data-centers-can-guzzle-serio...

Apparently Google self-reported the total 700+ million, so the main thing to learn from redacted numbers is how much smaller all the other data centers are compared to the 500 mil gallon one.

Update: in terms of water usage. Not sure whether 500 mil gallon one is larger or just really water-inefficient. That would be a nice thing for some journalist to research...

Update 2: it seems that Google uses water-evaporation cooling in regions that they don't consider water-stressed. Here's a not-so-great reference (scroll down if the text-fragment link doesn't work): https://www.axios.com/2026/06/03/google-pushes-water-standar...

ilyagr··on Git 3.0's upcoming SHA-256 default will be a costly mistake
If you trust the sha-256, you know the commits you have and their ancestors are not evil. So, the sha-1s for those commits can be trusted.

You should also check the mapping table's sha-256 hash, to know that it's not evil.

If you later get an evil commit trying to masquerade as one of those, Git will presumably notice that there are two commits with the same sha1 in the same repo, and bail loudly.

ilyagr··on A note on subscription prices from LWN
For math, try https://www.quantamagazine.org/
ilyagr··on The creator of Jujutsu has joined ERSC
Several jj developers (especially Martin and Yuya) are former mercurial developers.

jj borrowed quite a few things from mercurial.

So, jj can be thought at least partially as a spiritual successor. Meta's Sapling is in a similar position. From this perspective, the key feature of both is transparent git repo and git remote support (hg can speak git as a foreign language, but it's limited)

ilyagr··on Asynchronous I/O in DuckDB: Work, Thread, Work
Do the CSV files allow quoted newlines? If yes, what's the trick to avoid checking the whole file too find out whether a newline is quoted or a record separator when reading it from the middle in an async thread?
ilyagr··on 36 Ways to Send a File
https://github.com/coder/wush is missing in there. It had a web interface for a while.

I'm glad croc developed one though. It is a bit more commonly packaged.

ilyagr··on US hires over 2k video gamers as air traffic controllers
Steam has screenshots and an English translatio of the publisher's description. https://store.steampowered.com/app/1348390/I_am_an_Air_Traff...
ilyagr··on Noise infusion banned from statistical products published by Census Bureau
This might be the point. As long as they think the people who end up under-counted are not people this government would like to have voting power for the House of Representatives.
ilyagr··on Coreutils for Windows
Now the readme says

"Note: Any command not mentioned is included in this suite. "

which I found quite confusing. It's a very large set, potentially infinite depending on what the universe of all commands is :)

You should link to the list of all the commands in your package.

ilyagr··on I made a terminal pager
https://github.com/noborus/ov is another pager, in addition to `moor` that somebody else shared.
ilyagr··on Pijul a FOSS distributed version control system
I believe this is what `git rerere` does
ilyagr··on TeX Live 2026 is available for download now
Thanks for the useful info!
ilyagr··on TeX Live 2026 is available for download now
https://github.com/typst/typst is an interesting competitor to ConTeXt. It's not even TeX, but somehow I tried (and liked) it before I tried CoTeXt. TeX syntax is not something I ever enjoyed in LaTeX.

How much more compatible with LaTeX is ConTeXt than typst? For example, is there tikz for ConTeXt?

ilyagr··on Parsync, a tool for parallel SSH transfers – 7x faster than rsync
This is less of a usable tool and more of a concept right now, but there are algorithmic ways to do better than rsync (for incremental transfers, ymmv).

https://github.com/google/cdc-file-transfer

Hint: I really like the animated gifs on that page but they are best viewed frame-by-frame like a presentation.

ilyagr··on Our Agreement with the Department of War
OpenAI's new safety restrictions are magnificent, though unfortunately hard to comprehend for those who are incompetent or stupid.

https://en.wikipedia.org/wiki/The_Emperor%27s_New_Clothes

Life follows art even closer than I thought when this story first reminded me of Andersen.

ilyagr··on Assorted less(1) tips
Actually, it would be more correct to do

    echo '^q toggle-option -redraw-on-quit\nq' >> ~/.config/lesskey
The original version I suggested works too, but by accident. `redraw-on-quit` is the actual option name.

(I'd edit my original message, but it's too late for that)

----

Also, note that if you put `--redraw-on-quit` into your `LESS` config (and not `-X`), and set up `^q` as above, things will still work but with flipped behavior of `q` and `^q`.

If your version of `less` is new enough, I believe that the `--redraw-on-quit` behavior is in every way (slightly) better than the `-X` behavior. In addition to the above, some terminals have special behaviors in alternate screen (like converting mouse wheel to up/down keys), which `--redraw-on-quit` will preserve.

ilyagr··on Assorted less(1) tips
If you want the `-X` behavior only some of the time, see https://news.ycombinator.com/item?id=46472859. (Maybe I should've posted it in this thread)
ilyagr··on Assorted less(1) tips
There's a way to make `^q` quit `less` and not clear the screen (like `less -X`), while `q` quits `less` and clears the screen (like normal `less`).

1. Do `echo '^q toggle-option -redraw-screen\nq' >> ~/.config/lesskey`

2. Make sure `less` is invoked without `-X` (or with `-+X` if you want to be sure).

This `^q` command is particularly useful for `git log` output and other things where you might need to refer back to them in the next terminal command you do. (In fact, `git` uses `less -FRX` by default, so you'd need to override its config to use `less -FR` instead for the above to work as intended). The `q` command is useful when you don't want to lose what you had on the screen before invoking `less`.

ilyagr··on Jujutsu at Google [video]
See also https://github.com/jj-vcs/jj/wiki/JJ-Con-2025 for a list of all the talks, their slides, and some additional notes. I think the slides are also linked from youtube, but the website definitely has them.
ilyagr··on Show HN: I created a cross-platform GUI for the JJ VCS (Git compatible)
VS Code now has an OKish git graph built-in, in case you didn't know. This feature is a few months old.
ilyagr··on Halt and Catch Fire Syllabus (2021)
The intro for the show is quite nice.

https://www.youtube.com/watch?v=ucSUs3adMQ8 https://www.youtube.com/results?search_query=halt+and+catch+...

ilyagr··on We rewrote the Ghostty GTK application
If you're like a quick fix, see https://ghostty.org/docs/help/terminfo#copy-ghostty's-termin.... If that doesn't work, perhaps one of the other suggestions on that page will.
ilyagr··on Blood oxygen monitoring returning to Apple Watch in the US
According to the link, the patents in question expire in 2028.
ilyagr··on Vet is a safety net for the curl | bash pattern
One option is https://github.com/binpash/try

It is Linux-only, though.

ilyagr··on Diffsitter – A Tree-sitter based AST difftool to get meaningful semantic diffs
https://github.com/Wilfred/difftastic/wiki/Structural-Diffs is a nice list of alternatives.

Difftastic itself is great as well! The author wrote up nice posts about its design: https://www.wilfred.me.uk/blog/2022/09/06/difftastic-the-fan..., https://difftastic.wilfred.me.uk/diffing.html.

ilyagr··on Diffsitter – A Tree-sitter based AST difftool to get meaningful semantic diffs
In case anybody happens to be interested in testing `gumtree` with https://github.com/jj-vcs/jj, I think I got them to work together. See https://github.com/GumTreeDiff/gumtree/wiki/VCS-Integration#... (assumes Docker).
ilyagr··on Take Two: Eshell
Is <https://github.com/trapd00r/vidir> the same as `vidir` from <https://joeyh.name/code/moreutils/>?

Shout out to moreutils, there are many nice utilities, and there's a `moreutils` package in most distributions.

Update: Looking at the authors listed in the man pages, the `trapd00r` version looks to be a fork of the moreutils version. Not sure how the functionality compares. Both versions seem to have been updated since the fork.

ilyagr··on Apple announces Foundation Models and Containerization frameworks, etc
If you search the code, they support Rosetta, which means an ARM Linux kernel running x86 container userspace with Rosetta translation. Linux kernel can be told to use a helper to translate code using non-native architecture.

Actually, they explain it in detail here: https://github.com/apple/containerization/issues/70#issuecom...

It's unclear whether this will keep being supported in macOS 28+, though: https://github.com/apple/container/issues/76, https://www.reddit.com/r/macgaming/comments/1l7maqp/comment/...

ilyagr··on X changes its terms to bar training of AI models using its content
An intelligence that reasons this way would be, in human terms, batshit insane and completely immoral. So, it seems unlikely that many or maybe any humans would experience it as "otherwise benign" if it had power over their lives.

And if we do get an all-powerful dictator, we will be screwed regardless of whether their governing intelligence is artificial or composed of a group of humans or of one human (with, say, powerful AIs serving them faithfully, or access to some other technology).

ilyagr··on Jjui – A Nice TUI for Jujutsu
See https://github.com/jj-vcs/jj/wiki/GUI-and-TUI for a standalone GUI and two VS Code plugins. None of the GUIs there are fully-featured, so sometimes you have to imagine what it could become, but each one is usable. The two VS Code plugins can be used at the same time and complement each other somewhat.
Page 1 of 11Next →