# Saturday, 15 July 2023

I had a lot on my plate when the MVP renewals appeared July 6th, but I'm delighted to number myself among this illustrious group again. I'm never worried that I haven't done enough for the C++ community, but I do sometimes worry if the C++ community is the target audience for the program any more. Still, I suppose it must be, since they renewed me.

I updated my profile on the MVP site a little.

Kate

Saturday, 15 July 2023 10:10:05 (Eastern Daylight Time, UTC-04:00)  #    
# Tuesday, 31 August 2021

This summer has featured a lot of personal busy-ness and not a lot of work things to announce. One nice thing that has happened is my renewal as an MVP.

According to various "kate bio.txt" files kicking around my hard drive :-), I was first awarded in January 2004. So it will be a while yet until the blue 20 year marker arrives. The program has changed a lot over the years, but it's still relevant to me and a great source of information from the Visual C++ team.

Kate

C++ | MVP
Tuesday, 31 August 2021 17:12:05 (Eastern Daylight Time, UTC-04:00)  #    
# Wednesday, 04 January 2017

I had to curtail my activities pretty dramatically in the second half of 2016, even in areas like mailing list participation or answering questions on StackOverflow. I was beginning to wonder if I would qualify for Visual C++ MVP again without conference talks or some of my other usual activities. No-one should ever assume they will be awarded; the program is always changing and our lives are always changing, so anyone can find themselves out of sync with the requirements of a program. However, I'm happy to learn that I have been renewed for 2017 and will continue to be part of this active community.

Looking forward to a terrific 2017,

Kate

Wednesday, 04 January 2017 12:08:17 (Eastern Standard Time, UTC-05:00)  #    
# Wednesday, 01 January 2014

I'm a January 1st MVP, which means that while dealing with email that has piled up over the holiday break, I'm usually surprised to find my MVP renewal amongst the hundreds of other messages coming in. This year is no exception.

According to the MVP blog, there are 1011 of us awarded today. I'm happy to be included once again!

Kate

Wednesday, 01 January 2014 13:13:38 (Eastern Standard Time, UTC-05:00)  #    
# Tuesday, 07 February 2012

The minute this was announced, I knew I had to go.

Two days of "C++ today and tomorrow" with the bright lights of C++ today? Just try and keep me away! I'm so glad I was there - it was AMAZING and FANTASTIC and just generally wonderful. For me, personally, seeing so many old friends was a big part of it. The C++ team, other C++ MVPs, people I went to university with, and so on. It was also wonderful to see so many young people - including speakers, but also attendees, who were clearly in their 20s (and a few who were obviously in their teens.) After Chandler's talk I told someone "we can retire now: the future of C++ is in good hands." The speakers were not "the usual suspects" at a Microsoft event either. At a panel at the end of the second day, someone asked about C++ and the cloud and one of the answers was to indicate three speakers sitting next to each other: "Microsoft guy, Facebook guy, Google guy. Where isn't C++ in the cloud?" While that was a great cloud answer, I think it also highlights how inclusive this was - it was a C++ conference held at Microsoft, not a Microsoft conference.

Some fun quotes I happened to write down:

  • “if it’s that ugly, it must be good” - Bjarne, on why some newbies imitate horrible code written long ago by their heroes
  • “write C-style code, expect C-style errors” - Bjarne again
  • “we know where bugs hide” – Bjarne (they hide in large tracts of complicated code)
  • "dot dot dot is where the fun begins" - Andrei
  • "real code is not supposed to fit on slides" - Andrei
  • "this is legal" - Andrei (we needed to be reassured since it rarely looked legal)
  • "if you're using new or delete, you're doing it wrong" - Herb (it's true!)

And Chandler's talk was very much a 2012 talk, with lolcat-like interjections and Simpsons references and even a how-agile-is-this update with a picture of Oscar Wilde in reference to Andrei's earlier off-the-cuff description of some template error messages (aka template barf) as being "a small novel by Oscar Wilde." The humour level was very high, much of it self-deprecating - no-one, not even the coiners of the terms, thinks RAII or SFINAE are great names, but what the heck, they're the names we use.

Even the little things here were so well done. Herb opened the conference by dedicating it to Dennis Ritchie, which I found extraordinarily touching and appropriate. He opened day 2 by celebrating the 20 year anniversary of Microsoft C7 which was C++ 1 for them, with Visual C++ appearing in the next release. There on the podium was the two foot long, 44 pound box, with multicoloured plusses all over it, in which it shipped.

And what was inside? A lot of books, and a lot of 3.5" floppies (I took this picture earlier, before the box headed to campus):

There are 5 or 6 floppies in each bag and apparently each bag had a part number of its own.

This conference was far more than a trip down memory lane, of course. It was a two-day Valentine from Microsoft to the C++ community, a demonstration of the "new growth" in modern C++ and the power and capability that is there for those who are prepared to start using the new features, and a chance for all of us to accelerate the learning we have to do. I so hope you were able to be there, or to catch the energy by watching it live and following tweets from those of us who had to share the bon mots and the fun. But if not, the on-demand videos are almost all there now. Here are the links:

Bjarne Stroustrup: C++11 Style

Hans Boehm: Threads and Shared Variables in C++11

Stephan T. Lavavej: STL11 – Magic && Secrets

Andrei Alexandrescu: Variadic Templates are Funadic

Panel: The Importance of Being Native (Bjarne, Andrei, Herb, Hans) 

Herb Sutter: C++11, VC++11 and Beyond

Chandler Carruth: Clang - Defending C++ from Murphy's Million Monkeys

Andrei Alexandrescu: Static If I Had a Hammer

Bjarne Stroustrup and Andrew Sutton: A Concept Design for C++

Panel: Ask Us Anything! (all speakers)

Fair warning: both of Andrei's talks, and the Concepts talk, are hard. This is cool new stuff that we are all learning about. There is no shame in pausing, rewinding, and giving something a second listen. Look, Chandler was running through pitfalls and problems that Clang catches, and showed some code with a problem I couldn't spot. A few minutes later in the Q&A, Bjarne asked him to clarify just what the problem was. Made me feel better!

Chances are you won't be able to watch any of these on fast forward, or skip any of them. So I'm asking you to invest 12 hours of your life to watch all of them. Do it! You won't regret it!

Kate

PS: They gave us shirts (it's all about the shirts for developers) with real code on the back and this on the front:



Highly appropriate. Of course, it's not a comeback for those of us who never left. But still...
Tuesday, 07 February 2012 12:19:41 (Eastern Standard Time, UTC-05:00)  #    
# Saturday, 17 September 2011

Oh my goodness. What a week that was!

Here's how I thought I would do my first summary. Links to videos, discussions of sessions I either went to or tried to go to (more on that in a moment) along with my tweets from the ground, as it were.

My first real tweet Tuesday morning (8:37 California time) was announcing that my PluralSight C++ Fundamentals course had gone live. Then the keynote started. Here are my tweets and retweets along with the time into the keynote I said them:

  • 6 minutes: #bldwin totally dominating my stream SS doing a good intro to lean back computing
  • 37 minutes: RT @dseven WinRT API'S are natively built into Windows and built to reflect in different languages - C/C++ and .NET. #bldwin
  • 42 minutes: Starting at 8PM today, Seattle time, you can download all of the code that attendees at BUILD received. t.co/nuTuwga
  • 43 minutes: RT @wkrwk Did anyone notice the UI during the VSE 11 demo is the classic Windows UI? #bldwin
  • 48 minutes: #bldwin VS vNext demo is breaking twitter = no hope of following it all
  • 50 minutes: RT @andrewbrust Expression Blend is still Grey on Black. It could use a little "fast and fluid," frankly. #bldwin
  • 51 minutes: Store menu in VS?? #bldwin #wholenewworld
  • 58 minutes: RT @rhundhausen Desktop (#x86) apps can be listed in the #windows8 store as well #bldwin
  • 61 minutes: RT @ayus :))) RT @timheuer The Red Shirt is dominant even when not present. #bldwin @scottgu
  • 79 minutes, @EdgarSanchez retweeted @rickasaurus asking "I'm interested in hearing more about this new GPU offloading API. Any links? #bldwin" and I answered "Check my blog as the week goes on for GPU stuff"
  • 80 minutes: RT @marypcbuk Sinofsky: that gaming PC looks like ice. Angiulo: more like lava, it converts 700w of power to 4.7 teraflops like 3,500 Cray XMPs #bldwinPlatform for Metro style apps
  • 87 minutes: RT @Pete_Brown Dude just cracked open a laptop on stage and showed the electronics. Can't beat that #bldwin #geek
  • 100 minutes: RT @andrewbrust When will we admit Sinofsky's doing a great job? He's working hard, not just presiding. #bldwin
  • 120 minutes: RT @ronnipedersen If you have an iPad, don't watch the build keynote… It'll make you feel like you have bought a C64 #bldwin
  • 127 minutes: RT @jonbrasted It is a great day to be a Windows developer. #bldwin #trbbuild

The download surprised me, I didn't think it would be ready for people to try on any old hardware. And the hardware demo was very very good. And sure, I was on instant messenger back to the office saying "it's official" when the rumour was finally confirmed that we were getting tablets. But mostly, I really liked what I saw and wanted to know more, which is what keynotes are all about.

After eating something completely unmemorable, I found my way to the overflow room, always a little more casual and a good place to find "the cool kids". I had already met a number of old friends in the huge keynote session and before it, but here were more. I'll just give you the links to the Big Picture sessions. They are all very good.

  • 8 traits of great Metro style apps - a truly excellent session by a presenter who cares deeply about the topic. I tweeted a lot less during this one because it required more active listening.
  • Platform for Metro style apps - another very good session during which I just retweeted some other people's "Hey, this stuff is C++" reactions and a link to the session planner app for the phone, which I used heavily.
By this time people were starting to "get it" (including me) and the excitement level was rising. Here's just what I retweeted:
  • @coridrew #bldWin is really, really, really making me want to //BUILD/ Windows apps #BestConferenceNameEver #WhoKnew
  • @briannoyes Add ref from js project to C++ library - really empasizes this is running native #bldwin
  • +@fignewtron iPad limited in many ways to consumption - Windows 8 is production and consumption on many devices. Sales numbers decide winner. #bldwin
  • @mcakins Wow, the silence from Apple's camp is deafening! Windows rocks once more! Its 1995 all over again! #bldwin

One more session: Tools for building Metro style apps - I was getting tired at this point. It was a lot to take in. People were lined up the length of the convention centre for tablets. I knew there were enough for all of us, so I went back to my room to edit my pointers module for the PluralSight course so it could "tack on" to the end of the published course. While videos rendered, I had a little back and forth on Twitter with people who had noticed how much fun I was having, and others who were playing with their tablets already. I slipped out to pickup the tablet about 7:30 but didn't open it till the module was done. Then:

  • 10:48 pm: got major piece of work done ... yielding to temptation ... tablet here i come #bldwin
  • 10:57 pm: How's that for fast setup? Everything's installed.... Trying visual studio next
  • 11:11 pm: Just wrote a Win8 C++ app on the tablet with touch keyboard. Built and ran first time. #winning
That's right, I didn't even set up the bluetooth keyboard. People cite Visual Studio as an app you couldn't possibly use with touch. I wouldn't want to do it all day, but I did it! Then I played a bit more.

