Outlook Addins, .NET 1.1, 2.0, or VSTO?

There are now many platforms on which you can build your Office Addins.  This is great news, but also very complicated.  As a developer, which do you choose?  I stumbled through these and learned by making mistakes.  Here is what I learned.

VSTO
The Visual Studio team knew that building .NET apps was hard.  They built a set of wizards and tools called “Visual Studio Tools for Office” which is really great.  If you want to get going quickly, this could be for you.  However, if you are an ISV, forget about it.  Your application will only run in Office 2003 or later.  For me, this is a showstopper.

.NET 2.0
.NET 2.0 seems great!  Lots of great features like generics and added support classes.  Combined with VS2005 integration, it seems like the perfect platform for writing an Outlook Addin.  There are a few big problems with it.

First, nobody has the .NET2.0 runtime.  It does bundle with Vista, so hopefully this is a temporary problem.  But .NET 1.1 is pre-installed with more than 50% of the XP machines out there.  Using .NET2.0 will mandate an extra 23MB install for your customers.  Further, the install time for .NET2.0 is excessively slow.  Not including download time, it can take up to 8 minutes to install.  I’ve watched users squirm in their seats waiting for it to finish, and they blame your application.  1 or 2 minutes would be acceptible, but 5+ minutes is just over the top.  This leaves your customers with a bad feeling about your app from the minute they install.

But the biggest problem with using .NET2.0 for Outlook Addins is co-existence with the .NET 1.1 runtime.  I’ve not seen any functional errors here, but if you have one addin installed which uses .NET1.1 (say Lookout) and another .NET addin which uses .NET2.0, Outlook startup is very very slow.  Loading one runtime is bad enough (users do complain), but loading two is just too much.  Unfortunately, there are a lot of existing apps out there using the 1.1 runtime, so if you use the 2.0 runtime, you’ll be slowing down their performance considerably.

If the reason you are excited about .NET2.0 is the built-in ClickOnce feature (a very compelling Auto Update story), you might want to think again as well.  This feature turns out to not work for Firefox users without some pretty bloody hacks.  (That is, if your customers use firefox, and they download your plugin, it won’t install/update)

Conclusion
If you are serious about writing a .NET-based Outlook Addin, and you want to have large distribution and reach, neither VSTO nor .NET2.0 are suitable platforms. 

Stick to VS2003, .NET1.1, and you’ll have smooth sailing.  On the positive side, VS2003 was a pretty good platform too.  Just don’t forget to write your shim!

Captchas for My Blog Comments

If you are an avid reader of Belshe.com, and have never posted a comment, well, shame on you!  But, if you have, you may notice that I now have captchas in place.

Thanks to the WordPress Challenge Plugin, most spammers should be finally locked out. 

You may wonder, “how much spam can Mike possibly get on his piddly little blog?”  Well, just today I moderated out 267 spam comments, with 1 legitimate comment.  Imagine having to look through a list of 267 messages to find ONE that was worthy… Every day!

If you read this blog and never posted a comment – post one now!  It’s easy, it’s free, and your post will help save the environment. 

Shared Calendars

I started using Google Calendar for personal use recently, and ran across a nifty feature. Sharing Calendars is actually pretty cool – both for personal and professional use.

Shared Calendars for Personal Use:

I already maintain a mailing list for my family. Today, I created a family birthday calendar, and included all of my family members. I was then able to share that calendar with everyone in my family so that they could keep the data fresh, or just read it as an overlay to their existing calendars. It’s kind of nice. Time has yet to tell if anyone else will use it.

Shared Calendars for Professional Use:

Oddly enough, when I used Outlook (for the past 10 years!) I never thought I really would want to share my work calendar with others. But since I now have GMail as my work mail, I can actually do it. And I have discovered that I can now keep a combined calendar with both personal and professional information in it. Before, I never wanted to put my personal events into my corporate calendar. It just seemed wrong, and I wouldn’t want others to see personal information showing up at work. Since I now have GMail both at work and at home, I share my calendar from my personal account over to my professional account, and I effectively get this feature. But I didn’t have to actually put my personal data into my account, and my coworkers can see my corporate calendar data without seeing my personal data too. This is very handy.

The Killer Feature – You Need Both

My net conclusion is that I can finally start using an online, personal calendar. Prior to being able to share between work and home, I almost never had a reason to go visit personal calendar, while I visit my professional calendar several times a day. Being able to view both calendars concurrently finally makes it worth recording into my personal calendar – I actually use it now.

I realize I’m a bit lucky because I get to use GMail both at work and at home. Hopefully more companies will be able to use GMail soon too.

GPAs as Interviews

The New York Times recently reported about some changes to Google’s hiring and screening processes.  It’s interesting to think about ‘how do I find the best employees’.  But what what do you think about using the GPA as a screener?

Fortunately for me, I had a pretty high GPA, so I probably qualified even under Google’s strict policies.  But, I have to admit it was strange to put my never-referenced GPA onto my Google application.  It has been so long since I used it that I had actually forgotten what it was. 

The Times article claims:

“Unfortunately, most of the academic research suggests that the factors Google has put the most weight on — grades and interviews — are not an especially reliable way of hiring good people.”

