How to tell the poseurs from the actual Windows developers

Poseurs will call Windows versions by their programmatic version numbers. For example, they will call Windows Vista "NT6" and Windows 7 "NT6.1". Trust me, nobody on the Windows team calls the products by their programmatic version numbers. Whenever anybody says "NT6" I have to go to Wikipedia and look up what they're actually talking about. If I even care to bother, and usually I don't.

Actually, since I work in the client division, I also have to go look up what Windows Server 2008 and Windows Server 2008 R2 corespond to. People will ask question about client-related issues on server, and we have to go back and match it up.

It's like TV insider poseurs who refer to episodes as "Season 3 Episode 9" instead of by their title or just a plot description. If you say to somebody who works on a TV show, "In season 3 episode 9, Anna clearly states that she is an only child, yet in season 5 episode 12, she talks about her older sister," they will have no clue what episode you're talking about.

They will also tell you to get a life.

Bonus chatter: The phrase "clearly states" is a pretty good tip-off that you're dealing with somebody who needs to get out of their parents' basement more.

Comments (53)
  1. Aaron Friel says:

    So what do the actual Windows developers call each release? Any common abbreviations?

  2. matt says:

    code names probably. also +1 for the bonus :P

  3. Are we to believe this is some sort of magic xylophone?

  4. RichB says:

    The documentation for MsgBox clearly states that the function displays a message box with the specified text.…/10416464.aspx

    And I thought you moved out of your parents place a long time ago. My world is rocked.

  5. Anon says:

    My money is on XP/Vista/7/8 for workstations, 03/08/R2 for Servers… Whistler/Longhorn/Blackcomb/Whatever are great for the teams working on them, but not so good when you need to onboard someone or talk about the OS with someone outside the team.

  6. Yuhong Bao says:

    I wonder why WinMe uses the directory name Win9X and W9xSetup.bin.

  7. Brian_EE says:

    @Yuhong – They figured that since no was ever going to use WinME, there was no sense in changing any of the file/folder names.

  8. Joshua says:

    The only good reason to use the version numbers is they are the same on both client and server flavors; which saves a lot of trouble when your code doesn't care whether it has a client or server flavor but has to adjust itself to version specific bugs in Windows.

  9. Yuhong Bao says:

    Joshua: In code it is easier to use the version numbers than to compare against the product names anyway.

  10. Maybe one of Anna's parents remarried.

  11. Jim says:

    Poseurs is a good word cause most people working in Software development are not developers, believe or not.

  12. Vincent says:

    RichB: I think the link you want is…/10247870.aspx.

    Also, the text you quote is not from Raymond (it was a quote from a would-be hacker, which actually matches “needs to get out of his parents’ basement” very well)

  13. SDL says:

    I don't think I've ever called a Windows release by its version number but I often find it useful to organise them by version number. Mainly insofar as grouping releases that have a common codebase together (Vista/2008, 7/2008 R2, etc…).

  14. crossslide says:

    If nobody on the Windows team cares about the internal version numbers (other than an implementation detail of the version API), why was Windows 7 codenamed Windows 7? It doesn't seem like a name that makes any sense unless you happen to know that Vista was 6.0.

    [Some manager-type wrote down all the versions of Windows they could think of, counted them, and decided that there were six of them. Therefore, the next one is #7. (This is the same reason why OS/2 was code-named "DOS 6".) -Raymond]
  15. alegr1 says:

    You need to know version numbers when you write an INF file and need to make "decorated" section names.

  16. xpclient says:

    NT6 refers to all operating systems where the Shell team deleted useful functions.

    [You do realize that you've basically become a parody of yourself. -Raymond]
  17. Veltas says:

    NT 6.x at the moment refers to Vista, 7 and 8 I think.  I use the term NT 6.x a reasonable amount because they're all similar OSs and a lot of stuff applies to all 3 of them specifically.  But I am in fact a massive poseur if I ever pretended to be a Windows developer because I'm actually a Windows software enthusiast.

  18. ChuckOp says:

    My experience working on Windows was that the development team pretty quickly switches over to using the announced marketing name.  One day we're all saying "In Chicago we're going to add X" and the next day, "Yeah, adding X in Windows 95 broke Y".  The only exception for me personally was that I kept referring to Windows 2000 as NT5 right up to release.

    Whistler was interesting, as it was the codename for Windows XP, but once XP shipped, saying "Whistler" mean you were referring to the server version.  That got repeated for "Longhorn", first for Windows Vista and then Windows Server 2008.

    If Blue is indeed going to be called "Windows 8.1" and be versioned "6.3" that'll be awkward for nerds.  Nerds shouldn't care what the marketing name is, just like end-users shouldn't care what the internal version number is.

    What's funny for me is how marketing names can affect the SDK.  For the longest time, what became "Microsoft Active Accessibility" was called "OLE Accessibility".  Thus the header file, link library and DLL start with "oleacc".  Then early in 1996, everything OLE or COM was going to be named ActiveX.  We were in the middle of development, and thus a number of things like enums and structs have "AxA" in their name.  Then just before the 1996 PDC, word came down that only browser and web components could have the ActiveX naming.  Thus we came up with Active Accessibility, which then the public and third-party ISV's dubbed "MSAA", an acronym that had way more lasting power than any marketing-derived name.

  19. Yuhong Bao says:

    "(This is the same reason why OS/2 was code-named "DOS 6".)"

    DOS 5 actually.

    [Oh, right. I was remembering OS/2 2.0, which was "DOS 6". OS/2 1.0 was presumably "DOS 5". -Raymond]
  20. alegr1 says:

    For the longest time, what became "Microsoft Active Accessibility" was called "OLE Accessibility".

    The day when those marketeers who slap stupid names on the products and features (and get paid for it) will get fired, will be a lucky day for Microsoft. Direct, Active, Live, time to stop the insanity.

  21. JM says:

    Mark me down as a poseur. Although it makes sense to, say, always distinguish Windows NT 4.0 from Windows 95 (despite both nominally being "4.0"), there's a lot to say for calling Windows Vista and Windows Server 2008 both 6.0 if you don't care about the client/server difference (which I rarely do), and likewise Windows 7/Server 2008 R2 both 6.1. I don't know, for some reason memorizing these makes it easier to keep the code names separate too. I also like that in theory, Windows still has sane version numbers instead of whatever management dreams up next. (In reality, of course, the version numbers are partially dictated by compatibility demands and indicate actual development on the OS with no more accuracy than the code names.)

    I'm not sure I'd even want to work on the Windows development team, so that's OK. Call me if you've got an opening on the SQL Server team, though.

  22. JM says:

    Sorry, in the above, where I write "code names", read "marketing names" or "the names normal people use". The code names are of course an entirely different species altogether (and I don't remember those, except for Chicago from reading it in many an .INF file).

  23. Sub names says:

    I'm a fan of just referring to them like submarines.  You have your Vista-class, your Win7-class, and your Win8-class OS's.  Feel free to connect those sub names to their real life equivalents (ohio-class, akula etc.)

  24. AC says:

    [Some manager-type wrote down all the versions of Windows they could think of, counted them, and decided that there were six of them. Therefore, the next one is #7. (This is the same reason why OS/2 was code-named "DOS 6".) -Raymond]

    You're lucky that you're years late now with that comment. Otherwise some idiot journalist or blogger would have quoted you on that.

  25. Me says:

    @Sub names:

    Waiting for the Galaxy class one…

  26. Henning Makholm says:

    "Season 3 Episode 9" doesn't even work as an identifier because it's left unspecified whether you're talking production order or broadcast order. If the broadcast of the eighth episode to be produced was postponed while three other episodes aired, which one is actually Episode 9? Depends on where the poseur gets his facts from.

  27. @alegr1 says:

    You forgot .net.

    (This comment is not to bash .Net, btw)

  28. kog999 says:

    "Are we to believe this is some sort of magic xylophone?"


    let me ask you something. Why would a man whose shirt says "Genius at Work" spend all of his time watching a childrens cartoon.

  29. Jim says:


    Cause s/he is trying to find the version of that Children's Cartoon!!

  30. With Windows 7 and Windows 8 shipped, I think that Microsoft has precluded itself from ever releasing NT 7.x or NT 8.x; for now it seems they fixated on minor increments of NT 6.x; I wonder what will happen after NT 6.9 :-)

  31. Veltas says:

    @Azarien: I think the point is that they weren't fundamentally different OSs.  The fact that XP was 5.x and Vista was 6.0 was probably something to do with how the system had moved on like 5 years since then.

  32. Veltas says:

    To elaborate, I believe that if they attempt a huge change again they'll happily change the major NT version number.  For one thing, compatibility of programs that rely on it being exactly NT 6.x will be the least of their worries!

  33. meh says:

    I develop apps that run on Windows and just use the same terms as what's in our Users' manuals (so the marketing names, I guess). Except anything less than Server 2003 I tend to call "unsupported" or "obsolete". This will soon include XP (haha). And it seems the phrase 'clearly states' might also be a pretty good tip-off to indicate annoyance :)…/10203215.aspx

  34. @Henning Makholm: the canonical order is *always* broadcast order. Production order is frequently undefined, with multiple episodes in simultaneous production.

  35. asdbsd says:

    Season 5 episode 9 format is pretty common. Mostly because episode names are often even more vague ("Madrigal", "Hazard pay", "Fifty one" – does anyone remember what happened in which) and with numbers at least you have a basic idea of where in the story that was. And there's a limit to how much you can use a construction "that episode where".

  36. @SDL: "I don't think I've ever called a Windows release by its version number"

    Windows 3, Windows 3.1?

  37. zinc666 says:

    These version numbers make a lot of sense if you're a network administrator, especially when you're designing your group policies or scripts; you wouldn't want to deploy .NET 4.5 to NT6.2 now, would you?

  38. John Doe says:

    Isn't "poseur" a strong word? There are lots of people that deal with Windows version numbers daily. It's easier for them to communicate those number. There's not a real purpose to pretend to be a Microsoft insider or something.

    On the bonus chatter, there are plenty of smug-detection tip-offs: starting phrases with "obviously" and "of course", "this is trivial" (when it's not), "exercise left to the reader" (it's actual research, even if there's previous art), "you idiot", "that's stupid", short-answer "yes", "no" or "it depends" to complex questions, etc.

    In real life, these are also used a lot in parodic or sarcastic humor. Of course, unless there's some context, it's really hard to tell.

  39. @Maurits [MSFT]: Tell that to fans of Star Trek: The Original Series. Production order there for fans/nerds has at least as much credibility as, if not more than, broadcast order – it helps (for lack of a better word) continuity (with the old turtleneck uniforms from the first few episodes/the pilots and a few characters not fully established in their roles initially) and also gives a sensible position for the original unaired pilot. Memory Alpha, a rather comprehensive Star Trek wiki, orders Original Series episodes (but no others) in production order. In addition, many of the home releases (VHS I believe off the top of my head) ordered them in production order.

  40. Jonathan says:

    @Maurits [MSFT]: Unless it's FireFly, where "Broadcast order" and "Intended broadcast order" differ due to network idiocy.

    And yes, marketing names creep easily into code. Back in 2002, our product was tightly related to Windows 2000 and what eventually was Windows Server 2003. But there was a period of time when Windows Server 2003 was supposed to be called "Windows Server.NET" (some marketoid decided that .NET is a generally cool name, rather than a specific technology). And so, our code was full of "if IsDotNet() …", meaning whether it's 2000 or 2003.


  41. Not quite sure why I said credibility there, but it was certainly the wrong word. Can anyone figure out the word for which I was looking?

  42. Ryan77 says:

    @asdbsd : 'there's a limit to how much you can use a construction "that episode where"'

    Unless you use the naming convention of the sitcom "Friends" and all your episode titles are actually named "The One Where blah blah blah" or "The One With The blah".

  43. Brad says:

    @Maurits [MSFT]: It varies a lot depending on how serialized the show is (more episodic shows don't really suffer from the broadcast order being shuffled around) but the fact that most DVD releases "correct" the broadcast order back to the production order should tell you something.

    A lot of times networks will air the episodes out of order even if it breaks ongoing plot threads if they think a particular episode will work better as the premiere, or as a return from a haitus or whatever, but that doesn't necessarily line up with the wishes of the show's creators.

    I'd rather view episodes of a show in the order the creators intended than the order the network decided to air them in.

  44. 4D 5A 00 says:

    Not quite sure why I said credibility there, but it was certainly the wrong word. Can anyone figure out the word for which I was looking?


  45. mjonson says:

    @Ryan77: I was thinking the same thing. Or you can use the Two and a Half Men convention of naming episodes from obscure lines from the script, e.g. "Corey's Been Dead For an Hour" and "Anteaters. They're Just Crazy-Lookin'".

    @ChuckOp: Don't forget the Windows Phone SDK where we progressed from a world where everything was simple and in line with 7.0 to one where the marketing name was 7.5 while the internal version was 7.1. You'd think after all these years of dealing with the confusion resulting from those internal vs. marketing version discrepancies with Windows that the Windows Phone team would have kept their versioning in sync.

  46. JW says:


    The problem is that both versions have different natures that hold no overlap and thus no meaningful compromise for those who end up deciding on them. Marketing cares about how something will be perceived, and if it doesn't sound good, catchy, awesome or even has a touch of negativity associated to it, they don't want it. On the other hand, the tech guys will have been developing the infrastructure, had to create dev-tools for said infrastructure and more of that fun stuff. By the time the marketing department hears of the project and what purpose it serves, tons of things will have already been set in stone. Something as simple as renaming a file means tons of source files need adjusting. Worse even is when you start changing the names of variables, constants and other 'public' functions: they may clash in a variety of different ways after you rename them. Version numbers are the same story: the way existing programs work may make it preferrable to use an awkward version under the hood; for example version 5.1 rather than 6.

    It isn't useful for neither devs nor marketing to get those version numbers synchronized; it will only give them headaches. Admittedly, one little annoyance on the part of support personnel might be fixed, but usually they either find version numbers in logs or they have a customer saying 'Vista' or 'Seven'. The times that it really leads to a misunderstanding is probably negligible.

  47. Random832 says:

    If people who talk about season number episode number (which if nothing else makes it easier to find the episode in the DVD set / Netflix / etc) are poseurs, what do you call people who call Season 3 Episode 9 "8F07"?

  48. Random832 says:

    @asdbsd "And there's a limit to how much you can use a construction "that episode where"."

    You can use it with every single episode of Friends. It helps that those are the episode titles, but the point is they had no trouble writing the titles.

  49. Yuhong Bao says:

    [Oh, right. I was remembering OS/2 2.0, which was "DOS 6". OS/2 1.0 was presumably "DOS 5". -Raymond]

    And BTW DOS 4 here referred to the *multitasking* DOS 4 (see Larry Osterman's blog).

  50. Scott H. says:

    Ahh, Strong Bad emails. I haven't been there in ages, I miss the regular updates

  51. brucec says:

    Specifying the version number makes it clear when releases are different. Are Vista and Server 2003 the same? No, because one's 6.0 and the other's 5.2. 2003 and 2003 R2 are mostly the same (both 5.2) but 2008 and 2008 R2 aren't (6.0 and 6.1).

  52. Yuhong Bao says:

    A pet peeve BTW is people assuming that "Windows NT" must refer to version 4.0 or older.

  53. Yuhong Bao says:

    And BTW I do know the programmatic version numbers well as I often read file version information in KB articles.

Comments are closed.