Dave Taht is in my basement trying to use GPSD to set up NTP-independent time service on an WNDR3700 router, and having some problems. I’m upstairs teaching GPSD to emit a clock-drift message – both projects are because we’re trying to build a monitoring framework for accuracy-checking NTP. The following IRC exchange ensues:
[11:31] dtaht2 looks like I have an underconfigured gpsd, miscompiled gpsd or ntp
[11:32] dtaht2 OR does gpsd not provide time until it gets a full fix?
[11:32] esr That's correct.
[11:33] dtaht2 yes, in terms of 'or' statements, the above evaluates to 'true'. However... which?
[11:33] esr Some devices report time from one satellite but you can't count on that. Most won't report time without 3 sats in view and good enough SNR.
[11:34] dtaht2 cgps does report the time, so this particular device is
[11:35] esr OK, you have a problem somewhere else in the chain. And a learning experience just ahead of you.
[11:35] dtaht2 and a dark tunnel ahead. There may be grues.
[11:36] esr Take your flashlight.
[11:36] dtaht2 w;w;w;
[11:36] esr You see a rusty wand with a star on one end.
[11:37] dtaht2 get wand; wave aimlessly
[11:38] esr Nothing happens.
Actually, I went downstairs and said the last line to Dave rather than typing it. He then laughed immoderately.
If you failed to understand the above, you are probably a normal human being and not an unregenerate geek who spends too much time in basements. This is sad for you.
Got a query from a journalist today working on a major story about a certain large corporation that’s been much in the news lately. Seems the corporation’s founder has been talking up his organization’s allegiance to “the hacker way”, and she not unreasonably wanted my opinion as to whether or not this was complete horse-puckey.
So as not to steal the lady’s thunder, I won’t reveal the identity of Corporation X. I will, however, repeat a version of my answer with its identity lightly obscured – because I think these are questions we should ask any corporation that talks like that.
Tim O’Reilly proposes that we designate the 30th of October as “Dennis Ritchie day”. That works for me. Pass it on.
Since my readers are probably wondering: Yes, I knew Dennis slightly. He contributed to The Art Of Unix Programming and was very supportive of the project. He was indeed as pleasant and gracious as others report…a true gentleman and, of course, a hacker of such stratospheric accomplishment as to have few or no peers. But he treated me like one anyway — and that was an honor.
One of the side-effects of using Google+ is that I’m getting exposed to a kind of writing I usually avoid – ponderous divagations on how the Internet should be and the meaning of it all written by people who’ve never gotten their hands dirty actually making it work. No, I’m not talking about users – I don’t mind listening to those. I’m talking about punditry about the Internet, especially the kind full of grand prescriptive visions. The more I see of this, the more it irritates the crap out of me. But I’m not in the habit of writing in public about merely personal complaints; there’s a broader cultural problem here that needs to be aired.
The following rant will not name names. But if you are offended by it, you are probably meant to be.
Once, in a bygone century, in the half-forgotten place called USENET, there were masters of satire and parody who could be an example to us all in these latter days. Among the greatest of their arts was the AFJ – the April Fool’s Joke, yes, but in the hands of these masters the AFJ could become minor epics of elaboration, subtlety, and Zen-like enlightenment.
Today, Grasshopper, we shall speak of the four levels of AFJ mastery, and how the aspiring student may attain them.
Geeks, hackers, nerds, and crackers. It’s an interesting indication of how popular culture has evolved in the last quarter-century that the scope and boundaries of these terms are now of increasing interest to people who don’t think they belong in any of those categories — from language columnists for major newspapers to ordinary folks who have relatives they suspect might fall somewhere in the Venn diagram those terms define.
I’ve been watching these terms shift and move in and out of prominence since the early 1970s. Over time, distinctions among them that were once blurred have tended to sharpen. This is not happening at random; it accompanies the changes in “mainstream” culture that I noted in The Revenge of the Nerds is Living Well. As groups who were one marginalized erupt into mainstream visibility, everybody’s functional need for language that puts a handle on their social identities becomes more pressing.
Here’s a report on the state of play in early 2011, with some history intended to illuminate it.
I’ve written before on the hacker culture as a invisible college defined partly by a network of trust, gatekeepers, and certification authorities. Jay Maynard ask the next question: What are the non-technical things every hacker should know?
One of my regulars has expressed mildly disgruntlement about the degree to which a feeling of mutual tribal solidarity has taken hold among hackers, and become an increasingly defining characteristic of them. He finds it creepy – he didn’t use the phrase “disquieting groupthink”, but I’m pretty sure he was thinking something like it.
“You are, I regret to say, partly a victim of my social engineering…” I said to him, and promised to explain that. Yes, what he’s reacting against is in significant part my doing, and I did it for specific reasons, and it had the results I intended. This does not mean all the consequences were unmitigatedly good – sociocultural engineering, like other kinds, is a matter of tradeoffs under constraint. Explanation in more detail follows.
I had an IRC chat with one of my semi-regular commenters a few nights ago in which she reported giving a talk on hacker culture that went extremely well.
[00:12] <HedgeMage> It was one of those situations, though, where I felt *very* odd being treated like a subject-matter expert. I certainly don’t consider myself one in this case, though I guess it’s all relative, and as far as I could tell I knew more [abut hacker culture] than the audience.
[00:13] <HedgeMage> Sure, I knew more than those I was teaching, but it bothered me a bit that they seemed to think I was an expert when I clearly wasn’t.
[00:15] <esr> Been there, done that. The *really* weird stuff starts when you give descriptive reports of hacker culture that others begin to consider normative.
[00:15] <esr> If you’re not careful, you can unintentionally become a geek cred certification authority.
[00:15] <HedgeMage> I have an easy way to avoid that.
[00:15] <HedgeMage> I refer them to you :P
[00:16] <HedgeMage> So, no dying or I might end up there!
This actually isn’t the first time I’ve been in a conversation like this one. And that brings on some thoughts about social authority among hackers and geeks and in other subcultures that seem worth developing.
My friend Jay Maynard has successfully incited me to blog by asking me the following question: “Would you call the perpetrators of the Stuxnet worm `hackers’, rather than crackers”? He’s actually raised an interesting question of definition, culture, and ethics, and I’m going to tackle it.
Over the years I’ve written at least three expositions of the hacker mindset that use the form of mystical poetry or teaching riddles. Probably the best known of these nowadays is The Unix Koans of Master Foo (2003), but there has also been The Loginataka (1992, 2010) and the short Zen poem I included in How To Become A Hacker.
One of the regulars at my Friday gaming group is a Greek Orthodox priest, but an educated and broadminded one with whom I get along surprisingly well considering my general opinion of Christianity. A chance remark he made one night caused me to recite at him the line from the 2010 portion of the Loginataka that goes “The way of the hacker is a posture of mind”, and then when he looked interested the whole four stanzas.
He laughed, and he got it, and then he articulated the reason that I write about being a hacker in this form so well that he made me think about things I hadn’t considered before and probably should have. Like, what if other people don’t get it? All they’d see when they looked at the Loginataka or the Unix Koans is pretentiousness or satire.
But no. The mystical language of these works is functional in a very direct way, which the priest grokked instantly and I will now explain. It has applications beyond the way I’ve used it.
On a mailing list I frequent, a regular expressed doubt about the possibility that very small subgroups of a society (less than 5% of its population) can cause large changes in the overall direction of its evolution without long historical timespans to work in. But I know from experience that this can happen, because I’ve lived it. My explanation (lightly edited and expanded) follows.
Of particular note is my explanation of how engineering design can shape history.
I’ve been doing a lot of work recently on an ancient project of mine, C-INTERCAL, that’s an implementation of the longest-running joke in the history of computer languages. It’s an implementation, begun in 1990, of a language conceived in 1972 as a parody of programming languages of the 1960s. Now it’s nearly 40 years later, and yet some skilled hackers are still investing their time into fixing bugs, shipping releases, and even (gasp!) documenting the thing.
That’s a lot of effort to plow into a joke, and some people don’t get why. But there are parallels elsewhere: consider, for example, the venerable custom of issuing spoof Internet standards, published through the same channels as the real RFCs, on every April 1st. Behaviors like INTERCAL or the spoof RFCs don’t usually persist as long as these have without some powerful reason behind them.
This is the story of the INTERCAL Reconstruction Massacree, an essay in risk versus skepticism and verification in software development with a nod in the general direction of Arlo Guthrie.
About three hours ago as I began to write, I delivered on a promise to probably my most distinguished customer ever – Dr. Donald Knuth. Don (he asked me to call him that, honest!) had requested a bug fix in INTERCAL, which he plans to use as the subject of a chapter in his forthcoming book Selected Papers on Fun And Games. As of those three hours ago Donald Knuth’s program is part of the INTERCAL compiler’s regression-test suite.
But I’m not actually here today to talk about Donald Knuth, I’m here to talk about risk versus skepticism and verification in software engineering – in five part harmony and full orchestration, using as a case study my recent experiences in (once again) calling INTERCAL forth from the realm of the restless dead.
One of my commenters speculated as follows:
Perhaps I overestimate him, but I suspect that without Eric our choice would be Richard Stallman or Bill Gates without much in between. That isnâ€™t a pretty picture. Maybe Linus Torvalds would have help fill the vacuum, or perhaps someone else would have stepped up.
Because I think at least part of the time like a historian/anthropologist, I’ve actually spent a fair amount of effort contemplating what the world might look like if I hadn’t affected it. The more general and interesting question this touches (and what makes this particular instance actually worth thinking about) is a familiar one in historiography: to what extent the times make the man versus the man making the times.
Yesterday I discovered that Donald Knuth at least occasionally reads my blog. I only half-jokingly reported a vague feeling that I ought to be falling to my knees and crying “I’m not worthy!” In response, a “v. m. smith” popped up in my comments to say this:
Dude, you have written at least two books (that I have read) and possibly more. I have never read any of Knuthâ€™s books, so I am forced to consider this hypothesis:
You might be worthy.
Of course, itâ€™s only a hypothesis.
At this I laughed so hard that my eyes watered. That last line! I’m going to be giggling about it for weeks. But, you know, once I calmed down, I realized that “v. m. smith” had an actual point. Which led me to some interesting thoughts about fame, double vision and personal identity – how we choose to become what we are.
Received in email from Donald Knuth’s secretary:
I know from your blog that you’re doing lots of real important stuff these days. So I’m sure you want a break; you clearly must be ready to hack INTERCAL just once more.
Huh…Donald Knuth reads my blog?
Um…Donald Knuth reads my blog?
Wha…Donald Knuth reads my blog?
Eric clutches the nearest piece of furniture as the universe spins dizzily around him.
Eric successfully resists a vague feeling that he ought to fall to his knees and cry out “I’m not worthy!”
Er. Well then. I guess I’ll have to ship another release of INTERCAL, won’t I?
I get several requests in an average week from people who want me to teach them the way of hacking. Yesterday I got an unusually witty one in the form of a mystical poem, imploring me to accept the author as a disciple. I replied that I don’t know how to do what he seems to want, which is to pour the essence of hacking in through his ears or something. He replied that he was pretty sure I’d say that, but had been hoping for a reply in the manner of The Loginataka.
I told him “Sorry, I was distracted.” Then I wrote this:
I received this a few seconds ago in my mailbox. It’s not especially unusual for me to get wow-you-changed-my-life email, I see two or three in a typical month, but this one is…well, I’ll say a bit more intense than usual. Also, 34 is an unusual age; they tend to be teenagers. Sender’s name masked and one bit turned into a live link. Otherwise unedited, typos and all.
I just finished reading your [Hacker HOWTO] for the second time in as many
days. All of my life I have wanted to be a programmer. I have never
done it. I dealt with the failure of that by downloading cracked
software and telling myself that I was a “hacker.”
When I clicked on the link to your guide, my intention was to get
started on the road towards what I envisioned a hacker to be.
By the end of your guide, I was wallowing in humiliation. I felt…
well basically I felt like a jack ass. I never even knew what a
hacker was. I wasn’t even a cracker, just some poser with no
Your guide showed me that any of my few contributions to the cracker
community were meaningless, juvenile ploys for attention with no
progressive merit. They won’t matter in 6 months because I haven’t
After reading your guide, I began to research and really appreciate
the open source community. I saw that the degree of separation
between us wasn’t to huge of a gap and I realized that I could,
through dedication and hard(but fun) work, be part of something that
is growing and giving. A place where individual contributions aren’t
lost in the grand scheme of things, but help shape that scheme.
I am 34 years old and I have no problem admitting to you that your
guide made me feel like a complete ass. It also directed me to an
ideal I will be proud to contribute to.
For that, I thank you Sir.
I replied by quoting “I saw that the degree of separation between us wasn’t to huge of a gap” and said “I’m glad you got that far. Good luck on your journey.”
And that, ladies and gentlemen, is how you know your life has made a difference.