derek hatchard

aggregating from ardentdev.com and derekhat.com

August 2004 - Posts

New Microsoft S+ARK mouse

I picked up the new Microsoft S+ARK mouse last week:

So far it is quite nice to use and it certainly looks sexy -- almost as if it were supposed to be attached to a Mac instead of a PC.  :)  It has no special features like a tilting side-scrolling wheel or side buttons, but that's OK by me.  Anyone else have one?  What do you think of it?

Expedia.ca Cafe?

Ever heard of the Expedia.ca cafe at the Toronto airport?  I'm sitting beside it right now staring longingly at what appear to be network jacks on each table.  Unfortunately it is too freaking early here for them to be open...  Maybe there is wireless by my gate...

Wanted: Webcast topic suggestions

While at the airlift I met the guy behind MSDN Webcasts.  I'm going to be proposing a couple of topics for the upcoming ASP.NET Webcast week.  I have a few ideas already -- I want to carve out a session on ASP.NET 1.1 and a session on ASP.NET 2.0.  If there is anything about ASP.NET that you would like to see presented in Webcast form, please leave a comment or send me a message via my blog contact page or email derek.hatchard'AT'gmail.com.

Disgruntled traveler from the airlift

I am writing this post offline at the Toronto airport (with Sauce Reader 1.7 which now supports comments - wahoo!).  I am returning from a Microsoft airlift in WA.  I am not very coherent because I got stuck on a red eye with two layovers -- which translates into limited opportunities for sleeping.  Now that it is morning in Toronto I have to go find some caffeine.  I'm stuck here for 5 hours before catching the last leg of my flight to Moncton.  Thank goodness I limit my travel -- getting in and out of New Brunswick is a real pain unless you are only going to Toronto or Montreal.

I have not been able to find a wireless hot spot at any of the airports I've been through so I have not had Internet access since I left the announcement about the features cuts and schedule change for Longhorn.  Therefore I have not had a chance to see what I can only imagine is some wild commentary and harsh criticism about the announcement.

I saw some interesting stuff at the airlift.  Some I can talk about now and some I cannot mention yet.  :(  There is much goodness and some disappointment.  Expect to hear more from me in the coming months about the new Visual Studio Tools for Office that correspond with Visual Studio 2005.  That part of the smart client story has dramatically improved.  It was interesting before but with the 2005 release it will become accessible enough that a lot more people will consider hosting part of their smart client solution in Office apps.  For example, imagine creating a standard .NET user control that can be exposed in the Word task pane with ONE LINE OF CODE.  That user control can then call a Web service to obtain data and then push it into the Word document.  That is much goodness!

I had enough thought-provoking experiences at the airlift to fuel a few more blog posts.  Stay tuned.  Now off for some caffeine to get through the next four hours.

The purpose of *.vshost.exe: Now we know

I have been wondering what the purpose of *.vshost.exe was when I ran apps from Visual Studio 2005.  Now I know.  It's actually quite cool.  Check it out:

VSHOST -- the Hosting Process

What is "vshost"?

This is the "hosting process". It is created whenever you build a project in the Visual Studio 2005 IDE. Its purpose is to provide support for improved F5 performance, partial trust debugging, and design time expression evaluation.

<snip>

Should I deploy the "vshost" files with my application?

No. The "*.vshost.exe" and "*.vshost.exe.config" files are only for use in the Visual Studio 2005 IDE. They should never be run directly, and they shouldn't be deployed with your application.

The ability to fire is the nuclear weapon of leadership

In the midst of a post about communication, Chris Anderson makes a great point about being a manager:

Anyone who manages from a power base rooted in the review process is generally a bad manager. The review process, the ability to fire, are all tools of last resort. These are the nuclear weapons of leadership and should never be used as methods of persuasion. Instead, in the end, it's about our ability to communicate ideas, infect people with our views, and build a groundswell of support.

I think maybe Chris sells the review process a bit short but he is right about firing.  Certainly a regular review between manager and employee can be beneficial for both sides.  Granted I don't know anything about the review process at Microsoft or other companies where Chris has worked.  There is risk of disaster when the fear of a bad review is the motivation for an employee to follow his/her manager.  The ability to hire, fire, or conduct a review does not a leader make.

Another great point is from Patrick Lencioni in The Five Temptations of a CEO.  In the fable, the CEO has fired his VP of marketing because new marketing efforts were not working.  The CEO is chastised by his sage because the CEO had not communicated to the VP that his job was in such serious jeopardy if he did not get things straightened out.  [Read the book for more details - it is a recommended read if you manage a team of any size].

In order to run my own software company, I have to be a boss - otherwise it would just be me working in my basement and there's only so much I was able to accomplish doing that in the past.  I have four full-time employees and three regular subcontractors [and looking for more if you live near Moncton, NB, Canada ;) ].  I am very selective in choosing people to help us build solutions.  I have assembled a very smart team and I am very pleased with every member.  I have never had to fire anyone but I have thought about it a lot because I have had some less-than-hoped-for student work placements (you can't fire them...).  I feel that before an employee is fired there should be so much communication between the manager and the employee that the firing would not come as a big surprise.

