
Why I don't write about programming and why it's not really worthwhile to do so - kevintwohy
http://www.marco.org/403653088
======
pg
I think it's just as well not to allow comments on one's site. If someone
wants to say something about something you've written, they can say it on
their own blog or on Twitter. When it's something of theirs they're writing on
instead of something of yours, they think twice before being jerks: most
people won't create a whole blog post just to make a trollish comment, and
someone whose Twitter stream is a series of nasty remarks is not going to have
a lot of followers, unless he's very witty.

Unfortunately, although I don't have comments on my site, as the moderator of
a forum I get them _de facto_ in the comments threads here. It's a uniquely
unpleasant situation. In a way it's worse than having comments on my site. On
my own site I could delete nasty comments, but here if I do I'll be accused of
censorship.

Frankly, I'm stumped. I've occasionally thought of banning paulgraham.com, but
people would accuse me of censorship if I did that too.

~~~
rms
What would the consequences be if you dramatically amped up the censorship
here? Certainly it would improve discourse at the expense of inspiring lots of
hatred...

~~~
varaon
It might also inspire unrest à la reddit when the HD-DVD keys were posted to
the site.

~~~
yardie
I think it was Digg that failed at removing the keys. I remember Kevin giving
a speech about failing to listen to his users.

------
nir
%99 of the time, Joel-style posts about programming in general are a boring
rehash of ideas already expressed better before (often by Joel himself). Same
goes for "10 things every start up should know" etc. They're great for HN
karma, poor as reading material.

Blog posts about _actual_ programming, as in "here's how I implemented x" are
almost always a great read, and if they are really good they will sustain
their value for a long time and reach far beyond the blog's readership as they
start appearing in Google searches etc.

It's all about signal vs noise. You may have a great insight, but if Joel/37
Signals/Coding Horror/etc already wrote about it you're just adding more
noise.

~~~
adriand
I agree 100%. There's a million posts by people (like Mark Cuban for example)
full of the same old boring crap: "maintain good communication", "don't spend
money on swag / unnecessary items / etc.", blah blah blah.

If generalized advice actually worked for human beings, the entire human race
would probably be a lot better off.

In practice, I find it hard to believe that anyone takes these lists of dos
and don'ts and actually turns them into guiding principles for how they run
their business.

~~~
zaidf
I disagree. I think the repetition is critical, at least for me, simply
because I tend to apply more of messages I recieve again and again. On paper
what you say makes sense(repetitive content = noise) but in practice there's
still value in repeating certain messages.

------
_delirium
Maybe it's relative to what other audiences you also encounter, but I haven't
found things too bad in the programming blogosphere. Sure, there are jerks,
but there are jerks everywhere. My day-job is in academia, and there are a
_lot_ of jerks at academic conferences. You're more likely to get someone
furious that you're intruding on their area, or critical that you aren't using
their preferred methodology or citing their papers, than you are to get
someone genuinely interested in understanding what you're doing and why. I
actually sometimes find the tech-blog reception friendlier, on the occasions
I've ventured some of my academic work online.

Admittedly, it might be worse if I were a celebrity blogger with tons of
readers; when only relatively few people read you, generally it's only people
who have some reason to like your work that would bother commenting.

~~~
JoeAltmaier
This YC thread actually has a lot in common with those nasty programmer-
readers. Look at all the personal insults, broad generalizations etc. I guess
programmer-readers are everywhere.

------
nostrademons
I don't blog about programming for different reasons...

I find that any _really_ interesting programming problem is too complex to be
reduced to prose in a form digestible in someone's 10-minute blog break. Yeah,
I could post about the umpteenth-zillion Sudoku solver, or about this tricky
Haskell problem I solved - but if it's general enough to be broadly
interesting, it's too shallow to be enlightening, and if it's deep enough to
be useful, it's probably too specific to have a widely interested readership.
Worse, I feel that by participating in the blogosphere, I'm deluding myself
into thinking that these information soundbites are worth anything, and taking
up my attention with little factoids that distract me from getting actually
interesting work done.

I find that the value of writing about programming is in the "Why?" and the
"Roads not taken" of software systems. So I keep a development journal of my
personal projects. At the very least, it keeps me from revisiting design
decisions I've already decided. But this doesn't need to be public to serve
its purpose, and I've found that making it public anyway is too distracting to
maintain forward momentum on the projects. Instead, I open things up after the
project has succeeded or failed, like I did with Diary of a Failed Startup and
like I'll hopefully do with this programming language I'm developing. No, it's
not the ego boost that constant, instantaneous feedback gives you - but that
ego boost becomes a drug that keeps you from functioning when people (as the
article points out) turn on you, as they inevitably do.

