User Group Support Services

I have recently started to volunteer as UGSS Regional Lead for EMEA.

For those who know UGSS and the RL, you will know that this is a position covered by Microsoft personnel, my case is a bit different because I agreed to volunteer during this FY to help out Sanjay Shetty who is the official responsible for EMEA and APAC.

If you do not know the UGSS I highly suggest you visit http://ugss.codezone.com, where you will be able to find more information about what UGSS does for the community.

As our manager Graham Jones already mentioned in this post, the role of a regional lead is to help user group leaders to be as successful as possible independently to which organization, if any, their user groups belong. So, if you have any question or suggestion we all will be extremely glad to help you.

In this short period as RL, I have had the possibility to be amazed for the huge amount of projects, initiatives my colleagues are involved.

I'm still landing but I'm pretty sure the community will be also amazed about the good things that are coming out of the work the UGSS does.

Post Event: Re-descubriendo LINQ

23rd, October I did a session about LINQ for the .NET User Group  Madriddotnet.

Re Descubriendo A Linq
View SlideShare presentation or Upload your own. (tags: linq)

During the event we tried to know more in deep how LINQ works, from C-Omega to LINQ to SQL, doing an attempt to solve many of the questions that normally arise when you want to obtain the most of LINQ.

We found Visual Studio 2008 comes with a nice bunch of samples to helps us including visualizers like the Expression Tree Visualizer, which allows you to see the expression tree created from our queries and the LINQ Query Visualizer to see the translation done to Transact/SQL. We knew that it is possible to create queries on the fly using the Dynamic Query Library

We also talked about the benefits of the expression trees and the visitor pattern. You have some sample implementations like the one done by Matt Warren

In the last part of the event we focused on tips for LINQ to SQL to move to a multi-tier architecture. We explained how easy is to serialize LINQ entities to be used over WCF on both directions, this is from Master to Detail and from Detail to Master. How to workaround the fact that circular references are not supported by default by the DataContractSerializer. We gave some ideas about how to do local change tracking of entities when we are disconnected from the DataContext, providing some examples of complete implementations like the one done at MSDN Video (Spanish).

As you can see we talked about many different things and we verified how LINQ can help us during our day to day work making our life much easier if we apply some good practices.

If you attended to the event I hope you enjoyed as much as I did.

Post Event: Descubriendo el CLR

On Tuesday I did an online webcast about the CLR. I hope the people who joined us enjoyed the event and found the contents interesting.

The event was recorded and you can download it from the Microsoft Events website (Spanish).

During the presentation I did a demo in which I was showing how we can see with WinDBG when a method has been jitted or not. We saw it for the constructor but I stopped before show it for other methods to avoid wasting too much time on the same thing.

One of the attendees has asked me today why the method was shown as not jitted even after it was clearly executed. The problem was simply that I attached WinDGB to the release version of my demo application and the JIT optimized the method replacing it by an inlined version. If I had attached the debug version this would not happen and the method would be shown as jitted. If you want to have more information about it I widely explained in a previous post about Inline methods where I used the same demo application as in the webcast.

Culminis Changes

Around a week ago Culminis announced the next phase of the Culminis transformation has started.

As you probably know Culminis has become a volunteer organization similar to Ineta. This change started long time ago, something that Graham Watson explained with a post describing the key changes about how Microsoft would support the User Groups from now.

I must confess my first reaction was not very positive, I loved how Culminis was working until that day and I was afraid how the new volunteer structure would affect all the services provided.

In any case, I'm sure all the people we are volunteering at Culminis will do our best to satisfy the demands of the user groups. So, now it's time to give our maximum support to the board of directors. If you want to know more about them you can check it here.

Speakers

Some weeks ago I proposed to the INETA Europe board a set of regulations to become INETA Speaker for the local speakers bureau.

For those who do not know the local bureau, it is a pilot program to provide the user groups with speakers from their own region. The idea born to solve the main problems UG faced when they wanted to request speakers from the European bureau, the problems where mainly related to translation and higher logistical costs implied when somebody comes from different countries.

Today I wanted to write not about those specific rules, but about what makes a good speaker for the .NET User Groups.

If you have participated in any of the events done by companies like Microsoft, Google, Apple, etc. or even the .NET User Groups you have probably seen different styles to communicate the same thing. We have a clear example with Bill Gates and Steve Ballmer and I'm not going to start a new debate to know who is better. But we have many other things that make the speakers different from each other, you can find people who has a great knowledge and people who knows less, speakers who joke a lot others who are very formal, some use a lot of demos to complement the theory...

So, what makes a good speaker ?

I think a good speaker is not the one who has a lot of knowledge and tries to prove it, but the one who is able to communicate the message. Somebody who is not rambling and presents the content clear and easy to understand. A good communicator is able to express and defend ideas well, but not tries to influence people (remember I'm talking about a speaker for .NUGs not a sales man).

All speakers must be well prepared to explain the contents of a session, but must not be afraid of making mistakes or not knowing an answer. I personally hate when somebody tries to answer at any cost. Really, there is no problem if you don't know an answer, you will not be considered a loser because nobody can know everything.

In my opinion those things makes you a good speaker. If you are very formal, you use sense of humor, you wear jacket and tie or T-shirt with casual snickers, that's just your personal style.

Therefore if you think you are a good speaker, stay tuned for  TechEd 2008  and participate in the Speaker Idol contest.