Day 2 started with another whole keynote. C++ was front and centre here. Some tweets:
  • 17 minutes: RT @seesharp 3D graphics debugging at the pixel level in DirectX. Unreal. #bldwin
  • 33 minutes: RT @bgervin killer strategy for MS to help developers make HTML apps for iOS and Android #bldwin
  • 34 minutes: RT @tpdorsey RT @EisenbergEffect […] in C++, you can write your own WinRT library, which when built, can be used by C++, C#, VB and JS.
  • 34 minutes: RT @jmorrill This new COM and C++ version is not _anything_ like what you think it is. From what I can tell so far...effing amazing!!!!
  • 49 minutes: Loved it RT @MichaelDesmond Zander shows off the new image editor in VS11 as he works on a C++ DirectX game.
  • 54 minutes: RT @shycohen Moving a VHD while the machine is running is cool. Moving a live VHD is even cooler! :) Will enable amazing things in the future. #bldwin
  • 82 minutes: most tattoos ever in an MS keynote
  • 95 minutes: RT @seesharp WOAH. Did not expect Steve Ballmer today. Everyone was starting to leave already. Woah! #bldwin
  • 97 minutes: RT @carafone 500,000 downloads of #win8 already! #bldwin
  • 98 minutes: RT @LACanuck And #Win8 was downloaded 500K times in 12 hrs RT @mashable: RIM Has Sold Just 490,000 PlayBooks - on.mash.to/nEu0dU #bldwin
  • 102 minutes: That's what these keynotes were missing! Turns out it's a great time to be a developer. I was worrying, no-one had told me yet #bldwin
  • 105 minutes: I've been paid to program since 1979. Keynotes tell me at least once a year it's a great time to be a developer. And they're right. #bldwin
Then it was time for simultaneous breakouts, and that meant choices. You can search the sessions list as well as I can. The C++ ones are not to be missed. These are happy people who are delighted to tell us what's been going on, and they're proud of it, too. At 3:13 I tweeted "Went quiet because i am massively engaged with C++ content in packed rooms. Small break between sessions to say "wow!" #bldwin #happycamper". The remainder of the afternoon was super confusing. People were jumping to conclusions, correcting each other, having opinions about the death of this that and the other. Because C++/Cx (the language extension you use to call WinRT) looks a lot like C++/CLI, people thought it was managed, but it's not, it's all native code and C++ Metro apps get a perf boost from that. The understanding that something amazing and powerful still has COM at the core began to grow. People were reporting trying to use Windows 8 gestures on their iPads and on nontouch screens, showing that the team has made some very intuitive choices. One tweet of mine I want to repeat: "Big props to Aleš Holeček for joining in the Q&A in the last C++ talk of the day when the questions got really Windows-y. Impressed. #bldwin". Even if you're not a C++ developer, download that session and watch the Q & A.

Day 3 started with being turned away from a C++ session, and so going to a different C++ session that was on at the same time. Several people from the C++ team made the trip with me, giving me a chance to tell them how impressive all this was. Meanwhile on mailing lists, people who weren't onsite and were 12 - 24 hours behind as they waited for session videos to go live were echoing the confusion and dismay of yesterday. It was hard to be patient with them. It's going to make sense, I wanted to tell them. Just hang in there! I took a small break from sessions to watch (and help with) the C++ part of Channel 9 Live (I am still waiting for links to the recording, because I couldn't hear everything they said and I want to) and then to Herb's second talk - again the room jammed full and dozens turned away, Don Box (who had earlier reminded us COM is still love) blurting out his admiration for Herb as a speaker and the great content, and the terrific line, "We protect against Murphy, not Machiavelli". What a time to be a C++ developer!

Day 4 kicked off with kind words from Daniel and a chance to hand out paper copies of the whitepaper I recently blogged. I got some quiet time with various smart people who told me their thoughts on all this. I'm still synthesizing it all. I also was downloading videos like a mad thing. I came home with 22 hours of video to watch and since then have grabbed another 15 or so. Some people began to realize they had over-reacted. Some excellent blogs began to appear - Doug Seven, for example, had several sensible things to say.

And then it was time to go. Glenn Ferrie tweeted "Writing C++ in the airport #bldwin #WinRT" and that summed up the week for me. I have a lot of watching, coding, thinking, reading and talking to do so I can establish what all this means. But hey, why not join me? It's a great time to be a developer!

Kate
Saturday, 17 September 2011 16:42:01 (Eastern Daylight Time, UTC-04:00)  #    
# Monday, 25 July 2011
So, how cool is this? Guy Smith-Ferrier is going to speak at the East of Toronto .NET User Group meeting in August. Why? Because he's the kind of community-oriented person who takes time out of a transatlantic family vacation to speak at a user group, that's why. And his topic sounds like science fiction, but it's real:

Mind Control Your Computer In C#

No really. This isn’t some clever session title. I’m really talking about controlling your computer with your mind. I’m not making this stuff up. This is real. Today. You put on a headset, you use a C# SDK and you control your computer with your thoughts. Yes, you are reading this right – you mind control your computer. It is a reality and it is possible today. Once you’ve gotten over your disbelief consider the applications. Applications for the physically impaired alone are a whole revolution. Not to mention the possibilities for gaming. Want to be shocked and amazed ? Come and see this session.

The meeting is set for August 24th at the Whitby main library. There's something awry with the website at the moment, and everyone who's talented enough to do anything about it is on vacation, leaving only me, but trust me, we're having a meeting and it's going to be a doozy. Guy is a great speaker - he even wrote and recorded a series of videos on how to be a great presenter. He speaks at TechEd and runs events in the UK. And it's our tremendous luck that he'll be in our neighbourhood this summer so make sure you join us to see this session!

Kate

Monday, 25 July 2011 17:38:38 (Eastern Daylight Time, UTC-04:00)  #    
# Thursday, 31 March 2011
You go to Tech Ed to learn about technology - developer tools, sysadmin tools, platforms like SharePoint or Windows Phone. But there's more to your work than the nuts and bolts of how to solve a technical problem. Do you use social media effectively? What would an effective use of Twitter or Facebook look like, anyway? Are jobs shifting because of technology? How important is cross-platform development? How important are new platforms? How do you react to big changes in your technical world and direct your own career?

Well, there's a Tech Ed precon Sunday evening that covers that exact topic. And look who's involved: Stephen Rose (Windows Community Manager), Zeus Kerravala (Distinguished Research Fellow and Senior VP, Yankee Group), Richard Campbell (Co-founder of Strangeloop Networks, co-host of .NET Rocks!, host of RunAsRadio, Microsoft MVP, Microsoft Regional Director), Michael Otey (Senior Technical Director for Penton Media’s IT & developer publications, author of SQL Server Developer’s Guide series from Osborne-McGraw-Hill), Tim Huckaby (Microsoft Regional Director, Founder of InterKnowlogy), Michele Leroux Bustamante (Chief Architect with iDesign, Microsoft Regional Director, Microsoft MVP, author of Learning WCF (O’Reilly)), Jennifer Marsman (Principal Developer Evangelist for Microsoft, Central Region), Tara Walker (Microsoft Academic Developer Evangelist), Sean Deuby (Technical Director, Penton Media’s Windows IT Pro Magazine, Microsoft MVP), Paul Thurrott (Senior Industry Analyst, Penton Media’s Windows IT Pro and Supersite for Windows; author of Windows Phone Secrets), John Willis (VP of Training & Services, Opscode), Laura Hunter (Principal Technology Architect for Microsoft IT’s Identity & Access Management team), Yung Chou (Microsoft Senior IT Pro Evangelist, East Region) and Barbara Yamauchi (Microsoft IT program manager for developer tools and IT lifecycle management). Wow! And this is an interactive panel discussion, so you can help to shape the conversation.

There is a small fee ($99) and you have to arrive Sunday afternoon so you'll be able to attend. But it looks like a heck of an evening! Glad to see so many RDs and MVPs on that list.

Kate

Thursday, 31 March 2011 07:50:40 (Eastern Standard Time, UTC-05:00)  #    
# Friday, 25 March 2011
Charles was busy during MVP summit! In addition to interviewing me, he sat a number of MVPs down to talk about C++, being an MVP, and the like. They're from all over the world and they have widely different jobs, but you can see how much they love this stuff. And please notice -- they span a wide age range, too. The stereotype of C++ as the language for the grey haired developers is just a myth. If you wonder why anyone still uses C++, and why it's going to be very good for this industry that there are still C++ experts around, watching these videos will be an eyeopener.

By the way, Alon is also an RD.

Kate

Friday, 25 March 2011 07:15:03 (Eastern Standard Time, UTC-05:00)  #    
# Saturday, 19 March 2011
I'm on Channel 9 a lot right now - partly because some things are getting published that were done a long time ago, and partly because being on campus for the MVP Summit makes it convenient to be interviewed. I love talking to Charles because he really cares about the answers to the questions he asks. So we talked for half an hour about what it means to be an MVP, what C++ is useful for, what I like about C++0x, and that sort of thing. Since Charles started things off by mentioning previous conversations, let me toss in some links to those too - here's the Barcelona conversation (backstory here)and on the couch with the C++ guys (shorter backstory.) You can watch my hair change colour if you watch those oldest-to-newest. Diego was also nice enough to blog about this interview, too, as was John Bristowe of Microsoft Canada.

Thanks for the chat, Charles!

Kate

Saturday, 19 March 2011 19:51:23 (Eastern Standard Time, UTC-05:00)  #    
# Monday, 07 March 2011

There are thousands of MVPs chosen by Microsoft for their contributions to technical communities. Eric Ligman says there are over 4,000 and I believe him. So of course nobody could choose a single "MVP of the year". There are several dozen this year, chosen from various technical areas and also for reasons that transcend a single technical area. I was delighted and honoured to be among them this year, and even more so to be joined by two of my fellow MVPs. To quote from an email telling us about it:

...the new 2010 C++ MVPs of the Year are

  • Kate Gregory, for her very active role in promoting modern C++ application development, being among top speakers in some prominent conferences. Kate was also selected by peers (you guys) as C++ MVP of the Year.
  • Marius Bancila – Ovidiu Cucu (shared), for the great job in CodExpert, their C++ community site (in Romanian language).
  • Sheng Jiang, one of the top answerers in our MSDN Forums.
Is that amazing company or what? We were invited to dinner with a number of MS executives and the other MVPs of theyear during the MVP Summit. Here's a picture of us with Diego, the Visual C++ Community PM:




It was a great evening and it was nice to see C++ well represented.

Kate
C++ | MVP
Monday, 07 March 2011 21:16:34 (Eastern Standard Time, UTC-05:00)  #    
# Thursday, 03 February 2011
Here's a useful blog entry from Nish that shows how simple it can be to handle what at first seems an intractable problem - how to get an unmanaged array into a managed array. The marshaller doesn't know the size of the array, but as long as you pass the length as a parameter, you can create the array yourself and copy the contents over. Not hard at all, once you know.

Kate

Thursday, 03 February 2011 10:25:52 (Eastern Standard Time, UTC-05:00)  #    
# Tuesday, 01 February 2011

Like a lot of folks, I have a Windows Phone and I enjoy it a lot. I've filled it up with (free) games and they pass the time quickly when I have to wait in line or otherwise have an empty minute or two. C++ MVP Marius Bancila had the same experience, but unlike me he responded by writing a version of the game in MFC so he could play it on his own PC as well as on a phone.

You can get the source from his blog post, and another post and its comments (mostly in Romanian - Bing Translate is your friend there) have a nice discussion of performance issues. After all, whenever two or more C++ programmers gather together, someone is going to have an opinion about performance. Take a look for yourself!

Kate

Tuesday, 01 February 2011 18:45:11 (Eastern Standard Time, UTC-05:00)  #    
# Wednesday, 11 August 2010

On August 10th, Udi Dahan came from Haifa, Israel, to Whitby, Ontario, to speak at the East of Toronto .NET Users Group meeting. (Well, OK, he was in Toronto to teach a course.) He was talking about high availability and some architectures that let you keep a system up, for example, even while you're upgrading it. I took a few pictures:

Udi did a great job demonstrating that design up front and thinking about architecture doesn't mean you're not agile. Taking the time to architect something so that it's highly available gives you the freedom to be agile.

Watch for the fall schedule of the East of Toronto group in the next few weeks. And if you're visiting the area and would like to speak, let me know!

Kate

Wednesday, 11 August 2010 11:58:19 (Eastern Daylight Time, UTC-04:00)  #    
# Thursday, 10 June 2010

Another terrific Tech Ed has come to a close. I never really got used to the weather in New Orleans, but I loved the food, I loved that we could walk to just about every dinner or party, and I loved the locals I met. I would have liked a little less walking within the convention centre itself - that building is a mile long and I had to go the whole length and back several times each day!

I have a few pictures from inside for you.

This is the "RD couch" in the community area. Good for hanging out while waiting to be on Channel 9. As you can see, non-RDs were hanging out here too.

The table for the Code Pack was giving away copies of the Code Pack on these slightly bizarre USB keys. I meant to keep one for myself but got carried away handing them out at my session (along with cards for a free trial of the Pluralsight On Demand! library). Also the shot-glass-on-a-string-of-beads is pretty brilliant for New Orleans swag. "Give it a shot!" they say.

This is the room for my C++ talk. That's Juval Lowy, who spoke right before me, up on stage. You can see he did a pretty good job of filling the room, which holds 1000. I got somewhat less than that, but was happy with the turnout and the evals for the C++ talk. Both my talks are available online already, by the way, which is astonishingly quick.

I love the "face time" with Microsoft people (including "my" product teams as well as folks in marketing, developer outreach and education, and so on), with my fellow RDs, MVPs, INETA folks, and speakers of all stripes, and with attendees. Booth duty, where you spend long minutes shifting your weight from foot to foot praying someone will come by, is a bit like of box of chocolates. An eager attendee comes forward, meets your eye, smiles ... for every "can you tell me where to find the blinky Windows 7 pen?" there is a good solid question or expression of interest in my actual technology. I got one question on Wednesday from someone who just wanted to know what booth to go to for it to be answered, only to learn it was this booth and that in fact I was probably the only person in building who could have answered it. I sure liked that one!

Next year, Atlanta:

But I may not have to wait a year for another Tech Ed experience. :-)

