HNHacker News
TopNewBestAskShowJobs

piekvorst

165 karma · joined September 26, 2025

blog: piekvorst.github.io

email: piekvorst@outlook.com

submissionscomments
piekvorst··on Coyote v. Acme (1990)
Nice text editor
piekvorst··on Learn Vim motions with an ice-cream van
Doesn’t the act of reaching for the mouse actually creates a natural moment of wrist relaxation? A fixed wrist position creates static muscle tension.
piekvorst··on macOS Golden Gate icon comparison
It’s unfortunate that we can’t settle on an icon set for at least a decade. Constantly changing the icons misses the very point of their function: instant recognition.

This is partly why I’ve escaped to text-only interfaces and monochrome icons wherever possible. Granted, it’s not ideal, but sticking with the icons offers no advantage.

piekvorst··on Zenzizenzizenzic
Not just a Futurama reference
piekvorst··on How many of the 170k English words do you know?
English being my language of choice, but not my first language, I got 75/100. Performance breakdown: 18/20, 18/20, 11/20, 18/20, 10/20.

(My first language is Russian.)

piekvorst··on Is grep all you need? How agent harnesses reshape agentic search
The bottleneck, in my case, was indeed the poorly designed GUI of JetBrains and VSCode versus CLI. By migrating to CLI, I have abandoned intelligent queries as well. This project seems like a bridge: it preserves CLI, but restores the queries.

This is a promising road that I would probably not take. I have learned to live with simple per-line regular expressions. I have never felt that they slow me down.

In fact, the opposite is true: they let me craft fuzzy queries clearly, i.e., to balance the fuzziness across the query. I’ve never learned to do that with the black-box intelligent queries, which severely limited my scope in the past.

piekvorst··on I Hate (Most) Keyboard 'Fn' Keys
The icon is traditionally small indeed, but it shouldn’t be. I use the strings “vol-“ and “vol+” as icons, which makes the whole thing 8 characters long.

As a universal law, optimizing the fullscreen experience is a suboptimal goal. Generally, the best solutions are the ones that operate at the appropriate level, and if we optimize the fullscreen experience, then most solutions built for the right level are inaccessible to us.

piekvorst··on I Hate (Most) Keyboard 'Fn' Keys
Instead of using a single menu bar icon “volume control,” I have transferred the lessons of the keyboard to the GUI and placed two buttons in my menu bar: volume down and volume up. I have been using them all the time for about half a year now.

The benefits of this approach, to my knowledge and estimation, include: no waiting for a slider to appear; no nested actions; no need to read the current value; each click does not depend on the current state; Fitts’ Law muscle memory boost (the buttons are effectively infinite-height targets); discoverability compared to scrollwheelable icons.

piekvorst··on CEOs who think AI replaces their employees are just bad CEOs
Thank you for busting the myth of worker self-management.
piekvorst··on Is Grep All You Need? How Agent Harnesses Reshape Agentic Search
The social engineering thing runs deep. For example, if you grep for “Key” method, chances are the type/class name would stand on the same line. This is the case in Go and, I think, in many other programming languages (ironically, not C).

Lines are a fundamental building block of text and it’s not unreasonable to optimize them.

)

piekvorst··on Is Grep All You Need? How Agent Harnesses Reshape Agentic Search
I have always used traditional grep to search codebases. It serves me better than an IDE when there’re lots of scattered and frequent queries.

grep’s design is surprisingly winning, exceeding expectations to this day.

piekvorst··on Go: Support for Generic Methods
This is an outlier. The Go team and community never endorsed that. In fact, their position has always been the opposite. To give just one example, see [1].

[1]: https://research.swtch.com/dogma

piekvorst··on Go: Support for Generic Methods
You can’t be omniscient, I think.
piekvorst··on Go: Support for Generic Methods
“Done properly from the beginning” means explaining why a particular feature is either included or not. In this sense, Go is done properly from the beginning. It would be wrong to add every popular feature uncritically.
piekvorst··on Go: Support for Generic Methods
What’s the correction? The two claims are not in conflict. Saying “we don’t expect to ever add X” is not equivalent to “we never wanted to add X.” It simply means that they didn’t think it would happen, which can coexist with an underlying willingness to consider it if a suitable approach appeared.
piekvorst··on Go: Support for Generic Methods
It’s accepted.
piekvorst··on Curly braces: An evolution of Unix and C
“Curly braces” reads like “the braces—curly ones.” Pointedly emphatic when you want to stress a particular aspect of a thing, much like “rational animals” instead of “humans.”
piekvorst··on A case against Boolean logic
Aristotle indeed couldn’t prove it, that is, to derive it as a conclusion step by step from the evidence of the senses. His reasons for this are sound: 1) an attempt to do so has to rely on PNC already, and 2) we can’t assume infinite regress.

Asking a proof of PNC would imply proving non-contradiction by some means that assumes that contradictions do exist.

PNC doesn’t need a proof; it needs validation: a process of establishing an idea’s relationship to reality, whether through deductive reasoning, inductive reasoning, or sense perception.

> logic is [not] about what exists but rather a tool

If logic describes something that is not real, then our ideas and even institutions are detached from reality, and so some people claim a right to secede from “established truths” and place anyone who disagrees outside the circle of rational dialogue. That would be a harmless academic issue if the last two centuries weren’t a living record of that detachment playing out in politics, ideology, and culture.

