Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Ruby Loves Dot Net

1,746 views

Published on

Presentation for the belgian VISUG about IronRuby

Published in: Technology, Education
  • Be the first to comment

  • Be the first to like this

Ruby Loves Dot Net

  1. 1. Ruby &lt;3 .NET<br />Ivan Porto Carrero<br />http://flanders.co.nz<br />http://twitter.com/casualjim<br />www.visug.be<br />
  2. 2. Upcoming sessions<br />June 18 : Domain Driven Design (Yves Goeleven)<br />June 30 : IronRuby (Ivan Porto Carrero)<br />September 10 : ORMs, NHibernate – Entity Framework <br /> (Davy Brion, Kurt Claeys)<br />Week of October 5 (TBD) : Dino Esposito<br />November 18 : Modeling with VSTS2010 (Marcel De Vries)<br />November 26 : RIA Services (Miguel De Lathouwer<br /> & Steven Van Den Eynde)<br />
  3. 3.
  4. 4. The plan<br />CLR, DLR, WTF??<br />All ur Rubyz are now belongs to us<br />Ruby why should I care?<br />Gotcha’s<br />BDD with Bacon and Caricature<br />Sinatra has not left the building<br />IronRuby MVC<br />Ruby + Silverlight == Teh cake<br />
  5. 5. CLR as we knew it<br />VB.NET<br />…<br />C#<br />Base Class Libraries<br />Common Type system<br />Security<br />Class Loader, GC, JIT, Execution Support<br />
  6. 6. CLR but mo betterer<br />VB.NET<br />IronPython<br />C#<br />Base Class Libraries<br />DLR Runtime<br />Common Type system<br />Security<br />Class Loader, GC, JIT, Execution Support<br />
  7. 7.
  8. 8. All urRubyz are now…<br />MRI ‐ “The Normal” Ruby <br />JRuby ‐ Sun <br />MacRuby ‐ Apple <br />IronRuby ‐ Microsoft <br />Rubinius ‐ EngineYard<br />MagLev ‐ Gemstone <br />HotRuby<br />
  9. 9. All urRubyz are now…<br />MRI ‐ “The Normal” Ruby <br />JRuby ‐ Sun <br />MacRuby ‐ Apple <br />IronRuby ‐ Microsoft <br />Rubinius ‐ EngineYard<br />MagLev ‐ Gemstone <br />HotRuby<br />
  10. 10. Why should I care?<br />For me the purpose of life is partly to have joy.<br />Programmers often feel joy when they can concentrate<br />on the creative side of programming,<br />so Ruby is designed to make programmers happy. <br />- Yukihiro “Matz” Matsumoto<br />
  11. 11. Why should I care?<br />Actually, I&apos;m trying to make Ruby natural, not simple. <br />- Yukihiro “Matz” Matsumoto<br />
  12. 12.
  13. 13. Best of breed<br />If Python was the result of Lisp and C++ having a baby,Ruby is the result of Perl and Smalltalk having a baby. <br />- MeowMeow Jones, 11/8/2001 on slashdot.<br />
  14. 14.
  15. 15. Duck typing<br />if it looks like a duck<br />and acts like a duck<br />it might as well be a duck<br />
  16. 16.
  17. 17. Metaprogramming<br />The computer should be doing the hard work.<br />That’s what it’s paid to do, after all. <br />- Larry Wall<br />
  18. 18. Metaprogramming<br />I don’t think the idea here is to save memory or speed.<br />The idea behind metaprogramming is<br />to teach Ruby your conventions<br />And let it do some guessing<br />In order to save you some code <br />- Why, author of why’s poignant guide to Ruby<br />
  19. 19. STOP!!!! Demo time<br />
  20. 20. REPL<br />ReadEvalPrintLoop<br />ReadEvalPrintLoop<br />ReadEvalPrintLoop<br />ReadEvalPrint<br />
  21. 21. STOP!!!! Demo time<br />
  22. 22. Everything is an object<br />I invented the term Object-Oriented,<br />and I can tell you I did not have C++ in mind <br />- Alan Kay<br />
  23. 23. STOP!!!! Demo time<br />
  24. 24. Classes are open<br />
  25. 25. STOP!!!! Demo time<br />
  26. 26. CLR classes open for business<br />
  27. 27. STOP!!!! Demo time<br />
  28. 28. Adding Iron to Ruby<br />I have always imagined that paradise will be a kind of library<br />- Jorge Luis Borges<br />
  29. 29. Gotcha’s<br />
  30. 30. BDD Ruby/CLR interop<br />
  31. 31. IronRuby MVC<br />
  32. 32. Sinatra<br />
  33. 33. Silverlight<br />
  34. 34. Kweshiunz?<br />
  35. 35. “A language that doesn&apos;t affect the way you think <br />about programming is not worth knowing.” <br />- Alan Perlis<br />
  36. 36. References<br />http://flanders.co.nz<br />http://ironruby.net<br />http://ironruby.info<br />http://iunknown.com<br />http://manning.com/carrero<br />http://rubydoes.net<br />http://blog.prokrams.com/<br />http://nightlybuilds.cloudapp.net/Project.aspx?project=dlr<br />http://blog.jimmy.schementi.com/<br />
  37. 37. go_to(http://ironruby.net).play.create.have_fun<br />

×