# Sunday, 08 October 2006

I was looking forward to next year's Tech Ed USA for more than the usual reasons we look forward to a Tech Ed. You see, it was going to be in New Orleans, and I've never been there. Everyone said it was a place you really should see, and here was my chance to both see it and somehow feel like I was doing a good deed by contributing to the economy. But that's not how it's going to be, apparently, not in 2007 anyway. (Story on bink.nu) It seems the airlines haven't bounced back yet in terms of allocating capacity to the city, so Tech Ed 2007 will be somewhere else. Any chance they'll consider Toronto? :-)

Kate

Sunday, 08 October 2006 00:28:45 (Eastern Daylight Time, UTC-04:00)  #    
# Saturday, 07 October 2006

Confused about what .NET 3.0 is and is not, and what the next set of libraries after 2.0 will be called? Here's a pretty comprehensive summary from Julie Lerman that lays it out for you.

.NET 3.0 is.NET 2.0 plus the four new components [WPF, Cardspace, WCF, Workflow]. Those four core technologies are called the ".NET 3.0 Components".

The four new components were developed as part of the Vista effort but are so cool that everybody wanted them to be available downlevel, which they are to varying degrees. Julie also gets into Orcas, Atlas/Ajax, LINQ, and what works with what and when (roughly) you'll see it. Check it out.

Kate

Saturday, 07 October 2006 00:36:52 (Eastern Daylight Time, UTC-04:00)  #    
# Friday, 06 October 2006

Airports, like software, need to be tested before they're released -- or I guess for an airport, you'd say opened. That's why the Greater Toronto Airports Authority, which operates Toronto Pearson International Airport (YYZ), is asking for volunteers to come to the airport on the morning of Oct 28th and wander around like they were trying to catch a flight, or arrive from a flight, or whatever. Can you read that sign as you head down the elevator? Is it obvious that you are not at ground level and need to find an elevator to get to ground level? Is this hallway really wide enough when two planes arrive at once and 400 people are walking through it? It's not like there wasn't any thought put into that sort of thing in advance, but before you open the doors, testing is a really good idea.

If you live in the Greater Toronto Area and want to tell your grandchildren you once beta tested an airport (perhaps the fact that you parked and ate at an airport for free will excite them more) then head on over to http://www.gtaa.com/airportvolunteer/ and sign up. Apparently there's some sort of souvenir in it for you, and you'll get to see the new parts of the terminal months before they open. Go for it!

Kate

Friday, 06 October 2006 17:20:01 (Eastern Daylight Time, UTC-04:00)  #    
# Thursday, 05 October 2006

Some people are so busy playing UAC-a-mole on their Vista machines that they aren't even looking at the dialogs. In fact these "annoying interruptions" are actually full of information, and it would be a good plan to learn how to read them. In today's installment, I'll show you the results of right-clicking two different shortcuts and choosing Run as Administrator:

See, they're really quite different. The top one is saying "Part of Windows! OK to Trust!" and the bottom one is saying "Stop a minute! Do you really know this app?"

The problem is that most of us are going to read "blah blah blah blah do you want to keep working / playing blah blah blah" and just click Continue without even thinking. That's a shame.

Kate

Thursday, 05 October 2006 16:30:26 (Eastern Daylight Time, UTC-04:00)  #    
# Wednesday, 04 October 2006

One of the best things about being a Regional Director is the other Regional Directors. These are wonderfully smart people who share their knowledge with each other. Most of them also share with the public through blogging. If you're an avid reader of my blog you'll have seen links to other RD blogs over time. If you'd like a one-stop-shopping approach to RD blogs let me recommend http://indepthtalk.net/Feed.aspx, which shows the first paragraph or so of each post, or  http://indepthtalk.net/Community/RD.category which gives links to all the blogs and shows just headlines. There's also an RSS feed at http://indepthtalk.net/Community/RD/Feed.rss.

This is hand-aggregated content, just like TechEdBloggers and its cousins. That means not every post is aggregated, and they don't show up the instant they're posted. But it's a fantastic way to see what we're up to and to get to know some blogs you may not be reading yet. Give it a whirl!

Kate

Wednesday, 04 October 2006 10:09:52 (Eastern Daylight Time, UTC-04:00)  #    
# Tuesday, 03 October 2006


