Hey there.

I’m a fan of Emacs, like you folks.

I use Emacs org every day, mainly for my teaching class. Furthermore, I learn Emacs for three years ago.

But I struggle to achieve my learning of Elisp. For example, taping lisp and elisp code with evil/lispy is a true nightmare (I use Prelude with few modes, btw), not to mention when I type code block within org.

I knew the learning curve is hard. But I didn’t expect that much frustration to learn it. The documentation is austere. So few examples are given. There is too little blogs or books about Emacs, specifically about org and babel.

To illustrate my point, let’s take the «*this*» kind-of macro in babel, that I found TODAY by CHANCE in this page : https://orgmode.org/manual/Results-of-Evaluation.html.

It’s a game changer for a lot of my code, and would deserve a whole page to illustrate it. But no, it’s given in a «niche» example.

Don’t be mistaken, I found Babel/Org/Emacs wonderful, but what a pain in the ass to learn it !

For such an old and wise piece of software, I can’t understand why we don’t have a smooth learning experience with Emacs. A lot of people could benefit Org/Emacs, without the big hinder of the «lack» of documentation (mostly examples).

Am I the only one to experience this ?

  • arthurno1B
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    But I struggle to achieve my learning of Elisp.

    I think it is on your side. Sorry to tell it open, but Lisp(s) are very easy to learn and pick up. I don’t know what you are teaching and what your expertize is in, but for me Lisp was as easy as VisualBasic.

    The documentation is austere.

    Emacs and Emacs Lisp are by fart the most documented Lisp applications. I can agree that it might be a bit outdated in terminology, and both terminology and API need some acclimatization since they predate the terminology we use today, and Lisp is a bit different from your ordinary Python/C/Java-like language. But I wouldn’t say it is very hard; just different.

    I found TODAY by CHANCE in this page

    It has been in your Emacs all along, for a long time, since it is a part of Org manual that comes with your Emacs. You have to be more curious about what you are doing if you want to learn it and understand it. Nobody is going to throw knowledge at you; that happens only in classes. As a teacher, you should know that better than anyone else. If you want to learn and develop as Elisp programmer you will have to dig in yourself, be curious, search, read manual. Emacs Lisp is one of the most discoverable and documented Lisps and probably programming languages at all. You can C-h f to see docs directly in Emacs, and than just ‘s’ in help window to see the source code. There are manuals for many parts of Emacs, including Org, that are built into your Emacs; you have debugging tools and lots of code to look at. You can also use Helpful which shows you the source code per default.

    we don’t have a smooth learning experience with Emacs

    A learning experience is very subjective. It depends on many things. One of them is a person’s ability as well as the will to learn.

    Am I the only one to experience this ?

    Probably not the only one, but also probably not the most representative example either. I am sorry. I am not trying to put you down as a person, but just suggesting that you should be more active, curious and looking for help yourself. As said, people can only provide you with manuals and material, but you have to look it up yourself, unless you can find an Emacs course. There are some online, perhaps that suits you better? Might be worth your time and small money investment. Perhaps look at some videos, or simply search for Elisp tutorials. There are some around.

  • karthinkB
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    I found Babel/Org/Emacs wonderful, but what a pain in the ass to learn it !

    These are four different things (along with Elisp), are you trying to learn them all together? This is a recipe for frustration and burnout. You can learn Emacs bottom up (starting with Elisp) or top down (Starting with Org, then Emacs). Pick an approach and stick to it.

    The documentation is austere

    This makes no sense – Emacs’ documentation is among the best for projects of its kind. The Emacs manual, Elisp manual, EINTR manual and Org manual have answered almost every question I’ve had, with very few exceptions.

    So few examples are given.

    The entirety of Emacs’ source is open to you, and that’s without including every package you have installed. Every usage of a macro or function is an example. xref-find-references is your friend.

    There is too little blogs or books about Emacs, specifically about org and babel.

    This may require a change in mindset. The reason I need books or blog posts to learn (say) Zig or Nix is because the manuals are out of date or publicly available source is unreadably dense. For the above given reasons, this is not true of Emacs.

    The only time I’ve needed blog posts to learn about Emacs is for discovery – bringing attention to the existence of a feature is something Emacs does struggle with, despite the introduction of new commands like shortdoc. Even then, I prefer to just look up the source or the manual to learn about a feature once I know it exists.

    It’s a game changer for a lot of my code, and would deserve a whole page to illustrate it. But no, it’s given in a «niche» example.

    *this* is only useful for post-processing babel blocks (as I understand it), and it is mentioned in the section on post-processing babel blocks. It is explained with examples too. I don’t see where else it should go.

    For such an old and wise piece of software, I can’t understand why we don’t have a smooth learning experience with Emacs.

    Your idea of a smooth learning curve comes baked in with assumptions I don’t share. The manuals can teach you everything you need to know to beat Emacs into the shape you want. I’ve had a much smoother time learning Emacs than I’ve had learning any other complex piece of software, like Bash, Systemd, Blender or (heaven forbid) Nix.

  • agumonkeyB
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    I often thought that emacs should have a live repl game tutorial

    like clojure koans but as an exploration of basic emacs abilities, then regular editing abilities, then fancier, then edebug and defmacro

  • BackToPlebbit69B
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    Learn enough to figure out how to use “Use Package” and figure out what packages you like, and what you truly hate about Emacs so you can customize the fuck out of it and BTFO the shitty defaults.

    Store your config in GitHub and use GNU Stow to deploy it on each of your machines.

    Past that, the only truly fucking “hard” thing is LSP for Emacs for use within modern web dev settings.

    The minute that someone makes a config that is as easy as an IDE for React and Typescript projects, then I am convinced Emacs is easy to use so I will agree with your frustration that it is pretty crazy that it has not kept up with other IDEs in this respect.

    Otherwise, it’s pretty good for Org mode and terminal. That is about all I use my actual old config for.

    Spacemacs has gotten me closer to what I want though, but I just wish it was 100x easier with zero effort to get shit working like an IDE.

    Maybe Doom is better though. Haven’t touched that in ages either.