> It isn't a hobby, because Vim and Emacs allow me to perform in a way that I consider far more enjoyable, productive and satisfactory than I ever had before them. That is of course on a personal empirical basis - I cannot promise them having the same effect on anyone else.
> I honestly don't know why more people don't gravitate towards these ideas. Perhaps, because these ideas are kind of like 'meditation' - people say one can only experience the mind shift after practicing it for some time.
It doesn't make sense to define something as a "hobby" just because there's some enjoyable or, in the quote you made, "meditation" and "mind shift" parts in it.
What's a "hobby" anyway? As the one you commented on, I have also been programming for a very long time. And why do I continue to do that, instead of changing to some management role? The answer to that is that I enjoy programming. I enjoy making tools to make the tools to create the thing I want to create, and to have enough stuff I want to create, I have a job which provides that in abundance. There are no hard borders between "hobby" and "job". It's a useless distinction in this case.
You know what really makes Emacs different than other editors and IDEs? Consider many ways one can transform selected text in VSCode. Let's say there are maybe 3-4 ways, with some extensions it can get to, I dunno a dozen?
Now consider that Emacs allows you virtually unlimited ways of doing the same thing. Because there are virtually unlimited ways to program that behavior.
In VSCode, you'd be clicking buttons and using shortcuts. Imagine if you had virtually unlimited number of buttons there? For different ways of running a command. That would be insane, right?
Well, here comes the argument if VSCode's (default) way maybe actually better? Some may argue about cognitive overhead - flexibility isn't free after all. Some programmers prefer tools to be tools rather than clay, yeah?
That's totally okay, I'm fine with all that. I'm just seriously baffled as to why Emacs is such an underrated and misunderstood tool. Why don't more programmers even attempt to try it? If you are a programmer, for sure, you should be, at least to a certain degree, curious about the ultimate programmable environment, no?
And don't bring the argument that non-emacs things are also "extendable". In virtually none of them can I open a buffer and add yet another way to transform selected text. Right there, without even saving that code in a file.
I'm not sure I agree that non-emacs things are not extensible, but I agree VSCode could be a lot better about extensibility. It's a shame that there isn't some convenient way to add JS hooks at startup like how you can with emacs and elisp.
For an example of a system that I think is probably just as extensible as emacs, look at TiddlyWiki. If you really want to, you can add in arbitrary JS and even the main tiddler edit form is itself a tiddler that can be customized as much as you want.
> I'm not sure I agree that non-emacs things are not extensible
Anything that runs on a computer is a program; by definition it is a "programmable" entity. It's only a matter of the degree of intentional programmability - exposed interfaces, APIs, scripting languages, or configuration systems that make modification practical and supported.
From my perspective as an Emacs user, where I can extend virtually any part of my running system by simply evaling some code in a buffer, without having to save, lint, link, compile, publish or restart - an extreme degree of intentional, designed programmability.
From that perspective, VSCode in comparison pales into looking rather constrained and bureaucratic, making it, personally for me, virtually not extendable - I have close to zero incentive to even try. Don't get me wrong, I would use it for certain tasks; it is an excellent tool, but I don't think it ever would become my main instrument - it will just annoy me to death to deal with it on daily basis. Joyride looks promising for making the experience smoother; still, it feels more like a band-aid.
So, yes, once you truly experience the genuine extensibility of the malleable nature of a Lisp-based system, you would completely rethink your entire understanding of programmability of things. I write code, my main instrument must be easily extendable through Turing complete coding mechanisms, not through structured data in json or xml; nor through clicking buttons or dragging boxes around.
Well, sure, to a certain degree it is a hobby. Here, let me quickly run (define-it-at-point) command while I'm typing this comment, because of course I can do that in Emacs.
First definition says "it's a horse", then there's another:
> Any favorite object, pursuit, or topic; that which a person persistently pursues or dwells upon with zeal or delight, as if riding a horse.
Sure, in that sense it can be characterized as a hobby. What's the opposite of a hobby? Well, it's either "work", "chore" or "obligation"— all three kind of fit for my example. I use Emacs at work, for work, to do stuff I get paid for - check! It sometimes feels like a chore - well, what tool you use everyday doesn't? Sometimes you need to update it, delete stale cache files, reinstall, fix dependencies, etc, so can feel like a chore - check! Whenever I open-source some piece of code that extends Emacs, I have an obligation not to break it, etc. So the third one fits too. So, like I said - not a fucking hobby.
Shall we continue quibbling over words, how what reads to you is not what I meant and maybe even discuss how semantic meaning of words may change due to interlocutors' backgrounds, age, mood or the current lunar phase, or do you have some other kind of nitpicking in mind?
> I honestly don't know why more people don't gravitate towards these ideas. Perhaps, because these ideas are kind of like 'meditation' - people say one can only experience the mind shift after practicing it for some time.
idk this reads a lot like tl;dr: it's a hobby.