Dan Appleman: Kibitzing and Commentary

My personal blog

Microsoft and Blogging

I’ve often stated that the single most important technical innovation at Microsoft was the MSDN library. Many of you probably can’t remember the sheer pain of developing under Windows before it existed. Manually searching through thousands of pages of reference guides and books slowed things down to a crawl. Today, MSDN is our primary reference – even if most of us use Google as its front end.
But over the past couple of years a quiet revolution has happened at Microsoft that is starting to have a huge impact – especially on more advanced developers or those working with newer technologies. An impact on discoverability that is perhaps second only to MSDN itself.
We all know about Microsoft’s initial love-hate relationship with blogging. And of course, former Microsoft evangelist Robert Scoble was probably the single greatest driving force in getting Microsoft to recognize the value of blogging as a communication tool. But Robert was an evangelist, and while he may have exposed us to interesting technology, that’s not where the really important change happened. The really key change is that at some point it became common (encouraged?) for Microsoft developers to blog about their work. I suspect Robert helped bring about this change as well.
When I started working with Microsoft technologies, the developers lived in an ivory tower (with individual offices, of course), and it was extremely difficult for anyone not at Microsoft to actually communicate with them directly. Worse, anything they knew about the technology they created could only be released to the world after going through the filter of the product documentation group, whose expertise often seemed more in the area of obfuscation than communication.
Now, a few years later, the bloggers on the developer team have generated a substantial body of work. And while they do talk about all kinds of things, many of the posts are about the technologies they are working on – and as the ones who wrote the code, the information you’ll find there can be incredibly valuable.
It’s for that reason that when I built searchdotnet.com, one of the first sites I added was blogs.msdn.com – and that I tagged the entire site as “by experts”. These blogs don’t always come up on the top of the results, but I’ve found that the tougher the problem is, the more likely it is I’ll end up there, reading some incredibly detailed explanation of why a particular design choice was made and as a result what I’m trying to do can’t possibly work.

DotNetrocks, Gadgets and a Facelift for SearchDotNet.com

It’s been a busy couple of weeks for SearchDotNet.com. It started late last month when I was interviewed for DotNetRocks.com while at the DevConnections show in Orlando Florida. The topic of the interview was mostly about discoverability – how we as developers go about discovering information and existing solutions to problems. We did stray into various other topics, including some stories about earlier adventures (misadventures?) from way back when….
Shortly after the interview, a listener (at least I believe it was) posted a comment on my post describing the launch of SearchDotNet.com where he noted “A little Google homepage widget would be a nice addition”
What a great idea. Of course, I’d never actually written a “gadget” for Google, but it turned out to be remarkably simple, at least as far as simple gadgets are concerned. First I wrote a “Universal” gadget from use on custom Google Homepages. These were also supposed to work on Google’s desktop, but it turns out the latest version has a bug that prevents this for now. So I went ahead and created a Google Desktop gadget, that’s a somewhat trickier process.
While working on the gadgets I also realized that the site still had the minimalist (i.e. ugly) user interface I’d thrown together on the day I launched. It may seem odd that I hadn’t noticed this, but while I use searchdotnet.com all the time, I actually use it from the browser search box (the site has implemented OpenSearch from almost the beginning, so it’s always available as one of the search providers on my browser).
So I spent the past few days cleaning up the site. Not that I’d call it beautiful, but it’s quite a bit better than it was. More important, it now makes proper use of both CSS and .NET master pages, so I’ll be able to more easily update the design later.
I’d also like to take this opportunity to thank readers who have recommended additional sites for searchdotnet.com – I didn’t add all of them (there’s a new section of the site that discusses inclusion criteria), but I did add many of them, particularly some great new experts sites.

Upgrading to Vista – Beyond Developers

Perspective is important. I recently commented on Vista migration from a developer perspective. But as developers, we are often asked for advice from others who have different perspectives. So I thought I’d take a few minutes and elaborate further on the Vista migration story.
As a developer, the computers I use have certain characteristics that I think are common among most software developers – at least those in the Windows world. My machines tend to be reasonably powerful, and reasonably new. The software I use also tends to be very recent – in may cases pre-release. Older software, especially that used to perform builds, is relegated to stable systems or virtual machines.
When advising others, whether they are general users, small businesses, or enterprises, I take into account that their needs and perspectives are very different. Their systems may be older, and they often have favorite or legacy software which can be difficult, expensive or impossible to upgrade.
In my previous post I said:
(more…)

A Developer's View of Vista

I must admit, I rather like Vista. Ok, maybe “like” is too strong a word. I certainly don’t dislike it. At the same time, I have yet to see that its benefits justify the learning curve (which is more nuisance value than a real problem). Maybe that will come with time.
I’ve played with it enough now to have come to some tentative conclusions about it – at least from a developer’s perspective.
First, I think upgrading to Vista is generally not worth the trouble. There’s still enough software that is “quirky” under Vista, and it’s demanding enough on computer resources, that if you have an XP system that’s working the way you like it you should leave it alone. I don’t believe in upgrading existing OS’s in general – plenty of time to do that when you get a new system (which you probably do every year or two anyway).
So that means going for a new system – no big deal, a decent Vista capable system is well under $1,000. But here’s where I’d suggest going a step farther. As long as you’re getting a new system anyway, get a 64 bit system and install Vista X64. The performance of 64 bit Vista on a fast machine is very nice indeed.
Next, install Virtual PC 2007 and bring up a 32 bit system of your choice (XP or Vista – or both), so you can be sure to be able to run other software you might need. Be sure to install the Virtual PC additions – they dramatically improve performance.
How do you know that your system will support 64 bit Vista? Look at the support web site and see if the vendor is shipping Vista 64 bit drivers for the machine. If you see drivers and utilities released over the past couple of months that are either 64 bit specific, or explicitly state that they support 32 and 64 bit Vista, you should be in good shape. I’ve been working on a new Thinkpad R60, which installed Vista X64 just fine without the new drivers (leading me to suspect it was one of the systems they tested it on). The new drivers and utilities are nice though in that they support the Thinkpad specific features (shock detection for the hard drive, finger print reader, custom trackpoint control, etc.) better than the Vista default drivers.
I suspect with time I’ll find more things I actually like about Vista. But for now I’ll settle for the fact that I now have a reliable 64 bit development system to play with, along with several 32 bit virtual machines that run surprisingly fast. Oh yeah, the Aero interface does look cool. Not enough reason to upgrade, but as long as it’s there anyway…

The Ramifications of Google Custom Search

I’m a tech skeptic. Seriously. My first reaction to anything new is almost always doubt – especially if it comes with a ton of hype. And I stay skeptical for a long time. As a result, my track record for predicting which technology will be slow to catch on (or fail) is pretty good. Unfortunately, as with most people, my track record for predicting which technology is going to boom is average – I usually figure it out after it’s happened.
Once I got it right – when I saw the Visual Basic 1.0 beta, I knew that it was going to be huge and change the nature of software development. I responded to that change by launching Desaware.
This week I felt the same way when I saw Google Custom Search. Within 12 hours I had launched SearchDotNet.com – really as an experiment (and a tool for my own research, that is already proving useful).
The more I think of it the more I’m convinced that Google Custom Search is going to do for search what VB did to Windows development – change the paradigm.
(more…)