Unexpected consequences of writing a book: Public appearances

Date:January 23, 2007 / year-entry #25
Orig Link:https://blogs.msdn.microsoft.com/oldnewthing/20070123-00/?p=28303
Comments:    31
Summary:One of the consequences of being a minor book author is that you can't be a private person any more; you're automatically a public personality. If somebody asks you for an interview, you can't just reject it as a matter of principle. You're now doing it not for yourself but in the service of your...

One of the consequences of being a minor book author is that you can't be a private person any more; you're automatically a public personality. If somebody asks you for an interview, you can't just reject it as a matter of principle. You're now doing it not for yourself but in the service of your book. (Major authors might be able to get away with the whole "reclusive author" shtick, but you have to be pretty darn huge in order to pull it off.)

This means that you're going to see me popping up more often than before. Today, my interview with .Net Rocks! went up a week ahead of schedule. (I had originally planned to write up this introduction over the weekend, so this entry is a bit of a rush job. Notice that their schedule of upcoming interviews along the right hand side lists me for January 30th, not January 23rd.)

Interviews are exhausting because you're not just having a friendly conversation. First, you have to prepare for it, thinking up some stories or at least preparing answers to likely questions. Of course, the answers you prepare rarely match the questions you receive, but you have to be ready for them anyway. The interview itself is an improv performance before a microphone. You and the interviewer (assuming the interviewer is friendly to your cause) are working together to produce entertainment and insight simultaneously. Meanwhile, everything you say is being recorded for posterity, so you have to run your brain's "Should I say this?" filter on maximum power. There are no take-backs.

