Scott Guthrie Foaming at the Mouth



  • Ha ha, found an articule today in which Scott Guthrie is interviewed by someone from the Wharton business school (http://knowledge.wharton.upenn.edu/article.cfm?articleid=1920).

    Of course, mixing "Scott Guthrie" and "Business College" is a deadly combination for that fragile organism known as "the truth." If I may indulge in a little business college-style comparison of my own, this combination is analagous to the Chrysler / Fiat merger that was proposed a few months ago, except that the victim in this case is not reliability but veracity.

    Just skimming the article, I find the following dubious claims:

    1) WPF code is portable to Silverlight (not true; the reverse isn't true either, although it's closer)

    2) Adobe AIR apps won't get the benefit of "hardware acceleration" (false; even GDI32.dll and USER32.dll have been hardware optimized for 15+ years... remember "Windows Accelerator" cards?)

    3) That "technical" can be a noun (e.g. "Pradeep, get me the technicals on that sterility ray Bill G. asked about.")

    And then there is "sync." This is supposedly some sort of "killer app" that differentiates .NET from AIR. I try to let Joel Spolsky be my gatekeeper for new technologies and he seems less-than-enthused with "sync" (http://www.joelonsoftware.com/items/2008/05/01.html). The vision I have is some sort of crudely automated mess of slow, automatic file copying that inevitably finds exciting new ways to mangle and/or delete my most important files, sort of an automated version of unintentional drag-and-drop confusion.   

    Scott's pretty well revered amongst fans of .NET. I've always been a bit skeptical... to paraphrase Splinter from Battlestar Galactica, "the enterprise side is strong in this one." For as smart a bloke as Scott supposedly is to still be dicking about with "ASP.NET MVC" doesn't seem right to me. If he's really that brilliant, I've always wondered, why is he busily applying the development techniques of the 1980s (OOP) to the platform of the 1990s (ASP)?

    Having read that article, I suppose the answer may be that Scott's understanding of post-ASP.NET software development is based entirely on marketing screeds.



  • OMG, there is another one with Ray Ozzie (http://knowledge.wharton.upenn.edu/article.cfm?articleid=1698) and it's even, um, better.

    A pair of highlights:

    "[People] might use Outlook when they're driving around; they might want to open up their laptop and type something in." (That's EXACTLY what my morning commute needs... some clown in the next lane using $%#^ing Outlook.)

    "What kind of synchronization should automatically be built in? Should I use the camera in that mobile device to snap a picture of the white board and have it automatically go up to the service and integrate it with the other documents related to this meeting that I'm working on?"   (Yeah, Ray, do that, but try to work a wooden table into the process somehow.)

     



  • @bridget99 said:

    2) Adobe AIR apps won't get the benefit of "hardware acceleration" (false; even GDI32.dll and USER32.dll have been hardware optimized for 15+ years... remember "Windows Accelerator" cards?)

    Didn't they, you know, get rid of that hardware acceleration since now GDI-based apps are rendering everything to a bitmap which is then used by DWM?



  • @Random832 said:

    @bridget99 said:

    2) Adobe AIR apps won't get the benefit of "hardware acceleration" (false; even GDI32.dll and USER32.dll have been hardware optimized for 15+ years... remember "Windows Accelerator" cards?)

    Didn't they, you know, get rid of that hardware acceleration since now GDI-based apps are rendering everything to a bitmap which is then used by DWM?

    I am speculating a bit, but here's my understanding of how Microsoft says this works: Suppose an app is using GDI32.DLL to draw a rectangle. On a machine running XP, the path-of-execution will leave GDI32.DLL fairly quickly and enter some driver code, which will almost always be a fairly thin wrapper that largely just passes the parameters to the display hardware, specifically to that part of the hardware which used to be called the "Windows Accelerator." In the unlikely event that you're using a dumb VGA card, or other graphics hardware without Windows acceleration, the driver code will not be a thin wrapper, but will have to do the math, looping, etc. to plot the rectangle using the CPU.

    Suppose, now, that the same app is doing the same thing on a Vista machine. Microsoft's claim (I think) is that the GDI32.DLL code will do its work into some kind of scratchpad memory bitmap which DWM will then further process. As you note, the "Windows Accelerator" hardware is now excluded from the process, since DWM needs a RAM-resident bitmap (for the new ALT+TAB previews, the transparency effect on Window title bars, etc.).

    So, the answer to your question is "Yes" for Vista and "No" for everything else. But even the "Yes" for Vista is a very qualified answer; GDI32.DLL has suddenly "become" unaccelerated because Microsoft decided to do this as a part of Vista. It's not as if routine hardware acceleration of GUI basics is some novel innovation of WPF, though that's the impression Microsoft likes to give.

    Microsoft has also been insinuating since the beginning of WPF that WPF apps are now closer to the display hardware than "legacy" (GDI / WinForms / Win32) apps are. This is a very disingenuous interpretation of reality. Yes, legacy apps go through the extra process I described in the last paragraph, which is a sort of additional emulation layer. But it needs also to be mentioned that WPF apps exhibit a much greater call depth than other apps, even WinForms .NET apps.

    Presumably, the obnoxiously long stack traces generated by WPF relate to its CSS-like features, its automatic data binding features, "routed events," etc. Whatever the case may be, the code you and I write in WPF is certainly not closer to the hardware than Win32 code. It's isolated from it by all these WPF-specific wrapper functions, which basically squander whatever advantage WPF gains from its tighter integration with DWM.

     



  • @bridget99 said:

    I try to let Joel Spolsky be my gatekeeper for new technologies

    That tells me all I need to know about you.



  • @bridget99 said:

    Suppose, now, that the same app is doing the same thing on a Vista machine. Microsoft's claim (I think) is that the GDI32.DLL code will do its work into some kind of scratchpad memory bitmap which DWM will then further process. As you note, the "Windows Accelerator" hardware is now excluded from the process, since DWM needs a RAM-resident bitmap (for the new ALT+TAB previews, the transparency effect on Window title bars, etc).
    ... Perhaps I've been misinformed, but aren't the things you listed done on the GPU as well, without any RAM-resident bitmap? In Beryl, window previews were as simple as "render the texture you use for the window on this quad (the preview window space) as well. I don't know about the transparency blur effect offhand, but that could be done with a simple du/dv map texture on the same surface as the RGB texture with the window contents.



  • @Random832 said:

    Didn't they, you know, get rid of that hardware acceleration since now GDI-based apps are rendering everything to a bitmap which is then used by DWM?
    Didn't they return some of that functionality in Windows 7/WDDM 1.1?



  • @bridget99 said:

    "[People] might use Outlook when they're driving around; they might want to open up their laptop and type something in."

    What an idiot. Spolsky really hammers Ray Ozzie in that link, and I can see why. Outlook is dangerous enough on a desktop.

    @TwelveBaud said:

    @bridget99 said:
    Suppose, now, that the same app is doing the same thing on a Vista machine. Microsoft's claim (I think) is that the GDI32.DLL code will do its work into some kind of scratchpad memory bitmap which DWM will then further process. As you note, the "Windows Accelerator" hardware is now excluded from the process, since DWM needs a RAM-resident bitmap (for the new ALT+TAB previews, the transparency effect on Window title bars, etc).
    ... Perhaps I've been misinformed, but aren't the things you listed done on the GPU as well, without any RAM-resident bitmap? In Beryl, window previews were as simple as "render the texture you use for the window on this quad (the preview window space) as well. I don't know about the transparency blur effect offhand, but that could be done with a simple du/dv map texture on the same surface as the RGB texture with the window contents.

    If by "RAM" she meant "main memory," then you're correct. DVM is not using main memory to do its obnoxious little blurring effects. However, the crux of her explanation remains true. The legacy (GDI / USER) stuff is basically (and needlessly) locked out of the previous, optimal code that it used to run under previous versions of Windows.

    Maybe Microsoft has backed off of this in Windows 7, but that would seem to be very out-of-character. Usually they just plod forward with a bad idea until it reaches a sort of inevitability based on critical mass. Of course, they're helped along by the petty bourgeois proponents-of-Texas-independence-types here at WTF, and countless other communities of VB-addled Microsoft apologists. You know the sort... they typically own khaki slacks, at least one Toyota Camry, and a Blackberry, and they periodically emit prerecorded snippets about how "sick" Silverlight Deep Zoom is. 



  • @beau29 said:

    Of course, they're helped along by the petty bourgeois proponents-of-Texas-independence-types here at WTF, and countless other communities of VB-addled Microsoft apologists.

    You misspelled "Micro$oft".



  • 1) He never, ever says that WPF is portable to Silverlight.  He says that you can take the code you wrote for Silverlight and use it in a WPF application, which is true, as the Silverlight architecture is actually a subset of WPF.

    2) It's fairly clear that the acceleration he's talking about is 3D acceleration, since both times he mentions the comparison he talks about the rotating Aston Martin model.  Last time I checked, GDI/GDI+ don't offer that sort of functionality.

    3) Aside from the fact that "technical" is used as a noun in many domains (sports and stocks to name two, and rapidly making its way into IT), he only used it in that context once, so it's just as likely that he misspoke as it is that he routinely uses it as a noun.

    This thread is made of fail.



  •  @morbiuswilters said:

    @beau29 said:

    Of course, they're helped along by the petty bourgeois proponents-of-Texas-independence-types here at WTF, and countless other communities of VB-addled Microsoft apologists.

    You misspelled "Micro$oft".

    If I ever incorporate a business, I'll probably call it Macrohard just out of spite. 



  • @Aaron said:

    1) He never, ever says that WPF is portable to Silverlight.  He says that you can take the code you wrote for Silverlight and use it in a WPF application, which is true, as the Silverlight architecture is actually a subset of WPF.

    2) It's fairly clear that the acceleration he's talking about is 3D acceleration, since both times he mentions the comparison he talks about the rotating Aston Martin model.  Last time I checked, GDI/GDI+ don't offer that sort of functionality.

    3) Aside from the fact that "technical" is used as a noun in many domains (sports and stocks to name two, and rapidly making its way into IT), he only used it in that context once, so it's just as likely that he misspoke as it is that he routinely uses it as a noun.

    This thread is made of fail.

    1) It seems clear to me that Scott oversold the similarities between WPF and Silverlight: "WPF... lets you use the same code that you can use with Silverlight." This is not true; at least, it is no more true than saying that, because "int x;" is valid in both C# and C++, "C# lets you use the same code that you can use with C++." It's a misleading statement that glosses over the fact that WPF and Silverlight are basically similar but unrelated technologies.

    2) Outside of the world of demos, WTF does 3D have to do with anything? Is WPF targeted at the game market? It's not going to succeed there. Is it targeted at the business market? It's visibly failing in this area, which has little to do with 3D. These rhetorical questions are directed at revealing the ultimate truth: WPF is a toy for quasi-architectural Microsoft fanboys.

    3) I was just pointing out how prone Scott is to business speak. It reduces his credibility in my opinion.



  • @beau29 said:

     @morbiuswilters said:

    @beau29 said:

    Of course, they're helped along by the petty bourgeois proponents-of-Texas-independence-types here at WTF, and countless other communities of VB-addled Microsoft apologists.

    You misspelled "Micro$oft".

    If I ever incorporate a business, I'll probably call it Macrohard just out of spite. 

    And then MS will sue you for trademark violation because your company's name is too dissimilar.


  • @beau29 said:

     @morbiuswilters said:

    @beau29 said:

    Of course, they're helped along by the petty bourgeois proponents-of-Texas-independence-types here at WTF, and countless other communities of VB-addled Microsoft apologists.

    You misspelled "Micro$oft".

    If I ever incorporate a business, I'll probably call it Macrohard just out of spite. 

    It's gonna be tough raising venture capital1 for your business plan.2

     


    <font size="1">1 Getting drunk on mouthwash and begging for spare change in front of the 7-11 while you sit in a puddle of your own urine.

     

    2 Huffing driveway sealant and then trolling tech forums during your hour of free Internet usage at the public library.
    </font>


  • @bridget99 said:

    @Aaron said:

    1) He never, ever says that WPF is portable to Silverlight.  He says that you can take the code you wrote for Silverlight and use it in a WPF application, which is true, as the Silverlight architecture is actually a subset of WPF.

    2) It's fairly clear that the acceleration he's talking about is 3D acceleration, since both times he mentions the comparison he talks about the rotating Aston Martin model.  Last time I checked, GDI/GDI+ don't offer that sort of functionality.

    3) Aside from the fact that "technical" is used as a noun in many domains (sports and stocks to name two, and rapidly making its way into IT), he only used it in that context once, so it's just as likely that he misspoke as it is that he routinely uses it as a noun.

    This thread is made of fail.

    1) It seems clear to me that Scott oversold the similarities between WPF and Silverlight: "WPF... lets you use the same code that you can use with Silverlight." This is not true; at least, it is no more true than saying that, because "int x;" is valid in both C# and C++, "C# lets you use the same code that you can use with C++." It's a misleading statement that glosses over the fact that WPF and Silverlight are basically similar but unrelated technologies.

    2) Outside of the world of demos, WTF does 3D have to do with anything? Is WPF targeted at the game market? It's not going to succeed there. Is it targeted at the business market? It's visibly failing in this area, which has little to do with 3D. These rhetorical questions are directed at revealing the ultimate truth: WPF is a toy for quasi-architectural Microsoft fanboys.

    3) I was just pointing out how prone Scott is to business speak. It reduces his credibility in my opinion.

     

    1) No, it is more like him saying that C++ alows you to use the same code that you can use with C because C is a subset of C++.

    2) You are right, 3D is only useful in video games.  I have never seen any other tools use 3D rendering. Anyways, you can absolutely use WPF for video games. Write engine and other crucial code in C++ then call that from your .NET application.  WPF can drive all your menus.  Also, when was the last time that you saw a mass-market product being sold which had standard winform buttons?  Companies have to make their apps "fun" and "cool" to use.  You do that with 3D buttons and effects (subtle effects too).  Take a look at the iPhone and tell me that applications other than games don't need fancy effects using 3D rendering.  PS, with Windows Vista the windows on your computer are rendered using a 3D rendering engine, not the old clipping mechanisms of old.

     3) Whatever.  Programmers who don't consider the business side usually don't make products people want.



  • @tster said:

    2) You are right, 3D is only useful in video games.  I have never seen any other tools use 3D rendering.
    There is bumptop, but its usefulness is questionable.  I don't necessarily disagree with the claim that 3D rendering is only useful in games.  



  • @bridget99 said:

    1) It seems clear to me that Scott oversold the similarities between WPF and Silverlight: "WPF... lets you use the same code that you can use with Silverlight." This is not true; at least, it is no more true than saying that, because "int x;" is valid in both C# and C++, "C# lets you use the same code that you can use with C++." It's a misleading statement that glosses over the fact that WPF and Silverlight are basically similar but unrelated technologies.

    2) Outside of the world of demos, WTF does 3D have to do with anything? Is WPF targeted at the game market? It's not going to succeed there. Is it targeted at the business market? It's visibly failing in this area, which has little to do with 3D. These rhetorical questions are directed at revealing the ultimate truth: WPF is a toy for quasi-architectural Microsoft fanboys.

    3) I was just pointing out how prone Scott is to business speak. It reduces his credibility in my opinion.

     

    1) He's not overselling anything - the best analogy between Silverlight and WPF is the .NET Compact Framework to the .NET Framework.  You really can use a lot of the same code, and it will actually have the same semantics.  You can't actually reference the same assemblies, but in many cases, the code for WPF will be identical with the.NET assemblies.

    2) Completely retarded.  3D is used everywhere in data visualization today (charts, gauges, etc.).  And in the 2D arena you also have overlays, video acceleration, etc., none of which is available in GDI+.  Even if you consider this to only be useful for "demos", Silverlight is the web, and most of what Flash is used for is advertising or visual effects, so it's a very moot point.

    3) No, you were jumping to conclusions based on one edit in the transcript.  You have no idea whether or not he meant for it to come out that way, and as another mentioned, the real people who have no credibility are tech dweebs with an axe to grind but without any business or financial sense.



  • @tster said:

    1) No, it is more like him saying that C++ alows you to use the same code that you can use with C because C is a subset of C++.

    Obligatory "no it's not": There are subtle differences (for example, C++ does not allow you to convert a void * to a different pointer type without casting). But there does exist a common subset to both. Of course, if you actually extensively use the "C" side of things (stdio, malloc, etc), you've locked yourself into writing your entire application with it - on most systems it's not compatible/interchangeable with streams, new, etc. So it's C++ in name only.


  • Discourse touched me in a no-no place

    @beau29 said:

     @morbiuswilters said:

    You misspelled "Micro$oft".

    If I ever incorporate a business, I'll probably call it Macrohard just out of spite. 

    Unless you're terribly au fait with laywers, it probably won't be for long before you get chased. c.f. Mike Rosoft.



  • @tster said:

    I have never seen any other tools use 3D rendering.
    CAD, 3D Movies (a fairly profitable venture), scientific models, etc...



  • @Lingerance said:

    @tster said:
    I have never seen any other tools use 3D rendering.
    CAD, 3D Movies (a fairly profitable venture), scientific models, etc...
    Honestly?  I mean, I know text doesn't relate sarcasm well, but it should have been obvious.



  • @Aaron said:

    2) Completely retarded.  3D is used everywhere in data visualization today (charts, gauges, etc.).  And in the 2D arena you also have overlays, video acceleration, etc., none of which is available in GDI+.  Even if you consider this to only be useful for "demos", Silverlight is the web, and most of what Flash is used for is advertising or visual effects, so it's a very moot point.

    I think we need to draw a distinction between the kind of 3D one might see in a fancy line-of-business app and the kind of 3D that needs to be accelerated. A 3D effect on a button, for example, or even a bar graph is static. Yes, it's there, looking 3D and impressing the customer, but it's basically just a static bitmap. It's disingenuous to say that it takes 3D acceleration to make a contemporary-looking button. It takes 3D, yes, but doesn't really require or benefit from 3D acceleration in the runtime environment.

    Also, I'd be careful about throwing around that word "retarded." I had an ex-girlfriend who competed in the Special Olympics, and she was quite vocal about the fact that using such an epithet in the general sense is offensive.



  • @bridget99 said:

    Also, I'd be careful about throwing around that word "retarded." I had an ex-girlfriend who competed in the Special Olympics, and she was quite vocal about the fact that using such an epithet in the general sense is offensive.
    Who gives a shit?



  • @bridget99 said:

    I had an ex-girlfriend who competed in the Special Olympics, and she was quite vocal about the fact that using such an epithet in the general sense is offensive.

    You dated a retard?  And you have a girl's name.  How odd.



  • @bstorer said:

    @bridget99 said:

    Also, I'd be careful about throwing around that word "retarded." I had an ex-girlfriend who competed in the Special Olympics, and she was quite vocal about the fact that using such an epithet in the general sense is offensive.
    Who gives a shit?

    Don't you realize that the, um, differently abled can commit crimes with impunity? If you piss one of them off, they can kill you and then claim it was just their "retardation" acting up. That's, like, day one stuff at most law schools.



  • @bridget99 said:

    @bstorer said:

    @bridget99 said:

    Also, I'd be careful about throwing around that word "retarded." I had an ex-girlfriend who competed in the Special Olympics, and she was quite vocal about the fact that using such an epithet in the general sense is offensive.
    Who gives a shit?

    Don't you realize that the, um, differently abled can commit crimes with impunity? If you piss one of them off, they can kill you and then claim it was just their "retardation" acting up. That's, like, day one stuff at most law schools.

    Oh, sure, they may have that Retard Strength on their side, but I shall best them with my cunning.


  • @bridget99 said:

    If you piss one of them off, they can kill you and then claim it was just their "retardation" acting up.
    What's even better is every mentally challenged person I've met has freakish strength to match, there's this one 7-year-old that has to be subdued by both parents (father is top-of-his-prime and very muscular, so not a push over) when throwing a temper-tantrum.



  • @Lingerance said:

    @bridget99 said:
    If you piss one of them off, they can kill you and then claim it was just their "retardation" acting up.
    What's even better is every mentally challenged person I've met has freakish strength to match, there's this one 7-year-old that has to be subdued by both parents (father is top-of-his-prime and very muscular, so not a push over) when throwing a temper-tantrum.

    This is no doubt due to some sort of GURPS-like character creation system used by God. The character points still have to add up to 100.



  • @bridget99 said:

    This is no doubt due to some sort of GURPS-like character creation system used by God. The character points still have to add up to 100.
     

    I was about to comment in a similar vein, but you bested me with cunning.



  •  What in the name of fuck happened to this thread?   I leave for a couple days and it's like a room full of drunk and stoned monkeys shit on your keyboards and the shit became sentient, sprouted penises and typed random crazy bullshit with their penises.   Then you pressed "Post."



  • @tster said:

     What in the name of fuck happened to this thread?   I leave for a couple days and it's like a room full of drunk and stoned monkeys shit on your keyboards and the shit became sentient, sprouted penises and typed random crazy bullshit with their penises.   Then you pressed "Post."

     

    We're trying to write some Shakespeare.



  • @tster said:

    What in the name of fuck happened to this thread?
    One of these days you're going to have to answer to the god of Fuck for your continual taking of his name in vain.

    What remains is to figure out whether he'll reward you, fuck you, or punish you, or by doing number 2, commit all three.



  • @belgariontheking said:

    @tster said:

    What in the name of fuck happened to this thread?
    One of these days you're going to have to answer to the god of Fuck for your continual taking of his name in vain.

    What remains is to figure out whether he'll reward you, fuck you, or punish you, or by doing number 2, commit all three.

    To be honest, I haven't decided yet how I'm going to handle it, but I'm leaning toward #1.  I appreciate tster getting the word out.


  •  How does the God of Fuck relate to the God of Fuck-All?



  • @dhromed said:

    How does the God of Fuck relate to the God of Fuck-All?
    They're brothers.  The God of Fuck is the elder.  They had a huge falling out because the God of Fuck-All thought he was greater (due to the "all" in his name), but the God of Fuck disagreed, thinking he was superior because he's older.  However, it's been years since that fight so they may be on better terms now.



  • @morbiuswilters said:

    @bridget99 said:

    I had an ex-girlfriend who competed in the Special Olympics, and she was quite vocal about the fact that using such an epithet in the general sense is offensive.

    You dated a retard?  And you have a girl's name.  How odd.

     

    I'm not a girl. My nickname is a tribute to one of my all time favorite IMDB trolls. And yes, I had a girlfriend who competed in the Special Olympics, although she was really only my "show" girlfriend for family gatherings, business parties, etc. I apparently had something even less presentable for side action. But enough about the strange relationship between WPF and Silverlight...



  • @beau29 said:

    @morbiuswilters said:

    @bridget99 said:

    I had an ex-girlfriend who competed in the Special Olympics, and she was quite vocal about the fact that using such an epithet in the general sense is offensive.

    You dated a retard?  And you have a girl's name.  How odd.

     

    I'm not a girl. My nickname is a tribute to one of my all time favorite IMDB trolls. And yes, I had a girlfriend who competed in the Special Olympics, although she was really only my "show" girlfriend for family gatherings, business parties, etc. I apparently had something even less presentable for side action. But enough about the strange relationship between WPF and Silverlight...

    What the fuck are you talking about?  Nobody was talking to you.  And why would anyone think "beau" is a girl's name?



  • @morbiuswilters said:

    @beau29 said:

    @morbiuswilters said:

    @bridget99 said:

    I had an ex-girlfriend who competed in the Special Olympics, and she was quite vocal about the fact that using such an epithet in the general sense is offensive.

    You dated a retard?  And you have a girl's name.  How odd.

     

    I'm not a girl. My nickname is a tribute to one of my all time favorite IMDB trolls. And yes, I had a girlfriend who competed in the Special Olympics, although she was really only my "show" girlfriend for family gatherings, business parties, etc. I apparently had something even less presentable for side action. But enough about the strange relationship between WPF and Silverlight...

    What the fuck are you talking about?  Nobody was talking to you.  And why would anyone think "beau" is a girl's name?

     

     Because a "beau" is ones romantic interest, and usually used to refer to women?


  • Discourse touched me in a no-no place

    @DescentJS said:

    Because a "beau" is ones romantic interest, and usually used to refer to women?
    Um perhaps in French, but not in English; it's usually used to refer to men: http://en.wiktionary.org/wiki/beau



  • @PJH said:

    @DescentJS said:
    Because a "beau" is ones romantic interest, and usually used to refer to women?
    Um perhaps in French, but not in English; it's usually used to refer to men: http://en.wiktionary.org/wiki/beau

    According to the article you linked, in French beau is the masculine form and belle is feminine.



  • @morbiuswilters said:

    @PJH said:

    @DescentJS said:
    Because a "beau" is ones romantic interest, and usually used to refer to women?
    Um perhaps in French, but not in English; it's usually used to refer to men: http://en.wiktionary.org/wiki/beau

    According to the article you linked, in French beau is the masculine form and belle is feminine.

     

     Aha, now I have yet another error to call my english professor on.



  • @beau29 said:

    she was really only my "show" girlfriend for family gatherings, business parties, etc. I apparently had something even less presentable for side action.
    A man?



  • @belgariontheking said:

    @beau29 said:

    she was really only my "show" girlfriend for family gatherings, business parties, etc. I apparently had something even less presentable for side action.
    A man?

     

    Morbius.



  • @dhromed said:

    @belgariontheking said:

    @beau29 said:

    she was really only my "show" girlfriend for family gatherings, business parties, etc. I apparently had something even less presentable for side action.
    A man?

     

    Morbius.

    D:


Log in to reply