June 2008 - Posts
The third San Diego Code Camp came off this past weekend as a real success. Thanks to UCSD Extension for once again hosting Code Camp. Great location and the weather was perfect. Lots of really good content and all the sessions I went to were well attended. The Geek dinner Saturday night was a blast, the tacos and drinks were great and the band Sound Cake super!
A big thanks to all the sponsors that made Code Camp the success it was. There is a new Code Camp to announce - Code Camp Los Angles on October 25th & 26th at USC. This is the weekend before the Microsoft Professional Developers. And, don't forget about the Central Coast Code Camp in San Luis Obispo on September 27 and 28.
Today, June 20, Graham Watson, a senior marketing manager at Microsoft focused on technical communities announced some changes in conjunction with Culminis. These changes are designed to bring improvements across the board in how Microsoft supports user groups and how user groups ant their members interact with Microsoft. Graham's blog contains the announcement details. Here's a summary:
1. Culminis will become a volunteer-based organization, very similar to INETA, with regional boards.
· The initial board appointments will be selected by Microsoft and the Culminis company.
· The initial board will be in place for only one year, and will then be replaced by members elected by the community.
2. Microsoft will directly provide the following “core services,” many of which are currently delivered by Culminis.
· Event Support
· Community Development
· Content Delivery
· User Group recognition and reporting
· Newsletter support.
3. The core services will be available to the new volunteer Culminis community and INETA as well as other associations such as PASS. We think this is particularly advantageous to the community as a whole, as it ensures that Microsoft support is available to all User Groups and not just IT Pro groups.
The changes are siginificant and will take several months to implement. Supporting user goups world-wide has many levels of challenges to provide fair, meaningful and consistent support. Those challenges are legal, political, language, financial, technical and people related. No ease task.
With the release of Silverlight 2 Beta 2 the Silverlight Dynamic Languages SDK has been updated as well. There is a lot of new stuff. Check out Jimmy Schementi's blog for details. Here's a quick recap:
This project represents the integration between Silverlight and Dynamic Languages running on the Dynamic Language Runtime (DLR). The languages included in this package are IronRuby, IronPython, and Managed JScript. The DLR, Silverlight Integration, IronRuby, and IronPython are released under the
Microsoft Public LicenseThis release corresponds with Silverlight 2 Beta 2.Download Silverlight 2 Beta 2
Packages
Dynamic Languages SDK
These are necessary to create dynamic language Silverlight applications.
- /bin
- IronPython, IronRuby, and Managed JScript language/library DLLs, as well as Chiron, the dynamic language development utility.
- /script:
- tools for creating and running Silverlight applications, including templates for the supported languages.
Dynamic Languages SDK Samples
A bunch of samples to show you how it works. Best is to unzip into the SDK directory.
Dynamic Languages SDK Source Code
For you to get an in-depth understanding and if you want to modify the integration. Build using the solution file in Visual Studio.
- /src:
- The source code to IronPython, IronRuby, the Dynamic Language Runtime, and Chiron
Florida has a great .Net user group culture and it was organized in full force putting together a great weekend of geeky stuff. Joe Healey, the local DE played a big part in helping to organize and support. He hosted a Friday night get together at TGI Fridays that included most of the Florida user group leaders and influential’s along with the User Group TV team filming interviews, Microsoft and INETA folks.
With oodles of presentation rooms available at the convention center, all of the weekend’s events went off well. There were lots of programs going on, over 1200 registered (although I don’t think that many actually showed up), really making good use of TechEd and convention center resources – smooth registration, good visibility. Great planning and execution by the Florida UG’s and DE Joe Healey
Saturday’s events included a Code Camp, Day of SQL /BI, Day of Silverlight, IT Pro Camp, Open Spaces discussions, and Train the Trainer. Check the link at ]inbetween[ for all the details.
Team System at Tweener
On Sunday, Rich Hundhausen did a most of day session on VSTS until he had to catch his flight. Great format – he passed out sticky index cards and attendees recorded what they wanted to see. He posted them on a board scrum like and we worked through as many as we had time for. Rich’s blog has the details. I contributed a short segment on test driven development and the benefits of documenting requirements with tests rather than or in addition to documenting in Word. Word docs don’t translate to code. Tests do. Great investment.
This week at TechEd Daniel Egan, Morgan Baker and Rob Zelt attended a roundtable luncheon with Bill Gates along with other “influential members of the community” and S. Somasegar.
Check out Rob and Daniel’s blogs http://www.robzelt.com/blog/ http://www.dotnetdoc.com/ for first hand details.

Last session on Friday, end of TechEd Developer week. There were two sessions in this time slot that I wanted to attend – Rich Hundhausen’s “Visual Studio Team System 2008 Team Foundation Server: Migrate of Integrate” or John’s IronRuby. John’s information is changing almost by the day, so his session won.
Just before TechEd on May 30th at Rails Conf in Portland, OR, John demonstrated Rails running on IronRuby. While this was a “Hello World” demo it is significant because Rails exercises such a large portion of the Ruby language and is a good measure of being true to the language core. The time in which this was accomplished is also significant, about 15 months compared to about 26 months for Rubinius and about 35 months for JRuby.
Iron Ruby is significant for the broad platform base that it will run under leveraging Silverlight and MoonLight. It is open source under the Microsoft Public License (Ms-PL). Check out John Lam's blog for some specifics of the examples he demonstrated.
The IronRuby development pace is benefiting from the IronPython experience and is moving at a faster pace. No promises, but we may see IronRuby 1.0 by the end of the year. Go Team!

Tuesday morning at TechEd after the keynote, I went over to the Dynamic Languages area, introduced myself to the team and did a little promotion for my BOF session. Bill Chiles and I went over to Neil Ford’s session on Design Patterns in Dynamic Languages. Glad to see Neil updated his deck to all examples in Ruby, replacing the Groovy examples from his prior presentations at other venues.
I stopped and met Jimmy Schementi at the DyLan area on my way back to the INETA community lounge. Great enthusiasm for dynamic languages. I enjoyed Jimmy’s presentation in the afternoon on Silverlight “Dynamic Languages and the Web” and his current hot topic “Silverline.” What is Silverline? It’s Iron Ruby running in the client in Silverlight.
I talked up my Birds of a Feather Session on Dynamic Languages scheduled for Wednesday evening and invited the team to join in. Jimmy pinged John Lam on Twitter to join us as well.
On Wednesday morning, I stopped by the Dynamic Languages area again. John Lam was there so I introduced myself and spent a few minutes chatting with him.
BOF session on Dynamic Languages and the DLR
I had planned this morning to come up with some short descriptive information for the white board to kick off my evening BOF session. The Dynamic Language team had been building content on their white board since yesterday and it was the perfect description, so made my final prep work easy. Here it is:
What is a Dynamic Language?
Class of high-level programming languages such as Python, Ruby
Delays some computation (semantic binding) to runtime that static languages do at compile-time
Can extend the program @ runtime by:
· Adding new code
· Extending objects
· Modifying the type system
Provides reflection on everything
Eval-like statements, e.g. “eval(3.14*3+foo(n))”
Interactive, exploratory development of live program
Read-eval-print loop, top down & bottom up design simultaneously
Highly extensible. Very little syntax. More bang for the buck.
Meta-programming:
· domain specific languages possible in some DL’s
· support is common
On Wednesday evening, my BOF session came off well. I was delighted to have about 75 attend the session including the dynamic language product team and the C# product team. I only got about a quarter of the way into my introductory comments before I had Bill Chiles, Jimmy Schementi and John Lam actively engaged in the discussion with participants. Birds of a Feather sessions are all about discussion so this was great. I hope all who attended gained gained from attending.
Bill Gates keynote kicked off TechEd – Developers. This was likely one of his last big event appearances before his day-to-day retirement from Microsoft to focus on philanthropy. He touched on the early days of development and how far we have come in three decades. He then ran through a multi-tier view of new and updated developer focused technologies. Joining him on stage were S. Somasegar, Senior Vice President Developer Division, and technical fellows David Campbell and Brian Harry.
Soma joined Bill to talk about the paradigm shift in client application development and the user experience. He showed a demo of a new social networking site for sharing rich media content built on Silverlight along with some WPF examples. Silverlight beta 2 will be available later in the week with a commercial go-live license. What is also interesting is that this release will be used in the online experience that NBC Universal is creating for the 2008 Beijing Olympics. Expression Blend 2.5 June preview will also be available.
David Campbell introduced the “Ballmer bot,” a robot built by students from the University of Massachusetts Amherst, using the Microsoft Robotics Toolkit.
Brian Harry’s demo highlighted new architecture modeling tools that I’ll be really looking forward to, especially the layer diagram. It will allow modeling and design of the logical layers of an application that includes validation of dependencies. No more UI talking direct to the data short cutting the business logic layer! And, a whole lot of great integration into VSTS.
Also on Visual Studio/VSTS is an alliance with IBM to integrate DB2 database with Visual Studio Team System Database Edition. I’ll bet that an Oracle integration won’t be far behind.
Some other items presented in no particular order were:
Visual Studio 2008 extensions for WSS 3.0 – will allow developers to extend Windows SharePoint Services and Microsoft Office SharePoint Server with a focused development environment.
IE8 - will be available in August in 20 languages worldwide.
Velocity – first CTP of distributed, in-memory application cache that will make it much easier to develop scalable, high performance applications.
Oslo – commitment to model driven development was reinforced. The unified modeling platform will help developers realize the potential of declarative programming, enabling interoperability of models between tools and domain specific modeling notations. The platform is targeted for use by future versions of SQL Server, BizTalk Server, System Center and Visual Studio. Look for an Oslo CTP at the PDC this fall.
Sync Framework – The sync framework is a comprehensive synchronization platform that enables collaboration and offline scenarios for applications, services and devices. A CTP of the Microsoft Sync Framework for Windows Mobile is now available as is full support for the FeedSync open protocol format.
Today, INETA hosted a community leadership summit as a TechEd pre-conference get-together for INETA user group leaders and influential’s. About 70 attended for a great session of food, networking, and sharing. Rob Zelt led a discussion on best practices and ideas to continue building our user groups and extending our reach.
Here are some photos taken by Wally McClure, more are available on his blog site.