Kate

Thursday, 10 June 2010 10:09:42 (Eastern Daylight Time, UTC-04:00)  #    
# Sunday, 06 June 2010

I found myself with some free time and decided to go on a city tour here in New Orleans with a fellow RD and a fellow MVP, both from the Greater Toronto Area like me. It was eye opening. This is a city of contrasts, and I'm sure it was so even before Katrina, but the unfixed damage and signs of what once was make that even more dramatic.

Here is your classic "wrought iron balconies" picture at the start of the tour.

And then in no time, we get to wrecked buildings that haven't been rebuilt yet. All while the guide is talking about how deep the water was and how long people were kept away from their houses to try to rescue things and minimize mould damage.

I found this very poignant. A lovely allee of trees. The houses though, are gone - these two rows of trees are in front of vacant lots.

Some new building is underway; this one is in a project sponsored by Brad Pitt.

This house seems ok but the "graffiti" on the front porch is rescue worker tags explaining how many bodies were found etc. I saw dozens of houses that still had the notation - plus the big X with numbers in the quadrants - even GAS OFF in giant orange letters and not yet repainted.

The cemeteries here are really something else. I didn't think I was going to care about this part of the tour but it was actually really interesting.

Then to the Garden district and more beautiful homes, lovely trees, a man walking his dog while sipping a glass of rose, etc.

Lovely balconies and fence.

I am so glad I was driven around to see all this. What a lovely city.

Kate

MVP | RD | Travel
Sunday, 06 June 2010 19:43:42 (Eastern Daylight Time, UTC-04:00)  #    
# Sunday, 09 May 2010

I often carry links around for a while before I use them in a post. I'm not one of those "here's 53 things other people posted yesterday" types, though I read three of them (Jason, Chris, and Alvin) almost every morning. When I think something is interesting, I'll use it eventually. It's unusual for me to accumulate a lot of links from someone I don't know some other way, typically from having worked with them. But that's the state I find myself in now. Brent Ozar is actually a SQL MVP and I've found plenty of helpful information about SQL on his blog. But these three articles really aren't about SQL:

  • Why I Always Bill By The Hour - mostly about keeping a pleasant relationship and avoiding the blame game, plus not doing things for free just to be nice. We have some clients who run a tab and are charged for time spent, while for most we used fixed bids. What I like most about doing fixed bids is being able to decline work that is out of scope. The big problem with charging by the hour is that people expect that means you will do things when they ask you to. While that might seem fine, I assure you there are times it is not.
  • Salary Negotiations During the Interview - pretty much the exact opposite, for people who don't bill at all but work on salary. Can I just say as an honest and nice employer that it makes me mental when people won't say what they want to make? I had a guy tell me he would be ok with anything between $8 and $40 an hour for a summer job (he was in third year of university.) That is no more a range than "on the planet Earth" is a neighbourhood. I generally pay people what they want to be paid, or else don't hire them. So if you tell me the truth, I'm not going to argue you down from your number. I might decide you're not worth that much to me and so decline to hire you. I might hire you and then give you a 30% raise after 2 months (true story). But I sure won't say "really? I will offer you 80% of that." Ever. I think I might be odd though, because many people utterly refuse to tell me what they want to earn if they work for me. So I like that Brent says "If they keep pressing for your salary, don’t give them your current number – give them the number it would take to get you to switch." That works for me.
  • Rock Stars, Normal People, and You - how you can start presenting, writing, and generally becoming a "rock star" in our industry. There is absolutely no secret to this and there are literally hundreds of people who want to help others get good at this stuff. I like this quote: "Doing this stuff took time out of my personal life, but I was determined to make an investment in my career. I didn’t want to have another really crappy job search, bouncing from headhunter to headhunter, having to re-prove that I wasn’t an idiot and that I was worth money." And this one: "you’re still struggling to get a better job, a better speaking slot, or a speaking slot period, right? You think that Other People are the ones who get book offers, or Other People are the ones who get paid to speak. You’re wrong."

Fantastic advice.

Kate

Sunday, 09 May 2010 13:39:20 (Eastern Daylight Time, UTC-04:00)  #    
# Friday, 07 May 2010

Jani Jarvinen (a Finnish C# MVP) wrote a nice article about using sensors with Windows 7. He mixes and matches .NET 4.0 and Code Pack capabilities, and has links to plenty more information. I like the screenshots and the step by step approach. Windows 7 really does make this so much easier than it used to be. He gets you started with both an ambient light detector and some simple location code.

A little more exotic approach comes from "gleat" who has a Code Project article using a Wiimote as the accelerometer. He starts out simple - here's how to download and install the driver - and then goes into writing a client in C#, leveraging Code Pack of course. But then he says hey, were you wondering how to write a driver? and wham! you're hip deep in C++. It's all well explained, though, so if you want to learn more about this, what a terrific way to start.

If all of this is making you wish you had Windows 7 somewhere to play with, but you don't want to buy it, don't have an MSDN subscription, don't qualify for BizSpark etc, then what you need is a free 90 day evaluation of Windows 7, right? I found that link on this handy Doug Turnure blog post from earlier this year that includes some video links I hadn't seen before. Have fun!

Kate

Friday, 07 May 2010 12:14:02 (Eastern Daylight Time, UTC-04:00)  #    
# Thursday, 29 April 2010

Would you like to learn more about developing for Windows 7 in C# or VB? My Pluralsight On-Demand! tutorial has just gone live. 9 of the 11 modules are there now and the last two will be shortly.

As the abstract says:

This tutorial is aimed at Windows developers (Windows Forms or WPF) who want to add Windows 7 capabilities to their application. The emphasis is on providing a helpful and efficient user experience by hooking into what Windows 7 has to offer. You do not need to know how to interop to native code or how the Windows 7 features work internally.

The table of contents looks like this:

  • Light Up on Windows 7
  • Windows 7 Jumplists
  • Taskbar Overlays on Windows 7
  • Taskbar Thumbnails on Windows 7
  • Network Awareness on Windows 7
  • Power Awareness on Windows 7
  • Windows 7 Libraries
  • Windows 7 UAC and Manifests
  • Partitioning Administrative Tasks for Windows 7
  • Known Folders for Windows 7 (under development)
  • Scheduled Tasks on Windows 7 (under development)

The course has been a lot of fun to put together. I used the Code Pack to keep the amount of code you write to a minimum. Some of the demos use samples that come with the Code Pack; others use my own code, and you can spot those by the Demos download link.

The content is all subscribers-only, but you can get a Guest Pass to check it out. Also, RDs and MVPs get a free subscription, so if you qualify, this would be a great time to use that. Let me know if there are more topics you'd like to see me cover (after I get this one finished, of course!)

Kate

Thursday, 29 April 2010 08:26:26 (Eastern Daylight Time, UTC-04:00)  #    
# Tuesday, 27 April 2010

MFC had some Windows 7 support starting with the release in between Visual Studio 2008 and Visual Studio 2010. There was a ribbon, for example, though there was no designer. In Visual Studio 2010 there is a ribbon designer, very nice, and tons of UI fun as well. In this post I'd like to focus on some MFC support for taskbar interactions. Any idea what these two lines of code do?

HICON i = LoadIcon(NULL,IDI_WARNING);
SetTaskbarOverlayIcon(i,L"Warning");

Here's the visual evidence:

Yep, you load an icon and then you set it as an overlay icon on your taskbar. Nice and simple.

How about this:

m_jumplist.InitializeList();
m_jumplist.AddTask(L"http://images.bing.com",L"",L"Bing",L"",0);
m_jumplist.CommitList();

You need to know that m_jumplist is a member variable of type CJumpList - a new type in MFC. Here's what that code causes:

This is remarkably little code to be all up to date and modern, isn't it?

If you want more info on C++ and Visual Studio 2010, here's a nice article by Sumit Kumar and a Channel 9 talk with Pat Brenner. Enjoy!

Kate

Tuesday, 27 April 2010 11:28:09 (Eastern Daylight Time, UTC-04:00)  #    
# Wednesday, 21 April 2010

One of my pet peeves is software that thinks it's smarter than me. There are times when software does things I wouldn't think of, without asking me, and I find that helpful and I like it. But it can backfire. The worst offender was FrontPage, thankfully now gone. But Outlook has an annoying little habit. It assumes that people who send emails can't really be trusted to format them, so it "fixes" their error for you. In other words, if I send you this plain text email:

Hi,
How are you doing?
Call me when you can.
Kate

Outlook helpfully displays:

Hi, How are you doing? Call me when you can. Kate

Most of the time that's only a petty annoyance. But what about when my code sends:

Monday 1:00
Tuesday 2:30
Wednesday 4:00
Thursday 9:30
Friday 10:00

And you see:

Monday 1:00 Tuesday 2:30 Wednesday 4:00 Thursday 9:30 Friday 10:00

Know what happens then? I do! The user reports a bug that the emails are misformatted. And what's more, when you tell them it's an Outlook issue and send them a screen shot of what to click in Outlook to fix it, they don't thank you. Well, Scott Mitchell has discovered what to do in your code to make Outlook leave your ratsen-fratsen line breaks alone. Just add a space before each newline. Awesome, thanks Scott!

Kate

Wednesday, 21 April 2010 08:49:00 (Eastern Daylight Time, UTC-04:00)  #    
# Friday, 09 April 2010

This trip to the launch gets more exciting by the minute! Check this out:

The Channel 9 team will be broadcasting live, unscripted, and 100% interactive from DevConnections 2010 in Las Vegas as part of the Visual Studio 2010 and Silverlight 4 launches.

Join us Monday April 12th, from 8AM (PST) for Bob Muglia's VS2010 Launch keynote then stay tuned for more than seven hours worth of Visual Studio 2010-themed demos, interviews and panel discussions on Channel 9 Live.

. . .

Day 1 Schedule April 12th 2010 (Pacific time)

8:00 AM DevConnections 2010 Day 1 Keynote.

10:00 AM Welcome to VS2010: Doug Handler and Brian Randell with Dan Fernandez.   

10:30 AM Live Q&A with Bob Muglia, President Server & Tools Division with Dan Fernandez.

11:00 AM VS2010: Native Code. Kate Gregory and Richard Campbell with Charles Torre.   

11:30 AM VS2010: Managed Code. Lisa Feigenbaum, Tim Ng Dustin Campbell with Charles Torre.

. . . then some other people, who I love, but I can't paste it all in here. . .

To be part of it, use Twitter with @ch9live somewhere in your message. We'll see it and that's all it takes to join the conversation!

I count 11 Regional Directors (many of whom are also MVPs) on the guest list. What a way to spend the day!

Kate

Friday, 09 April 2010 23:27:02 (Eastern Daylight Time, UTC-04:00)  #    
# Wednesday, 07 April 2010
A little over five years ago a whole pile of people, inspired by Julie Lerman, got together to raise money for the tsunami relief and recovery in Aceh. (Here are my blog entries from that time.) We raised over $10,000 and perhaps some of you were wondering if we made a difference. Well Stephen Forte, who was a big part of that effort, now lives nearby and he visited them. His update is a lovely way to see what happened as a result of our efforts. It's nice to see that the organization we chose to support is still there and still doing good work. I wish all my donations came with a five year followup like that.

Kate

Wednesday, 07 April 2010 23:20:35 (Eastern Daylight Time, UTC-04:00)  #    
# Friday, 26 March 2010
One of the things I did during my break from blogging was to start creating content for Pluralsight. Is there anyone who hasn't heard of Pluralsight? An amazing group of people who want to help everyone learn how to develop on Microsoft platforms. They offer in-classroom training and also a rapidly growing online collection of videos and tutorials called Pluralsight On-Demand! that lets you learn what you want on the spot. Rather than just "here's a one hour video on topic X" it's all set up with searches and indexes to take you straight to the piece you want when you're in a searchy mood. It's really nicely done.

Pluralsight is a very MVP-positive group (and RD-positive too, though we're rarer) and has more than a few MVPs on the technical and management team. During the MVP Summit they announced that all MVPs and RDs get a free standard subscription to the entire Pluralsight On-Demand! training library. That's a heck of a deal and if you're eligible, you should sign up now.

I have one how-to reference video published at the moment, on taskbar overlays (icons and progress bars) in Windows 7 with Code Pack. There will be more :-)

Kate

Friday, 26 March 2010 09:10:51 (Eastern Standard Time, UTC-05:00)  #    
# Sunday, 25 October 2009

It's true, I signed up for a Windows 7 launch party. So did Chris Dufour. But I didn't have people over to sit on the couch and eat cake while I showed them the cool stuff in Windows 7. We just tossed an hour or so of demo at the start of a user group meeting. I had a one-page demo script which I've put as an attachment on this post. I think different default printers for different networks and a "recent/frequent" jumplist on the Windows Explorer in the taskbar were the most popular features. We also had swag! Here's a picture of mine:

Chris had a similar pile, and some books and such as we usually do, so each attendee (and we had a lot more than usual) left with something - mostly with one of those tote bags. I should have held one back to use on my next grocery trip. Aren't they surreal? After my demo (everything in the mini script, though probably not in that order, followed by boot to VHD) Chris took over and led us through CSLA for "real" part of the meeting.

Nice to see the group back in action, and hope to see plenty of folks there next month!

Kate

demo.docx (16.42 KB)
Sunday, 25 October 2009 11:09:07 (Eastern Standard Time, UTC-05:00)  #    
# Monday, 05 October 2009

If you read Stephen Forte's blog regularly, you'll know that he's a really technical guy. He's all about SQL, SQL Azure, WCF, Silverlight and so on. He's also a guy who shows his personal side in his blog. Before we had ever met, he was described to me as a slightly crazy guy who likes to climb mountains - and he has categories in his blog not just for Climbing, but also for Kilimanjaro and Everest. But he's also a guy who likes to help - a lot of the crazy things he does have been to raise money for charities - check his .NET Celebrity Auction and Curing Cancer categories.

So I really enjoyed reading two posts recently - "we're leaving" and "we're back" - the latter with tons of pictures - that covered a trip to Nepal to build a library. Not by pressing Ctrl+Shift+B either - hammer and nails, baby.

The four of them manage to be 4 MVPs and 2 RDs between them :-) and made a big difference in a far away village that already meant a lot to them. He closes with a link for you to donate and I think I will do the same. 

