
The Pervert's Guide to Computer Programming Languages (2017) [video] - commons-tragedy
https://www.youtube.com/watch?v=mZyvIHYn2zk
======
kortex
This was fascinating. I'd condense the overall sentiment to, "Pleasure is
desireable and pain is inevitable. When and where do you get pleasure and
avoid pain?" Also, these definitions are different than the common
definitions. Here's a _rough_ digest:

Psychopaths: I don't care about rules, types, or beauty, just get it done (JS)

Obsessives: a little monotony now avoids a lot of pain later (go, java)

Masochists: Look at how disciplined I am! (C)

Sadists: Look at how impotent everyone else is! (perl, regex)

Hysterics: Look at how beautiful this code is! (python)

Fetishists: Have you tried more X? (objects, abstractions, types) (smalltalk,
erlang)

Melancholy: Oh, I miss the days when I could write an entire application in
200 lines of Lisp...

~~~
jchw
This post is almost better than the talk. I found the talk fascinating but
this post gave me a clearer concrete understanding of the implications.

------
vesche
From the video...

Psychopath Languages: Javascript, PHP, VBA, and SQL

Masochist Languages: C, Assembly, Ada, Brainfuck, and Factor

Sadist Languages: Perl, Clojure, Erlang, and Regex

Fetishistic Languages: Erlang, Smalltalk, Elixir, and Factor

Obsessional Languages: Java, C++, Haskell, Scala, Go

Hysterical Languages: Python, Ruby, C#, Prolog, Elixir, and Matlib

Depression Languages: COBOL

Melancholy Languages: Lisp, Scheme, Smalltalk

~~~
wolfgke
Where do Nock and Hoon belong (from Urbit, for those who are out of the loop)?

~~~
samatman
Hoon is a sadistic language implemented by a hysterical personality.

------
covidacct
This talk is an amusing aside. I think the other posters are bit harsh for a
talk that's clearly meant to be taken in that way.

