diff options
Diffstat (limited to 'content/emacs/whys-of-emacs.md')
-rw-r--r-- | content/emacs/whys-of-emacs.md | 180 |
1 files changed, 0 insertions, 180 deletions
diff --git a/content/emacs/whys-of-emacs.md b/content/emacs/whys-of-emacs.md deleted file mode 100644 index 2c62ee1..0000000 --- a/content/emacs/whys-of-emacs.md +++ /dev/null @@ -1,180 +0,0 @@ -+++ -title = """ - My "whys" for Emacs - """ -author = ["MichaĆ Sapka"] -date = 2023-12-26T22:12:00+01:00 -categories = ["emacs"] -draft = false -weight = 2002 -abstract = "My reasons for using Emacs" -[menu] - [menu.emacs] - weight = 2002 - identifier = "my-whys-for-emacs" - parent = "varia" -+++ - -I have used many editors over the years. -I've started with Notepad, then moved to Notepad++, Sublime Text, IntelliJ, and VS Code. -Heck, I even Nova at some point. -But only two really stayed with me for longer - the first being Vim, the second Emacs. -Choosing Vim[^fn:1] seems like the logical option[^fn:2]. -It's an extremely popular editor with a huge community. - -But first: I **strongly** believe, that everyone working with computer, owe to themselves to spend some quality time with both, Vim, and Emacs. -Vim is amazing. -Modal editing is second to none when it comes to natural text processing. -They keybindings are close to perfect. -It requires some time to get used to, but let's not overstate that. -You can get semi-fluent in Vim in 2 weeks. - -And then there's Emacs. -I've tried it for a year. -I like it, but something felt off[^fn:3]. -Then, for a few months I have returned to using Neovim. -But here I am. -Using Emacs once again. -Why is that? - - -## License {#license} - -VSCode is released under non-free license[^fn:4], and therefore the code you can see is not necessary what you run. -In fact we know this, as VSCode spies on users[^fn:5], so it's an instant No for me. - -[Codium](https://vscodium.com/) exists as _libre_ version of VSCode, so it's an option. -However, it is not the same program as VSCode as incompatibilities exist, and the presence of plugins is limited[^fn:6]. -Any advancement of Codium is to the benefit of VSCode, and I hove problems with this. - -IntelliJ is completely closed-source, so it's also a no-go for me. - -Emacs[^fn:7] is released on GPL[^fn:8] -Vim is released under custom _libre_ license[^fn:9]. -Neovim is released under Apache license[^fn:10] -This means that the software is truly free. -I can see the entirety of codebase, not just the Lite version (like with VSCode). -I can redistribute it, I can copy, and share it without any limitations. -I can fork it, I can change it. -I can do almost whatever the hell I want it - as this was the basis of FSF. -This may be not important to you, but it is for me. - -I believe _libre_ software is a necessity. -Some people prefer _proprietary_ programs - some even don't see problems with _software as a service_. -But only _libre_ software allows for betterment of our _craft_. -Only by being able to freely modify and share software are we able to make the _craft_ better for future generations[^fn:11]. -I am paying for free software without any second thoughts by donating to some foundations. -Yes, I make my living creating _properties_ software, but I try to give back. -I refuse to _choose_ non-free software. -I am forced to use some, but whenever there is a choice, I will choose _free_. - -This leaves Vim and Emacs as two the two _important_ and _libre_ editors. -And with this, I have quickly removed almost all competition. -Now, how did I choose between those two? - - -## Different visions of computing {#different-visions-of-computing} - -Vim and Emacs represent two, vastly different visions of computing. - -Vim is a precompiled program with plugin capabilities. -This is the vision of computing that has won. -You get a binary (or, worse, a webpage) which makes your program do its thing. -You can _expand_ it using different plugins and configuration, but the _program_ is an unmovable object[^fn:12] - -Emacs is different. -We've got a very small _core_ written in C. -It handles basic functionalities, but by itself is close to useless. -But then we've got Lisp. -Almost all user-facing functionalities are written in Emacs specific dialect Lisp. - -And Lisp is the keyword here. -All of the codebase is exposed to the user, ready to be not only read (as with Vim) but also modified during runtime. -You can _change_ Emacs at a whim. - -VSCode tries the same, as it's a JavaScript-backed browser dressed as an editor. -Emacs therefore can be though as a Lisp-backed virtual machine dressed as an editor. -But the former was already rejected on the basis of being non-free (and I don't to run more Chromes that it's absolutely necessary), so it leaves me with Emacs. - -I am not a Lisp programmer, but I started learning it. -For now I like it more than JavaScript. - - -## Community {#community} - -I am not a people person, but people are what drive me. - -And this another aspect which drives me to Emacs. -There are folks who are happy with all-batteries-included distributions, like Doom Emacs. - -But there's a huge community of personalization maniacs. -People change every possible aspect of Emacs, because the program allows it. -Lisp is right there, and Emacs seems to be the last standing in the good fight to preserve _Literate Coding_ with _Literate Configuration_ people share. -To name just a few, who are my personal inspiration: - -- [Alex Maestas](https://se30.xyz/conf.html) -- [Pavel Korytov](https://sqrtminusone.xyz/configs/readme/) -- [Protesilaos Stavrou](https://protesilaos.com/emacs/dotemacs) -- [Derek Taylor](https://gitlab.com/dwt1/dotfiles/-/blob/master/.config/emacs/config.org?ref_type=heads) -- [Sacha Chua](https://sachachua.com/dotemacs/index.html) - -But at the same time the community is _small_ and I have a thing for smaller communities. -There are Vim users everywhere, but it's not that easy to find an Emacsian[^fn:13]. -But when you do, there are huge chances you've met someone at least interesting. -All Emacs users who I've ever meet in real life became my mentors to some degree. - -Also, what is **very** important to mention: despite popular joke, there is very little hate in the Emacs community. -People into Vim tend to tell mean joke about Emacs users[^fn:14] - and part of this joke is that the feeling is mutual. -It couldn't be further from the truth. -We all have great respect for other _libre_ editors and their users. -In fact, a lot of us move between Emacs and Vim on a daily basis. - -Maybe this is partly due to age[^fn:15]? -Emacs users tend to be, well, older. -Some have their configs evolving since the 90s! -They've already got a lot to show, so they don't need to be mean spirited? -I have no idea, but what I know is that they are a lovely bunch! - - -## Stability {#stability} - -Lastly, stability. -I use [BSD](/bsd/) because it doesn't change for the sake of change. -No SystemD will ruin a perfectly good workflow. - -Emacs is the same. -It's badge of honor - very rarely were there any bigger breaking changes. -When I used NeoVim, every few weeks something broke due to unfortunate update. -In Emacs on the other hand? -Not even once has something broke not from my own volition. - -Emacs comes with multiple competing solutions for the same problem, as people may rely on one of those. -If a new one comes along, the old ones are not replaced. -This increases the confusion of a new user, but it's very much appreciated. - - -## Summary {#summary} - -Emacs is the only empowering, libre and limitless editor I know. -It has an amazing community which values I share, and I want to participate in. -Also, it does not require constant maintenance because someone changed something. - -Using Emacs _sparks joy_. - -[^fn:1]: I don't distinguish between Vim and Neovim here. -[^fn:2]: amongst specific crowd at least. - But since you are here, it's quite possible that you are one of us. -[^fn:3]: mostly keybindings. I am now armed with Evil mode, the best replication of Vim in any editor. -[^fn:4]: <https://code.visualstudio.com/license> -[^fn:5]: "The software may collect information about you and your use of the software, and send that to Microsoft"[^fn:4] -[^fn:6]: <https://ruky.me/2022/06/11/im-switching-form-vs-code-to-vs-codium/> -[^fn:7]: I refer to "GNU Emacs" as "Emacs". -[^fn:8]: <https://www.gnu.org/philosophy/free-sw.html> -[^fn:9]: <https://github.com/vim/vim/blob/master/LICENSE> -[^fn:10]: <https://github.com/neovim/neovim/blob/master/LICENSE.txt> -[^fn:11]: I will need to write a dedicated article about it at some point, as all that would only mud this one. -[^fn:12]: I know you can modify the source code, but then you are running a fork and not the original program. -[^fn:13]: this also applies my other love, [BSD](/bsd/) -[^fn:14]: sadly, this was one of the biggest reasons I stopped following certain hyperactive Vim evangelist. - Let him become nameless. -[^fn:15]: there is a very funny movie about this <https://www.youtube.com/watch?v=urcL86UpqZc> |