Kate

Monday, 05 October 2009 08:32:10 (Eastern Daylight Time, UTC-04:00)  #    
# Saturday, 05 September 2009
The MVP program is a little unusual. Members are rewarded for what they've already done, and get all the benefits for a membership year even if they do nothing further. Of course, most of us just keep right on doing what we're doing and get awarded for multiple years. Do we do it for the benefits? Probably not. Most of us like doing community "stuff" whether that's speaking, writing, forums, blogging, or whatnot. But the benefits matter - they actually enable us to do the community stuff. We get extra information in the form of access to betas or conversations with product groups. We get access to each other, a treasure trove of information. And we get recognition, which can open doors for speaker selection folks, article selection folks, and so on. I also know as someone who regularly hires developers that "Microsoft MVP" on a resume makes a huge difference for me.

Now my MVP lead, Sasha, has written a pair of articles that summarizes many important things about the program. Part 1 calls us super heroes and Oscar winners (blush) and has some useful links. Part 2 goes into the benefits a bit.

Of course many people want to know how to become an MVP. It's a bit like how to get to Carnegie Hall... practise practise practise. Do the community stuff every chance you get, throw yourself into sharing your knowledge, and when you've been doing it for a while and you know an MVP or two, ask one of them if you think you're at that level yet. If they say yes, ask if they're willing to nominate you. If you think you're really active in the community, but not a single MVP knows you and knows what you've been up to, you haven't been active enough yet. People who don't actively share their knowledge often underestimate what "active" means.

Even if you're not nominated or awarded, I am confident that the community work you do will be its own reward. Approach it like that rather than to earn an award, and you're sure to be happy.

Kate

Saturday, 05 September 2009 12:43:43 (Eastern Daylight Time, UTC-04:00)  #    
# Thursday, 06 August 2009
If you like to learn how to do things from material that is longer than blog posts, and videos don't work for you, then you probably still buy books. Here's one you might be interested in:



Authors, in case you can't quite read it there, are Yochay Kiriaty, Laurence Moroney, and Sasha Goldshtein. I am often tempted to link to every post Yochay makes - they are detailed, and useful, and crammed with more links. If you're developing for Windows you should be reading his blog and that's that. I read Sasha's blog regularly, too, and he is constantly coming across things I would never have thought of. I may not need that information that day, but reading it makes me a better developer. Both of them give attention to both managed and native code for extra points from me. Laurence is more a Silverlight guy, but I'm going to read his blog for the next little while anyway.

I haven't seen a preview of the book yet, but it's due Sept 30th, and you know the content will be good. A pound and a half of developer good stuff :)

Kate
Thursday, 06 August 2009 08:49:51 (Eastern Daylight Time, UTC-04:00)  #    
# Monday, 13 July 2009

A whole pile of really smart people, many of whom I am lucky enough to call my friends, have contributed to a new eBook on development topics. Check these titles:

  • Working with Brownfield Code by Donald Belcham (Microsoft MVP)
  • Beyond C# and VB by Ted Neward (Microsoft MVP)
  • Remaining Valuable to Employers featuring Barry Gervin, Billy Hollis, Bruce Johnson, Scott Howlett, Adam Cogan, and Jonathan Zuck
  • All I Wanted Was My Data by Barry Gervin (Microsoft Regional Director and MVP)
  • Efficiency Upgrade by Derek Hatchard (Microsoft Regional Director and MVP)
  • Getting Started with Continuous Integration by Sondre Bjellås (Microsoft Regional Director and MVP)
  • On Strike at the Software Factory by Daniel Crenna (Microsoft MVP)
  • C# Features You Should Be Using by Ted Neward (Microsoft MVP)
  • Accelerate Your Coding with Code Snippets by Brian Noyes (Microsoft Regional Director and MVP)
  • Is Silverlight 2 Ready for Business Applications? by Jonas Follesø (Microsoft Regional Director and MVP)
  • Innovate with Silverlight 2 by Daniel Crenna (Microsoft MVP)
  • Real World WPF: Rich UI + HD by Gill Cleeren (Microsoft Regional Director and MVP)
  • Hidden Talents by Peter Jones
  • Creating Useful Installers with Custom Actions by Christian Jacob
  • Banking with XML by Peter Jones
  • Sending Email by Derek Hatchard (Microsoft Regional Director and MVP)

Also, it has comics in it. Really. And if you prefer a printed copy, you can order one (black and white or colour) at a nominal cost. And these aren't little blog posts, they're decent length articles. All told the PDF is 132 pages. Each article conveys, on top of the technical information you'd expect, a glimpse into the personality and style of the author. A highly recommended download and read.

Update: This whole recommending thing works even better when you include a link: http://devshaped.com/book. Slow brain day today, I guess.

Kate

Monday, 13 July 2009 13:00:57 (Eastern Daylight Time, UTC-04:00)  #    
# Saturday, 11 July 2009
Remember that post by Aaron Margolis I linked to about launching a non elevated app from an elevated one? I mentioned that he'd left the managed version of his code as an exercise for the reader. Well Sasha Goldshtein has taken up that challenge and written the managed code. Not only that, he's added it to his UAC Helpers project on CodePlex, a collection of code that helps you work with UAC. Nice!

Kate

Saturday, 11 July 2009 17:22:20 (Eastern Daylight Time, UTC-04:00)  #    
# Tuesday, 07 July 2009

I do a lot of work in VB, though I am a C++ MVP not a VB one. This year at the MVP Summit many of the VB MVPs did short interviews with Beth Massi about how they got started and what they do in VB. Get to know some of these folks a little better. I spotted Julie Lerman, Rob Windsor, Ken Getz, Deborah Kurata, Daron Yondem, Jackie Goldstein, and even a thirteen year old! It's a mix of video interviews and text ones, and a very small time committment.

Kate

Tuesday, 07 July 2009 07:31:52 (Eastern Daylight Time, UTC-04:00)  #    
# Friday, 03 July 2009

At Tech Ed this year, a whole pile of my friends (and me too) were invited to pontificate a little on fairly light weight technical topics like "what technology have you enjoyed lately?" and "how do you keep up with everything that's changing all the time?". The result is a fun series featuring luminaries inside and outside Microsoft: Scott Hanselman, Billy Hollis, me, Richard Campbell, Stephen Forte, Clemens Vasters, Tim Huckaby, Michele Leroux Bustamente, Jim Wilt, Brian Noyes, Loke Uei Tan, Matt Hessinger, Don Box, Juval Lowy, Jeffrey Palermo, and Tim Heuer. They're being uploaded one a week or so - you can get started now and enjoy more later.

Here's a direct link to mine if you need it: http://msdn.microsoft.com/en-us/dd776253.aspx

Kate

Friday, 03 July 2009 17:08:51 (Eastern Daylight Time, UTC-04:00)  #    
# Saturday, 13 June 2009

Early this spring I delivered several sessions of training for Microsoft. It was for ISVs who wanted to get rolling on Windows 7 as quickly as possible. It's good material that covers a mix of managed and native development to take full advantage of new APIs, new features, and new power in Windows 7. It relies on the Windows API Code Pack and some custom-written wrappers for Windows 7 functionality that isn't in Code Pack at the moment. And now it's available to anyone who wants it.

If you couldn't come to one of the courses I taught, consider this the next-best thing.

Kate

Saturday, 13 June 2009 21:18:13 (Eastern Daylight Time, UTC-04:00)  #    
# Friday, 20 February 2009

Some time ago, I told you about an issue with the Tech Ed DVDs and Silverlight versions. I also gave you a workaround for how to play the sessions after looking up the session numbers in a PDF document that functioned as an index. Now Laurent Duveau, a Canadian MVP, has gone one better ... he's written a utility that will fix up the index on the DVDs so you can have an all-electronic experience. Nice work!

Kate