------
Scriptor
I'd say it's not worthwhile to write about programming if people already have
high expectations for you. Spolsky is definitely well-known and some people
probably view him as somewhat full of himself, so they like to pick out
_anything_ that might hurt his image.

For the average joe schmoe programmer, people don't have such expectations, so
there is far less negative reaction. Also, personality _does_ play a huge
role. Someone who doesn't seem too aloof and distant from other people will be
better off (take _why for example).

~~~
petercooper
_Someone who doesn't seem to aloof and distant from other people will be
better off (take _why for example)._

_why isn't the best example - he was awesome, but part of his appeal was that
he _was_ distant and not on the same plane as the rest of us.. just not in a
negative way. Nonetheless, before he disappeared he tweeted:

 _programming is rather thankless. u see your works become replaced by
superior ones in a year. unable to run at all in a few more._

Even though he didn't attract much negativity due to his whimsical,
impenetrable persona, it didn't seem to help him feel much better about his
excellent work.

~~~
amackera
This is something that has bothered me a lot in the past. Other engineers
build bridges and towers and monuments that stand for years and years. The
beautiful code written by a good programmer might be replaced 8 months later
by a junior who doesn't understand it.

I suppose in our profession we are able to perpetuate ourselves by
communicating our _ideas_ into the world. Our influence is felt in posterity
through the inspiration of thought in our successors. The kernel may evolve
over time, but its evolution may be guided by the initial conditions of its
initial code base (and subsequent changes).

A civil engineer may be directly remembered by the the bridge that bears his
or her name; a software engineer may be _in_ directly remembered by the smart
code he or she has written.

~~~
aristus
Comparing a Rails library to a bridge isn't quite right. Most things lone
hackers write are bike sheds and family homes. No one builds a bridge alone.

You want a legacy? Move up the food chain and start discovering new data
structures and algorithms. Or work on a large project like GMail.

------
jackfoxy
Although my evidence is only anecdotal, it seems like a lot of the programmers
who are constantly argumentative and the biggest flamers are loners who in
some cases have never even worked in a team environment.

