For "something that is published" (which includes a comment like this) I clearly dislike it too, but for chatting / texting, I realize that I often use it more than my interlocutors, and I'm not sure why. There's a part of lazyness I guess, but also a vague sense of "conveying the impression of a never ending stream of communication", which is closer in my mind to the essence of the chat medium. In French, there is also the additional layer of "using the accents or not".
Very interesting project! I cannot resist mentioning an old project of mine that was made in a very similar spirit, but way before any LLM: wrapping a classic Lone Wolf gamebook around a very crude text parser: https://projectaon.org/staff/christian/gamebook.js
I had written an entire "framework" for it, in JS (so in theory more books could be supported), but it never went anywhere: https://github.com/cjauvin/gamebook.js
Author here: my learning objectives, in order of importance, are: (1) vocal understanding, (2) speaking, (3) reading, and (4) typing and writing (far further). As I explain, I'm mostly bypassing the problem of typing by using screenshots (ChatGPT's OCR capabilities are very good, and Anki works very well with it too).
With a few hours of applied learning, distinctions between these will collapse. If you work on typing, your reading will naturally improve (because you're identifying letters to input). With stronger reading, you won't see differences between scripts and reading will be the same as listening. That is, improving your knowledge of the language by reading will improve your listening comprehension too. (Reading the wikipedia article on phonology will also unify reading out loud and speaking, Persian is extremely phonemic.)
At minimum, consider a few hours now compared to the time saved by halving the number of flashcards you need.
I've been using ChatGPT to learn Persian (as a third language) for more than a year now (along with a heavy use of Anki), and it's incredibly useful and surprisingly good, for about everything: romanization, OCR from screenshots, deep explanations of complex and subtle stuff, etc.
Are you writing up how you are doing this. I would be fascinated to learn more about how you use Anki and ChatGPT in concert to learn a language like Persian. Please do share more.
Counterpoint: I actually really enjoy his style of writing, which I find clear, patient (you must appreciate visual examples and exploration though) and very often challenging and stimulating (recent examples: the posts about the bigger brains, Conway GoL engineering, and biology / evolution). I find he regularly introduces intriguing and useful ideas, like the distinction between "brain-like" computers (which includes neural networks) and more general, Turing-like mechanisms, and I find his overarching concept of computational irreducibility (even though he didn't invent it) quite profound in its implications. I would add that his posts read like an ambitious research program in progress (like a book written one chapter at a time) and that is why I think certain concepts (like ruliology) may appear obscure at first, if you didn't read a lot of stuff that comes before. One tiny nitpick I have: certain language tics, like the constant use of the "And, yes" pattern (he really uses this a lot I wish someone somehow told him).
I agree. I usually find his posts illuminating. Sure, they’re verbose and self-aggrandizing, but there are way more writers out there online that are also self-aggrandizing but offer no original content or value. Also the rambling style presents a more realistic view of how scientific exploration works than a distilled down paper missing crucial details needed for replication (I’m looking at you ML/AI).
Would love to see that link and any other posts others might have run across here as well. I feel like pre covid it was common to see high Quality ask hn discussions with niche/prestigious book recommendations often. I dont see that as much now.
If you consider this from the angle of Wittgenstein's "language games", you could say that the problem would be "simply" to distinguish between these two, quite different, language games, and act accordingly.
> Emacs is a powerful tool, but it also demands a lot from its user. Eventually I got tired of dealing with the host of plugins and customizations that I needed to keep my system running the way I wanted. I'm at a point in my life where I would rather spend my spare time on hobbies, hanging out with family and friends, and otherwise not messing around with a patchwork of ELisp code snippets that I've cobbled together from various sources. I gradually stopped using Emacs in favor of more modern tools that are less flexible but also less of a hassle.
I don't know how many times I've read a variation on this. It took me a very long time, but now I pretty much made my peace with that: I use Emacs (for certain things), I use VS Code (with Emacs bindings), I use Apple Notes.. I don't find that it's possible or reasonable anymore, the desire to be "pure" and use only ONE tool to rule them all. The same for messaging apps, chatbots, etc.. I now embrace extreme diversity.
> Eventually I got tired of dealing with the host of plugins and customizations
The trick is to stick to as few packages and as little configuration as possible. And when opting to install a package, sticking to something popular and well maintained. This leads to a small and robust setup with little churn. Most built-in packages work out of the box. Most defaults make a lot of sense. Emacs is really tidy these days compared to where it was one decade ago. Package management has been key facilitating this.
Personally, I use major packages like AUCTeX, Org, Magit, or gptel with little to no customization and I avoid installing lesser known packages that build on top of them as I have found this to be a major source of fragility. You can get a lot of functionality from a boring 50 LOC .emacs/init.el that consists of a few straightforward use-package directives.
> I don't find that it's possible or reasonable anymore, the desire to be "pure" and use only ONE tool to rule them all.
It's not about being "pure". I was originally interested in Emacs because of the idea of only ever having to learn to use one tool, that would give me a better experience in many different domains.
Since, as you say, that doesn't really work, I personally don't find using Emacs compelling anymore, hence my not using it. (I actually used vim for a long time, then Emacs briefly, and now VSCode/Cursor/other things as the need arises.)
Note that I worked with Emacs already a few years ago, and it was Spacemacs specifically.
That said, VSCode is - much nicer looking, a lot of things come working out of the box that I had to work hard to make work in Emacs (even with Spacemacs), a lot of great plugins exist and are easy to add to VSCode.
Really it's the "great experience out of the box" and lack of weird edge cases where custom code/plugins interact with other custom code/plugins in ways that don't work well.
And the vim mode in Spacemacs was great, probably best in class, but the vim mode in VSCode is also pretty good. Missing a bunch of stuff but close enough.
Makes sense. I have no experience with Vi-like layers built on top of Emacs, but I think standard Emacs is much easier to use right now than it was in the past. Most major packages work really well with zero configuration. There's even a LSP mode (eglot) built in.
I think the problem is that most advanced users have incredibly convoluted .emacs files, mainly for historical reasons, and this has given Emacs a reputation of being overly complex and difficult to set up.
IMHO, the great advantage of Emacs is that it will always be around, and it's really open to customization in case you ever need that.
> I really dont get the idea of having a vim mode in emacs
vim-mode is not just about keybindings.
It's about modal editing philosophy - the distinction between command and insert modes fundamentally changes how you think about text manipulation. When you're in command mode, every key becomes a text object or motion command, making complex edits incredibly efficient. You're not just getting vim's keybindings; you're getting vim's grammar of editing. The real power comes from composability - vim motions aren't just shortcuts - they're a linguistic system for describing text transformations.
Emacs veterans often detest "modality" without realizing how much modality already exists in Emacs. Key chords like C-x put you in a modal state where the next key has different meaning. Recording macros creates a modal context. The minibuffer is literally a different mode with its own keybindings and behavior. Transient menus are explicitly modal interfaces. Even isearch is a modal state. Vim-style modality is just making this concept more explicit and systematic.
Besides, it's simply an obtuse exercise to ask Emacs users why would they do something with their editor. The answer is obviously "because they can."
Vim's model of modality and mnemonics is a beautiful, powerful, amazing paradigm. Here's the thing though - there's no such thing as the "vim-mode". None of the IDEs and editors like IntelliJ, VSCode, XCode, Android Studio, Sublime, etc., can properly emulate Vim navigation. The one exception is Emacs.
Pretty much every other IDE fails to comprehensively replicate Vim. Unless it's Vim/Neovim, vim-mode in all of them is just that - an emulation. However, Evil mode in Emacs feels much more natural. Sometimes, you forget that it's an afterthought, an extension, and not a built-in functionality.
While Evil-mode obviously is not the most important or even built-in feature of Emacs, as a nerd and a computer programmer, if I discovered that there's a civilian plane that can perform a vertical landing, yet never actually needs to use it, I would still love that model over any other planes, even if the feature is purely accidental. The fact that it can do so alone would be great evidence of amazing engineering.
vim mode is far, far better than any alternative way of using a keyboard (because you don't have to ever move your hands from home row). Even without vim mode, just the vim keybindings by themselves are far better. Once I got used to using them, using a keyboard without them felt stupid.
Hence my using vim mode everywhere I can.
I also created a set of mappings to give me vim-style keybindings everywhere on the computer, so I can use vim-style bindings even within this very comment I'm typing on my browser. Obviously it doesn't support the full set of vim bindings, but just the basic movements and some other mappings (like selecting a word/sentence, backwards delete word, etc) are enough to get a huge amount of value.
This makes me feel seen. I was a lunatic at one point trying to make Emacs to be my end-all-be-all. I learned to cope with multiple programs being my "toolset" since then.
reply