Hacker News new | comments | show | ask | jobs | submit login
Essays from the funniest man in Microsoft Research (msdn.com)
343 points by tujv 915 days ago | past | web | 58 comments



My personal favorite passage (no comment on HN's favorite obsessions at all)

"GUIs are useful. Spell-checkers are useful. I’m glad that people are working on new kinds of bouncing icons because they believe that humanity has solved cancer and homelessness and now lives in a consequence-free world of immersive sprites. That’s exciting, and I wish that I could join those people in the 27th century."


I am always amused by the fact that Sam Hurst, who invented the touch screen, did more for usability than hundred of thousands of people in UX.


It is really shocking... shocking... that people in fast food haven't solved world hunger.


Wait are you comparing people who don't work to solve world hunger with people who work to solve usability?


From The Night Watch:

Similar to the Necronomicon, a C++ source code file is a wicked, obscure document that’s filled with cryptic incantations and forbidden knowledge. When it’s 3 A.M., and you’ve been debugging for 12 hours and you encounter a virtual static friend protected volatile templated function pointer, you want to go into hibernation and awake as a werewolf and then find the people who wrote the C++ standard and bring ruin to the things that they love.


>virtual static friend protected volatile templated function pointer

I know what... five of those are...


you can't have a virtual static function. Either, but not both. The rest though are all basic c++


You can however have a static function pointer to a virtual function (although it wouldn't be a template, it could be part of a template). They do in fact work like virtual functions still. So that particular thing could exist, and be useful, and probably does exist somewhere in boost.


Welp, that's terrifying.


You must read his The Slow Winter: http://research.microsoft.com/en-us/people/mickens/theslowwi... — It deserves to be made into a movie.


Half way through it, fantastic read! Thank you for the recommendation!


It's pinned to the outside of my office door.

THIS DOES NOT RAISE PROPERTY VALUES IN TOKYO!


On C++ syntax errors:

    Syntax error: unmatched thing in thing from
    std::nonstd::__map<_Cyrillic, _$$$dollars> const
    basic_string< epic_mystery,mongoose_traits &lt; char>,
     __default_alloc_<casual_Fridays = maybe>>


Slightly further on:

That being said, if you find yourself drinking a martini and writing programs in garbage-collected, object-oriented Esperanto, be aware that the only reason that the Esperanto runtime works is because there are systems people who have exchanged any hope of losing their virginity for the exciting opportunity to think about hex numbers and their relationships with the operating system, the hardware, and ancient blood rituals that Bjarne Stroustrup performed at Stonehenge.


Absolutely hilarious! From The Slow Winter:

John began to attend The Church of the Impending Power Catastrophe. He sat in the pew and he heard the cautionary tales, and he was afraid. John learned about the new hyperthreaded processor from AMD that ran so hot that it burned a hole to the center of the earth, yelled “I’ve come to rejoin my people!”, discovered that magma people are extremely bigoted against processor people, and then created the Processor Liberation Front to wage a decades-long, hilariously futile War to Burn the intrinsically OK-With-Being-Burnt Magma People.


Very quotable indeed. From that article, relevant for HN:

  inventing “a thing that you could do” is a low bar for human achievement


A few weeks back I was inspired by "The Night Watch" to write a short systems programming take on Col. Jessup's famous monologue: http://abissell.com/2013/11/22/a-few-good-systems-programmer...


This is one of the best things I've read in a while. Though, I did was this movie every single day before I went to sleep for months at a time. Great job.


All of his articles are absolutely worth a read. Rarely read anything about computer history that's quite as compelling as The Slow Winter...


If you finish these and want more, it's worth skimming back through time on http://www.dadhacker.com/blog/

Bemused frustration is such an entertaining writing style. Alas, my attempts tend to end up as incoherent raging. Maybe switching to bourbon would help.


Bourbon is nothing compared to the rush of white-hot outrage you can extract from a bureaucracy in full flower.

(I write dadhacker.com, but haven't written much in the last year or so because I've been pretty happy since leaving Microsoft. Sorry! :-) ).


I just have to say that you're one of my favorite bloggers.

Thanks for all your posts.


Thanks for an awesome blog!


Is it my predisposition against all things Microsoft or there is someone else who doesn't find him that hilarious?

Mind you, the title only states he's the funniest man in Microsoft Research, not that he would be considered funny in the general population, and, therefore, a lot is left open to interpretation.,


How funny you find it is mostly a function of how much hair you've pulled out working with systems.


I could at least understand if you found him too over-the-top. There are some parts that seem to be trying too hard. The general "throw random references in a blender" style of humor might not amuse everyone. That said, I do find him hilarious.


There is also this interview from the National Science Foundation: http://www.livescience.com/40023-james-mickens-microsoft-s-l...

Incidentally, I look forward to the day when Lebron James is called the James Mickens of Basketball.


Mickens is awesome, they should make him their new CEO.


I concur. While I've never met him, he's almost certainly got that thousand-yard stare that pierces through to the heart of your crazy ideas (from "Let's spend several billion dollars on a company that does crappy sales software!" to "Why don't we put a Turing-equivalent cartoon paperclip on the bottom right hand corner of everyone's screen?"). This guy has Been Around the Fucking Block and deserves a shot at Microsoft CEO, he's in research and he's psychic about bullshit.

I would pay folding money to buy a ringside seat at the single combat that finally decides who gets to run Microsoft, because there's just no other way it's going to happen without causing a mass exodus of everyone who's still good working there. I would also put a significant side-bet on this guy, because he's not a biz guy or a sales guy or a marketroid, he's in research and knows how to fight dirty.


He's already the Galactic Viceroy of Research Magnificence. Is CEO a step up or down?


Good point. Perhaps he could take it on as a side-role for an hour after lunch. Shout a bit, do a dance, assault some furniture, you know the usual stuff, nothing too strenuous.


Imagine if Microsoft did install a crazy smart creative person to lead them. They can always keep business school twerps to do silly things like manage their existing lines of business. The CEO doesn't have to be a chair lunatic. They should be a CS lunatic.

Microsoft could be a thing to be feared again. Instead of innovating once every 10-15 years then milking their few products dry (and in 20 SKUs for each individual product), they can build out a 90% greenfield engineering business unit to tackle larger problems in the world. (Yes, that would require not including most current employees who have had their brains rotted and can't think in any other ways except Big Corp Big Process Patterns).


It's a step into darkness, most certainly.


Also recommended, "The Old New Thing" blog itself.


Absolutely! I love reading Raymond's blog because he will dig way down into kernel issues and other nuggets.

That said, some classic stories of his:

"In order to demonstrate our superior intellect, we will now ask you a question you cannot answer."

http://blogs.msdn.com/b/oldnewthing/archive/2004/04/26/12019...

and

"Don't let Marketing mess with your slides":

http://blogs.msdn.com/b/oldnewthing/archive/2003/10/17/55345...


His anecdotes and recounts of Bill Gates stories make for nice light reading, too.

http://blogs.msdn.com/b/oldnewthing/archive/2007/11/29/65884...


He has some crazy dreams: http://blogs.msdn.com/b/oldnewthing/archive/2013/10/14/10456...


> You can't just place a LISP book on top of an x86 chip and hope the hardware learns about lambda calculus by osmosis.

1. Loudly declare that theory is useless.

2. Ignore any tool that is not "serious" -- i.e. so larded with other people's complexity that all theory is useless.

3. Justify (2) by claiming that "ordinary" programmers are too stupid: only the brilliant can understand a tool so simple that theory is not useless.

4. Pension!


In case you're claiming the original author thinks either theory in general or LISP in particular is useless I urge you to read the essay. He's very much for high level languages, theory included, it's just that as a systems guy he's not in a position to use them.


He's not saying LISP and the Lambda Calculus are useless. He is saying you can't really use LISP if you're implementing the system software on top of which LISP runs.


B-b-but lisp machines! Tagged hardware architectures!


He specifically mentioned "x86 chips".


There is also movitz.


How you got that from the essay, I don't know, if you see that quote in context he is not saying that at all, he is saying that the low level stuff is neccessary to allow the high level stuff to get built:

You might ask, “Why would someone write code in a grotesque language that exposes raw memory addresses? Why not use a modern language with garbage collection and functional programming and free massages after lunch?” Here’s the answer: Pointers are real. They’re what the hardware understands. Somebody has to deal with them. You can’t just place a LISP book on top of an x86 chip and hope that the hardware learns about lambda calculus by osmosis.

Denying the existence of pointers is like living in ancient Greece and denying the existence of Krackens and then being confused about why none of your ships ever make it to Morocco, or Ur-Morocco, or whatever Morocco was called back then. Pointers are like Krackens—real, living things that must be dealt with so that polite society can exist.

Make no mistake, I don’t want to write systems software in a language like C++. Similar to the Necronomicon, a C++ source code file is a wicked, obscure document that’s filled with cryptic incantations and forbidden knowledge. When it’s 3 A.M., and you’ve been debugging for 12 hours, and you encounter a virtual static friend protected volatile templated function pointer, you want to go into hibernation and awake as a werewolf and then find the people who wrote the C++ standard and bring ruin to the things that they love.

The C++ STL, with its dyslexia-inducing syntax blizzard of colons and angle brackets, guarantees that if you try to declare any reasonable data structure, your first seven attempts will result in compiler errors of Wagnerian fierceness:

  Syntax error: unmatched thing in thing from std::nonstd::__ map<_Cyrillic, _$$$dollars>const basic_string< epic_ mystery,mongoose_traits &lt; char>, __default_alloc_<casual_ Fridays = maybe>>
One time I tried to create a list<map<int>>, and my syntax errors caused the dead to walk among the living. Such things are clearly unfortunate. Thus, I fully support high-level languages in which pointers are hidden and types are strong and the declaration of data structures does not require you to solve a syntactical puzzle generated by a malevolent extraterrestrial species.

That being said, if you find yourself drinking a martini and writing programs in garbage-collected, object-oriented Esperanto, be aware that the only reason that the Esperanto runtime works is because there are systems people who have exchanged any hope of losing their virginity for the exciting opportunity to think about hex numbers and their relationships with the operating system, the hardware, and ancient blood rituals that Bjarne Stroustrup performed at Stonehenge.

http://research.microsoft.com/en-us/people/mickens/thenightw...


Of course, you could also try writing system software in a language like Oberon, where two guys could create a language, a compiler, a GUI, an OS, and the hardware to run it on, in a couple of years, while teaching.

Note that Wirth is currently writing a new edition of Project Oberon, with a new FPGA-based computer.


Based on the last Wirth-related thread, I'm pretty sure it's done and it is just a matter of the documentation getting out there (or not).

Start here: http://www.inf.ethz.ch/personal/wirth/ProjectOberon/index.ht...

But I'm pretty sure the specifics of the FPGA he's running on are not well documented yet. I would be happy to be corrected on that point.

In any case, it's a super cool project.


Ooo, I may just have a use for that.


Third page, first column. Goodness, others here quoted bits of it and now you show us that it's all one passage!


"In some way that I don’t yet understand, I’m glad that theorists are investigating the equivalence between five-dimensional Turing machines and Edward Scissorhands"


From 'theSaddestMoment'

"As it turns out, Ted the Poorly Paid Datacenter Operator will not send 15 cryptographically signed messages before he accidentally spills coffee on the air conditioning unit and then overwrites your tape backups with bootleg recordings of Nickelback. Ted will just do these things and then go home, because that’s what Ted does. His extensive home collection of “Thundercats” cartoons will not watch itself. Ted is needed, and Ted will heed the call of duty."


I went to some of the essays linked but the only way I'm going to be able to read that is to increase the line spacing about 150% and put in about 3x as many paragraph breaks.


Is worth it, they are as hilarious as they are informative.


Best.Comedy.Evar.

My cynical self was caught off guard and laughed to tears on at least 4 occasions reading these essays. Priceless.

Last time I laughed so hard was while watching a Dave Chapelle Show...


I've read a few and they have been really good reads. If there were more swear words, I would have said that Zed Shaw was his ghost writer.


This is like xkcd in essay form. Thanks for posting!


His facebook page is also a hidden treasure trove of hilarious writing!


these essays are amazing ... also great for learning about CS systems in general. if you can get all the jokes, then you're well on your way to an applied CS degree!


"this solution will definitely work in practice"




Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact

Search: