Another senior DBA lived on a boat, so I took my DBAs over to his boat and we spent the afternoon, then went for a walk in the tony seaside town at which his boat was moored. We went to an art gallery.
One of the pieces was a semi-abstract gradient, but the colors could definitely remind one of the sky, and the steely gray of the ocean. I loved the way you looked at it and kind of got lost in the middle. It "felt" like the ocean more than "looking" like the ocean to me.
Another DBA was standing there looking at it and said, "I don't get it."
"I'm not sure there's something to 'get', exactly."
"Is there a boat or a person hidden in it? I can't find it."
For this person, looking at a picture had to have a point--a subject. It was, on some level, a "Where's Waldo?" exercise and since he didn't solve the problem of finding Waldo, he didn't get it.
But not everything's like that. It's okay to not like something. It's okay to not get it. You can still be a DBA. You can still have a picnic on the boat.
To me it's an interesting touchstone work showing/reminding that the "invisibly neutral" tone we've collectively adopted is still an editorial choice and cultural moment.
I'm sure writing and communication styles will drift back and forth over the next few decades. Sometime soon (if not already) another generation of younger developers will coalesce around some document that feels authentically counter-cultural, like their own late-night jokes and dreams have been given just enough coherence to hook them in, and then I probably still won't get it because I'll be out of touch.... :)
I think it’s worth appreciating as a thing of beauty. The raw talent required to make it is just incredible, and it probably takes a Rubyist to fully see the intricacies of what we’re meant to “get”. There’s a place for this kind of work, and it’s one of the delights of life that it exists at all.
I have a theory about _why’s popularity though. I think a lot of it comes from the cohort of us who were strictly trained in a C/Fortran/Knuth Art of Computer Programming style old-school approach. When your first presented with the mind blowing ideas of what programming can be when you start to liberate yourself from the machine — if the source has a quirky voice, there always remains a soft spot in your heart for them, be it the Little Schemer, SICP or _why.
(i agree with you, for the record, it was gobbledegook to me too)
the question is: does programming represent some kind of subjective expression, or some kind of objective precision? why's little zine says it's the former, but that's not how i see it at all
programming is, for me, like working on math problems, or balancing equations, it's strict and pure and precise, and that's what i love about it, there's no connection to anything like art, or writing (in the novel sense), or other kinds of subjective expression
but for some people, programming is like art, or writing a novel, or in any case a subjective expression of some abstract idea (or ideas) that they have
at least this is what i see as the discrepancy
Most of us that would've been into _why's stuff now have more traditional-looking jobs and responsibilities. But I'm so grateful for what he showed us then, and miss the more genuinely human, broken and vulnerable community he represented.
I still strongly prefer the worldview, circumstances, mindset, etc. where that kind of content is written, read, and celebrated over today's focus on Influence and Professionalism.
As for _why, there is nothing special about him. If you need an overly precious twee white guy, we have a natural source of them called the city of Portland. You can go find another ten of them there. They have waxed mustaches and are running combination coffee bars and thrift stores.
Even in the terms of the false dichotomy you've constructed here, I would much rather participate in a community of professionals who've organized themselves around sufficiently overlapping shared intents, than one accreted around the kind of twee, precious narcissism that characterized the early days of Ruby and Rails.
That comparison is informed by direct experience with both, and is the precise reason why my professional experience with both the language and the platform will to my dying day consist of one successful project a few months long.
A good professional community supports a wide variety of learning styles and levels of engagement, and tends to make a lot of resources easy to find for anyone who's willing to put in a little effort of research. The early Ruby and Rails communities did the exact opposite of this. Between "_why"'s guide serving a primary-reference role to which it is manifestly ill suited, and nobody much bothering to document anything effectively outside that, figuring out how to work with their garbage software was like pulling teeth - especially because, in a language constructed as a farrago of the worst ideas from Perl, Smalltalk, and Common Lisp, even reading the source is anything but a guarantee of understanding.
The structural exclusivity alone was bad enough, but the behavior of community leaders quickly demonstrated that the exclusivity was the point. That the "Poignant Guide" should be considered acceptable as primary documentation implies that the function of selecting for people willing to put up with that kind of nonsense was intended - maybe not as a matter of explicit design, although this would not surprise me, but "the purpose of a system is what it does". This system was created by narcissists to select for acolytes, and while I wouldn't quite call it a cult, neither am I prepared to say those who have are entirely wrong. And if it was a cult, it was a stupid cult, because Ruby is a language that makes programmers worse and Rails was never good technology; its sole unqualified success lies in having inspired software engineers to do similar things in better ways.
I'm sure by now I've upset some folks; there are some for whom no criticism of Ruby, Rails, or their leading lights can fail to read as a personal attack. If that's you who's reading this now, all I can say is this shows the difference between us: if you're cut out to be an acolyte, fine, go to it! I would rather be a practitioner in a community of practice. Granted this means my technical documentation comes without cartoon foxes and a level of pretense suited to an early 2000s Abercrombie catalog, but for documentation that actually documents that's a trade I'm happy to make.
I worry a lot that I contributed to how this is now, too, in my professional life.
It's strange to observe a world I dislike even though I was part of the wave driving the change.
What changed are primarily two things:
1) The social media war hasn't been won by those platforms that offered users possibilities to customize their page (MSN spaces, myspace, tumblr still survives) but by pre-canned, limited but simple platforms.
2)Internet citizens are increasingly less anonymous on all those platforms which makes them further unwilling to be unfiltered.
Edit: maybe “how” would be a better word to use.
A day or two before April 18, this page appeared containing a hand-written OCaml script you could use to hook up your own printer to _why's public print queue: https://github.com/steveklabnik/CLOSURE/blob/master/PDF/HOME...
On April 18, a bunch of us gathered in an IRC chat room (https://viewsourcecode.org/why/CLOSURE/ircLog.html). A few of us got the script working on our machines, and so every 10-15 minutes our printers would suddenly start up and print the next page as _why slowly published them one at a time throughout the day. Steve Klabnik gathered all the pages into one PDF and gave it the name "CLOSURE".
This article does a good job of giving more context around the book itself (as well as a partial summary): https://kev.town/2013/04/30/why-did-why-the-lucky-stiff-quit...
EDIT: I am now realizing that, ironically, maybe that is appropriate...
--
vi commented on Sep 30, 2015
What is CLOSURE.PDF? Readme is not helpful. I don't even understand is it a scientific paper, a book, a program or a game. My first thought was "Fed up! I'm closing! Here is my closure manifesto."
Along with Thanks, _why. there should be answer to What is CLOSURE? question in repository description.
--
mikehenrty commented on Aug 13, 2016
I think the problem is that nobody except for _why and perhaps a few people close to him know the context of this material. It just showed up on his blog one day after years of online radio silence. These hacker news posts show some of the confusion and excitement from that time:
https://news.ycombinator.com/item?id=5015087
https://news.ycombinator.com/item?id=5571387
Note that the link from Hacker News, _why's original blog, is now operated by some Australian guy with no apparent relation to _why.
2. https://en.wikipedia.org/wiki/Printer_Command_Language
3. https://en.wikipedia.org/wiki/Spooling#Print_spooling
4. They are individual titles of each page
5. yes, this was a puzzle of sorts, though the answers were kind of given to us beforehand, so you can argue that it wasn't a difficult puzzle. The PDF is the "answer" to the puzzle, if you will.
There's something wrong with the way my brain is wired. I am by accounts an intelligent, capable, successful person, but I am completely unable to "read" comic books. I might as well be staring at a foreign language. When I'm trying to learn a technical topic, I thrive on dry reference material. Put a cartoon in and it's like running into a brick wall.
I don't know where I was going there except I feel like any time this comes up, I have to over-explain myself for not liking that book, because everybody loves that book and I will be burned at the stake for not regarding it as the greatest programming book ever written. It's just my personal experience, and I accept that I'm totally wrong about it, ok? Anyway, shorter version is that I had such a visceral reaction, any time I see "why_" mentioned, my reading comprehension reverts to that of a toddler.
If that's all irrelevant and the point you were making was more like "kids today don't know what PCL is", I am very familiar with PCL and print spoolers, but detached from any context that would suggest printers, they failed to take on any semantic value.
[1] https://developers.hp.com/hp-printer-command-languages-pcl [2] https://support.hp.com/us-en/document/c06242096
Sorry for the unrelated comment, but maybe the direct pdf link will help others too.
We live in interesting times. Everyone wants to invent their own pdf renderer instead of letting the host OS do it. :)
Why_ had a type of character we can easily forget used to exist, in this modern world where everyone is either slammed through cookie-cutters to become over-socialized slimy corporate people or medicated into a zombie-like state of partial existence.
I feel these works did a lot to hobble people in their growth by putting too much emphasis on fantasy and not enough of actual understanding. I blame our mess of a JavaScript ecosystem on this idea that if you can dream it you can do it, and should do it, and that's wrong. It is like the old toddler wielding a knife thing, just because you found it doesn't mean you know what you have.
Most of us do this to feed and clothe ourselves and our families. Its easy to lose sight of the fact that we're often engaged in creative, artistic pursuits. If you were lucky enough to become enchanted by computers before you had to keep a roof over your head you likely stayed up late writing code, tweaking parameters and watching the pixels or the numbers fall out the other end. Late nights driven only by your own curiosity and the joy you felt while doing it. No feature requests, design documents, or stakeholders except yourself.
Of course there is also the code that keeps the planes in the sky and the electricity in the wires, necessary and beautiful in its own right, but that isn't what this is about.
I've long held... complicated feelings about a lot of all of this. For an analysis I did of the work at the time, https://www.youtube.com/watch?v=MaWHVceDbFo
Thanks for the talk!
a thing I realized recently is that _why's disappearance ends up making his work more "Poignant" - the tech stuff washes away, but the story lives on. In that sense, it's a success.
if you look at old technology, the descriptions and documentation tend to outlast the artifacts. I like to imagine us as stage performers - any given implementation of a Shakespeare play only lasts a couple hours, but the structure of it is timeless. Perhaps we should all be writing more, implementing less.
also, it's always good to consider what fame is, and what it does to people. In an attention economy, we imagine that fame is wealth - but it's clearly not so straightforward
Kafka asked his friend Max to burn all of his works and not have them published, but he was betrayed, and so we have Kafka's books.
_why burned his own works, but thanks to git, we were able to posthumously un-burn them.
And then this work was temporary, and what I did was make it permanent. Again.
Most of _why's projects don't really work on modern hardware, or with up to date compilers, or up to date versions of Ruby. Yet we can still read this book today.
"It feels like I may have just gone ahead and ruined what I am by [dumping this link]. Has all of this writing lost its timelessness, to have this relic here? But maybe this link will never break, maybe it will stay there for all time. Maybe it's me. I'm a relic which is already out of his time in the present age."
The link is now broken. You weren't the relic, _why.