
The Bipolar Lisp Programmer - shawndumas
http://www.lambdassociates.org/blog/bipolar.htm#
======
RiderOfGiraffes
Previous discussions:

<http://news.ycombinator.com/item?id=20012>

<http://news.ycombinator.com/item?id=78739>

<http://news.ycombinator.com/item?id=187867>

<http://news.ycombinator.com/item?id=859669>

All have comments.

~~~
sophacles
Completely tangential:

What is the reason for posting this reply? I think I understand the sentiment
-- it gets tiring to see something repeatedly. The reason I ask tho is it
comes off as a bit dismissive, but I consider re-discussing a post every 1.5
years to not be too terrible, as: a) some people may have missed the first
posting b) lots of new people can now get exposure and c) we have all changed
a bit in that time and have new perspectives perhaps.

I know that discussion of stuff like this really helps people understand the
material better, so I would personally prefer a bit of repeat on the good
reads, to keep people up to speed than a keeping repeats to minimum.

I can also see another side -- this is to point people to previous discussions
for the reason of them benefitting from what has already been said. I agree
with this motive. I just think it would be better if there was a way to
present it which has a bit less dismissive of a feel to it.

Anyway, I don't have a great solution in mind, more just exploring the idea.
Cheers.

~~~
RiderOfGiraffes
Upvoted, because it's a pertinent question.

a. Yes, it's tiring to see the same thing repeated. As a hacker, repetition,
and hence wasting time, is something I try to avoid.

b. Yes, it's nice to present classic items to the newer members of the
community. That's of value

c. Without reference to the previous discussions the same points will be made
over and over again. See item (a) above.

d. There is value in the previous discussions. It would be a shame to see it
wasted.

In short, I don't have a problem with things being reposted occasionally, but
I'd like to leverage the existing backlog of discussions. Regarding sounding
dismissive:

e. I don't have time to word-craft things endlessly, and sometimes I don't get
the nuances right. It takes me almost no time to create the cross-references -
the time is consumed in trying not to offend people. Sometimes there's not
enough time for both.

~~~
sophacles
_a. Yes, it's tiring to see the same thing repeated. As a hacker, repetition,
and hence wasting time, is something I try to avoid._

I concur with this in general, but also suggest that repetition is a
cornerstone of learning. Many ideas must be revisited several times before
full understanding takes effect. This specific type of repetition is not
wasteful repetition. It may not be you job to teach people, but I highly doubt
getting in the way of others gaining understanding is your goal either.

 _e. I don't have time to word-craft things endlessly, and sometimes I don't
get the nuances right. It takes me almost no time to create the cross-
references - the time is consumed in trying not to offend people. Sometimes
there's not enough time for both._

Fair enough. Seeing as how you are very frequently the person who posts the
cross references (which btw, I really appreciate) I would like to propose this
as a template for future "this is a repeat" posts (I certainly hope other jump
in if there is a better way of putting it than my template):

This article is something of a classic here on HN. There have been some good
discussions on it previously (see below). The comments in those articles may
help provide some perspective for the discussion here.

$LINKS

~~~
vog
_> This specific type of repetition is not wasteful repetition._

If the repetition doesn't link to previous discussions, it definitely _is_
wasteful.

It's like adding a comment without having at least skimmed through the already
existing comments.

~~~
sophacles
I don't know... Your statement assumes the entire concept of discourse is to
say things in the minimal number of bytes or words or whatever. This may be
true in code or maths, where less verbosity makes the point better, but I am
somewhat convinced the point of most discourse is to disseminate
understanding.

Since it is people who do the understanding, some repetition, while wasting
bytes or words[1], certainly helps maximize reader comprehension. Even math
and CS journal papers quote things, not just put pointers. That is wasteful
repetition don't you think?

I look at it as an optimization problem. There are at least two variables --
number of words and reader comprehension[2]. The goal is information transfer
between people. To minimize or maximize any one of those variables may result
in non-optimal information transfer. Instead there may need to be some
repetition rather than pointers for some things.

[1] There are serious questions at this point whether at the scale of HN
discussions there is such a thing as limited resources for data storage,
bandwidth, etc (and given the level of intellect here, even reading time is
almost trivial for a lot of posts).

