# Wednesday, 21 July 2004

Last night Adam Gallant came (from his sickbed) to speak on game and media development at the East of Toronto .NET User Group. For the summer, we meet in a snazzy new lecture hall at the University of Ontario Institute of Technology. Adam wanted to draw some diagrams -- with a pen, on paper. That's pretty low tech. But so everyone could see what he was doing, the room has a document camera hooked up to the projector. Fun toys!

You can see in the background there are both whiteboards and blackboards as well. It was never like this when I was a student (my University of Waterloo student number, which I still know, starts 77.)

It will really hurt to give up this room in September when the students come back. Sigh.


Wednesday, 21 July 2004 09:42:53 (Eastern Daylight Time, UTC-04:00)  #    Comments [0]
# Monday, 19 July 2004

The East of Toronto User Group is meeting tomorrow at Durham College / OUIT once again. Please come and see Adam Gallant talk about game and media development:

A lot of software developers have realized the benefits of moving to the managed code environment provided by .NET, and are writing applications using C# and VB.NET. However, one of the most of the most exciting new technologies available to .NET developers is the availability of Managed DirectX, which provides managed access to building rich 3D application and games to .NET developers. Not a poor second cousin, Managed DirectX provides almost identical performance as native DirectX code. In this session, we will introduce DirectX concepts, the Managed DirectX classes, and demonstrate a managed game written in C#.

Please visit http://gtaeast.torontoug.net/UG_Events/627.aspx to register.


Monday, 19 July 2004 14:32:52 (Eastern Daylight Time, UTC-04:00)  #    Comments [1]
# Wednesday, 14 July 2004

On Monday night, folks who were in town for the partner conference came out to dinner with some locals. As always when RDs gather, I learned some things and laughed a lot. Here are a few snaps:

Craig Flannagan, MSDN Guy and RD-looker-after in Canada is in the foreground. Then we have Scott Howlett of Toronto, and hiding behind a HUGE bottle of wine is Thomas Lee from the UK.

Here we have Patrick Hynds of New England, Ryan Storgaard who lives in either Calgary or Vancouver (it's complicated,) and Patrick's boss Bruce.

And at this end of the table it's Adam Gallant, my local DE and buddy, Jonathan Zuck of the Association for Competitive Technology, and Patrick again, who managed to have his eyes closed in both pictures.

Thanks everyone for joining us, it was a great evening!


Wednesday, 14 July 2004 09:16:43 (Eastern Daylight Time, UTC-04:00)  #    Comments [0]
# Thursday, 08 July 2004

Here's a strange thing that happened yesterday. An ASP.NET app, written in VB.NET, was only intermittently dealing with its events, such as button clicks. At first it seemed to be that the event was handled if we were debugging, and not handled if we were not. But that turned out not to be the case.

Whenever you're faced with weirdness -- and let's face it, an event that sometimes is handled and sometimes is skipped counts as weirdness -- the knowledge base is your friend. A team member found 314965, which is a C# version of the problem. Although no-one could find a VB KB article, these are our symptoms, and more importantly this fix was a fix.


A control event on a Microsoft Visual C# .NET Web application form may not fire. The event does not fire if you wire the control event imperatively, that is, if you double-click the event from the Events view and then add the code.


Add the event to the HTML code behind the form, that is, wire the control event declaratively.
“Wire the control event declaratively” means put an onxxx= attribute in the HTML:
<asp:Button id="Button1" runat="server" oninit="Button1_Init" Text="Button1"></asp:Button>
Instead of oninit you might have onclick or whatever event you have an issue with. Also, make your handler function public rather than private.
Moral of the story: there are two. First, it isn't always you. I can't tell you how many emails I've received telling me “there must be a bug in Microsoft's C++ optimizer, because my debug builds work beautifully but my release builds blow up.” Experienced C++ programmers mutter or shout “memory problem” when we get such emails: you're overwriting something or leaking or just generally not handling memory well; debug and release builds have huge differences in allocation, initialization, and other memory work when you're using unmanaged C++. Most of the time, it's you. But every once in a while, it's not you. And a quick search through the knowledge base is one way to see if it's you or not. Second, just because you're writing in VB doesn't mean that C# KB articles don't apply to you. Never be a language snob.
ps: of course I program in VB sometimes. What else would I use to create ASP.NET apps?
Thursday, 08 July 2004 09:48:33 (Eastern Daylight Time, UTC-04:00)  #    Comments [1]
# Tuesday, 06 July 2004

I know these things are silly, but anyway:

You are Windows 2000 SP3.  You're a steady and reliable friend.  People think you're all business, but with your recent therapy you've become a little more playful.
Which OS are You?

How did it determine I was service pack 3? I don't want to know. You can see all the possibilities at http://bbspot.com/News/2003/01/os_quiz_all.html. I think I would have rather been XP.


Tuesday, 06 July 2004 16:21:37 (Eastern Daylight Time, UTC-04:00)  #    Comments [1]
# Monday, 05 July 2004

My Microsoft DE, Adam Gallant, is blogging about DevCan so I guess I can too. I'm co chairing two tracks.

What is it? Well it has tracks, so it must be a conference, right? And it has Can in the name, and a maple leaf in the logo, so it's in Canada. And we're planning it now, so it's not in July but nor is it in the spring of 2006.

Stay tuned...


Monday, 05 July 2004 11:00:59 (Eastern Daylight Time, UTC-04:00)  #    Comments [0]
# Thursday, 01 July 2004

”For pure .NET, C++ typically 25% faster than C#” is the only English sentence (other than photos of slides) in a blog entry I just came across. The rest is Italian, but you know that one sentence certainly caught my eye.

The entry describes a June 30th (that would be yesterday!) Herb Sutter talk. I ran it through Babelfish, but automatic translation doesn't do well with technical terms:

Ago from landlady the "Deterministic finalization" where java and C # is under accusation in order not to have conserved the concept of annihilator in the language. The C#/CLI annihilator is the equivalent of the pattern arranged suit.

Er, OK. Still I think the slides say a lot, and 25% faster? 50% faster if there's heavy pinvoke? Wowza! The future of C++ is indeed a much rose-colored one.


Thursday, 01 July 2004 17:08:17 (Eastern Daylight Time, UTC-04:00)  #    Comments [0]

Like this quote?

I may have to retreat from my stance of preferring C# and disliking MC++. With Whidbey, MC++ is a whole new language and nearly all of my current objections to it have disappeared.

It's from the last paragraph of an article by Brent Rector  :-) The article itself is worth a read, too.



Thursday, 01 July 2004 16:55:20 (Eastern Daylight Time, UTC-04:00)  #    Comments [1]
# Wednesday, 30 June 2004

In conjunction with the announcement of the Express products, Microsoft's Channel9 is running a coding contest. Each language has its own judge, and yes of course there's a C++ judge. “The Summer of Express contest is a worldwide skill contest where developers are challenged to create “non-business” applications using the newly announced Express products.” And yes, you can use the betas -- in fact that's the whole point.

 Why not?


Wednesday, 30 June 2004 09:56:54 (Eastern Daylight Time, UTC-04:00)  #    Comments [1]