Kristian Kristensen’s Blog


My Talk From JAOO/GOTOcon Is Up On Channel9

Posted in Code,IronPython,IronRuby,Misc by Kristian Kristensen on the October 16th, 2010

As I said in my previous blog entry my talk at GOTOcon (previously JAOO) was recorded by Microsoft with the intent of putting it up on Channel9. After some processing and uploading it is now up online.

Link to Channel9: Kristian Kristensen – Iron* – An Introduction to Getting Dynamic on .NET

From Channel9 you can download the video in a variety of formats.

I’ve embedded the video below using the Channel9 SilverLight player:

Get Microsoft Silverlight

Let me know if you have any questions, comments or suggestions.

  • If you like my writing you should subscribe to my RSS feed.

    Iron Languages Talk at JAOO (Now Goto Conference)

    Posted in Code,IronPython,IronRuby by Kristian Kristensen on the October 5th, 2010

    Today I held my talk on Iron Languages on .NET at JAOO (now Goto Conference). I think it went well, and the quick look I got at the evaluation sheet seems to agree with me. Microsoft taped my talk today, and it’ll be posted on Channel9 later. I’ll blog a link when it gets online.

    See the slides at Slideshare.

    Image of me presenting at JAOO courtesy of Niels Beck:

    If you have any questions please don’t hesitate to contact me.

  • If you like my writing you should subscribe to my RSS feed.

    Speaking at JAOO 2010

    Posted in IronPython,IronRuby by Kristian Kristensen on the September 20th, 2010

    I will be speaking at JAOO 2010 in Aarhus on Iron languages. Here’s a link to the schedule with my talk: Iron* – An Introduction to Getting Dynamic on .NET.

    In recent years dynamically typed languages have received more and more attention on the .NET platform. Initially, an implementation of Python showed up. Later, the Dynamic Language Runtime (DLR) appeared which made it much easier to implement dynamically typed languages on .NET. This session explores how dynamically typed languages fit in the ecosystem of .NET. We’ll see why dynamic languages are interesting and contrast them to their static brethren (C#, Java). Then we will touch on how IronPython and IronRuby are implemented on .NET via the Dynamic Language Runtime (DLR). Finally, we’ll look at some code examples of how you can utilize these languages on .NET today.

    If you’re attending JAOO, and want to chat I’d be happy to meet up. I’ll be there for the duration of the conference. Also I plan on attending the .NET User Group meeting on Tuesday night.

  • If you like my writing you should subscribe to my RSS feed.

    IronLanguages and the DLR Podcast with Me

    Posted in IronPython,IronRuby,Misc,Podcast by Kristian Kristensen on the July 16th, 2010

    Some time ago I recorded a podcast with Daniel from DPE in Microsoft Denmark on IronLanguages (IronRuby and IronPython) and the DLR. It’s in Danish and is now up online. You can listen to it here:

    If you prefer to download it and listen to it offline there’s a direct link to an MP3 here.

    Link to Daniel’s original post.

  • If you like my writing you should subscribe to my RSS feed.

    Iron Languages Talk at Community Day 2010

    Posted in Code,IronPython,IronRuby by Kristian Kristensen on the May 30th, 2010

    On Thursday I held a talk on Iron Languages at Community Day 2010. It’s a free one day conference that tries to bridge different technology stacks and encourage discussion. My talk was an updated and shortened version of the Tech Talk I did at Microsofts office some time ago.

    The slides are up on Slideshare – IronSprog Community Day 2010.

    I demoed a Ruby Testing Framework originally done by John Lam, and also used by Harry Pierson in his Pumping Iron talk. The code is pasted below.
    I demoed the CTP of IronPython Tools for Visual Studio.  To showcase some of the features I used BeautifulSoup.
    I demoed BadPaint, which is a sample that comes with IronPython. Get it here including the example code I used.

    It appears my talk was video taped. I should get a copy of that, and I ‘m quite sure it’ll find its way to the Internet as well. I’ll post a link when and where it goes online.

    Ruby Test Framework and unit testing the .NET stack demo code:

    #testharness.rb
    $examples = 0
    $messages = []
    
    class PositiveExpectation
    
      def initialize(obj)
        @obj = obj
      end
    
      def ==(other)
        $examples += 1
        if @obj != other
          $messages << "Want #{@obj.inspect} got #{other.inspect}"
          print "E"
        else
          print "OK"
        end
      end
    
    end
    
    class Object
      def should
        PositiveExpectation.new(self)
      end
    end
    
    def it(description)
      print "\n it #{description}: "
      yield
    end
    
    def describe(description)
      print "#{description}"
      yield
      puts "\nend\n"
    end
    
    at_exit do
      puts "#{$messages.length} / #{$examples} failed"
      if $messages.length > 0
        puts "Failures: "
        $messages.each { |m| puts "- #{m}"}
      end
    end
    #stack.rb
    require 'testharness'
    require 'System'
    
    include System::Collections
    
    describe ".NET Stack Operations" do
      it "should create an instance with zero elements" do
        Stack.new.count.should == 0
      end
    
      it "should let us peek at the element pushed" do
        s = Stack.new
        s.push "bob"
        s.peek.should == "bob"
        s.count.should == 1
      end
    
      it "should let us pop the element we pushed" do
        s = Stack.new
        s.push "bob"
        s.pop.should == "bob"
        s.count.should == 0
      end
    end</pre>
    <div>
    $examples = 0
    $messages = []
    class PositiveExpectation
    def initialize(obj)
    @obj = obj
    end
    def ==(other)
    $examples += 1
    if @obj != other
    $messages << “Want #{@obj.inspect} got #{other.inspect}”
    print “E”
    else
    print “OK”
    end
    end
    end
    class Object
    def should
    PositiveExpectation.new(self)
    end
    end
    def it(description)
    print “\n it #{description}: “
    yield
    end
    def describe(description)
    print “#{description}”
    yield
    puts “\nend\n”
    end
    at_exit do
    puts “#{$messages.length} / #{$examples} failed”
    if $messages.length > 0
    puts “Failures: “
    $messages.each { |m| puts “- #{m}”}
    end
    ende]
  • If you like my writing you should subscribe to my RSS feed.

    Iron Languages Talk – Slides Posted

    Posted in IronPython,IronRuby by Kristian Kristensen on the February 7th, 2010

    I held a TechTalk at the Microsoft office on Wednesday, and have promised to post the slides. So here goes.

    Slides @ slideshare.net

    The video I showed of the Nabaztag bunny being connected to a TFS server is embedded in that deck. However, you can also view it directly on YouTube.

    IronBunny @ YouTube

    If there’s interest, I’ll post my demos up here as well.

  • If you like my writing you should subscribe to my RSS feed.