[2] There are lots of confounding variables, such as the intelligence and
prior knowledge of any given reader, the eloquence of the writer, the
complexity of the point being made etc.

~~~
vog
_> Your statement assumes the entire concept of discourse is to say things in
the minimal number of bytes or words or whatever._

No, that's not my assumption at all.

I find it very useful if someone summarizes previous stuff, or reformulates
hard-to-understand (e.g. badly worded) previous comments.

However, you should do that consciously. There's no sense in writing a comment
that essentially just repeats what others already have written in better words
than you'd ever do. Doing that is a waste of time not only for you (the
writer) but also for all the readers. And it happens a lot, simply because
people are too lazy to skim though the previous discussion.

~~~
sophacles
Some people gain insight and understanding by trying to explain the material
to others. Maybe they think they are saying something different and need to
have the sameness pointed out. Perhaps they just think reiterating the point
will help others understand by seeing it again.

The above may be wastes of your time or energy or limited word count, but they
are not wasteful to others (in fact, the opposite is true -- someone may
actually be benefitting!). This is my point: what is wasteful to you may be
beneficial to others.

You can downvote it, or wait until stories have been around for a bit so
others will have sorted for you (and only read the top comments of course).

~~~
vog
_> Perhaps they just think reiterating the point will help others understand
by seeing it again._

This is of course possible, and I don't object that _as long as they know they
are reiterating_. However, this is only possible if people at least skim over
previous posts, which is usually not the case, and which is why hints to
previous discussions are not only helpful but necessary to avoid wasting time.

 _> This is my point: what is wasteful to you may be beneficial to others._

Repeating something for didactic reasons is sometimes indeed no waste of time
for the writer. However, if the writer then publishes this, despite other
people already wrote that stuff up in a much better way, that person _wastes
the time of the readers_ by filling up the comments with, let's face it and
call it by its name, garbage.

------
natnat
I've become really disillusioned with clinical psychology because of things
like this. There are certainly people with specific personality types. In this
instance, we have brilliant people who don't like to follow other people's
arbitrary rules, and are attracted to new information. There are also certain
people who will stay up for a week at a time, binging on cocaine and meth and
driving to Mexico without sleeping and then becoming nearly suicidal for a few
weeks after that.

The first person has a lisp-like personality. The second person has bipolar
disorder. The two sort of resemble one another, but in the lisp programmer's
case, they aren't doing anything really harmful to themselves or anyone else.
They aren't hurting anyone, they aren't hurting themselves seriously; they're
just acting a little quirkily. They might be bipolar-like, but they don't have
a disease like the person who goes on cocaine binges and then tries to kill
himself does.

The same principle applies with ADHD. Some people literally cannot sit still
for a minute, and will disrupt every class they're in because they simply
cannot pay attention to the work. This behavior is a problem for themselves
and others. However, most people have some trouble concentrating on things
they find boring. It's practically tautological.

The problem is, when we start using medical disorders to describe
personalities, we conflate the two. Suddenly, everyone has a disease. This
isn't a problem in itself, but we tend to try to fix these diseases with
medication. If we try to give every lisp programmer some lithium to cure his
bipolar behavior, he's going to become substantially less brilliant (lithium
taken early on tends to knock off a few IQ points). If we give him adderall to
treat his supposed ADHD, he might end up getting addicted to amphetamine.

I think we really need to accept the fact that some brilliant people are going
to have problems no matter what, and they are fundamentally part of their
personality. I don't think teaching a lisp programmer Python is going to make
him write code more consistently and still write code that's just as
beautiful. I don't think we can slice the "tortured" part of "tortured genius"
off without cutting off some of the "genius" with it.

~~~
phren0logy
>"I've become really disillusioned with clinical psychology because of things
like this."

I agree with your points about people using diagnostic jargon in conversation
in a way that distorts its meaning. I'm sure that happens in other fields
also, but speaking as a psychiatrist one thing that I have noticed is that it
tends to make people feel like experts on mental health when that conclusion
is not justified. There are, however, relatively specific technical
definitions for terms like Bipolar Disorder and ADHD. This article doesn't use
them, but it's not being published in a peer-reviewed journal.

Don't let this article disillusion you, because it's not about clinical
psychology or by a clinical psychologist. It's by someone with some
interesting observations who is mis-applying technical terms.

