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.
HN user
piekvorst
blog: piekvorst.github.io
email: piekvorst@outlook.com
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.
Not just a Futurama reference
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.)
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.
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.
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.
Thank you for busting the myth of worker self-management.
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.
)
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.
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].
You can’t be omniscient, I think.
“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.
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.
It’s accepted.
“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.”
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.
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.
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?
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...No Plan 9. Otherwise, resources like this might help studying how the interfaces of the past evolved (at least, on the surface).
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.
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.
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?
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.
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.
Too much social conflicts caused by uncritical pursuit of “equality” (really, privileges).
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.
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 Anarchismcertain appeals to emotion or outcome are evil tools of fictional villains, while simultaneously doing the exact same thing
You would be correct if that were the whole truth about Atlas Shrugged: defending protagonists on emotional grounds.
But it’s not the whole truth. The very monologue that you dismiss is the tool that provides the emotion with the principle. You know the characters’ reasons for holding their emotions.
Ayn Rand never said that one shouldn’t feel or express one’s emotions. On the contrary, “. . . emotions are not his enemies, they are his means of enjoying life” [1].
In fact, every emotional appeal used in the novel is supported by argument, sooner or later. You cannot say, for example, that the dismissal of James Taggart or Robert Stadler is purely emotional.
The jarring transition reveals how the story was really just an afterthought
Your claim would be valid if the jarring transition were not Galt’s speech but some other nonfiction. The case is the opposite: the story and speech are very much integral.
The pause of events as such is a neutral tool, with precedents (The Battle of Waterloo in Les Miserables).