Live data from Hacker News

Emacs users are like Terry Pratchett’s Igors

chrisdone.com

11–20 of 85 posts

Re: Emacs users are like Terry Pratchett’s Igors

#11
post #8

I'm a recovering Emacser, happy enough with less powerful but more modern text editors. It wasn't the program or the UI that finally did me in, but the community: I had a problem with how Emacs worked, I wanted to figure out a solution, so I asked on #emacs on Freenode and got nothing but abuse. I realised there's something about Emacs that attracts the sort of users I don't want to associate with: people who are smu…

And because of that, the Emacs community lost yet another potentially helpful member[0]. This here is an example of how toxic communities are formed. Once you reach a critical mass of abusive members, the community can only grow more toxic over time.

[0] I'm going to go ahead and assume that you aren't a smug, self-absorbed sociopath.

Re: Emacs users are like Terry Pratchett’s Igors

#12
post #8

I'm a recovering Emacser, happy enough with less powerful but more modern text editors. It wasn't the program or the UI that finally did me in, but the community: I had a problem with how Emacs worked, I wanted to figure out a solution, so I asked on #emacs on Freenode and got nothing but abuse. I realised there's something about Emacs that attracts the sort of users I don't want to associate with: people who are smu…

They probably tried to make a common point: do not give the solution. For a given specific issue, the most you should give is pointers. For the function that solves your problem saves the day but knowing how to find any when needed solves a lifetime of problems. Pointers help to put you on the right track so you're not discouraged.

I was asking all the right questions -- is this possible, what hooks should I consider, what should I take into account to make sure that the stuff I add doesn't stamp all over other stuff. I'm a programmer with thirty years experience and twenty years with Emacs; I know this stuff.

Basically, they shut me down. The thing I was asking was contrary to the whole philosophy of Emacs. I had, they assured me, no right to ask it. I was an idiot for having the problem that I was seeking to solve. And nobody, they told me, had ever had the problem ever in all of history.

Were they right? Well, no, not even slightly. They were horribly, evilly wrong. But even if they had been right, their response was wrong. Their argument was "if you have this problem that can be fixed by a change to Emacs, change yourself". This, in the most extensible editor on the planet. It was like being told that my car's tendency to pull sharply to the left when passing another car was normal and expected and I should take care not to pass other cars.

Re: Emacs users are like Terry Pratchett’s Igors

#13
post #11
post #8

I'm a recovering Emacser, happy enough with less powerful but more modern text editors. It wasn't the program or the UI that finally did me in, but the community: I had a problem with how Emacs worked, I wanted to figure out a solution, so I asked on #emacs on Freenode and got nothing but abuse. I realised there's something about Emacs that attracts the sort of users I don't want to associate with: people who are smu…

And because of that, the Emacs community lost yet another potentially helpful member[0]. This here is an example of how toxic communities are formed. Once you reach a critical mass of abusive members, the community can only grow more toxic over time. [0] I'm going to go ahead and assume that you aren't a smug, self-absorbed sociopath.

Well, not self-absorbed.

Re: Emacs users are like Terry Pratchett’s Igors

#14
post #8

I'm a recovering Emacser, happy enough with less powerful but more modern text editors. It wasn't the program or the UI that finally did me in, but the community: I had a problem with how Emacs worked, I wanted to figure out a solution, so I asked on #emacs on Freenode and got nothing but abuse. I realised there's something about Emacs that attracts the sort of users I don't want to associate with: people who are smu…

They probably tried to make a common point: do not give the solution. For a given specific issue, the most you should give is pointers. For the function that solves your problem saves the day but knowing how to find any when needed solves a lifetime of problems. Pointers help to put you on the right track so you're not discouraged.

A cynic's TL;DR:

Give a man a fish, he'll eat for a day. Teach a man to fish, he'll eat for a lifetime. And if you really hate the man, get RMS to design him a fishing rod.

Re: Emacs users are like Terry Pratchett’s Igors

#15
post #3

Hmm, I am probably missing something, but isn't Igor from Mary Shelley (Frankensteins assistant)?

> Hmm, I am probably missing something

You seem to have never read Pratchett, and should definitely fix that.

Pratchett often takes existing tropes, settings, historical and fictional characters, etc… and breaks, rearranges and/or reinvents them to make things more interesting and/or funnier.

In this case, he took Shelley's Igor (and hunchbacked assistants of a thousand films of the line) and made him into a clan, all called Igor. They're a clan of assistants, surgeons, bio-engineers and self-improvers, they're patched up because "what goeth around cometh around"[0], and with Igor it's parts. They'll exchange limbs, they'll replace eyes, etc… others and theirs both. They lithp for tradition and people's expectation (some of them regularly forget to lisp, or just can't seem to get the trick right) and have highly apparent stitches as something akin to clan markings (they've got dexterity enough for those not to be needed on patients).

The traditional funerals and wake of an Igor consist in other Igor swinging by and leaving with loot bags, with parts of the deceased inside (they'll generally make their parts's destinations known beforehand).

[0] the clan's full motto is "What goeth around, cometh around... or thtopth.": they will help anyone anytime at no charge, but if they have helped and provided a new spleen or replacement eyes they will come by and "rummage around" for healthy organs when the person dies. If they are turned around they will not make a fuss, but no Igor will come by the village ever again.

Re: Emacs users are like Terry Pratchett’s Igors

#16
post #12

Earlier quoted context omitted.

They probably tried to make a common point: do not give the solution. For a given specific issue, the most you should give is pointers. For the function that solves your problem saves the day but knowing how to find any when needed solves a lifetime of problems. Pointers help to put you on the right track so you're not discouraged.

I was asking all the right questions -- is this possible, what hooks should I consider, what should I take into account to make sure that the stuff I add doesn't stamp all over other stuff. I'm a programmer with thirty years experience and twenty years with Emacs; I know this stuff. Basically, they shut me down. The thing I was asking was contrary to the whole philosophy of Emacs. I had, they assured me, no right to…

Unfortunately there are a lot of communities like that, particularly the older ones.

Re: Emacs users are like Terry Pratchett’s Igors

#17
post #8

I'm a recovering Emacser, happy enough with less powerful but more modern text editors. It wasn't the program or the UI that finally did me in, but the community: I had a problem with how Emacs worked, I wanted to figure out a solution, so I asked on #emacs on Freenode and got nothing but abuse. I realised there's something about Emacs that attracts the sort of users I don't want to associate with: people who are smu…

> attracts the sort of users I don't want to associate with: people who are smug, self-absorbed and utterly without empathy.

I think you have just described the normal IRC experience for any software project in existence. IRC just tend to breed cliques and inside jokes, and the most common form of reply I have ever gotten while looking for help is "check the source code". Never mind that its a few thousands line of low level C, magic numbers and possible some assembler instructions.

Re: Emacs users are like Terry Pratchett’s Igors

#18

Emacs is one of those things everybody knows is good, but few take the time to learn. Over the years I've learnt quite a few languages, and what strikes me is that they're all so very alike. You find the same features with slight syntactic changes. At the end of the day, what really makes a difference is not which language you chose but what tools you are using. Do you have to memorize every important method or are t…

> Over the years I've learnt quite a few languages, and what strikes me is that they're all so very alike.

I used to think this as well, then I learned some Prolog. For those who aren't familiar with it, Prolog is a logic programming language (as opposed to imperative and functional languages). Instead of telling Prolog how to solve a problem, you give it a set of facts and tell it what you want to know. Prolog takes care of the rest, without writing any conditionals, loops, etc. At least in theory; in my (small amount of) experience most non-trivial Prolog programs usually involve some imperative style code. Still, it's wildly different and a lot of fun.

There's also lambda calculus, which is crazy, and wonderful, and absurdly difficult, and one of the most joyous experiences I've ever had. It's a language with nothing but functions applied to other functions. Even numbers are functions in lambda calculus, which has some fascinating implications. I wouldn't want to build anything non-trivial in LC, but I've learned a lot about programming as a result of studying it.

Discovering how to create singly linked lists in LC using nothing but partially applied functions was a profound and emotional experience. I remember how hard I laughed when I noticed that LC's false function is the same as the Church-encoded numeral for zero. These are things most other developers don't think are funny because they have no idea what I'm talking about. I think a few of my co-workers suspect I should be institutionalized when I start talking about lambda calculus.

Of course, there's also Haskell. A lot of lambda calculus is applicable to Haskell, which makes sense as Haskell descends from the ML family of languages, which in turn come from lambda calculus. Haskell doesn't look or feel like most other languages, and it makes some decisions that seem really strange at first glance. Lazy evaluation, all functions are curried, no mutable state, all functions are pure, there are no variables, no exception handling... the language sounds almost unusable. Then you learn about monads and you realize that it's trivial to add support for something that looks and feels like mutable state, except it's a system of your own design. Imagine what would happen if you could change the way variable assignment works in your language of choice. For instance, software transactional memory was originally implemented in Haskell as a monad. They didn't have to modify the language to add support. I can't think of many other languages where that's the case, and it's a thing of beauty.

That's a long and rambling way to say that lots of languages are really similar, but there are some wonderful languages that are extremely different. I highly recommend experimenting with them, but be aware that your friends and co-workers are unlikely to have any idea what you're talking about. And on the off chance that they do understand, please let me know where you work. I want to work with you people.

Re: Emacs users are like Terry Pratchett’s Igors

#19
In common understanding of emacs, its use of lisp recieves perhaps too much attention, while its overall wonderful architecture is underappreciated. Emacs isnt just an editor with embedded lisp, its more a vm for bootstrapping editors. You could do an emacs with python, but the hard part is providing an environment where the extensions dont interfere with the user input loop, with buffer redisplay etc., while still staying easy to write. The emacs buffer-based async handling of external processes is a masterpiece of software engineering, much better than things like unix pipes. Doing extension languages for interactive programs is much harder than it seems at first, and emacs is a prime example of doing it right.

Re: Emacs users are like Terry Pratchett’s Igors

#20
post #17
post #8

I'm a recovering Emacser, happy enough with less powerful but more modern text editors. It wasn't the program or the UI that finally did me in, but the community: I had a problem with how Emacs worked, I wanted to figure out a solution, so I asked on #emacs on Freenode and got nothing but abuse. I realised there's something about Emacs that attracts the sort of users I don't want to associate with: people who are smu…

> attracts the sort of users I don't want to associate with: people who are smug, self-absorbed and utterly without empathy. I think you have just described the normal IRC experience for any software project in existence. IRC just tend to breed cliques and inside jokes, and the most common form of reply I have ever gotten while looking for help is "check the source code". Never mind that its a few thousands line of l…

My experience is otherwise. I've found the IRC groups for Python and PHP to be quite friendly. The one for Wordpress suffers a bit from "I don't know you, so I presume you're an idiot" but not to the same degree as the Emacs or Lisp ones. I think there's some interaction between IRC and Lisp that causes this sort of sociopathic behaviour in a small but loud subset of the community -- and the rest don't do enough to discourage it, which makes them all complicit.
Post reply on HN