Under Vista, an application can have a manifest that identifies the privilege level it needs to run. These manifests can serve other purposes, too: they're also known as fusion manifests and can be used to identify dependencies among other things. Adding one to your application starts with adding a file to your project (right click and choose Add, New Item: depending on the language you're using you might be able to choose XML file or else Text file will do.) Then you put appropriate XML in it, like this:

<?xmlversion="1.0" encoding="utf-8" ?>
<
assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<
assemblyIdentity version="1.0.0.0"
processorArchitecture
="X86"
name
="Sample"
type
="win32" />
<
description>Sample Manifest Test Application</description>
<
trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<
security>
  <requestedPrivileges>
 <!--
<requestedExecutionLevel level="requireAdministrator" /> -->
 
<requestedExecutionLevel level="asInvoker" />
 <!--
<requestedExecutionLevel level="highestAvailable" /> -->
 </requestedPrivileges>
 </security>
 </trustInfo>
</
assembly>

You save the file as ApplicationName.exe.manifest. (When I intend to embed the manifest, I tend to call it app.manifest instead. If you plan to embed it, the filename doesn't really matter, but then if you change your mind and want an external manifest you'll need to remember to rename the file.)

At this point, you can follow the instructions in Catherine Heller's blog. The thing is, when I first read them I thought she skipped a step or something in explaining how to do it with Visual C++ 2005. After all, the other approaches had tons of steps!  There are .rc files, and .res files, and custom build steps, and unloading projects so you can open them differently, and never-mind-the-error-message notes, and all of that. And then for C++ it's just "open the project properties dialog, on the left-hand pane expand the Configuration Properties->Manifest Tool node and select Input and Output. You can enter the name of an external manifest file in the Additional Manifest Files field." But you know what? That's it! You make the manifest, put its name in the dialog, build the project.

Presto, your app has a manifest. Depending on the value you enter for requestedExecutionLevel and the account under which you run the app, you will see different behaviours at runtime.

Kate

Tuesday, 03 October 2006 07:35:51 (Eastern Daylight Time, UTC-04:00)  #    
# Monday, 02 October 2006

I use the Recent Documents list on my Start menu quite a lot. I often work on a number of documents types at once, all from the same folder (organized by project, for example). I open one document that way, but then if I want some other document from that folder, it gets tiring going to Recent Documents all the time. As a result I tend to use Start, Run, and start to type the name of the folder -- since things I typed recently are remembered, it doesn't take many keystrokes:

But now on Vista I have something even easier to deal with. There's an extra choice on the context menu for the Recent documents list:

That's a timesaver for sure!

Kate

Monday, 02 October 2006 18:14:36 (Eastern Daylight Time, UTC-04:00)  #    
# Sunday, 01 October 2006

A client of mine, International Time Recorder, is hiring in Etobicoke. Here's the job description:

Job Title:  Senior Application Developer

Senior developer responsible for contributing to the design, development and implementation of commercial software solutions to a diverse marketplace.

Duties
• Contribute to the analysis and design, while being accountable for the support, development, testing and implementation of solutions and enhancements to software systems.
• Design and develop software components and features.  This includes working with stakeholders in developing Detailed Functional Specifications, designing certain key components of the product and implementing the solutions.
• Support and design of maintenance and test procedures and test cases for the product.
• Participate in schedule development and ensure timely product delivery.
• Assist in the creation and implementation of concrete procedures for tracking and releasing product updates.
• Coach and mentor junior development team members in best practices for support, development, testing and implementation of software solutions conducting code reviews as needed.

Qualifications
Education:  University Degree in Computer Science, or equivalent experience
Experience:  8 – 10 Years

Required Skills:
• Familiarity with the following technologies: C#, ASP.NET, C++,  ADO.NET, ADO, Web Services (SOAP/XML), RPC, all Windows Operating Systems, IIS, COM, Active Reports
• Two years experience in .NET development in commercial software development using C#, ASP.NET, ADO.NET
• Eight years experience in commercial Windows Application Development
• Experience in Scaleable Distributed Application design
• Three years experience in designing SQL Server databases
• Proven experience in developing database-driven Web and Windows applications with demonstrated flair for design and layout
• Two years experience as a project lead

Nice-to-Have Skills:
• Time and attendance industry experience
• Experience with Microsoft Visual Studio Team Systems.
 

The firm is doing active development in both C++ and C#. If you're looking for a place to use both old and new skills (and a chance to get regular mentoring from me :-) ), drop me a line and I will forward your information along.

Kate

Sunday, 01 October 2006 13:28:10 (Eastern Daylight Time, UTC-04:00)  #