# Wednesday, 07 March 2007

I know I mentioned earlier about Code Camp (March 31st, downtown Toronto). The sessions are now set and there will be five tracks with five talks each. Topics range widely - SharePoint development, fundamentals of generics, game programming with XNA, workflow, even a robotics / mobility mashup! Plenty of veteran and new speakers; it promises to be a great day. My talk is scheduled early so I can relax and watch everyone else after I'm done. In keeping with my Code Camp tradition this will not be a C++ talk - I'll be covering Vista programming for non C++ people.


MVP | RD | Speaking | Vista
Wednesday, 07 March 2007 08:54:02 (Eastern Standard Time, UTC-05:00)  #    Comments [0]
# Tuesday, 06 March 2007

Hey, this is great, my Tech Ed talk was accepted this year. This is the earliest I've known I'll be speaking at Tech Ed USA. (I know, I already knew I was headed there for the pre-con, but now I have a breakout.)

C++/CLI and Vista: a natural fit

Vista brings a host of new features that developers can use to create beautiful, powerful, and intuitive applications. Some of these features are easy to access from managed code while others are more of a challenge. These features are generally easy to access from native code. By using C++/CLI, a developer can call either native or managed APIs with maximum ease. This session will demonstrate a variety of different Vista features to illustrate the strengths of C++/CLI.

This should be a level 300 talk and I'm really looking forward to it!


Tuesday, 06 March 2007 08:45:39 (Eastern Standard Time, UTC-05:00)  #    Comments [5]
# Monday, 05 March 2007

A lot of the Vista PR focuses on what it's like to use Vista. Let's say you're deciding whether to make your application run well on Vista. What's in it for you? Is it just about "10% of my customers are on Vista already, so I'd better support them" or is there more? Vista actually offers you goodies as a developer, above and beyond the .NET Framework 3.0. In this latest Channel 9 video, Michael Wallent talks about shiny new WPF applications, but also about reliability, restart and recovery, why your application will perform better on Vista, and much more. I love watching people care about their work, especially when there's so obviously a huge pool of technical knowledge behind what they're saying. This is a great video. and not just because of the turn the conversation takes at about 18 minutes.


Monday, 05 March 2007 08:39:58 (Eastern Standard Time, UTC-05:00)  #    Comments [0]
# Sunday, 04 March 2007

Darren Strange tells a delightfully honest story about a presentation gone horribly wrong, and getting back on the horse again. It illustrates something most veteran presenters can tell you: it takes more than one huge mistake to completely wreck a presentation. But the trick is that each mistake you make increases the chances of making more, because you get tense and worried and panicked as things go wrong. The comments to Darren's post are very helpful, pointing out that the failed demo was in some ways a smaller problem than the tone setting at the very start of the presentation. Something for all of us to learn from this one.


Sunday, 04 March 2007 08:18:42 (Eastern Standard Time, UTC-05:00)  #    Comments [0]
# Saturday, 03 March 2007

Recently I was driving to a demo at a client site when I remembered that one particular test of my app had not been run. This is a web app with a smart client providing a secondary interface for intense users, and is therefore designed for a connected situation. But I was about to demo on a standalone laptop -- web server, SQL server, browser client and smart client all happily together on a single box. What's more, the laptop doesn't quite have everything -- I don't run an SMTP server on there, and some parts of the app send email as workflow progresses. Sure enough, when I got to their parking lot I tested and the email-sending code throws an exception if it can't find the mail server. This calls for a quick edit - throw in a try-catch-swallow along with a TODO comment saying that we should be gracious if the mail server is unreachable.

OK, fine. I open the project and attempt to change the code. The checkout, of course, fails, because I'm offline. And I'm not able to edit the file. Throwing caution to the winds, I browse with Windows Explorer to the file, take away the read only attribute, and carry on. The demo works beautifully and life goes on.

If only I had already found the patterns and practices guidance for VSTS over on CodePlex! It includes answers to questions like "how do I work offline?" (answer: do what I did, and use the Power Tools to sync up when you get back to the office) and much much more. Worth some time reading and internalizing.


Saturday, 03 March 2007 20:39:30 (Eastern Standard Time, UTC-05:00)  #    Comments [0]
# Friday, 02 March 2007

Intellisense has been around a really long time. According to Wikipedia:

IntelliSense was first introduced as a feature of a mainstream Microsoft product in 1996, with the Visual Basic 5.0 Control Creation Edition, which was essentially a publicly-available prototype for Visual Basic 5.0. Although initially the primary "test bed" for the technology was the Visual Basic IDE, IntelliSense was quickly incorporated into Visual FoxPro and Visual C++ in the Visual Studio 97 timeframe (one revision after it was first seen in Visual Basic). Because it was based on the introspection capabilities of COM, the Visual Basic versions of IntelliSense were always more robust and complete than the 5.0 and 6.0 (97 and 98 in the Visual Studio naming sequence) versions of Visual C++, which did not have the benefit of being entirely based on COM. These shortcomings (criticized by many VC++ developers since the 97 release) have been largely corrected in the post-.NET product lines. For example, one of the most requested capabilities missing from the pre-.NET products was support for templates, which is now fully implemented.

So that's over a decade. And now, in the March CTP of Orcas, JavaScript joins the club. Jeff King blogs:

The March CTP of Visual Studio marks the debut of a much-requested and long-awaited feature: improved JScript IntelliSense.  We’ve been working on this for almost a year now and I’m pretty excited to finally be able to share it with the public. 

It's actually a much harder problem in a language that doesn't do strong typing.


Friday, 02 March 2007 20:20:38 (Eastern Standard Time, UTC-05:00)  #    Comments [0]
# Thursday, 01 March 2007

Something really weird started happening on my buddy list:

What's this i'm thing? Well I went to my new search start page... and didn't even need to search, because the link was there. This is another charity initiative. You put a string in your Messenger name and one of nine charities gets money when you have conversations. It's "aimed at those living in the United States" but I'm not letting that stop me... I chose Unicef. Start a conversation?



Thursday, 01 March 2007 20:11:56 (Eastern Standard Time, UTC-05:00)  #    Comments [0]
# Wednesday, 28 February 2007

My talk will be Thursday morning... you should register. Look who is speaking at this thing! Look what you can come and learn! Montreal is a lovely city, and it's easier to get your boss to send you to Montreal than Barcelona, isn't it?


Wednesday, 28 February 2007 19:59:49 (Eastern Standard Time, UTC-05:00)  #    Comments [0]
# Tuesday, 27 February 2007

While our new projects are on VSTS / TFS, we have some older projects on source safe that we aren't migrating. If you're in the same boat then you need to pay attention to the DST change that is coming up very soon. You could lose a checkin (possibly even the entire project history) if another one occurs within an hour of the first. Now, which is easier - banning all checkins on the DST change day, or reading a knowledge base article and following some simple instructions?



Tuesday, 27 February 2007 19:52:42 (Eastern Standard Time, UTC-05:00)  #    Comments [1]