~~~
natnat
I wasn't really referring to the article in particular; I was more just
ranting about something that I was thinking about before that the article
reminded me of.

I think the problem runs a bit deeper than people thinking they're experts
when they're not, though. I think when most people try to diagnose themselves,
they look online for symptoms and such. If they already have some conviction
in their diagnosis, they might think that they should also have other symptoms
when they don't, or start noticing borderline things that they otherwise would
easily ignore. Then, when they finally go to the doctor, their list of self-
reported symptoms is no longer a list of what they independently noticed but a
laundry list of whatever they read on webmd.

I'd be interested in hearing if you think this is actually the case, since you
definitely have more experience and knowledge in it than I do. I'm basing most
of this off of the personal experience of a few of my friends and the modicum
of knowledge I have from a few clinical psychology classes I took in college.

~~~
phren0logy
>"Then, when they finally go to the doctor, their list of self-reported
symptoms is no longer a list of what they independently noticed but a laundry
list of whatever they read on webmd."

Sure, it happens all the time, in all areas of medicine. Not just psychiatry.
The key here is that when someone says "I'm depressed," or "I have 5 of 9
criteria of a Major Depressive Episode," or "I have gout," that does not mean
that the diagnostic evaluation is over. It's important to get clear examples
of what people have noticed. Despite their conclusion, is this better
explained by cancer, or anxiety, or a thyroid problem, or substance abuse?
Like migraine, psychiatric illness is evaluated clinically rather than by
imaging or lab tests, but there can be important overlaps that sometimes make
these tests helpful to rule out other causes.

A patient's own conclusion is an important piece of the puzzle, but it's still
just one piece.

------
kunley
Excellent article.

My take is that what kills Lisp is a common allergy towards anything related
to so-called release management. The Lisp technology helps with it - it
encourages staying within an image and putting all new stuff there. The
problem is, it can and often does create an attitude "it works in my image and
I don't care, you should know how to put it together by yourself or maybe
you're not skilled enough". Well, it partly true. But the proponents of such
elitist view tend to forget that today's software is so interdependent and
relying on moving parts each of different quality, that actually we don't have
the luxury of having "works for me" attitude. Even a genius can bang his head
against stupid obstactes. It's not intelligent (and counter-hackish) to repeat
the same mistakes again, or allow others to do that.

We as a civilisation invented cool things like semantic versioning,
encapsulation, TDD & BDD. Please, Lispers, do follow this movement. Some
people like creator od Quicklisp do a tremendous work in the area of release
management, but are they a majority?

Sharing is part of creating. Making something shareable counts as well. Not
being able to share makes people bitter, because we're social animals after
all..

~~~
raganwald
You read that entire article and your takeaway is a theory about why Lisp
isn't popular? I got something entirely, completely, and utterly unlike that.
I read an article that was about the author's students, but I recognized the
same thing in myself, in people who have devoted themselves to playing Bridge
full time, and many other corners of society where extremely bright people
hang out.

The correlation between the personality and Lisp programming is very
interesting, but I have to say that Lisp having a terrible "UI" for sharing--
if true--doesn't strike me as being connected to the article.

Maybe you could help me connect the dots between what the author is saying and
what you are saying?

~~~
shasta
"You read that entire article and your takeaway is a theory about why Lisp
isn't popular?"

He said 'take' (not 'takeaway'), which I would interpret to mean his viewpoint
on Lisp that might be unrelated or even contrary to the article.

~~~
kunley
Exactly. Please note I'm not speaking English natively and used phrase 'my
take' according to my knowledge how to use it. My point was rather a
digression comparing to the original article. In fact, I sympathize with the
author and I put my 2cents what IMO causes the situation described.

~~~
metageek
You used it correctly.

------
lispm
The author is some professor using Lisp and falls into some traps. The
personality he describes is not a speciality for Lisp (he may simply not know
other programming community) and some of the people he observes may not really
be have this kind of personailty - he really can't see since something like a
programming news group only exposes a tiny bit of a personality.

It is true that in the Lisp community there are and were some highly
intelligent people and some of them are not your average guy (think Stallman,
Gabriel, ...) - but those were extremely productive and creative. Gabriel was
the CEO of a development took company which was quite successful for some
time.

