Entries:
Comments:
Posts:

Loading User Information from Channel 9

Something went wrong getting user information from Channel 9

Latest Achievement:

Loading User Information from MSDN

Something went wrong getting user information from MSDN

Visual Studio Achievements

Latest Achievement:

Loading Visual Studio Achievements

Something went wrong getting the Visual Studio Achievements

Mark Boulter - talking about Smart Clients and Windows Forms

Download

Right click “Save as…”

Mark Boulter is a technical lead on the .NET team. Windows Forms. Client. Translation: he knows more about Windows Forms and how .NET client apps work than almost anyone else.

We spent an hour talking with him about client-development trends. Here's the first part of the interview.

Tag:

Follow the Discussion

  • There are some real business contexts where something very similar to Java applets are very useful, if not necessary.   Sometimes, we want the richness of a Winforms app inside a website. 

    Preferably, something that works with Mono, and displays in IE and has a standard format which could be easily converted into Firefox XUL and even Java applets.   This is the way business plays today, but this benefits Microsoft's .NET push in the long run.

    I'd welcome your comments on this...
  • Why there still is big black borders (6 cm) around the picture? I thought this was fixed long ago? Or was this video recorded long ago.

    Also it says video res is 320x180 pixels. No wonder it is so blocky.

  • rhmrhm
    First of all, it's nice to have some coverage of Windows Forms on channel9. You know it's a technology we can all use now and a technology I make my living from. It makes a change from all the XAML/Avalon hype.

    Secondly, I'm interested that Mark claims VB experience. My observation as someone who used to earn a living hacking VB6 to do all the things it wasn't designed for, was how tedious adding events is in the VS.NET forms designer compared to VB6.

    In VB6 you'd double-click on the control and it would take you to the default event handler function for that control in the text editor. Then you use the righthand dropdown at the top of the editor to select or add new event handlers for that control and use the lefthand dropdown to select other controls.

    In VS.NET you double-click on the control to add or goto the default event handler in the code-view, but that's where the similarity seems to end. If you want to add another event handler you have to go to the properties panel, click on the events button, find the event you want, double-click on that and maybe change the name if you want to, etc. More annoying than that though is if you want to get rid of an event handler, in VB6 you could just delete it from the code. In VS.NET you have to remember to go back to the properties panel and remove the name of the event there otherwise the code won't compile.  The dropdowns at the top of the code-view only allow you to select event handlers already added and all the variable, event handlers and other functions from the whole form are listed in the righthand dropdown. The left dropdown is redundant unless you decide to jam two classes in the same file.

    While I'm not an MFC user, I'm guessing that the VS.NET forms designer was more influenced by the design of the MFC tools in VC++6 than by VB6. In VC++6 the tools are a mere convenience to save you editing the wizard-generated MFC code by hand. In VB6 the forms desginer and code editors are completely oriented around the business of adding and finding event handlers for controls and any code generation is done at compile time and is completely hidden from the developer. These are two different philosophies that have lead to only superficially similar tools. I think if you ask any experienced VB developer that moved to VS.NET they'd tell you that is is less productive when it comes to editing forms code.
  • scobleizerscobleizer I'm the video guy
    I'm not sure why the video res problem is happening. I'm trying to figure that out. Sorry about that. The folks who do my encoding over in studios say my camera is messing up. Yikes.
  • Sven GrootSven Groot Don't worry... I'm a doctor.
    rhm wrote:
    In VB6 you'd double-click on the control and it would take you to the default event handler function for that control in the text editor. Then you use the righthand dropdown at the top of the editor to select or add new event handlers for that control and use the lefthand dropdown to select other controls.

    That's still exactly how it works in VS.NET, if you use VB.NET. Not in C# though, I don't know why. I agree the VB way is much better.
  • rhmrhm
    oops, obviously I've never used VB.NET Smiley  Didn't see the point when I found out it was a whole new language and figured I might as well learn C#.
  • I want Avalon in .NET thin-client apps... Can you imagine what the web would be like if websites were replaced with .NET applications THAT ARE MULTIPLATFORM?! It would kick * and I would use Microsoft's programming languages any day (were my sites usable on other OSes than MS Windows)!!!

    MS has an opportunity to contribute a great application framework that covers web, thin-client and rich-client applications! You could develop apps that would run and look great on any platform and be easier to write and maintain... Ah well, a coder can dream, no?

    [This post was written on a Fedora Core 3 Linux box.]
  • William Staceystaceyw Before C# there was darkness...
    Love Mark, but he needs to talk a bit louder at times.
  • VB.NET has so many subtle but nice advantages over C# IMO.

    I can work with both, but definitely prefer VB.NET over C# if I have the choice!
  • pacelvipacelvi Phear
    The content was great. As a Windows Forms developer (C#) it's nice to see a few bones thrown this way.

    Now... can someone please shove a microphone in his mouth... these little docu's aren't up for Oscars, the dramatic whisper is overdone Smiley
  • pacelvipacelvi Phear
    rhm wrote:


    Secondly, I'm interested that Mark claims VB experience. My observation as someone who used to earn a living hacking VB6 to do all the things it wasn't designed for, was how tedious adding events is in the VS.NET forms designer compared to VB6.

    In VB6 you'd double-click on the control and it would take you to the default event handler function for that control in the text editor. Then you use the righthand dropdown at the top of the editor to select or add new event handlers for that control and use the lefthand dropdown to select other controls.

    (snip)

    Well.. what can one say?   VB.NET is not based on the Vb Runtime anymore, it's based on BCL and the CLS. 

    I had the hardest time developing with VB because it hid everything... things that I was expecting to find..and not finding them was disorienting.

    The event model in VB.Net , indeed, all the languages is via delegates.

    It's good that MS didn't completely hide this fact from VB users.

    I guess that's why c# was very natural for me.  It's amount of functional abstraction is a lot less than VBs, it's easier to really comprehend what the system is doing, which in turns makes me a better developer in the enviroment.
  • DebugThisDebugThis Inka Coder
    Love the Guy, he is very knowledgeable, but I could not understand half of what he was saying at times.  It seems like he runs out of voice volume at the most important parts of the sentence.  This is a time where a transcript would have been a great thing. I will try to listen again later, maybe it is just too late in the day.  I will have to crank up the volume on my speakers.  Nevertheless, great interview once again, thanks Channel 9.
  • pacelvi wrote:
    I guess that's why c# was very natural for me.  It's amount of functional abstraction is a lot less than VBs, it's easier to really comprehend what the system is doing, which in turns makes me a better developer in the enviroment.


    While I like the abstraction, its very often that after some research I find that some feature that's supported on win32 is missing and when trying to interop manually you really need to start looking with reflector etc whats happening under the hood.

    I really hope that in LH this would change a bit, so that the need for interop would drop a lot.
  • What's the name of that photo application that is written in managed code?

  • I don't remember what Mark said specifically but I believe Photo Story 3 is entirely written in managed code. Don't quote me though.
  • You need to process the audio (compress and normalize), very unconfortable to listen to...

    Nice to have interviews, though!

Remove this comment

Remove this thread

close

Comments Closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums,
or Contact Us and let us know.