Thursday, August 02, 2007
Jeff Blankenburg - Developer Evangelist

 

DSC00273DSC00291It's out in the open now... Jeff Blankenburg is my new Developer Evangelist for the Heartland District (Michigan, Ohio, Kentucky and Tennessee). I'm really looking forward to working with Jeff. He's got passion, technical chops and stage presence. It will be a lot of fun to work with him to channel all of that power to good. :)  For those of you who don't know him - you should make a point to meet him in the near future. He's a good guy who will offer a lot to the Heartland District. You might have seen his work before as he was the designer behind the CodeMash gear head logo. He was instrumental in the logistical support for CodeMash. He helped with the web site, registration and ran thousands of errands.

codemash.pngHe's leaving Quick Solutions to join us. That's the only downside here. It's been great to have Jeff in the field as a community influential and independent voice. This is going to be a strength of his though as the main focus of his job is to help grow this community. As he knows the community, it should be second nature to interact with the community and help them out. I've talked to Brian H. Prince about Jeff's new position. While he's sorry that he has to loose Jeff, he's proud of Jeff and is excited about Jeff's future at Microsoft.

 

For those who are asking "What about Drew?" - Drew Robbins is leaving to be the IIS7 Technical Evangelist out of Redmond. This is a huge move for him and a good one for Microsoft. Drew had been doing of this work already speaking at PHP conferences internationally (including Russia) and more.

Blankenthoughts: Developer Evangelist



Thursday, August 02, 2007 7:58:35 PM (GMT Standard Time, UTC+00:00)  #  Comments [1] 

Update on the RIA Summit and the Flex & AIR Jam August 13-17, 2008

Quick update - the RIA Summit and the Flex and AIR Jam have been combined into one event. What we are going to do is spend 5 days learning, Jam session style, about the RIA technologies and having RIA conversations. Should be a fantastic time!

RIA Summit and Flex & AIR Jam



Thursday, August 02, 2007 11:19:34 AM (GMT Standard Time, UTC+00:00)  #  Comments [0] 

 Wednesday, August 01, 2007
Mindview Rich Internet Application Summit August 15-17, 2007

This is 3 days of conversations around RIA (Rich Internet Applications) with some of the movers and shakers in the RIA movement. There are going to be a lot of great minds at the table, including James Ward (the RIA Cowboy) and Bruce Eckel. This should make for a lively conversation. I'm not sure who else is going to be attending.

I'm going, are you? I'm pretty excited actually - this should be a fantastic gathering. I know that it couldn't be in a whole lot more ideal of a place. If you've not heard of Crested Butte you need to check out these photos and these photos. It's 4-5 hours driving from Denver. I'm really looking forward to that drive though - it's through Colorado in the summer crossing the continental divide. I'm flying in on the Sunday before and planning on taking my time driving up with lots of stops to take in the scenery.

Once the summit starts, it's an interesting format that you might or might not have heard about called an Open Spaces Technology format. There are 4 "laws" that are in effect at any Open Spaces conference.

  • Whoever comes are the right people
  • Whatever happens is the only thing that could have
  • Whenever it starts is the right time
  • When it's over, it's over

    It is fairly limited seating so you should reserve your seat now.

    Mindview Rich Internet Application Summit

     

    Technorati tags: ,


  • Wednesday, August 01, 2007 1:26:57 AM (GMT Standard Time, UTC+00:00)  #  Comments [4] 

     Monday, July 30, 2007
    How Silverlight Update Works

    If you've ever wondering how the Silverlight update works - Christoph Schittko distills it down here. It's important to understand how the technologies you are working with play in your environment. < a>



     Saturday, July 28, 2007
    IronRuby = (Ruby + .NET)!

    IronRuby is out in the open! And I'm digging it!

    If you have been reading my most recent posts, you'll see that I've recently started getting into Ruby. Partly that's due to attending and speaking at eRubyCon but I wouldn't have gone to that conference had I not been interested in the technologies. I had first seen some of Ruby when I met John Lam at VSLive Toronto in 2006. He did a keynote talking about languages with Ruby being his language of choice. It was a thought provoking talk but I didn't quite get it. At some point, I started noticing Scott Hanselman start talking about using some of the testing tools in Ruby such as Watir. This intrigued me but I really didn't start getting interested in Ruby until I met Joe O'Brien when he did a session at CodeMash 2007. I really didn't have a chance to play with Ruby until I signed up to talk at eRubyCon and deliberately picked a topic that would require that I learn some Ruby. I probably could have just done a talk on Silverlight as a web front end and danced around the interop questions but I wanted to do something a little more substantial. The end result was that I wrote a Ruby on Rails app that serves up a Silverlight front end that then turned around and asked for JSON objects from the Rails back end. This was a cool demo! Ok - I didn't get a standing ovation but I thought it was fantastic and well received. In the process, I picked up a copy of Dave Thomas' Agile Ruby on Rails Development (See below) on a suggestion by Joe. it turned out to be a great book that walked through some very practical examples and labs. It was fantastically easy to toss together a site with InstantRails following Dave's tutorial. (I'm still reserving judgement on Ruby On Rails as a framework. There are some things that I really like about it and some that I really don't. I need to spend more time looking at it and separate it from Ruby and decide on the framework's attributes independently of Ruby.)

    Glenn VanderburgI was asked this week by a fellow Architect Evangelist what I liked about Ruby as I kept babbling on about it. The easiest thing that I can do is point out Glenn Vanderburg's "The Beauty of Ruby". The whole talk is online. He did a variant of this talk at eRubyCon. He points out a handful of high level things that really make Ruby a fantastic language. Ruby is a fantastic blend between simple elegance and rock your world unbelievable power. It has a very clean but flexible syntax. There is just enough punctuation to make things readable without requiring a lot of extra bits. Another powerful bit that took a while to get my head around is that everything is an object from class declarations to instances to methods to variables to everything. And you can ask just about everything questions about itself, ask it to do stuff or pass it around and into new contexts. I've been enamored of .NET's Reflection with it's ability to self inspect and dynamically figure out context at runtime but I had no idea how powerful this type of work could be until I saw Ruby's meta programming layers. The metaphor that I used to explain this to a friend is that you can walk into a dark room and bump into someone and simply by asking them questions, you can turn on all the lights and see what's around you. That's the feel that I get from Ruby and it's extremely powerful self inspection. There are a lot more things that are interesting about Ruby but those two things - the simple but flexible syntax and the extremely powerful meta programming - are the heart of what I like about it right now.

    Now that we have an IronRuby implementation that we can start playing with, I'm even more excited about it. This means that I'll have all the power of .NET at my fingertips with the power of Ruby. This makes for a very attractive package. Being build on top of the DLR (Dynamic Language Runtime) is very important as well because does two things. One, it enhances the Ruby implementation and two it enhances the DLR implementation. Scott Guthrie talks a little bit about the idea of "Dynamic Sites" which is a cashing mechanism from the DLR that IronRuby takes advantage of. However, John Lam talks about on his .NET Rocks episode about the DLR that they found and fixed bugs in the DLR. Through the DLR, we are going to have a fantastic dynamic type system. This type system allows all of the languages of .NET, dynamic and static, to share common types without having to do translations back and forth. There are a number of things that it doesn't do yet, the most notable being that it doesn't implement interfaces yet. This is not a big deal to Ruby and Python, but it is a big deal to VB.NET and C#. I know that this is coming - it's just a matter of time. Jim Hugunin talks a lot about the DLR and the type system on this blog.

    What's missing right now from Ruby is tooling. I'll admit it, I'm still addicted to my "intelli-crack" and there are not a lot of great IDEs for Ruby that include intellisense. It's hard to get right because of the dynamic nature. There are some tools that are out there, but not any that really get it right. Most of the people in the Ruby community don't worry about the tools - in fact there was a huge argument over whether VI or Emacs was a better editor for Ruby (Emacs won...). I'll be honest - I was a little blown away that this is still a conversation.

    RubyForgeOne interesting part of the IronRuby implementation and release is that John has make the decision to release IronRuby on RubyForge rather than CodePlex. Scott Guthrie talks about this on his blog. John decided that there would be a lot more community involvement with IronRuby if he did it on RubyForge than on a Microsoft property. I think this is a smart move that shows some dedication to making this a true community driven initiative. I say bravo John!

     

    Additional Reading:

    John Lam, who is the architect of Iron Ruby who wrote A First Look at IronRuby

    Scott Guthrie, who has a nice sample on using IronRuby with WPF

    Jason Zander, on working with the open source community

    Miguel de Icaza, for an outside perspective of our changes as a company

     


    DLR | Python | Ruby
    Saturday, July 28, 2007 2:30:24 AM (GMT Standard Time, UTC+00:00)  #  Comments [0] 

     Sunday, July 22, 2007
    Scott Hanselman - Blue Badge

    It's a very exciting day for Scott and for Microsoft as Scott Hanselman is joining Microsoft. He's going to be working for Scott Guthrie's organization. I'm excited to see what he does to re-attract the "Alpha Geeks" now. I'm sure that he's going to do fantastic things and have an international impact.

    Scott Hanselman's Computer Zen - Blue Badge


    Microsoft
    Sunday, July 22, 2007 12:49:40 AM (GMT Standard Time, UTC+00:00)  #  Comments [0] 

     Friday, July 20, 2007
    Flickr is Cool - Photos tagged with erubycon

    That's Joe O'Brien on the left and me (Josh Holmes) on the right.

    Joe O'Brien and Josh Holmes

    There are lots more photos at - Flickr: Photos tagged with erubycon



    Friday, July 20, 2007 2:20:17 AM (GMT Standard Time, UTC+00:00)  #  Comments [0] 

    eRubyCon Day 3 - Recap

    eRubyCon wrapped up yesterday.

    First talk of the morning - I heard Muness Alrubaie and Dan Manges, both from ThoughtWorks, talking about Ruby and Agile on a large project with ThoughtWorks. They have 30 people working on a single app - all at one war table in a conference room in Atlanta for 10 hours a day 4 days a week. They pair with the guy next to them. They shift pairs on every iteration. They move extremely quickly. It was interesting to hear them talking about the challenges of working an agile project with that many people. One of the small changes was that they had to formalize the format of their story cards, estimation and such. On smaller teams, they could be a touch looser because people all knew each other and each others styles. They standardized on the desktop setup, toolset that they are going to use, configuration of the tools such as colors in the editors and other things that are usually personalized per developer or at least on a pair level. The big thing that would have been fantastic to see would have been a ton more on the gotchas and pitfalls to watch out for. These are hard to verbalize but important. Some of these can be inferred from the things that they had to alter for the the larger group. They didn't go into detail on issues that they had with integration which I'm sure that they had with that many pairs making extraordinarily aggressive changes a language that's a compact as Ruby is. That has to lead to stomping on each other occasionally. It was a fantastic talk - I just always want more. One thing is for sure - they are proving that agile can work in large projects.

    Josh HolmesThen I got to talk! This was a ton of fun. I'll be honest, it was daunting to be speaking at eRubyCon and especially after so many fantastic speakers. My session was an introduction to Silverlight for Ruby programmers. My big demo was that I wrote a simple rails app that served up a Silverlight front end and then the Silverlight front end communicated back to the server via JSON. That was cool. I'll be posting my slide deck here in a little bit. It's not all my deck, I stole a lot of it from Scott Barnes and adapted it to work with my style and such. I did video the talk and plan on posting it at some point in the near future - but that's going to take some work and time. I really wish that I had been able to show IronRuby off, but I don't have any bits as they are supposed to drop next week. To quote John Lam, I had an "unfortunate timing issue" as the team is putting something out publicly next week.

    After that I got to listen to Glenn Vanderburg with the closing keynote of the conference. He talked about a lot of the things that I've been talking (I need to blog a lot of this) about recently with IT as a cost center and how that's dangerous. He had some great points about the implications of cost centers. In short, cost centers lead to wanting to cut down on the costs which leads to wanting to build things fast, cheaply and have them last for 30 years and are easy to update and change constantly to meet new requirements and regulations. He quoted Scott Bellware quite a bit and talked about the process of "Software Creationalism". In short, Scott's (and Glenn's) contention is that the vast majority of tools and frameworks out today are all about the point of creation of software and don't have nearly enough focus on the ongoing survivability and maintenance of the application. That results in "The creation of software is easy but the changing of software is hard". I strongly agree that this is the current state of the discipline. Obviously, his conclusion is that what the enterprise needs is agile development. "To make it easier to change software, then built it by changing it".

    Another great quote - "If that's not a one line change, then we need to refactor until it is." - Glenn Vanderburg, eRubyCon 2007.

    Software Creationalism - Scott Bellware [MVP]


    DLR | Ruby | Silverlight
    Friday, July 20, 2007 1:57:06 AM (GMT Standard Time, UTC+00:00)  #  Comments [1] 

     Tuesday, July 17, 2007
    eRubyCon - Day 2 recap

    I'm at eRubyCon and having a bunch of fun.

    clip_image002[1]First session of the day was Glenn Vanderburg talking about the Beauty of Ruby. This was a well done talk. I learned quite a bit about Ruby from this talk. Actually, that's not quite right - I learned a lot about the why behind Ruby. It was interesting hearing him talk about the things that he, as a Ruby veteran, really loves about the language.

    The second session by Stuart Halloway. This is a brilliant idea. He showed how to refactor a project by picking an open source project and taking 4 hours to refactor the project and presented the results. This was cool because he showed refactoring, unit testing, how to find bugs and a lot of other things all in one talk while contributing to an open source project. I love this idea and am going to be stealing this idea for sessions that I do at some point. Any suggestions for a project that I should start using in the talk would be appreciated.

    The third session was Neil Ford's Polyglot Programming session. One of the great bits that he talked about was that people used to test bridge designs by driving wagons across them and if they fell down, that was a bad bridge. If the car made it, that was a good bridge. Unfortunately - that's where we are today in the software design and testing principles.

    There were a ton of great quotes that I could pull out but I've got just a few that I wanted to pull out. "The Brave New World - Dynamic Languages on Managed Runtimes". "1 test is worth 1000 opinions".

    The fourth session that I saw was another Stuart Halloway special. "Keeping Tests Dry (Don't Repeat Yourself)". My favorite quote from this one is "If I can say it in one sentence, I can say it in one line". The main point made in the session was that you should use meta-programming to reduce the amount of repetition in the testing. I'm still digesting parts of this talk. On one level, I agree with him because as soon as you have written the same line of code twice, you have doubled your maintenance on that line. However, the meta-programming bits that he showed us were fairly complex. They greatly simplified the code that was in the unit test itself, but the code behind that one line was a touch hairy. It even got Jim Weirich thinking and confused - that's scary. I'm going to have to noodle on the tradeoffs. Great session (4th today) because it got me thinking. That's one of my baseline measurements on a good session.

    Brian Sam-Bodden was up next with Spring and JRuby. The short summation is that JRuby runs Rails great and that you can almost drop a Rails app out there on JRuby and "sneak Ruby into the enterprise".

    So far I have been utterly blown away by the quality of the speakers at eRubyCon. That's a real testimony to Joe O'Brien who put the conference together and invited all of these speakers.  

    eRubyCon - Columbus, Ohio

    Josh Holmes - eRubyCon - Day 1 (and Columbus Ruby Brigade) recap


    DLR | Ruby
    Tuesday, July 17, 2007 8:54:02 PM (GMT Standard Time, UTC+00:00)  #  Comments [2] 

    eRubyCon - Day 1 (and Columbus Ruby Brigade) recap

    I'm sitting here at the beginning of Day 2 reflecting on Day 1. It was a fantastic day. I met a lot of fun folk and learned a lot. 

    There were 4 talks yesterday by two speakers - Jim Weirich and Justin Gehtland.

    Jim Weirich's first talk "Shaving with Ockham" made the point that "All things being equal, the simplest solution tends to be the best one." It was a history of languages and how they have come from simple to extraordinarily complex to simple again. And how there are a ton of complex languages out there. As always, Jim was fantastically informative, funny and motivational.

    Justin Gehtland's first talk titled Microsoft and the DLR. It was the first time that I had heard him talk. I was really impressed with his insight, wit, humor and presentation abilities. He distilled a lot of myths about the DLR, talked about how the Microsoft Open Source Licensing works, possible performance benefits of the DLR, things that had to happen to .NET to make it work and much more. It was an impressive talk and I'm hoping to steal parts of it for sessions that I do locally around the district... Of course, he's got a slight leg up here because at one point his mentor was John Lam who's creating IronRuby.

    Jim Weirich's second talk was his "10 Things Every Java Programmer Should Know about Ruby" which is well defined and reviewed. Great session.

    Justin Gehtland's second talk was "Security (CAS and OpenID)". It was a great talk. It as surprising to me that he didn't know about CardSpace. I wasn't actually the one that brought it up - it was Alexey Verkhovsky who's a ThoughtWorks employee living in Canada working on various Open Source projects. He has worked on a server side Ruby implementation of the CardSpace stack called Information Card Ruby. This is a cool project. It shows you that the CardSpace stack is built on open and implement-able standards. We had a good discussion on the topic.

    Columbus Ruby Brigade

    After the conference was over, the Columbus Ruby Brigade had their monthly meeting. It was cool - we hosted at the Microsoft office in Columbus. Joe O'Brien broke out an idea that he had been keeping in his pocket for a while. The talk was a fishbowl. He set up a table in the middle of the room which had 6 chairs. He picked 5 people be in the fishbowl. At any point, someone else could come sit in the 6th chair but someone else had to get up. As I'm writing this out - I'm figuring out that I need to write a separate post just on the Fishbowl Discussion Format - so I stopped this post and did that here. The discussion was fun and engaging. This interesting thing that I pointed out at the end but a lot of people had noticed was that the discussion was really centered around agile, TDD, mocking and much more. There were some really passionate debates around whether mocking was evil or not.

    It has been really interesting, as the Microsoft guy, to see the reactions of various people around the room as they realized that Microsoft was one of the sponsors and in attendance at eRubyCon. Wait until they figure out that I'm speaking and that I was accepted to speak before offering to sponsor. Joe O'Brien, the host and organizer of the conference, has been very gracious.

    So far - it's a fantastic conference and I'm thrilled to be involved.

    eRubyCon - Columbus, Ohio


    DLR | Ruby | User Groups
    Tuesday, July 17, 2007 3:48:46 PM (GMT Standard Time, UTC+00:00)  #  Comments [0] 

    Fishbowl Discussion Format

    Joe O'Brien introduced me to this discussion format at the Columbus Ruby Brigade. He learned this in Chicago somewhere so neither of us are claiming that this is a new or original idea of ours. However, it's a brilliant alternative to a panel discussion or open spaces format discussion.

    Here are the rules: 

    1. 4-6 chairs depending on size of the crowd. We had 60 people, so we went with 6 chairs. If I had 25 people in the room, I'd probably go to 4.
    2. To speak, you have to sitting at the table - i.e. no peanut gallery. If you have something to contribute - come sit at the table.
    3. Anyone in the crowd can come up and sit down in the empty chair at any given point.
    4. When that happens, someone else has to get up freeing up the last chair.

    Honestly, it's that simple. The biggest issue is getting the first person to come sit down. The second big issue is riding herd on the crowd to make sure that nobody talks without sitting at the table.

    Once we got those two things down, the discussion was fantastic. I'm really hoping to bring this format to a lot of the things that I'm doing.



    Tuesday, July 17, 2007 3:23:23 PM (GMT Standard Time, UTC+00:00)  #  Comments [0] 

     Wednesday, July 11, 2007
    erubycon - Columbus, Ohio 7/16-7/18

    I'm speaking at eRubyCon next week (7/16-7/18) joining the other speakers such as Neil Ford, Justin Gehtland, Jim Weirich and Joe O'Brien among many others. It's going to be an exciting conference. I'm speaking on Silverlight (keep scrolling down - it's about halfway down). Here's the Abstract:

     

    Introduction to Silverlight

    Silverlight is the latest in the continuum of technologies from Microsoft to help you create differentiated user experience in the supplemented web space. Based on XAML (eXtensible Application Markup Language) for its UI and backed by a number of different options for logic including C#, JavaScript, Visual Basic, IronPython or IronRuby (once it’s released) – it’s a exciting new tool in the back of tricks for any web developer. It brings with it a rich networking stack, fantastic media support, scalable vector graphics and much more on both Windows and the Mac in all of the major browsers including IE, FireFox, Safari and Opera. In this session, we will explore the boundaries of Silverlight, see the integration points and hosting options between Ruby and Silverlight and talk some about what’s coming with IronRuby.

     

    I gotta say, it's been a ton of fun putting together this session (not implying that I'm done). I'm playing with so many new technologies and ideas that I'm sure that I'm doing things exactly wrong but it's fun and I've got a cool demo working. I wish that I had IronRuby bits, but the IronRuby bits are to be released at Oscon the following week according to John Lam...

    erubycon - Columbus, Ohio


    DLR | Ruby | Silverlight | Speaking
    Wednesday, July 11, 2007 5:14:24 PM (GMT Standard Time, UTC+00:00)  #  Comments [0]