Friday, 20 February 2009 09:50:13 (Eastern Standard Time, UTC-05:00)  #    
# Tuesday, 17 February 2009

I have a favourite piece of advice, and I give it even though it frustrates many recipients. If you want to write, write! If you want to get into public speaking, speak in public! If you want to start a user group, start a user group! If you want to be an MVP, do what MVPs do (advise others and solve problems and volunteer for stuff) and you'll start to get the benefit even before you get the award. I'm not quite saying Just Do It but the fact is the barriers to entry are very very small these days and possibly non existent. Technical writing especially - start a blog or get active on newsgroups and presto, you're writing! Listen to feedback (people telling you you're wrong is bad, people thanking you for your answer or quoting you elsewhere is good) and you will get better. Public speaking isn't much harder to crack because the world is full of user group leaders and similar folks who need someone to speak to them month after month. It's also full of Code Camps and other places to get started (they tend to come with coaching and encouragement too.)

Still some people don't like this advice. They feel held back from what they want to do, and they don't like to be told "nothing is holding you back, you can start whenever you want." Alternatively, they don't want to speak or write or lead for free, they want to be paid for it, and they don't like the idea of starting for free and working hard for years to get that overnight success. So here's a rephrasing that maybe you'll prefer: "80% of success is just showing up." It's attributed to Woody Allen, not a guy I would normally take advice from, but it sure is accurate. Go to the meeting, open the document you're supposed to be writing, be there when someone asks for volunteers, go to the whiteboard and draw as much as you know, put your shoes on and go outside, ... not all at once of course, but these are the "just showing up" tasks that get you on the road to success. Try it.

Kate

Tuesday, 17 February 2009 17:06:42 (Eastern Standard Time, UTC-05:00)  #    
# Monday, 19 January 2009

2008 was a tumultuous year for me so I thought I would start a new tradition of doing a retrospective post.

In January, I started doing something at Trent that I had never done before in ten years of teaching there a course or two a year – teach the same course twice at once, on different nights in different locations. I think the Tuesday night people got a better course since I in effect rehearsed for them each Monday morning :-). The marking load was a little difficult but I managed it. Also in January I had a geekspeak appearance, and the planning started in earnest for Tech Ed.

In February I spoke at my own user group, which is always a treat, and the Toronto Heroes Happen Here event introduced Visual Studio 2008, SQL Server 2008, and Windows 2008 to Toronto.

March kicked off with SD West, where I did two sessions (Vista programming for half a day, and some Practical VSTS tips) and recorded a video interview. I really enjoyed SD West’s sense of difference – the attendees, speakers, and topics all had a little fresh and unusual twist to me compared to the conferences Microsoft runs. My schedule doesn’t often let me get to third party conferences but it’s definitely enjoyable when it does. Also in March, we closed our Peterborough offices after nearly a decade there, and consolidated back to a single office attached to our home. Times have changed since we set up the Peterborough offices – we have high speed Internet at home, couriers are no longer an important delivery mechanism for us, and we haven’t employed a university student for many years – so we decided paying rent and commuting 45 minutes each way every day was a foolish habit. It really has been one of my best decisions of the year.

April’s big fun was the MVP Summit. My schedule was jam-packed and my only regret was that the C++ team didn’t schedule any boring or irrelevant parts of the day that might have let me go visit another team to broaden my horizons.

In May, Chris Dufour and I held our own Heroes Happen Here launches in Peterborough and Whitby. We had a scaled down version of the Toronto event and enjoyed it a great deal. Then DevTeach came to town – my absolute favourite third party conference always. As well it provided an opportunity for the Canadian RDs to get together and that is never a bad thing!

June, of course, meant Tech Ed. A precon, lunch with Bill Gates, three breakouts, two podcasts, assorted booth duty / ask the experts / etc plus dinners, receptions and side meetings made for a whirlwind week. The sort of thing I work all year to get, to be honest ... I loved it!

I started July by recording a .NET Rocks episode. Another thing I don’t get to do enough of. Then I just settled down and worked on projects for a while. Community activity is always a bit slow in the summer. As my project work intensified (nothing I can announce at the moment) I stayed heads down right through to the end of October when the PDC rolled around. We were all full of pent-up PDC demand after so long without one, and it was good, really good.

Just one week home after PDC, and trying to catch up on that project work, and it was off to Barcelona (maybe for the last time?) for Tech Ed Europe. I would have had an amazingly great time even if I hadn’t placed a talk in the top ten, but I was lucky enough to do just that. The food, the scenery, the weather – I am really going to miss Barcelona.

In December I got back on the community stage by visiting three southern cities to tell the story of Vista Bridge. I got caught in a snowstorm in Baton Rouge, the like of which they get once or twice a century, just to add a little spice to the tale. And that brings us around to the end of the year. What's next?

Monday, 19 January 2009 22:00:53 (Eastern Standard Time, UTC-05:00)  #    
# Monday, 17 November 2008
This month's meeting is November 25th. Chris Dufour will speak on Building Silverlight 2 Data Applications. The meeting is at the Whitby library, but please register so the food count will be accurate.

Kate

Monday, 17 November 2008 22:05:02 (Eastern Standard Time, UTC-05:00)  #    
# Saturday, 15 November 2008

Friday night wrapped up with a reception in the speaker room where we'd been working all week. Some of us (including me) were a little slow to switch from workin-on-my-laptop mode to hangin-with-my-speaker-buds mode.

That's Rob Windsor in the foreground and Brian Harry next to him. I went with Cava, Rob with beer. There really are no wrong choices :-). In the background you can see the big screens that show the top ten speakers and also randomly display comments from any and all sessions. A number of these were very funny out of context.

Earlier Friday I took this picture from my hotel window:

Always you can see Sagrada Familia, I noticed this from the cable car and the castle also. It just rises up out of the sea of lower buildings.

Barcelona was, as predicted, warm and beautiful. Crime was not an issue this year - the police presence was intense and I heard no stories of pickpockets, muggers, or cutpurses this year at all. I discovered the best tapas in the city at Ciudad Condal - which doesn't have its name on a sign so you need to know the address, 18 Las Ramblas. Three of us arrived here - it doesn't take reservations - and fought our way inside through the crowd to reach the maitre-d', who asks "inside, outside, or at the bar?" and then told us it would be 30 minutes for our inside table. The next step is you go to the bar, ask for "tres cervesas por favor" and then point at something from the dozens of plates of gorgeous tapas and montaditos (thingies on toast) and say "tres". Presto - three beers and three (in our case) smoked salmon on toast and you go stand on the sidewalk with the rest of the city. Heaven. The beer was good, the salmon divine, and it didn't even feel like waiting. In no time we had our inside table and then the fun begins. Not a false note - and we gave them lots of opportunities because we ordered a lot of plates. Highly recommended, and actually cost less than some other dinners we had here even though we could barely move by the time we'd finished eating it all.

Will I be back? Well I guess it will be a while till Tech Ed brings me back - we move to Berlin for next year. So I'll have to bring myself back, because I'm really going to miss coming here otherwise.

Kate

Saturday, 15 November 2008 08:07:08 (Eastern Standard Time, UTC-05:00)  #    
# Wednesday, 02 July 2008

I enjoyed meeting some friends from the C++ team at Tech Ed and taking a turn in the booth. Li Shao and Marian Luparu were there when I was, and plenty of customers came by. Now you can read a nice summary of the customer conversations on the C++ team blog. The comments keep the conversation going. They are reading, so go ahead and join in!

Kate

Wednesday, 02 July 2008 12:21:01 (Eastern Daylight Time, UTC-04:00)  #    
# Monday, 23 June 2008

I said I would post it when I got it.

Wow. Almost as amazing to me as being in a picture with Bill is being friends with so many of the others in the picture. What a day that was.

Kate

ps: I know it looks like most of us are all wearing the same light blue shirt. We're not. Stephen, Scott, and I are all wearing Tech Ed speaker shirts, because we were speaking that day. Across the front row, Dave is wearing his Culminis shirt (it's a slightly different blue) and Morgan her INETA shirt. Dan is actually in a white shirt that is reflecting Morgan's shirt. Unfortunately I can't remember whether John (behind Morgan) was wearing a speaker shirt for sure, but I think so.

Double ps: updates from Rob Zelt and John Holliday.

Monday, 23 June 2008 18:28:29 (Eastern Daylight Time, UTC-04:00)  #    
# Friday, 20 June 2008

