# Tuesday, 28 October 2008

An astonishing thing happened to me on the afternoon of Day 1. I went to the room for the "Parallel Programming for C++ Developers in the Next Version of Microsoft Visual Studio" talk, and the redshirt guarding the entrance said "the room is full you have to go to the overflow room." I tried logic with her "It's a C++ talk! It's can't possibly be full!" but she chose to believe her own eyes. So I walked the hundred miles or so to the overflow room, which itself became full. The audience really enjoyed seeing how simple it can be to take advantage of multicores using templated functions. Lines and lines of boilerplate goo disappear into a library instead of your code, which means people might actually do this. Nice stuff.

Having learned my lesson, I lined up immediately for "Microsoft Visual C++: 10 Is the New 6." The room filled up just as fast:

I don't think I had heard Boris Jabes present before. He was very good indeed. The slide you see in this picture lays out the mission statement for "Dev10", the next version of Visual Studio, as far as the C++ team is concerned: Make VC10 the most productive IDE for native development. Then he proved it to us. Since it was the last talk of the day, people stayed with questions for a long time afterwards. I really enjoyed listening in on those.

Tuesday started with a keynote that really impressed me. Azure is amazing but the gritty details are not there yet. But Windows 7 - it's on the hard drive! It's real! So they showed it to us. Then they started talking about client development. Ray pointed out a number of advantages of writing a Windows application instead of (or as part of a suite that also has) a web app.

I loved the Windows 7 demo. Lots of features there I really want right now. I love Vista, but this is even nicer. And I hear the stability is great already so you could really use it. Julie plugged the Engineering 7 blog I've plugged myself.

Scott Guthrie said C++ five times. I don't think I've ever heard him say it once before.

 

Don't worry, he talked about managed code too. You may think of ScottGu as "the web guy" but he gave client development in general, whether C++ or WPF, some serious love in this talk. Great announcements too - grid control for one!

Want one more inside joke explained? (I just love the RD alias for this sort of stuff!)

David Treadwell's shirt had 0x007FFF embroidered on it. Think of it as 00 7F FF. RGB. Go try it in some HTML. Then think back to Day 1.

Update: better picture of the shirt by Angus Logan. Subtle-as-a-brick demo of the colour by Steve Clayton.

Missed the keynote? Based on the URL to day 1, try http://channel9.msdn.com/pdc2008/KYN02/

Kate

Tuesday, 28 October 2008 13:41:07 (Eastern Standard Time, UTC-05:00)  #    
# Monday, 27 October 2008

Now the fun begins.

If you were there, or watched it streaming, did you wonder about the shoes?

 

Azure and its subsystems had a number of code names, one of which was "Red Dog" and the team got red shoes (dogs being a slang term for feet) in honour of the name.

If you missed the keynote, you can watch it at http://channel9.msdn.com/pdc2008/KYN01/

I had heard some of this before, but not all of it, and I need to digest it a bit, but I think the key difference between Azure and hosting, between Azure and the Amazon offerings, is this: it's one thing to offer you a machine (real or virtual) and tell you "feel free to remote desktop into this and do what you need to do, install things, configure things, it's a machine" but it's a completely different thing to publish your app to the cloud and to configure the cloud rather than your target machine. I like it.

Kate

Monday, 27 October 2008 12:54:46 (Eastern Standard Time, UTC-05:00)  #    
# Sunday, 26 October 2008

What can I tell you about Day 0? Well I am not allowed to tell you much, the RD side meetings on Day 0 are always strictly NDA. But I can tell you I am getting excited, I'm really glad I came, and I'm changing my IM display picture for the week to this:

LA is warm, the convention centre is as huge as I remembered, and I am pumped up!

Kate

Sunday, 26 October 2008 12:25:31 (Eastern Standard Time, UTC-05:00)  #    
# Saturday, 25 October 2008

My Tech Ed Europe sessions are confirmed (have been for a while actually) so I had better tell you about them:

See you there!

Kate

Saturday, 25 October 2008 13:18:39 (Eastern Daylight Time, UTC-04:00)  #    
# Friday, 24 October 2008

Here's a brand new blog, written by someone I work with from time to time at Microsoft. Well, that's who's name is in the URL, but the first post has talk of "we" so perhaps it's a team effort. The mission is

...this blog will be a “one stop shop” on the road to get yourself familiar with what Windows 7 has to offer for developers and how you can “Light-Up” using Windows 7 features in your application.

Nice. I'm reading!

Kate

Friday, 24 October 2008 19:36:37 (Eastern Daylight Time, UTC-04:00)  #    
# Thursday, 23 October 2008

Actually I know what it is ... it's a large code base, fully available, very graphical, and with reasonable performance demands. So many years ago, Vertigo ported Quake II to managed C++ to show how performant the app was and how easy it was to integrate something that is quick to do in managed code - a partially transparent bad-guy locator if I remember correctly. That was five years ago, before C++/CLI, so it was a thicket of underscores and general hard-to-read misery.

About a year ago, Greg Dolley did it to C++/CLI. And then in January of this year he did Quake III Arena.

Well, now Julien Frelat has done it in Silverlight! He was apparently inspired by someone who did it in Flash. This is Quake I, but he has plans for II. Adam Kinney has an interview and video.

What else can Quake be ported to?

Kate

Thursday, 23 October 2008 19:29:20 (Eastern Daylight Time, UTC-04:00)  #    
# Wednesday, 22 October 2008

Rico, who like me wonders from time to time "am I old?", muses about how things tend to come on around again. Is C++ too old to bother learning now? Rico says no. But he also says:

...the real need facing C++ programmers is somewhat the same as what faced COBOL programmers say 25 years ago.  It's not that the language is out of joint -- it isn't.  I mean, ok maybe you like or don't like COBOL syntax but that doesn't doom a language and surely C++ syntax is not the zenith of wonderfulness.  But that isn't what's holding C++ programmers back.  The biggest problem, at least in my opinion, is one of accessing new/modern runtime features that may have a different programming environment from the context of an existing environment.

Now, what does that translate to in terms of action items for you? Good question.

Kate

Wednesday, 22 October 2008 19:01:38 (Eastern Daylight Time, UTC-04:00)  #    
# Tuesday, 21 October 2008

As you know if you attended the talks at Tech Ed USA and Tech Ed Europe, or listened to me on DotNetRocks, MFC now supports a Ribbon user interface. You can take some MFC application you haven't touched for a decade or more, add a few lines of code, leave all your command handlers and such untouched and -tada!- you can have a user interface from this century.

But it's one thing for me to demo for you what a tiny amount of code it takes to add a ribbon, and another for you to design a sensible ribbon that will lead your users effortlessly through your UI. Some guidance has now been released. For example, they are very clear that this is a bad ribbon:

There are tons of images and annotations to help you devise something your users will enjoy using. Please read it before doing any Ribbon work, whether in MFC or not.

Kate

Tuesday, 21 October 2008 17:09:44 (Eastern Daylight Time, UTC-04:00)  #