Before getting fired, an employee deserves to know the following:

  1. What exactly is expected of him/her (clear expectations)
  2. When and how he/she is not meeting expectations (feedback)
  3. What needs to change (guidance)
  4. When his/her job is in serious jeopardy (fair warning)

Someone who is given clear expectations, honest feedback, and pragmatic guidance (on how to bring performance up to par) yet continues to under perform is either in over his/her head (incompetent) or does not care (unmotivated).  Some fair warning might help motivate certain people to rise to the challenge, which saves a company from having to find and train a replacement.  Otherwise, firing the person is all that can be done.  It should be the last resort - the nuclear weapon of leadership.

Some companies will put employees on probation but in my mind that alienates people rather than inspiring them to get their act together.  It can become the workplace equivalent of a dunce cap.  An honest conversation about the inevitable consequences of poor performance (i.e., getting fired) should be sufficient as long as the manager has done his/her job of clearly communicating expectations, feedback, and guidance.

I believe it is the responsibility of a manager to initiate the four types of communication listed above and to make sure the communication is open, honest, and effective.  It is not appropriate for a manager to drop subtle clues and hope the recipient picks up on it.  The communication can happen over a casual (private) lunch or in a more formal setting (performance review) as long as it is clear.  Here in Canada and certainly in many other countries, only the fourth item above is required by law to be clearly communicated ("two weeks notice").  There are also some protections against unfair and unlawful dismissal but that can be a real gray area. 

Firing someone generally inflicts damage on both the individual and the company.  In the interest of mitigating risk, taking measures to ensure adequate communication seems prudent before firing somebody.  One concern I have is that a lot of managers are either not competent enough or not comfortable enough in their role (as a manager) to communicate adequately with their staff.  This is probably most evident when a promotion results in a manager managing his/her former peers.

If you run a software company, manage software developers, or work for a software company, please leave your comments.  I'd like to hear what others think about managing versus leading; communication between boss and employee; and the onus on a manager to adequately communicate expectations, feedback, and guidance to his/her staff.

Tune your ClearType

If you use an LCD screen (laptop or monitor) with Windows XP or higher, you should use ClearType.  Visit this URL to turn it on and tune it via Internet Explorer (requires an ActiveX control):

http://www.microsoft.com/typography/ClearType/tuner/1.htm

Yesterday I adjusted the brightness on my LCD monitor because a video was too dark.  Today I found that my fonts looked "off".  So I jumped to the ClearType tuning site and all is grand again.  :)

Registration in the MIDDLE of "automatic" updates. WHAT?!!?

I just installed Mac OS X (10.2 - Jaguar) on an old iMac (primarily to test Web apps in IE:mac and Safari).  After a clean install, I was given the chance to do software updates.  OK, sure, great.  After a reboot, it came up AGAIN with more updates.  OK, sure, great - again.  After another reboot, guess what?  MORE updates.  This time I just said no (I don't need iTunes on this relic of a Mac).

In the MIDDLE of the software updates, a QuickTime registration page popped up, which seemed to halt the installation of updates (which are apparently downloaded serially and then immediately installed).  So while I was working away elsewhere, the entire download and installation process was apparently waiting for me to click OK.  Considering the size of some of the updates coming from Apple, allowing a program to stop the download process part way through seems to be a poor idea.

It could be just that my old iMac is so slow that it just appeared that things had stopped - if so, my apologies to the Mac OS X team.  But if my suppositions are correct, I would suggest that Apple considering making two changes to its Software Update feature:

1. Do not make me interact with the updates as they are installing.  For example, QuickTime could surely ask me to do the *optional* registration the first time I run it.

2. Do not stop downloading other updates while one update is running.

Blogging with Sauce Reader

Today I discovered that the latest version of Synop Sauce Reader, a nice little free aggregator, contains a WYSIWYG editor for posting new Weblog items to a variety of systems including .Text and dasBlog.  It even includes basic spell checking and a feature for stripping out MS Office formatting (so you can write and spell check in Word, possibly send around an article for comments, and then paste it into Sauce Reader).

I've tried it out for a couple of posts and it is excellent - a much better first experience than w.bloggar was.

Recommended.

New Halifax .NET User Group

For those in and around Halifax, Nova Scotia, Canada, a new .NET user group is just getting established.  The first meeting is Tuesday 7 September 2004 with special speaker Adam Gallant, a developer specialist at Microsoft Canada.  More details are available online at this temporary URL:  http://netNS.ardentdev.com/.

More Posts Next page »