Well, to be honest, the BBC probably didn't sit down and say "We hear Herb Sutter and the gang are going to show Bill Gates all about their plans for lambda functions in C++0x, we have got to get on a plane and capture footage!" They were probably like everyone else "blah blah retiring blah blah career retrospective blah blah dig out those embarrassing old photos" but they happened to capture this meeting. And I actually quite liked the entire episode, really. It's an hour long, stuck up on YouTube as 6 ten-minute segments and a 6 minute one (As each ends you'll get links to the next.) The review meeting with the C++ team gets splonked in repeatedly in between the stuff you've heard a million times about the founding and the dropping out and the early big sales and so on. But there are things I hadn't heard, like just when that picture of everyone looking impossibly young, geeky, and hairy was taken, or how they re-enacted it years later. It's an entertaining and informative recap.

I spotted Herb, Soma, Bill Dunlap, and Ronald Laeremans in the meeting. Any sharper-eyed people who can provide more names?

Kate

Friday, 20 June 2008 22:29:37 (Eastern Daylight Time, UTC-04:00)  #    
# Wednesday, 04 June 2008

On Tuesday, Day 1 of TechEd,  I was lucky enough to join a small group of people for lunch with Bill Gates. While spending an hour or two with Bill would be an honour at any time, to do so at his last Tech Ed was extra special. The invitees spanned a wide range of the developer spectrum, and what we had in common was our contributions to community. There were Regional Directors, MVPs, MCTs, INETA people, and so on. Bill arrived just in time for a group photo (I'll post it when I get it) and then sat down to answer questions for an hour or more. I was so impressed; more impressed than I planned to be. I found his answers really illuminating and inspiring. Our geeky minds and way of approaching problems can be turned to far more than just designing software. Why not, if you don't have to worry about covering your mortgage payment, try fixing the problems of disease, education, agriculture, and even the United Nations?

We were given an enormous (and heavy) memento:

It's going on the "bookshelf of showing off" for sure, but the inspiration and the practical information are more to me than the crystal :-).

Kate

Update: Fellow attendees Andrew BrustMatthew RocheDaniel EganScott GolightlyStephen Forte, and Neil Roodyn have blogged their impressions also. So has Soma, who graciously welcomed us all to the lunch and is well known as a friend of developer community people.

Wednesday, 04 June 2008 17:38:06 (Eastern Daylight Time, UTC-04:00)  #    
# Tuesday, 11 December 2007

At Tech Ed Developers Europe, one of my talks was on STL/CLR and the marshaling library. There are three super cool things about the marshaling library that all C++ developers need to know. The first is that the random boilerplate code we used to write to convert between two kinds of strings is now taken care of for us:

char* stringfromnativelibrary;   //gets set somehow
ManagedFunctionExpectingSystemString(marshal_as<String^> stringfromnativelibrary);

The second is that it's just templates, meaning it is fast at runtime and intuitive for a C++ developer. The third is that because it's templates, we can write our own specializations, and convert between any two types we feel we will be using - typically on either side of the managed/native border, though that's not a requirement at all.

This last part is really exciting to me. Imagine you have some library you wrote ages ago that takes a RECT and does something with it related to your business logic. But you've replaced your UI and now you have a System::Drawing::Rectangle to represent what your user selected. Wouldn't it be cool to write:

oldfunction( marshal_as<RECT> RectangleFromWinForms);

That's not a problem as long as someone has written that specialization. You can do it, or you can try to find one someone else already wrote.

Date and time, arrays, anything related to screen position, these are going to be types everyone uses. Why not share the effort of writing these conversion functions? That's the thought that hit me at the end of my talk. So I came home and set up a site -  www.marshal-as.net - to use for just this purpose. I've had a few submissions from Jason, who was at my talk and was there when I thought of it, and a wish list from a "little birdie". The C++ team knows what I'm up to and they are excited too. Now what I need is submissions and lots of them!

So, drop me an email, comment on this post, or (better) comment on the first post over at www.marshal-as.net. I'll post the specializations one per post and we'll build a library. I'm inspired by pinvoke.net and would like to see this as the destination for finding a specialization instead of writing one. Can you help?

Kate

Tuesday, 11 December 2007 07:38:37 (Eastern Standard Time, UTC-05:00)  #    
# Monday, 25 June 2007

One of the things that people comment on when they work with me is how much of a keyboard shortcut person I am. In fact I really like the fact that Vista supports my typing-preferences and doesn't make me mouse so much. But when I'm presenting, I try to use the mouse as much as I can and stay away from keyboard shortcuts. I just find such presentations hard to follow myself, when I don't know what the demo-ing person is typing and what shortcuts they are using. It's easier to see what they are clicking on.

This became a bit relevant during Speaker Idol when I mused aloud about whether to dock Mark Miller for using CodeRush while demo-ing. Anyone else I would definitely have told not to, but perhaps Mark has a dispensation. I just find that many attendees can't follow along with the blazing speed that CodeRush enables and really lose track of the demo.

Roy Osherove has put together a little utility that displays your shortcuts as you type them. His first post on the topic suggests its value to presenters, while his second one focuses on using it to become more keyboard oriented or to train a coworker to be more keyboard oriented. If you really can't switch to the mouse while presenting, consider using this utility so that people can see what you're doing.

Kate

Monday, 25 June 2007 03:12:41 (Eastern Daylight Time, UTC-04:00)  #    
# Saturday, 23 June 2007

Just a small personal observation. My oldest child turned 18 and is now technically a grownup ... though of course still living at home and still technically in high school ... graduation is only six days away though. So many of my fellow RDs and MVPs are new parents, it seems strange to be approaching "the end of the beginning" of my parenting journey. But that's how it is.

Kate

Saturday, 23 June 2007 02:57:20 (Eastern Daylight Time, UTC-04:00)  #    
# 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.

Kate

MVP | RD | Speaking | Vista
Wednesday, 07 March 2007 08:54:02 (Eastern Standard Time, UTC-05:00)  #    
# Tuesday, 20 February 2007

The Developer Night in Canada (DNIC) User Group Tour is all set!

Our (East of Toronto) date is April 11th. Register now!

The purpose of this event is to demonstrate how the Microsoft Application Platform provides a robust and secure foundation for building data-driven applications and Web sites. Specifically, this session will examine some of the tools and technologies available for developers including Visual Studio Team System for Database Professionals and examine some of the exciting new features of ADO.NET.

Our session will feature our own alumnus, Jean-Luc David:

Jean-Luc David has written four books for Wiley Publishing (including Professional JavaScript 2nd Edition, Professional WinFX Beta, Professional Visual Studio 2005 Team System and most recently, Professional Team Foundation Server). Prior to joining Microsoft Jean-Luc had been a Microsoft MVP for three years. Jean-Luc is very passionate about the community and loves talking and interacting with developers and IT professionals. Jean-Luc lives in downtown Toronto.

See you there!

Kate

Tuesday, 20 February 2007 16:38:34 (Eastern Standard Time, UTC-05:00)  #    
# Friday, 09 February 2007

Bruno van Dooren, C++ MVP and general nice guy, blogged recently on "Is C++ still a viable language?" He makes lots of good points about interop, templates, and control. He points out that some UIs are a lot easier to build with C#. Then, out of the blue, he says mean things about VB. I know he's only joking, but I just felt I had to defend VB's honour.

Here's the thing. C#, it's mostly just VB with semicolons, you know? And that's not an insult, you shouldn't gasp when you read it. VB's a good and useful language. [Of course I mean VB.NET, come on, we're coming up to our fourth release, the default VB is VB.NET now.] It's no secret I do far more work in VB than in C#. Once in a blue moon I want to do something in VB that would be easier in C# (last week I wanted to delay hooking up button handlers until some initialization was in place, something the Handles keyword isn't going to do for me) and if I did more C# I would probably find the occasional thing that would be easier in VB. Big deal! I can always find a way to do those things anyway. What matters is the framework, and that's the same in VB, C#, or C++/CLI. I like the synactic sugar of Dispose=destructor more than the synactic sugar of "using" or "Using" but the underlying mechanism is the same in all three cases.

Kate

Friday, 09 February 2007 11:00:29 (Eastern Standard Time, UTC-05:00)  #    
# Sunday, 07 January 2007

Let's see, I got dinged (so far) by

If I don't step up and produce my Five Things pretty quickly, there won't be anyone with a blog left for me to tag!

  1. I have a PhD in engineering -- Chemical Engineering to be precise -- from the University of Toronto. My thesis title had way too many "of"s in it and was about modelling the very first steps in blood coagulation at a surface. Simultaneous partial differential equations! Boundary layer! Non-Newtonian fluids! Woo hoo! My undergrad work was also in Chemical Engineering, at Waterloo.
  2. If you don't count co-op jobs while an undergrad, TA-ing while a grad student, part time lecturing, and the like, I have held only two "real" jobs in my entire life, one for two years between graduating from my undergrad and starting my grad work, and the other as partner here at Gregory Consulting ever since.
  3. I am an elder in a martial arts system, one of only six in that system. Don't try to beat me up though... we'll both be sorry.
  4. I never lie. I sometimes say I can't talk about something, or I say something that I know is deceptive but is technically true, but I do not lie. For example, I only say "this demo worked on the plane!" if it really did. But I might say "they haven't announced anything" knowing that you will conclude I don't know, when in fact I do know but can't tell you. Sorry.
  5. I adore my kids, and put them first in just about everything I do. I've turned down conferences because it conflicted with family things, and followed a lower-salary career path so I'd have time to be hugely involved in what they do. I even homeschooled one of them half days for an academic year. I just don't talk about them much in my blog to give them some privacy. As a result many people think I don't have kids! Trust me, when we're together in person and it's not all being archived for some future romantic interest of theirs to read 20 years from now, I'll talk your ear off about these sweet, funny, smart, hardworking, reliable little angels!

There.

Now, my victims. Who on my favourites list is not already playing, but knows me enough to take a tag from me?

Kate

Sunday, 07 January 2007 14:18:56 (Eastern Standard Time, UTC-05:00)  #    
# Friday, 05 January 2007

Heh, you think it's not possible to leak memory from a managed application? Of course it is. For one thing, if you leak a thread, you will leak that whole thread's stack. Oh yes, there's more to memory than heaps. And there's more than one heap, too. You could mess up your interop and leak from the native heap, or you could even leak from the managed heap, generally as a result of an error somewhere other than the leaking code ... like a misbehaving finalizer that prevents some other finalizer from running, which prevents some other memory from being freed since it can't be freed till it's been finalized. Eeeeeww.

If none of this ever occurred to you before, and you're not scared to read more about it, check James Kovac's article in the January 2007 MSDN Magazine. He tells you how to notice leaks, track them down, and do something about them. (BTW, he's a Canadian MVP.) You'll also learn what a garbage collector does instead of buying a Porsche when it suffers a midlife crisis.

Kate

Friday, 05 January 2007 13:27:47 (Eastern Standard Time, UTC-05:00)  #    
# Tuesday, 02 January 2007

The nice folks in the MVP program have decided I am still a Most Valued Professional for C++. Or to be specific, "Visual Developer - Visual C++". It's a delight as always to be among such company and I notice the C++ crowd has grown a bit this year. I really value my membership in this program.

Kate

C++ | MVP
Tuesday, 02 January 2007 13:10:02 (Eastern Standard Time, UTC-05:00)  #    
# Monday, 27 November 2006

I use search engines for a variety of reasons. Sometimes I want to find out how to do something. Other times, I want to find the official page about something so I can link to it here or send it to someone. Since most of the things I want to learn are related to things I already know, and since I blog about a lot of what I know, I have a bit of an occupational hazard:

One of my mentoring clients complained about this to me. "I decide to search the Internet instead of calling you to ask and what do I find? A bunch of stuff you wrote!". Believe me, it's worse when all I can find is a bunch of stuff I wrote. And Peter Near, a fellow MVP, Flyertalker, and Ontarian, has the same problem.

I would get in the habit of excluding gregcons.com from my search results if not for two things: first, a lot of my stuff is published on other sites, and second, from time to time my old words help me remember something I'd forgotten. So I guess I'm stuck with it.

Kate

Monday, 27 November 2006 07:25:06 (Eastern Standard Time, UTC-05:00)  #    
# Saturday, 18 November 2006

Microsoft's Developer Division is really taking this transparency thing seriously. First it opened much of the spec for Orcas, the next version of Visual Studio, to the MVPs, and now it's opening it to the public. Seriously! And not only that, but they're asking you how you feel about these features:

Which features do you think are important? Are we making the wrong assumptions about how you will use Visual Studio and .NET? Are we forgetting about your scenario?

This page lists specifications for Visual Studio and .NET "Orcas". These specifications document the new features you will find in CTP's and provide an opportunity for you to give feedback. Please remember, some features specified below may be cut and others may be significantly altered. We'd love your feedback to help us with this decision process. Your feedback will be delivered into our bug database and shared with the feature team. The team will use your feedback to develop the specification or make improvements to future releases of Visual Studio.

So how important is STL/CLR to you? Or friend templates? Read the specs and scenarios, try them out in the September CTP, then speak up!

There are two things you should know about these documents. First, they can be quite large. The STL/CLR one is 38 pages. Second, they're XPS. On my Vista development machine, with IE7 and Office 2007, I just click to read them. On my XP machine with IE6 and Office 2003, it's not so seamless. Time to get me an XPS document viewer for the laptop.

Kate

Saturday, 18 November 2006 07:40:13 (Eastern Standard Time, UTC-05:00)  #    
# Thursday, 09 November 2006

I had such a good time this week at Tech Ed Developers! I really enjoyed delivering my talk to a PACKED room (148 evaluations and apparently 155 chairs, how's that for interest in C++) as well as participating in the DotNetRocks panel on agility. This is my room, during my tech check (love that yellow highlight):

A week for me of old friends and new faces, and general good moods all around. And from what I read in the blogs, a week of real interest in C++ and especially C++/CLI.  Steve has a roundup over on the VC++ team blog. Bruno van Dooren, a C++ MVP, blogged all the talks and even though he said some overly flattering things about me I will still give you a link to his blog. Don't worry, my head still fits through normal-sized doors.

Here I am with Arfa, the eleven year old (look at the poise! And she's incredibly well spoken in English, her SECOND language) who has two Microsoft Certifications already. She actually did a demo in the keynote and when I complimented her on how she did, she turned it around and complimented me on how I handled panel duties at the Girl Geek Dinner. (Stress-wise, I had the way easier gig.) Keep your eye on her, she's going places.

Kate

C++ | MVP | Speaking
Thursday, 09 November 2006 13:05:59 (Eastern Standard Time, UTC-05:00)  #    
# Wednesday, 01 November 2006

Spotted in the speaker room in South Africa:

Those feet belong to Karen Young, MVP Regional Manager for EMEA:

 

Alas, the shoes aren't swag. Karen had them done at a street stall in China that was painting roses and anime characters onto shoes. They're one of a kind!

Kate

Wednesday, 01 November 2006 05:06:57 (Eastern Standard Time, UTC-05:00)  #    
# Saturday, 16 September 2006

In October, Kathleen Dollard is coming to the East of Toronto UG! On October 19th, she'll be talking about Generics. Specifically:

Generics open up new opportunities to increase the robustness of your code, improve its performance, and significantly reduce the total amount of code you write. After a brief introduction to generic syntax, this talk dives into using generics to improve the quality of your code. You'll see how easy it is to shift your current collections to generic collections and learn about new features such as robust sorts, finds, and filters across collections. You'll learn how to write your own generic methods and classes. Finally you'll see how to leverage the spectrum of generic possibilities in a business object hierarchy that reduces the total lines of code by about 50%. You'll walk out of this talk understanding how to use generics to improve your own applications.

This meeting is at the YWCA Durham, so when you register, check the map and make sure you know where you're headed. If you haven't heard Kathleen speak before, you need to be there. Here's a little more about her:

Kathleen Dollard is a consultant, author, trainer, and speaker. She’s been a Microsoft MVP since 1998, wrote “Code Generation in Microsoft .NET” (Apress) and is a regular contributor to Visual Studio Magazine. She speaks at industry conferences such as VSLive, DevConnections, and Microsoft DevDays as well as local user groups. She’s the founder and principal of GenDotNet. Her passion is helping programmers be smarter in how they develop by learning to use Visual Studio, XML related technologies, .NET languages, code generation, unit testing, and other tools to their full capacity. She’s currently working on full life cycle improvements, such as better debugging and capturing business intent in metadata and test definitions. When not working, she enjoys woodworking, snowshoeing, and kayaking depending on the outdoor temperature.

I'll be a little crazed that week getting ready to head to Africa, but I'll be there.

Kate

Saturday, 16 September 2006 15:49:04 (Eastern Daylight Time, UTC-04:00)  #    
# Wednesday, 13 September 2006

Tomas Restrepo, a C++ MVP, has started a C++/CLI FAQ at http://www.winterdom.com/cppclifaq/. It's a start, and since some questions are starting to be frequently asked, it's a good idea for folks to read through this.

BTW, if you're looking for a more general Visual C++ FAQ, try the multi-MVP effort at http://vcfaq.mvps.org/.

Both recommended. Good work Tomas!

Wednesday, 13 September 2006 15:06:07 (Eastern Daylight Time, UTC-04:00)  #    
# Wednesday, 06 September 2006

Sasha Krsmanovic has been working for Microsoft for a very long time, but as a v-, a vendor. This summer they finally made it official and hired him as a regular employee. At the same time he moved roles, so now instead of looking after me as an RD and a user group leader, he's looking after me as an MVP. Works for me!

This is me with Sasha back at realDevelopment06.

Kate

Wednesday, 06 September 2006 12:20:24 (Eastern Daylight Time, UTC-04:00)  #    
# Saturday, 10 June 2006

I have an HUGELY busy week planned at TechEd. It kicks off with meetings of MVPs and RDs (I have to miss the meeting of user group leaders, everyone had the same "day before TechEd starts" plan) and the keynote Sunday night. My talks are Monday (DEV309  Visual C++: IDE Features for Visual Studio 2005, 5:00 PM - 6:15 PM  Room 259 AB) and Friday (DEV444  Visual C++: Debugging and Resolving Loader Lock and Side-by-Side Issues, 1:00 PM - 2:15 PM  Room 160 ABC), and I won't miss the Women In Technology luncheon on Wednesday. In between I have so many meetings scheduled, it's a good thing the sessions will be on DVD afterwards because I just won't be able to attend all the ones I want to. And as for Boston tourism... well at least I'll see Fenway :-)

If you're going to be there, drop me a note and let's see if we can have some "face time" of our own.

Kate

C++ | Consulting Life | INETA | MVP | RD | Speaking | Travel
Saturday, 10 June 2006 19:43:18 (Eastern Daylight Time, UTC-04:00)  #    
# Friday, 19 May 2006

I have a number of talks I do about C++/CLI and Visual C++ 2005. The one thing they have in common is that there's never enough time for all the demos. There's one particular demo that is technically in two different talks, but never gets done... it shows how to put a WinForms control onto an MFC dialog, and how to implement MFC message passing (and the new DELEGATE family of macros, that are like the existing command routing macros) to hook a WinForms into an MFC View, complete with menu updating and implementation.

If you are one of the people in those audiences who was a little disappointed you didn't get to see the MFC stuff, here's a new paper that might help you out a bit: Integrate Windows Forms Into Your MFC Applications Through C++ Interop. It's by Marcus Heege, a new C++ MVP. I just have to like a guy who includes a subheading "C++ Interop Is Your Friend" :-)

Kate

Friday, 19 May 2006 08:25:33 (Eastern Daylight Time, UTC-04:00)  #    
# Thursday, 23 March 2006

It looks like I never added an entry about speaking at Devteach. I just made my travel plans to get there. I love taking the train to Montreal -- I'll end up within walking distance of the conference hotel, save time compared to flying, and travel in comfort the whole way.

Devteach is a delightful conference with a friendly atmosphere. I count 8 RDs among the speakers list, plus a whole pile of MVPs, Julie, and some of my favourite Microsoft people... DEs mostly. There is one track in French and the rest of the talks (about a hundred) are all in English.

My talks are:

  • Moving C++ applications to the CLR
  • The Future is Concurrent

There's plenty for everyone: web, smart client, data, security, patterns and practices, testing, Team Systems, architecture -- if it's a development topic, someone is speaking on it. On top of that the conference hosts the Canadian User Group Leader Summit (and gives user group members a discount on attendance - contact your user group leader for a code) and the Canadian Regional Director Summit. It's a great place to meet the stars of the Canadian developer community, and a number of folks from the American northeast who love to come up to Montreal. See you there!

Kate

Thursday, 23 March 2006 07:25:00 (Eastern Standard Time, UTC-05:00)  #    
# Wednesday, 22 March 2006

Microsoft Canada is holding a five-city Web Development and Security tour with the theme of "real development". I'll be speaking in Toronto and Montreal along with Developer Evangelists Jerome Carron, Dan Sellers, and John Bristowe, and fellow Canadian Regional Directors Scott Howlett and Richard Campbell. To quote the blurb:

realDEVELOPMENT_06 is your opportunity to see the very latest technologies, trends, and techniques in web development. The day will be divided into two halves.

In the morning, the WEB PLATFORM SESSIONS will give you the chance to explore Web development technologies such as AJAX, RSS, Javascript and Gadgets.

In the afternoon, our SECURITY ON THE BRAIN SESSIONS will focus on how to address common security issues, and help build more secure Web applications though enhanced development techniques.

It's an all day (9-5) event:

  • Ottawa, May 30th
  • Toronto, June 1st
  • Montreal, June 6th
  • Vancouver, June 8th
  • Calgary, June 13th

      As well, RDs and MVPs will be on hand for ask the experts / cabana / mashups -- you know, people milling around asking questions and having conversations -- often the best part of these events!

      Register while you still can!

      Kate

    • Wednesday, 22 March 2006 10:48:25 (Eastern Standard Time, UTC-05:00)  #    
      # Wednesday, 04 January 2006

      As we flip calendar years I am delighted (even if I'm not really surprised) to learn that I am being renewed as both a Regional Director and an MVP (for C++.) These two programs are both a big part of my professional life. (The RD program is more exclusive, with only 120-140 RDs around the world compared to thousands of MVPs, but the two programs serve different needs, of course.) They each provide me with amazing information and access to the product teams. They open doors for me throughout the Microsoft-oriented world. Most of all, they introduce me to other RDs and MVPs around the world... an amazing team to feel part of. I am also still a user group leader, a member of the INETA North America and MSDN Canada speaker bureaus, and of course I have a business to run with clients throughout North America.

      In not-unrelated news, I qualified for Elite on Air Canada and almost halfway to Super Elite. The previous year I just squeaked to Elite... wonder how much flying 2006 holds for me?

      Kate

           
      C++ | Consulting Life | INETA | MVP | RD | Speaking | Travel
      Wednesday, 04 January 2006 16:33:27 (Eastern Standard Time, UTC-05:00)  #    
      # Saturday, 16 July 2005

      Brandon Bray went about 18 months without blogging and I know I was just one of many people who begged him to start again. Well, he has and his first entry is a delightful laundry list of things he plans to cover. The second is about switch reduction in the 2005 compiler and linker, but it provides wonderful insight into the hassles of writing, testing and maintaining a compiler and a linker. A few quotes:

      I started evaluating changes by doing none else than reading the source code for the compiler driver. Through that I came across obsolete, outdated, bizarre, undocumented, and useless switches. I looked at each one asking whether it was necessary for the compiler in the long term and evaluating each switch against the requirements listed above. I actually spent most of my time trying to figure out what each switch did. Even asking developers who work on the compiler, I'd sometimes get several different answers. In a few cases, no one knew what the switch did. If our own team couldn't recall a switch's purpose, it's not hard to believe nearly every programmer using Visual C++ will have the same problem.

      ...

      In a good attempt to allow application writers to make use of the latest and greatest hardware, nearly every compiler introduced a new better switch to make your code even faster. Unfortunately, compiler switches end up in make files that rarely get revised. It wasn't uncommon to see a make file specify a G4 or G5 switch even though 80486 and Pentium have long been out of mainstream production. The G-series of switches do not prevent programs from running on older hardware, which was a common misconception. Eventually, Visual C++ just ignored the G3, G4, and G5 switches and the program compiled as if G6 had been given to the compiler.

      Brandon writes with a dry, understated sense of humour. You have to love “It is difficult to know that Os and Ot are ineffective.” or “Very few programs could actually work with these options, so they were both removed from Visual C++ 2005.” Not to mention subheads that call switches “truly evil” or “bizarre”.

      An excellent post to give some insight into what the team's decisions involve day to day, and the extent to which MVP and Ladybug feedback make a real difference in those decisions. Keep going, Brandon!

      Kate

      ps: the topic for the second post came from a comment on the first. Tell him what you want to read and I bet he'll write it.

      Saturday, 16 July 2005 22:30:10 (Eastern Daylight Time, UTC-04:00)  #    
      # Saturday, 04 June 2005

      Tech Ed starts on Monday, there are all kinds of side meetings Sunday, and I'm here early because I did a compressed Ascend day yesterday. So far it is rainy and grey: I feel as though I accidentally flew to Seattle instead of Florida.

      I like to get a room with two beds so I can use one bed just to pile up swag. Here's how it looks so far:

      All this has to get home with me, and we're not even started yet. If you haven't left yet, remember to leave lots of room in your suitcase! Trust me!

      Kate

      Saturday, 04 June 2005 17:52:33 (Eastern Daylight Time, UTC-04:00)  #    
      # Tuesday, 17 May 2005

      With the seven-city Smart Client Deep Dive tour done, I thought it would be appropriate to summarize my upcoming speaking and training schedule.

      • May 23-26. Ascend Training (Smart Client Track) Redmond, WA. Teaching Microsoft people and special guests (MVPs, RDs, partners) all about Smart Clients (VSTO, WinForms, and more) in Whidbey.
      • June 3. Ascend Training (one day ultra condensed) Orlando, FL. This is a pre-conference event for Academic Days at Tech Ed.
      • June 6-10. Tech Ed USA,  Orlando FL. Two talks (Monday morning and Tuesday morning - both are C++ talks and who would go to only one of them? See the new syntax, new optimizations, new power for an old friend - search for DEV330 and DEV331), one panel lunch (women in technology), and helping out with the way cool thing the RDs are doing that I can't quite discuss yet.
      • June 18-19. DevTeach, Montreal Quebec. A Canadian User Group Leader get-together, and my two C++ talks glued into one “What's New in C++“ presentation.
      • October 23-26, Tech Ed Africa, Sun City South Africa. OK, I'm not officially accepted as a speaker yet but I'm pretty sure I'll be there, topics TBD.
      • Nov 7-10. C++ Connections, Las Vegas, NV. How real customers are moving to the new C++.

      This is just the stuff I'm on stage for. I'm planning to be in the audience at either or both of the PDC and the MVP Summit, both in September.  And oh yeah, I have a company to run and some projects to finish. Gotta dash!

      Kate

      Tuesday, 17 May 2005 10:39:50 (Eastern Daylight Time, UTC-04:00)  #    
      # Tuesday, 01 February 2005

      110.00, 107.50, 105.00, 102.50, 101.00, 100.00

      What do these numbers have in common? They are losing bids for the consultant auction :-). Time is running out, the auction closes tomorrow morning, 9am Eastern, and now is the time to boost your bid and catapult yourself up the list! Lowest winning bid at the moment is $120... let's drive it up!

      Kate

      Tuesday, 01 February 2005 18:01:23 (Eastern Standard Time, UTC-05:00)  #    
      # Monday, 31 January 2005

      Apparently some people are hesitant about bidding on the auction in case they win. I know the feeling, do I have enough tough questions to justify an hour of Richter or Prosise time, do I have my act together on Web Services and Interop enough to grill Michele on them properly...

      Relax. You don't have to think of it that way. Whoever you win, fire us an email with something that's been bugging you. Like “can you really explain this whole destructors in C++ when it's managed code and the object I'm using wasn't even written in C++?” Or like some of the old emails I cleared out this last week: “how can I uninstall a service?” “how do I restrict forms authentication in ASP.NET to only some folders? How can I force a logout when they browse from a secured to an open page?” and “why am I getting this linker error?”. Maybe that uses up 10 or 20 minutes. Fine, next time you have a toughy like that, send it along. By the time you use up your whole hour, you'll probably have become a friend/colleague/former client who can send questions like that once in a while for the rest of your life.

      Or, how about this? Take a look at the talks your selected consultant has prepped for upcoming conferences (get us to send you the abstracts we've submitted) and have us deliver a private session of a useful talk to your whole company over LiveMeeting. There's a free LiveMeeting trial going on, and the talks have to be prepped anyway, so your hour would just be the delivery of the talk, to as many of your colleagues as you can get online at once. So it might end up 90 minutes, we don't mind.

      You can't lose! Hell, even if you use your hour to take one of us for a drink the next time we're in the same city, what really counts is you gave $100 or $150 or $200 to help people who have NO clothes, NO books, NO walls around them.... this is a FUNDRAISER so come on, let's raise some funds!

      Kate

      Monday, 31 January 2005 09:40:55 (Eastern Standard Time, UTC-05:00)  #    
      # Wednesday, 26 January 2005

      I am learning a lot about how EBay works. In IM with Adam and Julie I think I have figured it out. Let's say you went right now to bid on the auction (good for you!) and you bid $200. Not “$100 now and if I need to then automatically raise me to $200” but just flat out $200. Your bid would still appear as $100. Why? Because there are 30 items available and so far only 27 have been bid for. Once there are more than 30 bids, we will start to see real bids and not just the minimum. So come on, go bid. Believe me you will get more than $100 value no matter who you get, and you'll be helping a good cause.

      Kate

      Wednesday, 26 January 2005 12:25:02 (Eastern Standard Time, UTC-05:00)  #    
      # Sunday, 23 January 2005
      Sunday, 23 January 2005 13:20:33 (Eastern Standard Time, UTC-05:00)  #    
      # Saturday, 22 January 2005

      Stephen Forte has posted a voluminous update that includes links to all our blogs and little bios of us all, in case there are one or two you haven't heard of. Check it out.

      Kate

      Saturday, 22 January 2005 12:43:24 (Eastern Standard Time, UTC-05:00)  #    
      # Friday, 21 January 2005

      Here's a blog entry by the surfers I mentioned yesterday explaining some of what they're up to and how desparately it's needed. And Julie has a delightful picture of them, too.

      Julie is still getting our ducks in a row with EBay. As you can imagine, you can't just hold an auction and claim it's a fundraiser -- what a fraud opportunity.that would be! There are letters and faxes and suchlike to make sure that everybody is on the up and up. The good news is that because EBay and Paypal are doing this, you can be confident your money (you are going to bid, aren't you?) is going where we say its going. The bad news is I don't have an EBay link yet :-)

      Kate

      Friday, 21 January 2005 08:46:04 (Eastern Standard Time, UTC-05:00)  #    
      # Thursday, 20 January 2005

      An absolutely stellar group of people, dubbed by Julie Lerman to be .NET Celebrities, have come together to offer up our tiny little bit of help for those whose lives, homes, loved ones, livelihoods, and dreams were washed away on Boxing Day of last year. The immediate “if we don't get fresh water in there they will all die” crisis is past, but there is so much rebuilding work to be done. The agency we've selected is Aceh Aid at IDEP which is local to Sumatra and has been on the ground since the waves hit. This is a nimble and creative group that, for example, teamed up with the surfing community to get boats into the worst hit places while large outside groups couldn't figure out how to reach them. It's going to be an EBay auction with payment through PayPal directly to a US foundation that supports IDEP -- that way for US-based people it will be tax deductible for sure. I am working on an answer for Canadians on that. Of course if your company spends the money to get the advice, then your company can deduct it as an expense, just the same as if you wrote me a cheque for my time.

      There are 25 of us up for auction. Top bidder gets their pick of Jeffrey Richter, John Robbins, Jeff Prosise, Michele Leroux Bustamante, Jonathan Goodyear, Andrew Brust, Richard Campbell, Adam Cogan, Malek Kemmou, Jackie Goldstein, Goskin Bakir, Hector M Obregon, Patrick Hynds, Fernando Guerrero, Kate Gregory, Joel Semeniuk, Scott Hanselman, Barry Gervin, Clemens Vasters, Jorge Oblitas, Stephen Forte, John Lam, Deborah Kurata, Ted Neward and Kathleen Dollard. Wow! (And like I need to link to their blogs -- you know who these people are!) Most are friends of mine already, 18 are RDs, 5 are Canadian, all are top notch .NET stars who know their stuff and are in the habit of solving problems for people.

      So what we are auctioning is one hour of mentoring. Phone, IM, email, whatever. (We won't fly out to you.) If you're the top bidder, you get whoever you want from that list. Second bidder chooses from the still stellar list remaining. And so on.

      Most of us are consultants so you could theoretically buy our time. But that's in theory. My firm doesn't take one hour jobs. We don't really like to take one day jobs. Our preference for mentoring work is to take a $5000 retainer and let you know when you've used most of it up and need to send more. (We make exceptions for some work that's really technically interesting and fun, but we still need to be confident it will go on for a while.) I expect it's a similar situation for the others. That means we're offering something you otherwise couldn't buy. I want you to keep that in mind, then go bid more (a lot more) than you think an hour of my time is worth. The money goes to those who need it, you get a deduction, and you get some important business problem solved. Can't fail!

      I'll post a link to the auction as soon as it's live.

      Kate

      Thursday, 20 January 2005 10:17:23 (Eastern Standard Time, UTC-05:00)  #    
      # Wednesday, 19 January 2005

      In fact, you've been able to register for over a week, I just didn't notice until today. Last year it sold out, so if you already know you want to go, start making your plans now. If you register early you save money, there's some sort of sweepstakes to be won, and you'll know one little part of your year plan well in advance. Go on, register.

      Me? I'm hoping to be there as a speaker :-) (I submitted a number of C++ talks) or to take advantage of some not-yet-announced-I'm-just-hoping pass for RDs or MVPs or INETA speaker bureau folks or something, so I haven't registered. One way or another, I will be there.

      Kate

      C++ | Consulting Life | INETA | MVP | RD | Speaking
      Wednesday, 19 January 2005 14:32:28 (Eastern Standard Time, UTC-05:00)  #    
      # Saturday, 15 January 2005

      I'm pleased and proud to report that I have again been awarded MVP Status for C++. Technically it's “Visual Developer - Visual C++”. This came through January 4th, but my blog's been out of order for a bit.

      Kate  

      C++ | MVP
      Saturday, 15 January 2005 13:16:36 (Eastern Standard Time, UTC-05:00)  #    
      # Tuesday, 25 May 2004

      This year there are two flavours of speaker shirts at TechEd: the darker (more attractive, I think) blue belong to Microsoft people and the lighter ones to third parties -- that would be me. I wore one of mine today and since I have booth duty tomorrow (RD booth -- 49 and 50 in the Microsoft Pavilion in the Exhibit Hall, come on by) I'll be wearing the other one. I'm hoping to get a third shirt tomorrow. I don't know why I packed any of my own clothes, really, folks have been handing me shirts every time I turn around. No-one gives you pants as swag though. Too bad!

      As well as the shirt, I have a slightly decorated badge:

      I figure I might as well make myself easy to spot. So if you can't recognize me from the picture (upper left corner) on the bingo card, you can recognize my badge :-) Most of the RDs are wearing the Regional Director Program button also, and we tend to know where each other are. So if you still need a Forte or Huckaby signature, if you missed Clemens and Scott in the RD booth tonight, or left before Goksin arrived (oh yes, he did come by later!) then flag down any RD you see and ask us if we've seen the one you're missing.

      I think I just about have one piece of badge bling for every category on my blog. I got an INETA card after I took the picture. I forgot to bring my MVP lapel pin, sorry MVP program.

      And of course, I can relax and think about badges and shirts and such because I did my talk and it went well. I will try to get my code (and my slides for that matter) on CommNet.

      Kate

      C++ | Canadian Colour | INETA | Meta | MVP | RD | Speaking
      Tuesday, 25 May 2004 02:06:35 (Eastern Daylight Time, UTC-04:00)  #    
      # Friday, 09 April 2004

      This is the "big deal" day for me, a day spent with the C++ team immersed in "what's new in Whidbey" and beyond. I've just about completed my mapping of faces to email addresses and delivered some copies of my book to a few people who really helped me while I was writing it. I am taking notes like a maniac, on new IDE features for C++ specifically, on new ways of managing property settings for C++ projects, on converting from old Managed C++ syntax to the new syntax, and so on.

      The Developer Tools Roadmap has been updated. It shows some of what's new in Whidbey and looking forward into Orcas. Embedded C++ moving into Visual Studio, the new C++ syntax, templates and generics together, the true return of deterministic destruction with reference types allocated on the managed heap or the stack as you prefer, major optimization improvements for both native and managed code (especially PGO), and more. Of course whatever you see listed under other languages may well apply to C++ too, things like improvments in the Base Class Libraries, ADO.NET, and the rest.

      C++ | MVP
      Friday, 09 April 2004 14:40:09 (Eastern Daylight Time, UTC-04:00)  #    

      On a "no laptop" day at the conference centre, the executives came to talk to us. It's always nice to be told "we like you, we really really like you" and that's what we (the MVPs) heard. I was also pleased with the questions that came from the audience. There's a lot of awareness about deeply technical matters but also business matters such as licensing.

      Lunch was with the product groups and I had a fun time listening to other people's questions and asking a few of my own. Our table was supposedly about the new C++ syntax, but I also learned about interop performance improvements (significant) in Whidbey and some nice IDE changes that I hadn't noticed yet.

      MVP | C++
      Friday, 09 April 2004 14:33:07 (Eastern Daylight Time, UTC-04:00)  #    
      # Tuesday, 06 April 2004


      I missed quite a bit of the sessions Monday because I had some urgent fires to put out and some other Microsoft-related business to take care of. I did enjoy hearing Don Box again, and seeing some things I just hadn't found time to notice yet. It was a beautiful day here, sunny and bright, and I actually saw the mountains for a few minutes. I was sure that was just something locals tell visitors, the whole seeing the mountains thing. Then we had a C++-specific dinner. What other group would gleefully accept a 64 page paper as they get on the bus to go to dinner, and then immediately start to read it? I know I read mine too.

       

      Tuesday, 06 April 2004 20:13:54 (Eastern Daylight Time, UTC-04:00)  #    

      I arrived in Seattle Sunday afternoon and went to two receptions that evening. I met people, took pictures (not enough) and picked up some to-do items. I had a huge fight with my own power supply and then the hotel high speed. I think I hate technology. I love what it gets me though, so I'll put up with it. There are a number of RDs here, and my badge reads MVP/RD which is a really nice touch.

      RD | MVP
      Tuesday, 06 April 2004 20:12:37 (Eastern Daylight Time, UTC-04:00)  #