Comments (31)
  1. James says:

    I liked the book–received my copy a week or two ago. Nicely written, with interesting stories.

  2. John Vert says:

    So when is the big book signing appearance? Maybe you could do it in the building 9 cafe.

  3. Scott says:

    Thanks for a great interview! It was very entertaining and educational.

    About your Virtual Reality comment… VR is here. It’s called Second Life. Microsoft just need to climb on board or get left in the dust.


    Hopefully I’ll be able to attend my next meeting or purchase my Amazon book in the (open source) world using my Wii console.


    [The context for that discussion was VRML in web pages. I don’t know of anybody whose web page is done in VR, probably because it is a stupid idea. -Raymond]
  4. jon says:

    s/in the service of your book/for money :)

  5. Ted. says:

    Great book, but where are the downloadable chapters? I’ve looked everywhere on


    but can’t find anything. I was tempted to sign on to Safari bookshelf but that requires a credit card.

    [I’m trying to figure out what’s going on with the bonus chapters… -Raymond]
  6. Brian says:

    The good stuff starts 10 minutes in to the broadcast

  7. David Heffernan says:

    Hi Raymond,

    I’ve just read your book, great stuff.  Afterwards I thought it was time to go and pay my taxes.  I actually pay them pretty well, but it turns out that Vista is like the New Labour government – lots of new taxes!!

    Anyway, the one that exercises me is the DPI aware thing you mention.  I already pay that tax, but now I have to tell Vista that I pay it since it doesn’t trust me anymore!  That’s fine and the manifest solution is great.

    Only I can’t find any documentation of the DPIaware manifest anywhere – other than your book.

    Have I missed something or is Vista somewhat under-documented at the moment?  If you could direct me at the documentation that I can’t find that would be great.  Otherwise perhaps you could tell me which Vista release the manifest approach was introduced in (RC1, RTM etc.)


    [I don’t know which Vista release the manifest approach was introduced in. It’s not something that I worked on, and even if I did, not something I would waste brain cells to remember. -Raymond]
  8. David Heffernan says:

    Perhaps you could be so good as to let us know how you found out about the manifest approach?  Or is that private internal information?


    [I think somebody mentioned it to me, I forget exactly. I didn’t realize there was going to be a test. -Raymond]
  9. David Heffernan says:

    Ah well, I guess I won’t pay my taxes after all!

  10. Hi Raymond,

    I’ve just listened to your interview with .NET Rocks. I have to say, definately don’t change a thing.

    I’m not a low level guy, I’m a .NET developer and I read your blog everyday. I don’t understand alot of your code on here, but I do read through it. I mean, the first time I was taught multi-threading, it was using a wrapper. So as the curious guy I am; I went of an did the WINAPI blah-blah-blah. I got a small app to pring out in a multi-threaded way. The thing is, I still don’t know what the WINAPI thing is (never got round to it).

    What I’m trying to say is, I like to know my family history. If you know where you came from, your have a better idea of where your going and how you’re gona get there. And your the guy I want to learn all this from (or get a better idea from).

    So, don’t change, keep doing what you’re doing. Keep up this amazing work.

    • Brent
  11. orcmid says:

    I like the book too: http://orcmid.com/blog/#2007-01-23

    By the way, in case Bill Gates ever moderates another East-West Geek God Contest: The word “thunk” was made up Peter Z. Ingerman and appeared in print in 1961.  He was also fond of “twonky” (which was coined by a science-fiction writer before then).  

    One of Peter’s favorite anecdotes is having Russian computer-scientist Andrei Yershov ask him, “what means this work, zunk?”

    It is easier to explain it now.  The origin was in a series of papers on how to implement a run-time for Algol 60.  It turns out that Algol’s “call by name” parameter passing required that the parameter expression be passed as a closure for evaluation on demand — repeatedly.  The thunk was the little bundle of code pointer and lexical pointer that would allow the code of the thunk to be evaluated in the proper lexical context on the run-time stack, which may be several recursively complex levels above where the evaluation of the thunk is being called for.

    There’s a famous “Man or Boy Compiler” program, quite small, that Don Knuth wrote to tell whether or not an Algol 60 compiler got it right.  Many did not.  (The program is in his book, “Selected Papers on Computer Languages.”  There you can find also some tidbits that I will save up for “The next five things people don’t know about me.”

    These days, with pass by (reference) value, life is much simpler, along with using objects as a simple basis for accomplishing closure-like mechanisms, as you’ll find when finally work with .NET and C#.

    [I’m familiar with that story, but (1) I wasn’t there so it’s just hearsay, and (2) Algol thunks do not do the same thing as OS/2 thunks; I suspect that the OS/2 thunks have a different etymology. -Raymond]
  12. Dean Harding says:

    David Heffernan: I knew you had to put a manifest as well, it’s mentioned in a couple of blogs and so on. But I couldn’t find anywhere that actually mentions HOW to do it!

    If you look at my blog[1], I figured out where Windows stores that "Disable scaling" compatibility setting in the registry, so you could probably do it as part of your setup maybe?

    [1] http://codeka.com/blogs/index.php/dean/2007/01/17/ok_maybe_i_will_use_windows_mail_after_a

  13. orcmid says:

    If I’d listened farther in the interview, I’d have gotten that you do work with .NET and its languages, but don’t consider yourself a wizard the way you are with Win32.

    In the conversation about finding the right level, I had this dilirious notion of you putting ratings on your posts, such as this is a hardness [50] blog post, or a level 400 expert post.  It was funny at the time.

    Do you think that thunk might have degenerated to the notion of context crossing or even context-swapping mechanisms that the caller doesn’t have to be aware of (as in dynamic binding)?

    Ingerman described it as a procedure that was passed that would provide the correct address for some usage, so it was the procedure entry, in effect, that was passed/used.  [Oops, OneCare says I need to do a post-update restart.  Woopie …]

  14. James Day says:

    Someone, someday, is going to have the bright idea of trying to interview you for wikinews. Then you can say no to two things you don’t want at the same time. :)

  15. .net rocks sucks says:

    great interview but the radio station itself is really annoying; so much spam and junk at the start of the interview. they are terrible.

  16. scraps says:

    scraps still exist, by the way. i’ve seen them. i’ve managed to get them on windows 2003, or at least xp.

  17. ::Wendy:: says:

    Tee Hee,  Raymond has unexpectedly become an employee of his book, in-service to the book,  what next?  If you take up carpentry will you be at the beck and call of a Table,  will you have to chair from your own chair….  

  18. Stepto says:

    It’s worse than you know.  You’re not a minor book author, you’re a minor *internet celebrity*.


  19. alex.r. says:

    These were great answers really, I can’t say that much about the questions though…

  20. Mike Dunn says:

    "They’re not speaking Swedish, they’re just drunk."

    That was great. :D

  21. Percalo says:

    Hi Raymond

    Is there a transcription of the interview? I don’t speak english and there is some parts that I don’t understand.

    [How should I know? I was just a guest. -Raymond]
  22. Anonymous says:

    Yeah, skip the first 10 minutes.  All you need to know is they’re VB nuts.

  23. JS says:

    I enjoyed your appearance on .NET Rocks. There was a weird tension though, because they obviously wanted to ask you questions that were at least vaguely .NET-related, and because it seemed like they didn’t grasp basic aspects of some of the things you talked about. It seems like most of what those two have been building all these years is just CRUD apps.

  24. David Heffernan says:

    Dean Harding:  Thanks for your help, but adhoc reverse engineering of Registry settings are a bad idea.  If you’d been following this blog you would surely have picked that up by now!!  ;-)

    No, I’ll just wait until Microsoft document their new operating system.  It’s sad that the marketing bods can force a release out of the door before the new APIs have been documented.  Especially after all the anti-trust issues of the past.

  25. acc says:

    I’ve listened it yesterday, the content of the interview is very good, I mean the one provided by Raymond.

    I just loved the "scraps" story.

    Btw, hearing a lot of laugter during the conversation is actually not raising the entertainment value.

  26. Dewi Morgan says:

    (As others have said, the presenters waffle on until 10:30 before introducing Raymond, so fast forward).

    "We’re great fans"

    "new old thing"

    "the new, new…?"

    Hrm. Not the best interviewers in the world. "tell us the story of the member of your family that calls everything on their computer outlook." And I’m impressed that you managed to not say "well… you just told it."

    But yeah, despite the interviewers, the answers were great and definitely worth hearing. The stretch from 30 to 34 minutes was particularly hilarious.

  27. Andy says:

    I am not a .Net person so that was the first .Net rocks show I have ever listened too.

    Great interview. You have a really good sense of humor.

    I did want to trout slap the holy h3ll out of the interviewer that just didn’t get the whole "address space is not memory" thing, by the end of the interview.

    You were well spoken and entertaining even when the interviewers couldn’t come up with intelligent questions/conversation, which is quite a feat given how badly it could have gone had you not saved the conversation on several occasions.

    I would love to hear another interview done with you, especially if it was done by an interviewer who actually understands the things you address in your blog and your book.

    Unless they have you on their show again or some one else like Larry Osterman, I seriously doubt I will ever listen to the show in the future. I didn’t even listen to it when Rory was on it and he’s a personal friend. It just goes to show that a good interview can make a bad show worth listening to.

  28. nksingh says:

    I agree with others that the interviewers probably don’t pass the bar for understanding some of the topics Raymond talked about.  It would be a lot cooler to see one of those pretty good (but ever so slightly creepy) "behind the code" interviews with Raymond.  But thusfar, it seems like they only interview Distinguished Engineers.  I don’t think Raymond’s quite old enough yet for that title.

  29. JenK says:

    Agreed that the interviewers did not necessarily know enough to understand this blog.  Of course, neither do I… ;)

    That said, loved the scraps story & the take on upgrading. Personally I’m taking the release of Vista as a reminder to go ahead and buy a new laptop now while it will still come with XP ;)

  30. Wow – I didn’t know about scraps before.  Scraps are really cool!  Thanks, Raymond!  It’s only been an hour since I started using them, but now they are indispensable!  I will never be able to live without them!

    (And guess what – they work even better if you set the 3GB switch!  Thanks for pointing that out, too!)


    (Scraps *are* pretty cool, though.)

Comments are closed.

*DISCLAIMER: I DO NOT OWN THIS CONTENT. If you are the owner and would like it removed, please contact me. The content herein is an archived reproduction of entries from Raymond Chen's "Old New Thing" Blog (most recent link is here). It may have slight formatting modifications for consistency and to improve readability.

WHY DID I DUPLICATE THIS CONTENT HERE? Let me first say this site has never had anything to sell and has never shown ads of any kind. I have nothing monetarily to gain by duplicating content here. Because I had made my own local copy of this content throughout the years, for ease of using tools like grep, I decided to put it online after I discovered some of the original content previously and publicly available, had disappeared approximately early to mid 2019. At the same time, I present the content in an easily accessible theme-agnostic way.

The information provided by Raymond's blog is, for all practical purposes, more authoritative on Windows Development than Microsoft's own MSDN documentation and should be considered supplemental reading to that documentation. The wealth of missing details provided by this blog that Microsoft could not or did not document about Windows over the years is vital enough, many would agree an online "backup" of these details is a necessary endeavor. Specifics include:

<-- Back to Old New Thing Archive Index