If you're interested in actual psychology of programming languages, there is a
small but growing research community at the intersection of programming
languages and software engineering. The focus is mostly on usability research
a la human-computer interaction, but there's also work on community
psychology, etc. applies to programming languages and software engineering.
See, for example,
[https://ieeexplore.ieee.org/document/7503516](https://ieeexplore.ieee.org/document/7503516)

~~~
joe_the_user
Well, various parts are taken amusingly but I think this is aiming to be a
serious inquiry into the psychology of programming language _choice_ , which a
bit different from the psychology of actually programming. Language choice is
much wrapped up with power and ideology, areas that Zizek etc focus on
strongly.

~~~
DonHopkins
And letting go of a programming language that you fell in love with, who was
ripped away from you or died for whatever reason, can be an emotionally
difficult experience. Then there's that period where you're not ready to learn
a new programming language, because you don't want to dishonor the memory of
the lost language you're still mourning for.

At the end of the talk, he mentioned that Paul Graham writes poetically about
Romantic Languages, and classifies Lisp and Scheme as Melancholy Languages,
but he would also classify Lisp as a Hysteric Language, and COBOL is a
Depression Language. ;O

From the paper:

[https://s3-us-west-2.amazonaws.com/vulk-
blog/ThePervertsGuid...](https://s3-us-west-2.amazonaws.com/vulk-
blog/ThePervertsGuidetoComputerProgramming-ThePaper.pdf)

Other Categories of Enjoyment: Based on the subject's relationship with the
object of desire, there are various other categories of enjoyment that can be
applied to languages. Depression within Lacanian psychoanalysis can be
described as the stopping up of circulation around the object of desire. With
depression, the object is lost and enjoyment is retrieved from the reminiscing
of the loss. With melancholy the very memory of the object is lost (a loss of
a loss) so the enjoyment comes from the romantic attitude with respect to the
history of the language.

~~~
dleslie
My feelings for Turbo Pascal are not unlike my feelings for the first ex who I
truly cared about. It's hard to let go of that first love.

------
DonHopkins
Here's the extended paper version of the talk, with all those great mind map
diagrams (which were made with Loomio, [I think, but not sure]):

[https://s3-us-west-2.amazonaws.com/vulk-
blog/ThePervertsGuid...](https://s3-us-west-2.amazonaws.com/vulk-
blog/ThePervertsGuidetoComputerProgramming-ThePaper.pdf)

Loomio:

[https://www.loomio.org/](https://www.loomio.org/)

[https://en.wikipedia.org/wiki/Loomio](https://en.wikipedia.org/wiki/Loomio)

>Loomio is decision-making software designed to assist groups with the
collaborative decision-making process. It is a free software[3] web
application, where users can initiate discussions and put up
proposals.[4][5][6][7] As the discussions progress to initiating a proposal,
the group receives feedback through an updatable pie chart.

~~~
wwatson
The mind maps were both hand drawn and made using simplemind. Loomio is a
voting tool :)

~~~
throwlaplace
cheers for the most original analysis of a domain (PL) using a farflung
framework (psychoanalysis) i've seen in a long time. really good job! have you
tried to publish in a journal?

incidentally you might enjoy this paper

[https://web.ics.purdue.edu/~plotnits/PDFs/ap%20lacan%20and%2...](https://web.ics.purdue.edu/~plotnits/PDFs/ap%20lacan%20and%20math%20Plotnitsky%5B1%5D.pdf)

~~~
wwatson
That paper looks great. No, I haven't published anywhere. If you have any
suggestions on journals let me know :)

------
DonHopkins
Here's something a friend of mine wrote about one of Žižek's movies:

>I don’t usually recommend movies, but I really got a lot out “The perverts
guide to ideology“

>Essentially it’s a well presented theory that any particular ideology is a
sum of components that can be combined to create a complete undeniable way of
living. Nationalism, ethnicity, religion, atheism, capitalism, socialism (and
many others) are all components that can be combined in different proportions
to create a complete ideology. Like a cooking recipe. The interesting thought
is that no matter how one combines the variables, they converge to the same
point. Which is, you must think and behave like we do, or you will be cast
out. The filmmaker presents societies as swinging between the extremes of pure
capitalism to pure communism, with the wealthy always maintaining an
advantage. Interesting stuff.

That reminded me of Jonathan Rees' a la carte menu of features or properties
of "object oriented programming" ideology (or objectology):

[http://www.paulgraham.com/reesoo.html](http://www.paulgraham.com/reesoo.html)

"Because OO is a moving target, OO zealots will choose some subset of this
menu by whim and then use it to try to convince you that you are a loser."

I'd love for Slavoj Žižek to do "The Perverts Guide to Objectology”!

~~~
Der_Einzige
I was about to make the comment about the Zizek connection but you beat me to
it!

Fun fact, Zizek came in a very close 4th place for President of Solvenia in
1990. I was shocked that he almost became a legitimate president back in the
day.

~~~
unixhero
To be fair who can out debate him.

~~~
iainmerrick
At least three other people?

~~~
unixhero
Still at the six sigma of candidates

------
joe_the_user
Just started. It's a use of contemporary "continental" psychology (Lacanian
and Zizekian psychoanalysis) to consider the irrational choices that go into
programming language.

It's kind of out-there but anything that gives a wider view of the choices
programmers make might be useful.

Edit: Watching a bit.

I would view the quandary the presenter is discussing thus.

Human being are both power-seeking, ego-gratifying being and "rational",
logic-using beings.

Now, human communicate with language. And a given "speech act", is not going
to a pure exercise in logic or a pure exercise in power-seeking but some
combination. Then, consider that humans interact with discreet "speech acts".
A given speech act is going have an overt logical structure (simplify whatever
math-y logic you wish) and it's going to involve some degree of power
assertion. The power-assertion part by a fairly simple mechanism - identify
yourself with a symbol and argue that symbol is "good" (and further associate
symbols with each other, other symbols with "bad" and so-forth, all in dynamic
process of power assertion). The most common example is a national flag but
lots of judgements and colorations come in with this. Moreover, speech is a
sequence of "speech acts" and first speech acts in a given context tend to
"set the tone" \- power is dynamic so the first speech act in a context to set
the context the most.

So, with all that, I think it one can find a useful explanation why curly-
bracket-semi-colon language and block-structured language have an apparently
eternal "holy war".

Also, I think evolutionary game theory is a more coherent context for this.
Evolutionary game theory allows the contrast between overt logic and self-
seeking to be more clear and not have to call any process "irrational".

~~~
im3w1l
The debate as played out within a company may be more about power assertion,
but the debate in the wider community and on the internet seem fairly
rational.

I do worry that if the idea that it's all about power-seeking gains acceptance
that we will throw up our hands in the air and say it doesn't matter either
way (because of an unconscious fear of being seen as a simple power asserter)
about things that _do_ matter and that we stop trying to improve things.

------
ncmncm
"if new true friend not protected for explicit private union, break case and
try using this"

All C++ keywords (and one operator). Dunno where that properly places C++ in
the list.

------
DantesKite
Lately I’ve been getting into the habit of washing dishes and watching YouTube
videos.

It’s lovely. For whatever reason, occupying my brain with my hands makes it
easier to relax and focus attentively for an hour. Takes very little
willpower.

Occasionally I find a YouTube video here and there, add it to my watch list,
and stumble upon it later.

Always thankful when I find something promising.

Thank you.

~~~
DonHopkins
[https://i.pinimg.com/originals/d3/f8/a7/d3f8a79cbb1aa419558b...](https://i.pinimg.com/originals/d3/f8/a7/d3f8a79cbb1aa419558b318081022105.jpg)

Another job well done! ;)

------
phendrenad2
This is a really interesting take on the psychological motivations behind
language choice. I don't know if they're 100% right, but just the concept that
people choose languages based on psychological effects is worth watching the
video over, even if you end up disagreeing.

------
ajxs
More than once I've heard people use the term 'bondage languages' to describe
languages that restrict the developer's ability to create footgun programs. As
someone who regularly uses the Ada language, I fully endorse the use of this
hilarious analogy.

~~~
wwatson
If you are using Ada, you might know of Richard Rhiele. That Ada is a bondage
and discipline language is a joke that I got from him back in 1993ish.

~~~
DonHopkins
Like Ada, Linda was also named after someone else whose last name was
Lovelace!

[https://en.wikipedia.org/wiki/Linda_(coordination_language)#...](https://en.wikipedia.org/wiki/Linda_\(coordination_language\)#Name)

------
m3047
I thought it was fantastic! But my father was a clinical psychiatrist. When I
explain to people how the computer thinks I mostly automatically role play,
and when they get indignant I don't care, I just shrug it off. But the
psychoanalyst is a pervert, right?

------
bryanrasmussen
This reminds me of Joe English's definitions of XML Namespace sanity
[http://www.flightlab.com/~joe/sgml/sanity.txt](http://www.flightlab.com/~joe/sgml/sanity.txt)

------
gchamonlive
> enjoyment does not mean pleasure or happiness

this is me scratching my Dark Souls itch

------
Waterluvian
I want to do all my talks sitting all relaxed in a chair.

------
alricb
It's interesting, but I think the speaker would have done better to
concentrate one language for each archetype, with examples.

------
superflit
I think this video
[https://youtu.be/D1sXuHnf_lo](https://youtu.be/D1sXuHnf_lo)

Explains what languages correspond to which fetishes better.

You can see the author is very subtle and only say it at 0:55 while discussing
some languages.

And plus it is Emacs!

Edit: NSFW

------
type0
Where would BASIC fall in this categories?

~~~
m3047
With or without compiler pragmas?

~~~
m3047
I used to use %VAL and %REF in DEC BASIC to do memory management. Most def
sadistic. It was simple. It was dangerous. And it failed in the most
inscrutable ways, particularly if you were a "normal" BASIC programmer.

------
jose_incandenza
Can someone explain me how's that C# and Java are in different categories?

~~~
WesternStar
Its not necessarily about how a language is syntactically or semantically it
is about how the users and creators of a language talk about it and want it to
be seen.

------
jandrese
So according to this video these psychoanalysts completely redefined a good
number of emotionally charged terms when developing their theories?

Or did people hear the words and redefine them later? The wanton disregard for
existing structures really bugs me, perhaps more than it should. It's
seemingly intentionally misleading, like they're afraid other people will find
their conclusions too simplistic so they intentionally obfuscated the language
to appear more sophisticated.

~~~
closeparen
Google n-grams has "sexual perversion," "neurosis" and "psychosis" all picking
up between 1860 and 1900, i.e. as psychoanalysis was picking up steam. Most
likely they got there first.

Interestingly, the frequency of "perversion" was steady through that period,
so in this case the psychoanalysts did attach a new meaning to an existing
word ("the alteration of something from its original course").

~~~
DonHopkins
There was a huge spike of "prevert" from 1989 to 1995! What an exciting time
that was to be alive.

But I wonder what fun I missed out on during the Great Prevert Spike Of 1807
-- that looks like it was quite a party.

[https://books.google.com/ngrams/graph?content=prevert&year_s...](https://books.google.com/ngrams/graph?content=prevert&year_start=1800&year_end=2008&corpus=15&smoothing=3&share=&direct_url=t1%3B%2Cprevert%3B%2Cc0#t1%3B%2Cprevert%3B%2Cc0)

[https://www.youtube.com/watch?v=ud9zBKJJQe4](https://www.youtube.com/watch?v=ud9zBKJJQe4)

------
mettamage
Psychoanalysis: psychologists that don't do experiments, according to my
university. Because of this they were briefly covered during one lecture and
then completely tossed aside.

Psychology != experimental psychology

Yes, experimental psychologists have a field that almost completely crumbled,
but at least they (1) admitted it and (2) some of them try to conduct science
and succeed at it (most don't succeed unfortunately as virtually nothing is
reproduced).

So how to deal with psychoanalists? What I did: see them as entertaining
inspiration for philosophical thoughts. But you can also skip to his section
"why psychoanalysis" [1]. I wasn't impressed. Also, those bullets are
questionable.

So beware: in my opinion, this talk is not precise in terms of scientific
accuracy, but it might be fun to use as an inspirational source.

[1] [https://youtu.be/mZyvIHYn2zk?t=264](https://youtu.be/mZyvIHYn2zk?t=264)

~~~
joe_the_user
The video does a decent job of explaining the relevance of Lacanian-Zizekian
theory. The approach isn't really aiming to be equivalent to experimental
psychology. Rather, it's a view of strategy in personal interactions.

------
agambrahma
who else saw the title and thought of Zizek? :-)

~~~
agambrahma
(nvm, the paper directly mentions Zizek, should've clicked through first)

Still, one of the more fascinating HN finds today.

------
graycat
Deleted

~~~
twic
> there were no emotional, psychological, psychiatric, subconscious, etc.
> considerations at all

> I heard good things about big shops successfully using Windows Server for
> Web sites and running database. I need database, and Microsoft's SQL Server
> seems well respected, understood, popular, documented, stable, etc.

This clearly suggests a yearning for a father figure. What was your parents'
relationship like when you were a child?

~~~
heyimwill
Non-relational :(

~~~
867-5309
him: one-to-many, her: one-too-many

:|

------
caramelsuit
Critical theory is a communicable memetic mental disorder.

~~~
lidHanteyk
Yeah, but so is nearly everything else. Money, sexuality and gender,
architectural designs, military tradition, the list goes on without end.
Nearly our entire society is a communicable memecomplex, and additionally,
nearly every meme is logically incoherent, or at least logically unfounded.

By the very implied claim that you make that mental disorders exist, you also
imply that there is such a thing as ordered mental states, correct patterns of
thought, and healthy logical reasoning. This is a bold claim! You would do
well to have less black-and-white reasoning.

~~~
giantDinosaur
Our bridges stand. Our rockets fly, and our planes (tend) to not drop out of
the air unexpectedly. If not for some healthy logical reasoning, correct
patterns of thought, and ordered mental states, then what? Yes, it's fun to
discuss this kind of thing, and a lot of what we do is irrational, but it's
just as often sophistry as anything else. I note, of course, that you did only
say 'nearly', but that's basically exactly what I mean.

~~~
lidHanteyk
Mathematics and physics are memecomplices which allow us to study and consider
the Platonic realm. There's no one single mathematics from a cultural
perspective; consider where numerals, operators, and grouping come from. The
notation is how we make sense of the abstract, non-physical aspects with our
mere physical brains.

The "nearly" that I am exempting is for those things which are logically
deduced from other things alone. While a person might reason incorrectly based
on faulty premises, they are nonetheless using reason to do so, and applying
it in a logical fashion (cf "formally formal" logic proofs). The right lesson
to take away, I think, is that being logical, being consistent with empirical
observations, and being uncontradicted by dialectic evidence, are three
distinct things, and none of them are the truth, if the truth even exists.

~~~
ernst_klim
> Mathematics

Is a purely deductive field and have no connection to reality, it's all about
dealing with pure mathematical objects.

> physics

Exists within a strong empirical framework, which allows us to verify models,
not just construct them.

Critical theory gives no verification framework whatsoever to prove or omit
its statements.

------
throwlaplace
I dare say the title of this is an allusion to Zizek

[https://en.wikipedia.org/wiki/The_Pervert%27s_Guide_to_Cinem...](https://en.wikipedia.org/wiki/The_Pervert%27s_Guide_to_Cinema)

~~~
c54
Yep the talk is about Zizek and Lacan amongst other things

~~~
throwlaplace
interesting! I'll be sure to watch it then!

------
Mountain_Skies
AKA, How to violate every language's Code of Conduct in a single talk.

Wonder if they apply retroactively.

~~~
dang
I haven't listened to the talk but please let's not overreact to the title.
It's a clever reference, and I'd rather not have to change it to
"Psychoanalysis and Software", which might be just as baity anyhow.

