Wednesday, March 28, 2007

Beth Massi Joins Microsoft to Increase MSDN's VB Content

Visual Basic-oriented developers—including me—lament the preponderance of C#-only documentation and code samples in MSDN publications and MSDN blogs. As an example, the C# team has Charlie Calvert whose LINQ Farm and other LINQ-related posts are cited here because of the paucity of corresponding VB articles and posts. Hopefully the tide will turn shortly.

Beth Massi, a well-known East Bay solutions architect, developer and VB proponent (a.k.a. DotnetFox) has joined Microsoft, tasked with "writing content for the Visual Basic Developer Center and promoting the Visual Basic language in the community."

In response to my "Does this mean you're the VB counterpart to C#'s Charlie Calvert?" question, Beth replied:

Yep, that's right. I'll be focusing on getting some killer content up onto the Visual Basic MSDN Developer Center. Keep an eye out!

Already the VB Team blog has a new and detailed Partial Methods post by , which defines them as "a light-weight replacement for events designed primarily for use by automatic code generators."

Update 5/25/2007: Mike Taulty links to Wes Dyer's May 23, 2007 In Case You Haven't Heard post about partial methods in C#. VB developers heard about partial methods two months ago.

It's great to see Microsoft expending more resources on VB topics topics that appeal to a wider audience than beginning and hobbyist programmers. Real developers do write Visual Basic.

Note: Although the article mentions use of partial methods in the "DLINQ Designer" (called the O/R Mapper in Orcas), the classes I've created with the latest version of the O/R Mapper don't appear to use them. Instead, the classes fire ClassName_PropertyChanging and ClassName_PropertyChanged events:

Protected Sub OnPropertyChanging(ByVal propertyName As String)
    If (Not (Me.PropertyChangingEvent) Is Nothing) Then
        RaiseEvent PropertyChanging(Me, New _
            Global.System.ComponentModel. _
            PropertyChangedEventArgs(propertyName))
    End If
End Sub

Protected Sub OnPropertyChanged(ByVal propertyName As String)
    If (Not (Me.PropertyChangedEvent) Is Nothing) Then
        RaiseEvent PropertyChanged(Me, New _
            Global.System.ComponentModel. _
            PropertyChangedEventArgs(propertyName))
    End If
End Sub

Technorati tags: ,

0 comments: