There's good news and bad news on the "C++ product team blog" front. The good news is that Nikola Dudar has a new entry after about three months of silence. The bad news is that it's to announce that STL/CLR will have to wait a little longer. It slipped out with beta 2 but it's not in the release version, and was planned as a web download. But the team is heads-down on a number of fronts and this is one of the items that has had to be postponed. The big focus is MQ, an internal milestone that all the languages and tools are working on.

As someone commented the other day at a presentation I was doing, I still have VS 2005 in a VPC and not on my base machine. Why? Well I have a big ASP.NET project finishing up that is all done in 2003 (an Enterprise client, not an early adopter at all and it's been 18 months since we started) and I was just a little nervous that if I put the 2.0 Framework and the like onto my laptop that I would mess things up. I had no proof of that, and no time to go find out one way or the other, it was just a gut worry born of spending 25+ years doing this stuff. I decided to use the 2005 VPC for demos and playing with the new tools and carry on with 2003 on the actual metal.

Well today someone gave me a way cool tool that I really wanted to use -- and it needed the Framework 2.0. I decided to give it a whirl. The actual installation was nice and quick and didn't even require a reboot (though the installer did insist on my closing a few things I didn't think were framework dependent.) Then, cool tool installed, I went back to my final bug triage on the ASP.NET project, and when I brought up a report (using the ReportViewer control on the aspx page):

The report server cannot decrypt the symmetric key used to access sensitive or encrypted data in a report server database. You must either restore a backup key or delete all encrypted content and then restart the service. Check the documentation for more information.

Aaaargh! I have no clue how to restore a backup key, or what my encrypted content is and how I would feel about deleting it! So what to do? Toss that string into a search engine and you'll find links to a KB article that says "oh, you should have done xyz before you changed the user account that SRS runs under." The resolution is of no help to anyone who accidentally did so (and no, I didn't think that installing a new version of the framework would change the user account under which SRS runs.)

I uninstalled and reinstalled SRS, then redeployed my reports by opening each 2003 solution that I'm actively using on this machine, right clicking the Reports project in each and choosing Deploy. Took less than half an hour counting the near panic attack when i first got the message. But that's not a strategy for the production machine, so I just added another ToDo to the post-go-live list, since the client is sure to want the Framework 2.0 on that machine eventually.

One of the main "deliverables" of a code camp is to attract attendees who don't normally go to conferences, launches, or even user group meetings. Another is to attract first time speakers. I love seeing "that look" on someone's face, when they are fresh off the stage, they gave their talk, the demos worked and they are still alive! Little do they know they're hooked at that point .

Here are some blog entries by brand new speakers at the Toronto Code Camp:

Paul Scarlett wrote to DotNetRocks about the experience... his link is to Carl reading the letter and then Carl and Richard talking about how terrific we all are . If you poke around elsewhere in his blog you will find various other postings describing the speaking experience for Paul.

Shaun Hayward blogs about his Code Camp experience... he liked it so much he's the speaker for February's meeting of the East of Toronto .NET User Group. (Register now!)

Let's say for the sake of argument that you own a small Canadian business and you are about to employ a child of yours to work in that business. You know that you don't deduct Employment Insurance (EI) premiums from yourself, because you own more than 40% of the company. But what about your child? So you search a little and you find two official government websites (.gc.ca means Government of Canada .ca). Here is what they say:

If you are a family member, i.e. spouse or child, paid as an employee by the family enterprise —business or farm— you are like any other worker and can be paid EI benefits, as long as you meet the requirements for regular or maternity, parental, sickness and compassionate care benefits.

Even if there is a contract of service, employment is not insurable and is not subject to EI premiums in the following situations:

casual employment if it is not for your usual trade or business;

employment when you and your employee do not deal with each other at arm's length. There are two main categories of employees who could be affected: related persons and non-related persons.

Related persons: These are individuals connected by blood relationship, marriage, common-law relationship, or adoption. In cases where the employer is a corporation, the employee will be related to the corporation when the employee is related to a person who either controls the corporation or is a member of a related group that controls the corporation.

That's right, HRSDC Canada says go ahead and deduct, your kids are just like anyone else and they will be eligible. But CRA-ARC, which is the organization that will punish you if you get this wrong, says don't deduct.

What do you do? You might consider phoning the government. This will be entertaining in a way, what with listening to the hold music, playing voice mail hell, and listening to government employees say "oh gee I didn't know that", but not what you might call educational. But after several such phone calls, you can discover that it is possible to request a written ruling from the tax people. And then you resolve to do whatever the ruling says to do and stop worrying your pretty little head about what makes sense or what is right. And take some satisfaction, if you're that kind of person, in knowing that many of the "I didn't know that" guys have promised to show their boss the contradictory information.

The word is starting to spread about the concurrency skills we are all going to need sooner rather than later. And work is underway at dev-tool-makers to offload some of that work to the "system" -- maybe the language, the compiler, a library, the framework, the operating system -- anything other than the programmer because most of us are even worse at threads-and-locks than we were at malloc-and-free or new-and-delete or any other kind of memory management.

If you were wondering about Microsoft's committment to this (and the PDC talks on the topic weren't enough to convince you) then read Kang Su's latest blog entry about the new Bay Area Office they are establishing for this sort of progress... and wait till you see who's going to be working there...

Code Camp was a blast! Some pictures are starting to show up on the web site. I had a jam-packed room, I think word must have got out there was no C++ in my talk . But I had some time at the end so I am going to adapt this talk a bit for DevTeach and put some C++ into it

Chris and Jean-Luc did a fantastic job getting volunteers and running the event - and they both spoke, too! It was also fun to reconnect with Val Matison who first got me up in front of an audience doing a technical presentation... more years ago than I care to figure out right now. I couldn't stay all day but the energy was great, the logistics were working well and I think everyone involved deserves a big round of applause!

I'm so looking forward to tomorrow's Code Camp! Bright and early on Saturday morning I'll be down at Yonge and Bloor with hundreds of other geeky people. Many will be attending their first ever technical event, and many of the speakers will be on stage for the first time too. It promises to be a real rush.

Seems like as good a place as any to thank the contributors who are making it possible:

I put links around the logos, so if there's a company there you're not familiar with, get familiar! These are the leading lights of developer community effort in the Toronto area.