piekvorst··on A case against Boolean logic
Logic is identification of that which exists. Thus, a proposition either does correspond to reality or doesn’t at all. There is no partial semi-truths: the moment a concept or proposition ceases to describe reality, it becomes false.

Contexts don’t change much. They are merely implicit knowledge, subject to the same binary standard. They don’t change the truth, only applicability.

Mentioning Gödel here is not just cliche, it’s irrelevant. Gödel is about artificial formal deductive systems. They are not a claim to exclusive philosophy.

piekvorst··on Safari and Firefox change how big sites render based on the domain
I agree that lying should be illegal, but “domination” is vague. One could argue (and I would agree) that there’s nothing wrong with dominance if it comes down to just offering a superior product.

And why should the cross-market context be treated differently?

piekvorst··on The vi family
I think that it's wrong to assume that vi is the only route to deep muscle memory. Heavy mouse users develop blindingly fast Fitts’ Law targeting. And if you need essential simplicity, they have far fewer commands.

Bill Joy, the original author of vi, saw the vi commands as a problem, not a solution [1]:

    The fundamental problem with vi is that it doesn't have a mouse and therefore you've got all these commands. In some sense, its backwards from the kind of thing you'd get from a mouse-oriented thing.
[1]: https://web.archive.org/web/20120210184000/http://web.cecs.p...
piekvorst··on Screenshots of Old Desktop OSes
No Plan 9. Otherwise, resources like this might help studying how the interfaces of the past evolved (at least, on the surface).
piekvorst··on Mouse Pointer as a Mere Mortal
I’ve never heard of that feature in Windows! Unfortunately, that means I can’t judge it.

But I have used mouse warping in other environments and I’ve never been caused disoriented. It never occurred to me that such a problem is possible. In general, it seems like this problem can be avoided by 1) moving the mouse only to changed states of the screen, 2) only if they’re small enough to be easily observable, and 3) only for repetitive tasks.

piekvorst··on Mouse Pointer as a Mere Mortal
> TL;DR don't mess with people's mouse cursors, it's like cutting their limbs off.

“Don’t mess” is a very broad range that includes things like removing the mouse cursor at nine PM. Of course, no one should do that.

But a narrower conclusion “let the mouse warp at certain predictable cases” doesn’t contradict your thesis.

piekvorst··on Mouse Pointer as a Mere Mortal
You are arguing for uniformity. It does make a lot of sense: the global UI makes a considerable effort to build a single perfect UI, but that can only work if the apps actually make use of it.

But why shouldn’t the global UI itself make use of mouse warping?

piekvorst··on Mouse Pointer as a Mere Mortal
> often only I know the context of that task

This doesn’t account for cases where the system is semi-automatic, such as a tiling window manager (you don’t set all the dimensions manually). If the automatic part is to stay at all, it should make certain assumptions for the user.

piekvorst··on Mouse Pointer as a Mere Mortal
I work in a text editor that relies on mouse warping heavily. It doesn’t feel wrong. The opposite is true, it makes otherwise mundane tasks fast. It takes the pointer to the newly created windows (if you have a dozen of windows, that matters), it makes it easier to locate currently selected text (again, having a dozen of windows makes it necessary) and get to the next occurrence, to shove a window together with the pointer so that you don’t lose the control over it, and more. Sometimes it even takes the cursor back after a short temporary action.

I truly miss this level of detail in the outside world. It feels as if you’re resizing a window but the mouse pointer doesn’t move.

The Lightroom example is nowhere close to that. Looks like a thoughtless optimization.

piekvorst··on George Orwell Predicted the Rise of "AI Slop" in Nineteen Eighty-Four
Too much social conflicts caused by uncritical pursuit of “equality” (really, privileges).
piekvorst··on George Orwell Predicted the Rise of "AI Slop" in Nineteen Eighty-Four
I never said that it’s not society because it’s not a society. If you want me to derive the whole meaning from concepts, that’s a rationalist school’s method, not mine. I derive the meaning from the content: an example of (“optimistically”) one thousand people sharing the same philosophy does not endorse a government-less society.

I do agree that a private estate cannot exist in a society without government. But it is private estate in the sense that the members recognize it as such, and that it can exist in this very narrow context.

piekvorst··on George Orwell Predicted the Rise of "AI Slop" in Nineteen Eighty-Four
It is a good thing and it absolutely can function, but not as a society. Ayn Rand explicitly rejected this idea [1]:

    Q: Why is the lack of government in Galt’s Gulch (in Atlas Shrugged) any different from anarchy, which you object to?

    A: Galt’s Gulch is not a society; it’s a private estate. It’s owned by one man who carefully selected the people admitted. Even then, they had a judge as an arbitrator, if anything came up; only nothing came up among them, because they shared the same philosophy. . . . But project a society of millions, in which there is every kind of viewpoint, every kind of brain, every kind of morality—and no government. . . . No one can guard rights, except a government under objective laws. . . . Rational men are not afraid of government. In a proper society, a rational man doesn’t have to know the government exists, because the laws are clear and he never breaks them. [FHF 72]
[1]: Ayn Rand Answers: The Best of Her Q&A, Politics and Economics, Libertarianism and Anarchism
Page 1 of 6Next →