I think the Times is wrong.  I don’t think there is academic research which supports this at all.  I have yet to meet a person that was a successful student that didn’t become the same type of employee.  These people are smart, work hard, and love to work.  It’s in their DNA, they are often “Type A”, and they are always successful.  As much as we all hate to think that our college DNA could brand us for the rest of our lives, it actually may be one of the better metrics. 

The Times could have said that “just because you didn’t have a high GPA doesn’t mean that you won’t be a good employee.”  This is certainly true as well.  There are plenty of great people out there that didn’t find school interesting enough to do well, yet are perfectly qualified.  I think that Google’s change in policy is really about finding these people.  You always need to find new ways to screen candidates.  Maybe the people that didn’t pass the easy screening before would actually be great employees.  Is there another metric, however?  Of that I’m skeptical.

Microsoft’s Revenue Breakdown – 2003-2006

Here is how Microsoft’s business breaks down. This data is all from Microsoft’s Annual Report, June 30, 2006.

From 2003-2006, Microsoft has reported revenues in 7 business units. Prior to that they reported 4 business units, but I’m not going that far back. I’ve also included data from Google’s annual reports 2003-2006 just to put things into perspective.

Click the charts for full details.

Microsoft’s businesses are:

  • Client (Windows)
  • Information Worker (Office)
  • Server & Tools (Windows Server,
    Exchange, SQL Server, etc)
  • Home Entertainment (XBox)
  • MSN
  • Business Solutions (CRM, SBA)
  • Mobile (Windows Mobile)

Notice that 3 of Microsoft’s business units are each significantly larger than Google as a whole, both in terms of revenue and income. (I estimated Google’s 2006 numbers, since they are not reported yet).

When the Wave Hits

All of us that work on server products have weathered storms where our services had to endure a wave of traffic.  The wave could be caused by any number of things – time of day, a particular press release, or a new product launch.  Generally, you plan these events very carefully to make sure that engineers and operations staff are on hand when the Wave hits.

Now, imagine you work at Apple.  You know your wave is coming.  When?  Christmas Day, of course.  Yikes!  Hard to change that.  Some are reporting Apple’s traffic spike at a 1000% increase over the prior week – causing the site to go down.  Imagine you are the poor Director of Server Engineering there, and responsible for keeping the site up?  So much for Santa Claus – you have to go to work!

I know, it’s hard to feel sorry for the successful.  But for some reason, I feel for them on this one.  Of course, you might feel more sorry for the millions of people that tried to use the iTunes site on Christmas Day.

Vista DRM Controversy

The top 10 results on Google News search for “Vista DRM” today reference this ridiculous Peter Gutmann article.  This is a bunch of Microsoft bashing.  I’m actually surprised at how many so-called news sources are quoting this article without thinking.

Gutmann uses some cool sound-bites, though, like:

 “The Vista Content Protection specification could very well constitute the longest suicide note in history”

and

“This seems a bit like breaking the legs of Olympic athletes and then rating them based on how fast they can hobble on crutches.”

Yeah right.

Do you really think Apple is going to skip DRM, be legally prohibited from displaying HD content, and force their users to use Windows?  Ha!  Don’t blame Microsoft for this one, guys.  It’s the movie and music industry.  And it’s their content and their choice for how to protect it.  If you want, you can cast your vote by not buying the content.  Vista is just another viewing medium – like your TV, CD player, DVR, etc.

Protecting Your Privacy: Don’t Go To College

Last month I received a letter from UCLA telling me that they had leaked my personal information to a hacker.  I never went to UCLA.  I applied to school there 17 years ago (and was accepted, of course!).  Since I declined their offer to study, I guess they finally got their revenge by giving my information to a hacker nearly two decades later.

I don’t know which is worse, UCLA’s negligent information retention policies, or realizing that its been 17 years since I applied to go to school.

Web Boom 2.0 – The Bubbgle

Don Dodge writes about why this bubble will be less severe than the last bubble.  I found it an interesting read.  It certainly is true that a lot of this bubble is via private institutions and acquisitions.

There is another interesting follow on from Alfred Thompson, lamenting how it’s the employees that get their lives really hurt by way of layoffs when the bubbgle bursts.

I agree with Alfred about who gets hurt.  But I don’t feel very bad for folks that get laid off.  All of us as employees have a responsibility to choose our employers well.  If we fail to do that, we might get burned.  Choose wisely.  Many of us in Silicon Valley have been chasing startups for a long time.  When we choose to work for small companies, there is risk.  We know that.  While it can be devastating to get laid off, all of us need to assess whether we can take the risk before we accept a job. 

For me, personally, I landed at Critical Path by way of acquisition in 2000, and at the time it seemed like a pretty good deal.  9 months later (just after I left), it turned out that Dave Thatcher and Tim Ganley were crooks, and the whole company collapsed.  Was it my fault that the executives lied to investors, employees, family, and friends?  No.  But was it my fault for having invested heavily into a risky company? Absolutely.

So, when the bubbgle bursts, all the folks (including me) that are working for Web 2.0 companies may have a rough time.  For some, it will work out just fine.  For others, it will work out very badly.  That’s Risk.  As Warren Buffett says, “Risk comes from not knowing what you are doing.”  I don’t feel sorry for people that don’t know what they are doing.  Bubbgle or not.