Given how many times Trump declared the war a victory, I'm also curious to know if they declare it a war, how many time the families will be compensated? ten wars? a hundred wars? two wars and a a hundred rounds of ceasefire friendly matches?
This was an amazing read. I try to make hyper-documents as Nelson wanted and I have seen much of the contradictions. Yet I still believe you have to give people a hundred ideas for them to use 10. He did just that.
Exactly! I worked with a couple ex Xanadu acolytes at Apple back in the day. What they took away from the experience were the many inspirations rather than the project as a model for organizations. One of them brought him in to speak and he spent the time exhorting us to think beyond WYSIWIG (be careful about how your metaphors limit what your avoidances can be) which at the time I found rather eye-opening.
I'm so happy to see it be released. I had watched their YouTube coverage of what and why they were doing what they were doing and I'm so happy. As much as Audacity bears a nostalgia and mental safe zone in its look and design, it was too good of a software to let rot in technical debt and code spaghetti and getting behind. The world really needed an open source good looking easy to use workstation that is not as complicated as Pro Tools or Logic... I'm so thankful for Muse rescuing so many of the great apps (I really really am thankful for the MuseScore getting that amazing recently for example, or bringing the wonderful wonderful engine of StaffPad to it...)
I learned these lessons from many separate places and have always wished to see them in one place. This was an incredibly great article that I very much enjoyed reading and will be sending to anyone who's in need of ideas about speed. Thanks a lot!
Text editors are like mechanical watches or fountain pens. There is just so much beauty in the machinery that makes them. For me, there are hardly any other modules that are this satisfying to watch being made. Each time I find a new one (a good one like this), with everything on ropes and rendering and I-beam placement computations and ... it feels like a Christmas gift.
On one otherwise tranquil morning Master Foo's meditations were disturbed by cries of distress.
Finding that they came from one of the novices, he inquired "What is the difficulty here?"
The novice replied, "I am frustrated by my tools. Every day I must use many different editors because neither Emacs nor vi nor any of these other random editors has all the features I require."
Master Foo nodded. "How," he asked, "would a master of the Great Way resolve this difficulty?"
The student thought for a few moments, then replied. "Well, it's obvious. I will write the best editor ever. It will do everything I need. It will do everything everyone needs. And the world will be a better place because..."
The novice's speech halted as Master Foo rapped him sharply across the back of the head with his staff.
"Um. Master?" the student asked, rubbing the back of his head gingerly. "In what way have I erred?"
"Fool!" said Master Foo. "Do you think I want to learn yet another editor?"
Upon hearing this, the novice attained enlightenment.
Sometimes there are genuine reasons to build a text editor. It's really hard to build a full WYSIWYG graphics editor without modelling text layout yourself, especially for more advanced work like properly curving the text.
I implemented a pretty simple iOS/macOS text editor using TextKit 2, and it was astonishing how many hacks, workarounds and manual implementations were needed to support even the most basic features.
That codebase is the polar opposite of a finely crafted pen, and the ugliness all comes from the API.
That is exactly it. You know what an engineer you are making a system as complex as that? I don't know your codebase but I'm quite aware of TextKit and I can see what a hard and consuming job you must have done. I wish I could see your editor too.
Thanks—I might return to it and open source it soon… It was a pre-Claude Code project, and it was hard to feel any momentum. It's basically a note-taking tool for capturing quick one-off notes in Markdown, but it stores a lot of surrounding metadata (location, any current calendar events, device type, etc) in the YAML front matter. It feels like it would be even more relevant in this era, but there's a lot of work to do on the UI.
I actually built a fully featured text editor with Codex last month for a GUI toolkit I was building from the scratch. It worked quite well. You should give it a try. Perhaps you can offload much of the refinements to the llms now
I am surprised- I reimplemented Notepad for Windows CE and it was pretty much a wrapper around a standard Windows control. It was just a couple of pages of MFC code I believe.
It probably depends on what you're trying to do; I needed Markdown styling and Markdown-aware behaviors (e.g. when you hit return after a list item, indent the same amount and add a new list marker), context-aware nesting (hit Command-[/] to indent/outdent), hotkeys for heading levels, and so on. Between keeping the attributed text styles correct, properly grabbing the right text ranges to operate on, and doing it all in undoable transactions, it became a handful.
Don't stress about it. The other day there was a thread about public bathroom descriptions and someone said "wow this has a countdown timer before the doors automatically open, how stress inducing" and I wrote "shit or get off the pot".
Now overall it's a well up voted comment but occasionally can see someone taking it down a point. What a psychological mystery. A normal person sees a humorous quip and either chuckles or ignores.
So a down vote is what.. someone offended by mild profanity? Someone who perceives me (correctly I guess) as not being empathetic to bathroom anxiety.
Point being - who cares. Make a post you think would be valuable for some reason (funny, informative) and move on. Someone is going to take issue with everything and that's just the beauty of the diversity of life.
I just assume that downvotes without explanation just mean that I am right and that has somehow made someone unhappy.
Unless I've been deliberately bait-y, which does sometimes happen, of course.
Sometimes I reread later I realise that I've come across in an unpleasant manner that I did not intend, or I misunderstood and my comment is irrelevant, necessary, or occasionally just plain wrong.
The real fun comes when you divide the audience: a few of my fairly negative comments around AI have bounced between -1 and 1-or-2 for days after posting, as some hate it and down vote then others see that as unfair and upvote, almost all without leaving any comment about why they agree or disagree (with either the content or my style).
Hah. Yes. The one-dimensional up/down mechanism leaves a lot to be desired. Your response could be so wildly engaging that literally everyone on HN has voted on it; so controversial that the masses and the bots are evenly split between loving and hating it; and so immaculately well-written that no one can think of anything to add or to counter it with which wouldn't embarrass themselves. That's usually what I tell myself after I get a single downvote and no reply ;)
I think eventually HN should see something getting a lot of votes and count everything as an upvote. (presumably if it is bad long before then a mod should have noted and removed the bad post)
A word of unsolicited advice: HNers are a prickly lot and will downvote without explanation because you stepped on some unknowable pet peeve of theirs that probably nobody else in the world shares. This happens all the time but you likely only notice when you happen to get downvoted before any upvotes and end up at 0 or -1. If your comment is reasonable, it will usually come back up.
But complaining about downvotes will certainly earn more of them.
I always blame it on the HN UI, especially on a touch device. The up/down vote arrow is a pretty small target and once you hit it, the arrows go away with no visual indication of which way you voted.
If you look close there is either a unvote or undown added to the line. However that is easy to miss. I've learned to always check that line on a touch device because there is no way to consistently hit the tiny arrow correctly (at least not for my body)
Don't forget the post score is a balance of up votes and down votes. This mean 2 down votes and 0 up votes registers the same (-1) as 10 down votes and 8 up votes (-1).
So there's no sense treating it like the community has forsaken you.
If the purpose of down votes is to guide discussion away from uninteresting or counterproductive paths, then it also scoops up divisive comments.
I suppose divisive comments are potentially disruptive if they are particularly flamey. But it seems like they deserve to be distinguished from more objectively negative comments. If the raw up/downs were exposed it would be interesting to experiment with this in the front end.
I'm pretty sure that downvotes from some users, perhaps those at a given karma threshold, count twice. I've seen quite a few posts that aren't otherwise attracting a lot of attention go straight from 1 to -1 more-or-less instantly, or from 3 back to 1.
It's also possible that they have experimented with fuzzing votes like Reddit does.
Either way, they don't seem inclined to disclose how it works behind the scenes. The Kremlinology of Hacker News is half the fun.
I quite often upvote comments I disagree with that have been downvoted for no apparent reason. Sometimes I vouch for flagged comments for the same reason too. That said, the last one I vouched for was flagged again and so were all the commentor's other comments.
> You can curtail the bandwagon effect by complaining.
I've observed the opposite--complaints are often more heavily downvoted than the original downvoted comment. The one I originally replied to is an example, at least at the moment.
Literally I only praised and wrote how much I love something and how beautiful text editors are. And there are people who cannot stand this :))) oh wow!
On text editor related topics, you should have thrown down the gauntlet and been explicitly clear that emacs rules, vi sucks, spaces are supreme, tabs are terrible, and mixing them is miscegenation. That way you only offend evil people, so their downvotes are delightful. Revel in them instead of whining!
Since you enjoy beautiful machinery, here are some classic clockworks:
There is just an insane amount of engineering and work you have to do. Measuring text and shaping fonts is a nightmare, computing chart atlases, having infinite scroll with virtual lines coming to and out of the screen, all the strange data structures to preserve optimized decoration rendering, ropes and ropes (hard data structures), navigating with the keyboard, computing which character interaction is closer to the I-beam when jumping up and down, also caching your previous movements to go back where you actually were. CRDT and atomic editing strategies... There are hundreds and thousands of articles and papers and stuff covering these things. It’s just something we take for granted with so much beauty in the background.
I think you are over estimating it. Sure unicode support is a hell hole. But if you stick to ascii, it is not very hard, that is including syntax highlighting. virtual lines ....I don't know about CRDT or atomic editing though...
It's unfortunately all too easy to hit the downvote arrow when you're aiming for the other one, especially for people using touchscreens.
I don't know who thought it was a good idea to put those character-size icons on adjacent lines, or who thinks it's a good idea to leave them there, but... this is one of those cases where it's better to assume it's an accident rather than an attack.
It's also true that there are a lot of asshats^H^H^H^H^H^H^H empty boats around here, but the above advice still applies, I think.
i didn't downvote it but I thought it was pretty empty. "how do i love thee, let me count the ways" has been done before, and his love was more interesting than that you like text editors generically, and you don't mention anything you like. I'm not in favor of more poesy in tech circles.
i like text editors but I feel they contain "everything but the kitchen sink" (if you know you know) and that makes them somewhat impenetrable and difficult to modify and bend to new purposes even though they contain so much capability and potential, and the people who do understand them think it's a good idea to drag and drop an URL and have that do a web transaction and download a buttload of text, when what I wanted was just the text... of the url. I'm sure there's some way to turn it off, but instead there should be some way to turn it on. Oh yeah, worse when it's a jpg url, guess what they do with that.
in another direction, the point of markdown was to be editable and readable in source form, not to be a replacement for rendered HTML, but the same people who ruined HTML by overloading it are now fully engaged in ruining markdown by overloading it and making it unreadable in source form.
reply