~~~
neilc
I think another reason for this behavior is that programmers often define
their identity in terms of their preferred tools (you're a " _Perl_
programmer", not merely a "programmer"). That means that any perceived slight
against a programmer's preferred tool must be aggressively defended -- hence
the abundance of religious arguments about "$X is better than your favorite
language."

~~~
theBobMcCormick
I think there's a very similar dynamic at work in politics, where people self-
identify as a particular party or supporter of a particular ideology, an then
take any criticism, however mild" of that party or ideology as a personal
attack upon their very identity.

~~~
michaelfairley
pg has an essay about this very idea:
<http://www.paulgraham.com/identity.html>

~~~
theBobMcCormick
Ah, I should have realized. PG is da man.

------
bootload
_"... He has outlasted the relevance of all of them. His first articles would
have been frontpaged on whatever came before Slashdot. ..."_

Not quite true. Slashdot is from about '96 and JOS is from about 1999-2000.
Could the real reason be a bit simpler as suggested Joel is running out of new
ideas? Is it possible the upcoming IPO might also play part?

 _"... I can’t, which is one of the reasons why I rarely write about
programming: it’s just not worth the risk of putting myself out there on that
subject because the risk of strongly negative feedback is higher than with
most other content that I can produce. It’s much easier to share my breakfast
than my easily argued, easily disproven, intellectually vulnerable thoughts on
programming. ..."_

And all loose out. Has this kind of negative feedback held people back from
conversing in past times?

~~~
jacobolus
> _Not quite true. Slashdot is from about '96_

I think you’re misreading. The author was saying that Joel’s posts would have
been just as relevant before slashdot as they are today, not that the posts
actually predate slashdot.

~~~
bootload
_"... I think you’re misreading. The author was saying that Joel’s posts would
have been just as relevant before slashdot as they are today ..."_

Point taken. Misleading though.

------
WalterBright
Doesn't that just come with the territory? If you're successful with your
opinions, people will argue with you.

~~~
gridspy
So tempting to say that I disagree just to prove you right...

------
jrockway
I disagree. Although my blog is currently down (software issues that I have
put off fixing for wayyy too long), I am going to continue to write about
programming. Something that really annoys me is how many programmers don't
know how to program. Sitting around on social news sites telling everyone how
dumb they are doesn't fix the problem, but teaching people how to program
_does_.

I try to do that through writing, and I'd like to think that I've been
moderately successful. I sold a few copies of my programming-related book, and
many people have met me at conferences and have told me how my blog helped
them in some way. It's helped people get over the fears of learning Emacs
Lisp, it's helped people start using object databases, it's helped people
realize that library code is just like the code they write, and that they can
just start contributing! These are all things that make me happy, and knowing
that I am helping push other people in this direction makes me even happier.
All this by just being instructional and mostly "unbiased"; not every piece of
writing that influences someone has to be filled with argumentative rhetoric.
(I found out early on that "my $foo is better because $bar" just makes people
mad. So I try to write "here's how $foo works" and let people make their own
decision. This results in a lot less hate, although I admit that I can't
resist writing a good piece of flamebait now and again. It makes me feel good
if only one person agrees, and it makes me feel good when someone who I've
never met thinks its worth his time to tell me to "die in a fire". Who says
I'm not mentally ill?)

Anyway, I think writing about programming is highly worthwhile -- both for the
author, and the wider "programming community". I'm not going to stop, and I'm
not going to miss Joel.

------
forkandwait
In the egalitarian listserv world that I frequent, programmers generally are
extremely helpful, more patient than necessary, and write remarkably good
prose. Perhaps because jerks like to comment on blogs because doing so doesn't
have ramifications in a repuation based ecosystem in which there is less
asymmetry. It is easy and safe to bad mouth the gods, not so in the
assembly...

------
madair
He didn't say it's not worthwhile, on the contrary, Marco laments the loss to
programmers and tech writing. What he said is that for him it's not worth the
risk of putting himself out there:

 _Some people claim that they don’t care and that they can ignore it. I don’t
know if Joel can. I can’t, which is one of the reasons why I rarely write
about programming: it’s just not worth the risk of putting myself out there on
that subject because the risk of strongly negative feedback is higher than
with most other content that I can produce. It’s much easier to share my
breakfast than my easily argued, easily disproven, intellectually vulnerable
thoughts on programming._

~~~
kscaldef
It's rather ironic that the submitter went and changed the title, isn't it?

------
greenlblue
Nice article and the lessons apply to mathematicians as well. Few
mathematician are willing to engage in civil meta-mathematical discourse and
usually all such discussions end up in a shouting match about the intellectual
inferiority of whoever is involved.

~~~
whyenot
Yes. I've found it very intimidating as a grad student. I wonder though if
it's really worse in math, or if most academic disciplines don't have the same
problem.

~~~
greenlblue
It's much worse in math because mathematicians are an argumentative bunch to
begin with and many novice mathematicians have their entire being built around
their intellectual abilities so they get quite defensive when their views are
challenged.

------
NathanKP
I have to agree with the writers estimation of the programming audience. I
have noticed a very similar negative trend even among HN users, with comments
on my programming themed blog tending to be generally positive with a few
negative replies, while comments on HN on the same articles tend to be
generally negative with a few positive replies.

We programmers probably tend to nitpick a bit more than your average audience,
and that isn't always a bad thing. It can't be all that encouraging to the
writers though.

~~~
gamble
I think it's just the size of the audience drawn in by a social news site. HN
was an uncommonly polite place when it was first launched and largely
populated by people with links to YC. I'd guess the vast majority were
programmers or tech startup business types at that point.

As HN grew, it regressed toward the mean. It still has a more respectful and
intelligent community than reddit, for example, but there's a more reddit-like
tendency to attack than there was in the early days.

My theory is that there's a non-linear relationship between community size and
disrespect. Small online communities can maintain a respectful tone, but once
disrespect creeps in it tends to provoke a similar response, and a vicious
circle is created. The larger the community, the harder it is to suppress
those kernels of disrespect.

~~~
rapind
Sure. The presence of consequences. You can apply the same theory to physical
community sizes. If you're going to run into the same guy every day, there's
motivation to get along.

------
mpk
As far as I'm concerned this is just another piece of opinion put online by a
programmer. That's not a bad thing - putting things out there and talking
about them is integral to the programming profession as a whole. Look at the
body of writing work out there written by programmers that's considered
'classic' already. Never mind that most of the discussion is usually
subjective, highly opinionated, often misinformed and abrasive, insulting or
abusive.

Anything that is out there for the public to comment on is subjected to this.
Just take that as a given, this is what you get when you make public comments.
People not being nice on the internet is just a fact of life. That doesn't
immediately devalue what you're saying. There are plenty of people out there
who don't read or write commentary and read postings on their merit.

Not writing in public just because people might say nasty things about you or
your writings seems wrong to me.

Also, VI rocks! Down with Emacs! Yeah! Screw your non-modal editors!

~~~
toothcomb
Why do people comment? Perhaps it's because they can. People can say what they
like. But I still have to filter it. And that wastes my time.

I like threads and tree like comments as it can be interesting to see the
ideas and feedback at play. But sometimes I think it would be far better if
the comments remained completely on topic.

The problem is good jeurnalism is inherently difficult. I resist writing blog
posts because I'd spend too long on a post. As a teacher I'd spend a day at
least on a hand out. And a post requires listening to feedback and fine tuning
it. That's great if you have an informed receptive audience.

If I do ever bother with a blog, I think I'd ask for my desired feedback. I'd
like users to submit links to relavant associated content.

I do enjoy a 'good' article about programming, I specifically like to hear
about people's mistakes.

------
antirez
Well maybe I live in another world but I think more or less the opposite. You
can write about programming and people will love it, and in our industry there
are a great deal of people that are at the same time not gross and with good
arguments. But...

there are many ways to write about programming: one is to _actually_ write
about programming, that is, posts containing some experience to share about
some technology, or a pattern one writer noticed about programming languages
that is interesting, or how to implement such algorithm in a better way, or
just this-is-how-I-made-this-stuff and so forth. People tend to love this
stuff, if you search the HN / progreddit / slashdot archives.

Then there is another way to write about programming: the speculation. A few
well known blogs really master this art, as they are able to run successful
programming blogs _for years_ without actually ever really writing about
programmings. In this blogs you'll find a mix about obvious things narrated in
an inspirational way, a few rants about why people should do A instead of B,
and so forth.

My impression is that the latter kind of blogs, not really designed to share
what you think, but more to think about what you could share to be interesting
and cool, are the ones more often subject to criticisms.

~~~
dasil003
There's another dichotomy: abstract vs concrete. The more abstract, the larger
the potential audience. That's the reason why Joel is so much more popular
than the guy writing about OCaml optimization techniques for numerical
analysis.

But writing about generalities is not only hard more open to criticism as you
suggest, but they are also harder to come up with because they require more
condensed knowledge. Coming from that perspective I can understand why Joel
says he has nothing more to write about, and I think it's reflected in the
quality of his posts recently.

------
ddaymace
Programmer critics can be very difficult, often just as difficult and
insulting as the unintelligent critics. However, I find the ignorant people
are usually worse and more frequent and are there just to troll or make
shocking remarks without even trying to backup with logic. I have seen
programmer critics get really bad, nitpicking everything. It's like they have
no lives or respect at the worst, trashing everyone like they are smartest in
the cosmos.

------
aufreak3
For quite a while now, I really did feel that Joel has run out of things to
say and stopped reading him. So this comes as no surprise (and no loss). His
books are still good reads though. Wisdom is also something that is subject to
evolution I guess.

------
raganwald
Anecdote:

 _I_ write about programming, and it is entirely worthwhile for me. I changed
my style of writing at a certain point, but that had more to do with what I
wanted to explore than with whether people were critical.

Speaking of which, lots of people have said critical things about my writing.
But lots more said nice things. Overall, I feel that I get far more positive
feedback than negative. I could be wearing rose-coloured glasses.

So... My experience differs from the author. But that makes sense, we are
different people.

------
RyanMcGreal
Comments are disproportionately critical and/or argumentative, but that's
because it's a waste of bandwidth to post a comment saying, "I agree!" That's
what the up-arrow is for.

~~~
codexon
Blogs don't usually have up arrows.

~~~
codexon
Why the downvotes? The topic of this article is not about Hacker News, it is
about blogs in general.

------
k-zed
Sorry, Joel Spolsky has been fantastically, offensively wrong often.
Significantly often. Attracting negative attention should be considered
normal.

~~~
blubb
Fantastically, offensively wrong? Care to give an example? I think a lot of
the "he's wrong" reactions stem from knee-jerk reactions. People often miss
the point that what he's writing about comes form his own experience. It might
not be universally true, but he will still have valid points worthy of
consideration.

Then again, people writing angry comments are rarely the kind of people who
will take the time to reflect on what they read.

------
melito
Not doing something simply because people will criticize you is a terrible
approach to anything.

------
softbuilder
Caviar problem. See also: William Devaughn.

------
wowus
Sons, I am disappoint.

