Checking In: Larry Osterman - 26 Years of Programming at Microsoft and Counting

Sign in to queue

Description

Larry Osterman is a legend and one of Channel 9's favorite personalities - it's been too long since you've been on C9, Larry! Now, what would happen if C9 hero Erik Meijer interviewed Larry? Well, you'd get the latest episode of Checking In and one heck of a conversation. Oh yeah. Make yourself comfortable, grab a beer, some egg nog or whatever you like to drink, sit back, relax and enjoy this truly fascinating conversation as though you were in the room with us - classic C9.

Larry's been at Microsoft for over 26 years and he's been a software developer (SDE) for almost all of this time (he dabbled in management briefly, but writing software is what he really loves to do). He's well known for his work on the Windows audio subsystem. But what else has Larry worked on over the years? How did he land at Microsoft? What's his story? We cover several topics ranging from STL to Larry's Microsoft job interview with Steve Ballmer.

If you know Larry or have seen any of his other Channel 9 interviews over the years, you know that he's full of great stories and delivers them in a way that only he can. It's Larry time on C9. Smiley

Thank you Larry and Erik for this conversational treat!

Happy holidays from Channel 9 wherever you are and whatever, if anything, you're celebrating!

Embed

Download

Download this episode

The Discussion

  • User profile image
    dentaku

    Charles Torre .... NOT the freaking PR Police Wink

  • User profile image
    littleguru

    Classic Channel9 ... I love it! Smiley

  • User profile image
    MikePoz

    Is that a build window I see on the monitor? :)

  • User profile image
    bob

    Well done for this great interview. There's so much to learn from Larry, hope we get to see him more often :)

    Any chance of interviewing an other long timer and msdn blog legend Raymond Chen? I don't think he has ever featured on channel9.

  • User profile image
    Charles

    @bob: We've tried. Raymond doesn't like cameras pointing at him. We'll try again. Maybe he's mellowed with age Smiley

    C

  • User profile image
    bryanedds

    Cheers for profiling BEFORE optimization. I am always struck by how many engineers, experienced engineers, do not follow this. Their code becomes so obfuscated from these micro optimizations that it becomes a nightmare to maintain and change.

  • User profile image
    bryanedds

    I think the three keys for building large systems that can be reliably reasoned about is to a) heavily leverage immutability in the general case, b) use declarative programming with DSLs where valuable, and c) architect for reasonably-grained modularity. Also necessary is the tooling to assist you in reasoning about programs like strong type systems, and / or code contracts. Especially powerful are languages that make it easy to build analysis tools for them (such as DSLs with s-expressions or XML). And yes, then there's unit tests and integration tests. So I guess there's six keys... at least Smiley

    Refactoring toward this implementation model over time should help get the complexity under control. But for large code bases, it take years and a complete organization and engineering team commitment over that whole period. That seems to be the hard part.

    EDIT: Oh, and you also have to tool up for all of it, in terms of build systems and core competencies. I can see why organizations get stuck with legacy implementation models... Phew.

  • User profile image
    faperdue2112

    Both a "Checking In" && "Going Deep" released on Christmas Day. What a good gift. Both, out of the park. Happy Holidays guys.

  • User profile image
    felix9

    HEROS ! Cool

  • User profile image
    Rohit H

    Ah just bought the Jon Louis Bentley book mentioned :

    http://www.amazon.com/dp/013970244X/ref=cm_sw_r_fa_asp_eJwxC.1JCE93W

  • User profile image
    FFE

    What an excellent interview! Thank you, Larry and the C9 team.

  • User profile image
    exoteric

    Finally. The Oster Man is back. Even the Beck Man is back.  Big Smile

  • User profile image
    deiruch

    Thanks a lot for this episode! Great chat, great chaps!

  • User profile image
    martinmine

    Awesome! You guys should make more of these interviews more often. They are interesting and you learn a lot Big Smile 

  • User profile image
    AceHack

    , felix9 wrote

    HEROS ! Cool

     

    I 2nd that!

  • User profile image
    C64

    Very interesting interview! That's a great Christmas present. Thanks Larry for your time and for sharing your insights.

  • User profile image
    Martin

    Really excellent interview/chat session - thanks Charles, Eric and Larry.

    Going on from the very brief discussion of COM at the end there, would it be possible for a future C9 video to look at COM?

  • User profile image
    Charles

    @Martin: Thanks Martin. Have you seen Jim Springfield's conversation on ATL, which necessarily involves COM? http://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-4-Jim-Springfield-on-ATL-GoingNative-Conference-Register-Today

    A deep dive into COM itself would be great, I agree. Let's see what we can do Wink

    C

  • User profile image
    Martin

    I have now - thanks for the link!

  • User profile image
    Ramses

    Thank you for this episode! Osterman is inspirational. Need to see more of him. :)

  • User profile image
    DyMeeus

    Quite funny actually, Erik said that youngsters wouldn't have programmed in ASM anymore, though at my uni we learn ASM (lovely thing to do aswell)

  • User profile image
    AlfredTh

    While Larry was in College I was a  developer working on the RSTS operating system. Yes it was a PDP-11 Larry worked with in high school.

  • User profile image
    rplaire

    @Charles -

    Why are you so surprised at the prevalence of C# and the CLR in Windows? Do you feel that only native code is up to the task of providing the performance and capabilities needed?

  • User profile image
    Charles

    @rplaire: I just didn't know that the Windows Media Center UI is implemented in C#... So, I was surprised.

    C

  • User profile image
    Brice Richard

    Larry revealed an amazing declaration to me, which was that no one understands windows code in its entirety.

    Are you kidding me? Why is Windows NOT DOCUMENTED? If a collaborative effort were initiated by the minds of everyone who knows a piece of this OS, there could be some intelligence drawn from it that was RECORDED.

    Now I know why Windows has been so damn unpredictable and unreliable in times past; and I suspect if Windows isn't documented it's not a mental leap to believe that neither are any of the Windows Office apps nor is Visual Studio which, for me as a developer who uses VS, is scarey as hell.

    While it is impressive that daily builds of windows occurs, why then, if that feat can be achieved, a documentation process can't also be instituted?

  • User profile image
    Daniel_​Himmelein

    Cool, I just wrote an article about "How do you read source code?" (http://himmele.blogspot.com/2012/01/how-do-you-read-source-code.html) and now I found that video. Just great Smiley.

  • User profile image
    BitCrazed

    @Brice Richard: You've clearly never worked on a really big software project before. Of course Windows is documented - perhaps moreso now than ever before thanks to the Consent Decree & EU settlements Wink

    In fact, the original Windows NT design docs written by Cutler et al were actually donated to the Smithsonian!

    What you don't understand is just how big Windows is. It's approaching 100M lines of code these days. It includes the Kernel (HAL, memory manager, DMA & interrupt handling mechanisms, drivers, DRM, etc.), Win32, GDI, User, System, RPC, COM, DCOM, COM+, ActiveX, DirectX, ADO, FAT/NTFS, the Windows shell (Explorer, control panel, etc), WMI, Powershell, IE, WiFi and networking infrastructure, tools and applets, SMB (the docs for this one feature alone are 500 pages long!), Registry, Hyper-V, Active Driectory, ADFS, CLR & .NET, and so on and so on. Want a taste of how complex this all is? Go read MSDN or the Windows Server protocol specs: http://msdn.microsoft.com/en-us/library/gg258393(v=prot.13).aspx">http://msdn.microsoft.com/en-us/library/gg258393(v=prot.13).aspx

    No one human being could possibly remember all public API's (and their parameters and return types) and what they do, let alone understand the enormous complexities that exist throughout the inner workings of the entire OS.

  • User profile image
    jolson88

    I feel so incredibly blessed to be able to work with Larry. It's been a total blast work directly with him on features for Windows 8. A total blast Smiley.

  • User profile image
    Justin Bailey

    Great interview! I went to my local library and checked out "Writing Efficient Programs" - can't wait to see how it still applies.

    I was SO glad EriK asked about the TeXBook. It was disappointing that Larry only worked with it for a summer though - TeX is a mind blow.

    I suspect Erik is a TeX freak - am I right? Maybe he'd do a deep dive on it Smiley

  • User profile image
    Ivan

    I was watching this video when my son came up to my computer, saw Larry, pointed at him and yelled "Santa Claus!"

  • User profile image
    erictn

    People like Larry are the heart & soul of a great enterprise.

  • User profile image
    Larry Osterman

    @Brice Richard:There was a fair amount of controversy about that "nobody understands" statement.  But it's true - Back in the early 1990s, Dave Cutler was able to understand how every part of the system worked, but that's simply not true any more.  I seriously doubt that there is ANY general purpose operating system in widespread use where a single person can understand how the entire system works.

    There are people who know everything about how the filesystems and I/O subsystem work (and a lot about how memory management and the kernel scheduler works), but I seriously doubt they understand deeply how the display driver infrastructure works with the internals of GDI, User and DWM. 

    It's simply to big for one person to comprehend.

    This is why have extensive internal documentation about the interactions between the various subsystems.  Of course the quality and accuracy of that documentation varies from component to component but in general, it's good enough.  And of course there are area experts that are well known within the Windows team - you've met several of them here on C9 (Arun Kishan and Landy Wang come to mind immediately).

     

  • User profile image
    NinjaPanda

    Really enjoyed this interview! I always feel so proud to work for Microsoft, and so inspired when I see interviews with our living legends.

    Thank you! 

  • User profile image
    RenzoDev

    Thank you guys for a most epic of interviews.

    I'm a young dev who grew up learning the ways of the Force on the DOS/Windows family of products so this provided a lot of good, insightful history for me.

    Know your past so that you may lead others into the future.

  • User profile image
    ryanb

    Fantastic interview!  This one is without doubt among the very best of all time on Ch9.  There is so much wisdom and experience in Larry's words.  This man knows of what he speaks, and we could probably all learn a few things from him.

     

  • User profile image
    Tom

    Larry is not only one of the more long-lived employees at Microsoft. He's also a phenomenal software engineer -- able to code and work in pretty much any part of the stack, from drivers to the kernel to user mode applications -- and he's also an incredibly collaborative and nice guy to work with. Nice that he's getting this recognition. You rock, Larry! :)

Add Your 2 Cents