I think that people exist who march what he describes, but not exclusively in
the Lisp community. I also think that many in the Lisp community have much
complexer personalities than what he describes.

comp.lang.lisp has long been the target for weirdos and trolls. That's one
part of the problem. There are reasons for that, but I fear there is not a
single explanation for the behaviour of various widely different
personailities.

I have seen a lot of weirdos in other communities. Mathematics attracts some
of them for example. I remember that guy who proved that PI is finite. Physics
is another. I remember that guy who put a lot of effort into a presentation
about water and its memory effect. A special, not that cheap device, could
take advantage of that effect. That device was for sale.

------
mcantor

        Another feature about this guy is his low threshold of boredom. 
        He'll pick up on a task and work frantically at it, accomplishing
        wonders in a short time and then get bored and drop it before its
        properly finished.  He'll do nothing but strum his guitar and lie around
        in bed for several days after. That's also part of the pattern too;
        periods of frenetic activity followed by periods of melancholia, withdrawal
        and inactivity.   This is a bipolar personality.
    

Actually, that _also_ sounds like the prompt on a psychology exam, and the
answer is "Attention Deficit Disorder".

~~~
BigZaphod
Wow. That description fits me almost exactly.

Or, rather, it fits what I wish I could feel free to do as life cycles between
these phases. What usually happens is I have to keep going to work and
slogging through stuff even after I finish a productive frantic stage, and
it's really really hard to do that. I get very slow. I feel
down/demotivated/depressed during the down phase. Then the next
frantic/excited stage hits (randomly as far as I can tell) and I work on the
currently interesting feature/framework/whatever with all my waking energy
until the phase suddenly fades on me. Rinse, repeat.

------
udp
I've never written any Lisp, but after how much I related to this article I
feel like I should be!

------
lachenmayer
I found this article extremely interesting, as I felt that I found my own
personality perfectly mirrored in it. To clarify, I'm currently in my final
year of high school (doing the Irish Leaving Certificate) - my entire life I
have been "acing most of my assignments", indeed doing things at the last
minute and doing extremely well with it.

And yes, I am not taking school seriously at all. My punctuality is terrible,
I think I can honestly count on one hand the number of days I haven't been
late this year (and I live close to the school). I skip classes in which I
feel I am wasting my time (religion, anyone?), and have gotten several
detentions, etc. because of it. In many ways, my track record in the school (I
got a full scholarship for secondary schooling based on an exam in sixth
grade, I was the only person in my year to have received an offer from
Cambridge etc.), and resulting from that my relationship with the teachers, is
the only thing that has kept me afloat in this school.

I have a huge problem with the Irish Leaving Certificate, an exam which in my
opinion teaches you exactly two things: How to learn things off by heart, and
how to write fast. It has nothing to do with intelligence or skill, but just
the number of hours spent memorising pre-written notes, and being able to spit
it out onto the page in two hours during the exam. I am utterly bored by it,
and so I spend a lot of time in class on my iPhone, checking the news, reading
RSS feeds, Hacker News, etc.

This frenetic burst of activity, followed by a period of "[doing] nothing but
[strumming] his guitar and [lying] around in bed for several days" completely
describes me, except you'd have to replace strumming the guitar with lurking
on Hacker News! ;) I have never found anything wrong with that before, and to
be honest, this description of being "bipolar" struck me - is there really
anything wrong with this sort of behaviour?

This article certainly paints a fairly grim picture for my future university
life, if my personality is truly as reflected in the article as I can see it
to be at the moment!

Anyway, it was truly enlightening to have found this now, before I'm even at
university - I have only now become aware of my attitude. We'll see how things
pan out for me, if I'll be "scraping along the bottom" or end up on top...

(This is my first comment here, even though I have been following along for a
fairly long time.)

