E2E: Brian Beckman and Erik Meijer - Co/Contravariance in Physics and Programming, 2 of 3

Sign in to queue

Description

Happy new year! It's hard to believe that it's 2010. To start off the new year, how about some Beckman and Meijer? Smiley

You recently learned about Dr. Beckman's perspective on covariance and contravariance in physics. Dr. Meijer found this topic to be incredibly interesting and the two geniuses decided to take a stab at identifying the relationship between co/contra in one domain, physics, and another, programming. What will they discover at the whiteboards?

Tune in to find out in this three part series (this is part 2) with two of Channel 9's and Microsoft's most famous and respected software practitioners. See the first part here. The third part has not been filmed yet Smiley You should watch part one first. Here, the two scientists dig really deep, so put on your thinking caps, Niners.

Enjoy!

Embed

Download

Download this episode

The Discussion

  • User profile image
    ShinNoNoir

    Hmm, there is some sound clipping when Erik's a bit too enthusiastic?

     

    Edit:

    There is also this question for Brian I have since the first co/contravariance C9 video: Is there any literature that uses the same improved ∂ notation?

  • User profile image
    wisnia

    Eriks audio is unfortunatly screwed Sad but in the middle of the video he drops his mic on the floor and it gets better Big Smile

    The content is just awesome! It changes you point of view on how software, programming languages etc. are build. Very cool video - more of this kind please!

  • User profile image
    brianbec

    yes, ShiNoNoir -- the best, current source I know is "Vector Calculus, Linear Algebra, and Differential Forms" (VCLADF) by Hubbard & Hubbard, http://matrixeditions.com/UnifiedApproach4th.html .

  • User profile image
    cdwatkins

    shouldnt this be like part 2 of 3?  after all they dont seem quite done at the end here.

  • User profile image
    Charles

    Sorry about the audio. We may have to get some new equipment to handle Erik's enthusiasm! Smiley

     

    Yes, this could easily be extended to another part. Brian/Erik, you game?

     

    Aloha,

    C

  • User profile image
    brianbec

    yes yes, we need to finish up Smiley

  • User profile image
    tomkirbygre​en

    Not that Brian should ever need to prove his worth, but I did smile at his Michelangelo-esc perfect circle at the beginning. Kudos Brian. I'd like to add my humble vote to those calling for a follow up part - although I appreciate these guys are super busy ( I mean we're still waiting to hear news of Brian's [not] Timewarp .NET secret project <wink> )

  • User profile image
    yash2009

    Good one. Made me go back to college mathematics topics. I will certianly be following up on such video lectures.

  • User profile image
    AceHack

    Simply Amazing once again.  Give you two weeks like this and you'd have a theory of everything Smiley Anyways looking forward to part 3 of 2 to this series.  Thanks again Erik, Brian and Charles; I don't even watch regular TV anymore because of you guys.

  • User profile image
    Charles

    Excellent! Title has been changed to reflect this new reality of 3. Smiley

     

    I can't wait! Thank you, guys.

    C

  • User profile image
    jand

    @ShinNoNoir;brianbec : Spivak's "Calculus on Manifolds" is a good start.  

  • User profile image
    Laurens

    Awesome video!

     

    I love the contrast between the theoretical approach of brian and (somewhat more) practical approach of eric!

     

    Makes it all stick into the brain Wink

     

    Can't wait for part 3 Smiley

  • User profile image
    bulklodd

    Well done, guys! it's really terrific!

  • User profile image
    bigbag

    Nonsense math (no physics here) meets nonsense design. Makes it double nonsense. Dude in hat is visibly showing off very pretentiously. But hey, if Microsoft would not hire him, who else.

  • User profile image
    brianbec

    Spivak is the classic -- very terse, very beautiful, very out-of-print Smiley  Hubbard & Hubbard is loaded with examples and remarks and exercises.

  • User profile image
    brianbec

    Sorry you didn't like it, bigbag.

  • User profile image
    Parmenio

    This is wonderful stuff. I agree with the other commenter who said that they no longer watch TV since discovering this type of material on channel 9; me too!

     

    This really shows the similarity between applied mathematics and programming. What I hadn't realised until relatively recently (since I started looking at functional programming) was that with FP there is a strong relationship between programming and Pure maths. Reasoning about programs in algebraic form (Equational Reasoning) is something I find amazing. I also find it amazing that I didn't realise you could do this until so recently .... when doing Electrical Engineering before moving into IT (going back 10 years now), I always wrote programs imperatively, so when writing simulations there was a great impedance mismatch between what I was trying to model and the code I had to write to do it; much more than you would expect for scenarios where I was just trying to move from the continuous mathematical model to a discrete model.

     

    As an aside Brian, are you familiar with the idea's in Wolfram's A New Kind of Science. Where he talks about the fundamental building blocks of the universe being better modelled with executing computations (programs) rather than with high level mathematics. And that the high level mathematics of "physical laws" was basically a short cut to describe behaviour that emerged from the complex interactions of the simple computations as they executed over time. So something like the speed of light is just a emergent property of very simple computations (in the mathematical sense) interacting wildly over time. I'm probably butchering his hypothesis here, but hopefully he isn't reading this  Tongue Out

     

    Anyway that would suggest that executing computations is more fundamental than the current laws of physics. Do you have any views on that? To me this sounds beautiful, and beguilingly simple - though some of the computations when they execute are irriducibile, so it only gets us so far with trying to infer things from them, you end up having to run the simulation to see what happens... which is what the universe does, but it means we can't predict the outcome directly from knowing the simple laws.

     

    Something about that theory smells right to me, but I'm not a physicist.

  • User profile image
    brianbec

    Yes, Parmenio, there are plenty of people looking to model fundamental processes in physics as computations. Here's just one paper that I found in a few seconds of Binging : http://arxiv.org/abs/quant-ph/0312067 

     

    In general, arxiv.org is a fantastic place to watch for new stuff coming down the pike.

  • User profile image
    aL_

    awsome awsome stuff..

    it really strikes a chord with be because i love when im able to relate stuff i [kinda] know (co/contravarience in programming) with stuff i dont know (physics) Smiley

     

    if wonder if you can do this with other stuff, various monads and such. loved the state monad stuff, would love to see more Smiley

     

    @bigbag, dude show some fucking respect, maybe you'll learn something. this stuff is not nonsense just its because to hard for you to understand. its hard stuff, but nonsense it aint. microsoft is very very lucky to have both brian and eric, not the other way around.

  • User profile image
    AceHack

    I agree, I would love to see more monad content and how it relates to F# or C# which I understand better than haskell right now because I use them in my day to day job.  Although, I am making great efforts to understand haskell better because it is such a beautiful language.

     

    @bigbad I really hate that you did not like the content in this video but you must agree it's wonderful that Erik and Brain would share their knowledge with us for free.  I loved the content and I think this is the knowledge that will change the world.  (Well at least the software development world) I just can't believe that most of these concepts have been around for decades if not centuries and we are just now starting to harness the power of things such as function synthesis in widely used languages.

     

    Again, thank you so much Erik, Brian, and Charles.

     

  • User profile image
    exoteric

    Channel 9 has that effect [channeling away from other media] Ocasionally Infoq also has some interesting content although I find every other video from there is about project management methods, the other half about the latest fad and then the last impossible tenth is about good stuff like Scala, Haskell, Erlang, C#, etc.

     

    I like functional programming because of its foundational elegance: application/abstraction; combination/simplification. It is also nice to see how nature can be modelled and simulated via Lindenmayer systems and cellular-automata, essentially also rewrite systems. Wolfram is always talking about these rewrite systems as a means to create complex state (or behavior, over time) from simple (initial) state and simple rules. That means simple rules and simple state can compose to create surprisingly complex state considering the initial state and rewrite rules. It would be fun to treat the rewrite rules as state itself subjected to secondary rewrite rules (two layers of recursion: recursive rewrites of the initial state and recursive rewrites of the state of the rewrite rules (the rewrite rules, as state).

     

    I also remember Erik mentioning denotational semantics or maybe operational semantics as a means to model and reason about imperative programs. I tend to think of imperative programming as world where every state change generates a new world that becomes the current world and the old world is lost. In an informal way it looks like time: the now is here and the future and the past elsewhere. It seems to me that one might take on the view as imperative programming as extreme functional programming in the sense that it rewrites the whole world and throws away the original but maybe I'm way off course here.

     

    Not appropos: That user (which shall be unnamed) signed up just to make that post: stamped and filed as party pooper.

     

    Keep on truckin'

     

    Smiley

  • User profile image
    Charles

    Right on, to all. We will do more, much more, of this type of content in '10. Wow... '10!!!!

     

    Erik/Brian, thank you. Thank you! What a year '09 was and what '10 promises to be. The fact that Brian and Erik even work for a corporation is awesome. The fact that said corp is MS, well, I'm very happy and I'll continue to believe this even if I am laid off and no, Vic can't hire me. I'll just move to Hana.

     

    Smiley

     

    pepper and spice

    and everything nice

    C

     

  • User profile image
    brianbec

    Erik and I have started cooking up the last batch on this topic. Will have something to video soon.

  • User profile image
    Charles

    Awesome. See you next week Smiley
    C

  • User profile image
    Curt Eagle

    This one seems to be a useful source too:

    http://www.math.harvard.edu/~shlomo/docs/Advanced_Calculus.pdf (58MB)

  • User profile image
    brianbec

    Fantastic, Curt! thank you.

  • User profile image
    CbrAInK

    I certainly enjoy every show with Brain and most with Erik (I really like all FP - but some E2E are a bit boring - sorry). This is one of the best videos I watch around here - keep going - we want more math Wink

Add Your 2 Cents