~~~
Stormbringer
Memorising things is a pretty important skill for a good hacker. I forget
(D'oh!) which famous researcher into comp sci it was, but one of them had done
a study on the "uber-programmers" (the guys who out produce normal programmers
by a factor of 10 or more) and found that all of them had much better memories
than average.

The real danger of being too smart in high-school is that because you can pull
the answer out of your arse any time you want, you don't develop a good work
ethic. And in University, not having a work ethic is almost certainly going to
catch up with you. In high school I was in a streamed class (ie all the bright
kids) and almost all of them came off the rails in the first year of uni when
they got to the end of the year and discovered that they weren't allowed to
sit the final exams because they hadn't done the 'stupid' assignments.

Naturally, being smarter even than the rest of the smart people, I sailed
through first year uni. ... only to come unstuck during the _second_ year. :D

A lot of the kids you look at now and despise for their inferior intellects
are going to have an easier time of it at university than you, because they've
built up a work ethic, and you haven't.

You don't have to be bipolar for most of the symptoms the article talks about,
just smart and lazy. You get a great idea and half complete it? Not
necessarily a bipolar thing at all.

Problem is, smart and lazy won't cut it working for 'the man'.

So you might think, well, this is HN, I'll just start my own company and 'the
man' can go whistle dixie!

Unfortunately, while 'the man' frowns on laziness, the free market absolutely
despises it. It will hunt you down. murder you and then do unspeakable things
to your corpse.

------
jfm3
Should be a must-read for hiring managers at software / web shops.

------
Stormbringer
Just a cynical observation. From the article:

"But also it goes with realising that a lot of human activity is really pretty
pointless, and when you realise that and internalise it then you become
cynical and also a bit sad - because you yourself are caught up in this
machine and you have to play along if you want to get on. _Teenagers are
really good at spotting this kind of phony nonsense._ "

I think that what Teenagers object to is _other people's_ phony nonsense. Or
perhaps phony nonsense that is imposed upon them by external forces.

They seem more than happy enough to generate boatloads of _their own_ phony
nonsense.

------
egor83
Great article.

While the author might indeed be not quite right with psychological terms, he
definitely has a point.

I read it, and (like many people here) found myself in it, so my next question
was: okay, now what should I do with this?

The earlier discussion [1] here on HN has a link to comp.lang.lisp, containing
some great advice [2].

Thanks a lot to RiderOfGiraffes for providing links to the earlier
discussions.

[1]: <http://news.ycombinator.com/item?id=20140>

[2]:
[http://coding.derkeiler.com/Archive/Lisp/comp.lang.lisp/2006...](http://coding.derkeiler.com/Archive/Lisp/comp.lang.lisp/2006-05/msg00080.html)

------
cmars232
Makes me want to restart my 5th attempt at a Clojure project.

~~~
invalidOrTaken
if it helps: <http://thtatithticth.blogspot.com/>

------
williamdix
It was scary how much this article made me think of myself. Probably, no
coincidence then that my favorite class at school was my first CS class,
taught in Scheme, from SICP, and that my GPA was quite low.

~~~
arethuza
Are GPAs in the US based on averaging _all_ of the marks from all of the
classes in a course?

If so I'd have don't rather badly rather than getting a First - the UK system
generally puts the emphasis on performance in the final year (or it least it
did in ye olden tymes).

~~~
jordan0day
_Are GPAs in the US based on averaging all of the marks from all of the
classes in a course?_

Generally, yes. There are some _ostensibly_ harder courses you can take that
are weighted slightly higher (the highest grade in an honors course may be a
5, while the highest in a normal course is a 4, so it contributes more to your
overall GPA).

That said, I haven't ever really heard too many complaints about this system.
In my experience the level of effort required from year to year is similar,
it's the type of effort that changes. For example, in a first-year math
course, you might struggle because you just don't know what you're doing. By a
fourth-year math course, you may know what you're doing, you just have to do a
lot _more_ , and do it _better_.

~~~
yummyfajitas
_That said, I haven't ever really heard too many complaints about this
system._

One obvious complaint is that an engineering student might have 50% of their
GPA attributable to non-engineering grades.

~~~
arethuza
What kind of non-engineering classes might there be in a engineering degree?
In the UK courses are (or at least used to be - some have gone all "modular")
rather narrow in focus - in the 4 year CS course I did in the 80s only one
elective class was included that wasn't specifically related to maths,
engineering or CS (and that was a rather enjoyable "History of Science"
course).

~~~
yummyfajitas
The specific nature of non-engineering classes varies, but most
science/engineering degrees in the US will require about 16 1-semester classes
spread across {history, sociology, literature, etc}.

This is reduced a bit if you go to an engineering school. I only had to take 9
non-science classes (+ 4 gym classes).

