Sunday, October 24, 2004

As an amateur musician and recording geek, I've been following the recent "podcasting" discussions with some interest. I think it's interesting for two reasons -- one reason is the application of an existing technology (RSS or syndicated news feeds) for a new purpose (binary enclosures, usually some form of audio). While this is merely evolutionary (nowhere near revolutionary), it has the potential to be one of those watershed points when the average schmoe gains the ability "to be heard". It happened in the 80's with desktop publishing programs. It happened in the 90's with inexpensive digital recording gear and the proliferation of MP3 as a "universal audio format". More recently, it's happening with blogs.

But with podcasting, how much is really new? What barrier to entry has been lowered? What long, cumbersome process has been overhauled? The ability to record audio? Nope... if you're on the go, you can get a handheld digital recorder dirt cheap these days and many PDAs have the ability to record audio and put it in your computer for upload. For the less mobile, a cheapo microphone plugged into your soundcard and a free audio program does the trick.

Is it the ability to get your audio out to a wide audience? Nah, anyone can put up a web page for free these days and make audio files available for download (some even get sued for it when the files they post don't belong to them). You could argue that it's hard for would-be consumers of that content to find the producers that interest them -- but that hasn't changed here. I still have to go out and find the podcaster or audio-blogger I'm interested in. And we can look back to the late 90's incarnation of mp3.com as a better example of bringing producers together and making it easier for consumers to find what interests them.

So what is new? From my perspective, the "new" part is combining RSS (a pull mechanism wherein I subscribe to what interests me) with portable audio players that continue to drop in price while features and capacity rise. With podcasting, I can get the audio content I want when it becomes available. No more reminders to check a web site. No more subscribing to email newsletters and then surfing to a download site. It just gets to where I want it, as soon as it's available.

For me, Rory Blyth describes it well when he says that it's just a way to syndicate binary content -- a description I completely agree with. And in that sense, I think the name "podcasting" does this "next step for content" a disservice because it focuses on audio. The enclosure tag that makes binary content possible could just as well contain pictures (piccasting? gifcasting?), video content (vidcasting? porncasting?), or chapters of an e-book (novelcasting? fictcasting?). In each case, I can think of an example that excites me more than "the audio blog":

PicCasting - There are some great photographers and amazing digital artists out there. I'd love to subscribe to a few "image feeds" that highlights their latest work on a regular basis. Even if your intent is to sell them, put up a feed with smaller images or subtle watermarks.

VidCasting - Please, Mr. Scoble, let me subscribe to a Channel 9 video-only feed. As the Channel 9 crew puts out a new video, my aggregator pulls down the WMV and jams it into a local directory. As prevalent as high-speed access is, sometimes the streaming video just isn't practical. Later: Woo hoo, looks like the feed on the Videos page does have <enclosure> tags!

BookCasting - Again, there are a lot of great writers out there who do some amazing short stories and/or in-depth technical articles. Turn your novel into a series of PDF chapters and let me subscribe... if it's good, I'll watch my aggregator anxiously for the next chapter.

Ok, so the "casting" suffix has run its course.

Finally... back at the top of this post I mentioned that the podcasting "phenomenon" interests me for two reasons and, no, I didn't forget the second reason -- it's the hype. It's the breathless regurgitation of how THIS is the next big thing! THIS is going to change the playing field! THIS is going to start a revolution! Ugh... just when the bubble-hangover was subsiding.

Here's where my interest really starts to wane. Scott Hanselman, prior to being called a Luddite, puts it well when he says "you can't speak as fast as I read." I think the blogs (or other content) that DO work well as audio are few and far-between.

Understand that I've been downloading .NET Rocks and listening during my commute since its infancy. That show works and I plan to listen to the new one as well -- for the content. I tried a couple of episodes of Adam Curry's "Daily Source Code" recently -- that show doesn't. As Greg Hughes said in this posta medium that talks about itself feels a lot like MLM (multi-level marketing). For whatever media reputation Adam Curry brings to the plate, the Daily Source Code comes across as a guy sitting in his basement talking to, and about, his own personal ecosystem. Well, except for when his wife walks in to tell him dinner's ready. Or the dog barks because it has to go out and piss. In between, we're treated to an echo chamber wherein the media's podcasting darling talks about... well, podcasting.

So yeah, I think podcasting syndicating binary content has a lot of value... for now, it's largely unrealized value.

posted on Sunday, October 24, 2004 3:17 PM Mountain Daylight Time  #    Comments [0]
 Tuesday, October 19, 2004

Ed Yourdon has an op-ed piece in SD Times that essentially tells IT professionals to cowboy up and stop the whining. Ask textile or auto workers from the 80s how effective politicians, unions, and trade organizations are in preventing globalization for commodity work.

I've said it before, but adding value is the only way to create job security -- go beyond being a "coding commodity". Be indispensable. Like it or not, plain old "gimme the specs and I'll code it" programmers are a dime-a-dozen.

Speaking of which, if you're up to it, we are hiring.

posted on Tuesday, October 19, 2004 5:19 AM Mountain Daylight Time  #    Comments [0]

With last week's announcement that Edit and Continue would be supported for C# in VS 2005, there was an initial cry of 'hallelujah' from many developer blogs. I've opted not to link to any for fear of having someone feel singled out, but in my aggregator this past weekend, I must have browsed past a couple dozen posts about how great this announcement was.

Now that a few days have passed, reality sets in and a few different voices have stepped up to suggest that E&C isn't a silver bullet for developers. It's interesting to watch the reactions play out in the blog posts, which usually go like this:

.NET VoR (Voice of Reason): Edit and Continue makes it to easy to screw things up and get sloppy with your development. You should be taking a reasoned approach to your debugging, use unit tests to confirm your approach, and not fix bugs based on a specific condition that exists at that particular runtime.

.NET E&CE (Edit & Continue Evangelist): Just because it's possible to screw up with E&C doesn't mean it should be pulled out! Would you also suggest that [insert analogy of tool mis-use here]?!

I guess what I find interesting about it is that the E&C evangelist types seem to think it's an all or nothing proposition. Unless I've missed it, none of the people arguing against E&C are suggesting that it should completely be removed from the product. Rather, they're suggesting that it should be used with great care because of the ability to fix bugs with small, one-off fixes in code instead of shutting down the debugger and fully thinking through the problem.

I recall Juval Lowy talking about this on .NET Rocks at some point last year (probably around the PDC when it was announced for VB.NET). His comment was along the lines of E&C being somewhat incompatible with the "C# personality". That personality, which often comes to C# via C++ or Java and tends to be component-focused, is different than the VB.NET personality, which comes from a more RAD place and tends to be more app-focused. As he put it, when the C# personality is faced with a bug, (paraphrasing) "they lean back in their chair, stare at the ceiling, go get some coffee, ponder a solution, and THEN they lean forward to hit F10 and move to the next line." :) For those people, E&C isn't as attractive as other features that focus more on code quality, profiling, performance, and so on.

Sure, it's great that you can fix things like a typo in a string literal or some other no-brainer quick fix. But bugs that involve an application's logic or workflow aren't the type of thing that should be fixed while sitting on a breakpoint at runtime.

It's also worth noting that the inclusion of E&C is a good example of Microsoft's newfound community awareness and desire to work closely with its developer customers. No question -- it shows responsiveness.

I guess the two thoughts that come to mind for me in all of this are:

  • E&C can be handy in some scenarios -- but it's not a panacea, it can be easily misused, and I think few would argue that its use is a "best practice" for professional developers. My hope is that the .NET developer community comes up with some collective guidelines or general agreement on where/how it makes sense to use or avoid E&C.
  • I also hope that many of the other things that are being worked on for the 2005 release aren't scaled back because of the work on E&C. Even Microsoft has limited resources and time when it comes to development. Sam Gentile's post about refactorings being missing is a good point -- let's hope that the inclusion of E&C doesn't come at the expense of refactorings or other features that do promote best practices.

 

posted on Tuesday, October 19, 2004 5:11 AM Mountain Daylight Time  #    Comments [0]
 Saturday, October 09, 2004
The MSDN Webcasts team is coming out with another big series of webcasts, this time focused on ASP.NET. My current gig is pretty much Winforms (with some web-services work), but we've got more ASP.NET coming down the pipe. The timing of this webcast series is great! Hopefully it's of the same high quality we've been seeing with the Winforms series.
posted on Saturday, October 09, 2004 12:58 PM Mountain Daylight Time  #    Comments [0]
Jeff Key, the guy who gave the world SnippetCompiler, just put up a cool looking NCover analysis tool. I've just started toying with NCover within the last few days and this looks like a slick way to make sense of the results. He also has a ton of other .NET related tools and sample code. Thanks, Jeff!
posted on Saturday, October 09, 2004 11:17 AM Mountain Daylight Time  #    Comments [0]

A couple times a month, I get a Plaxo email from someone asking me to fill in my current contact information -- usually from someone I worked with in the past and with whom I haven't really stayed in touch. Plaxo is a service that lets you manage your contacts (as well as calendar, tasks, etc) and tries to ensure that your contact details stay up to date. It also lets you sync your data, via Outlook, across multiple machines. I can see that the contact-updater might be helpful these days, with email address and phone numbers constantly changing.

So every once in a while, someone (usually a former colleague) who uses Plaxo wants to update my contact details. That's great and they obviously had to have reasonably current details so that Plaxo could even get the update-request sent to me.

Here's what I don't like -- when I get an email from their service, it's an HTML form that I have to submit... back to Plaxo. In filling out the form, I also have all sorts of opt-in, tell-me-more-about-your-service options for Plaxo.

Do I really need to be added to yet another marketing list somewhere, just so that a former colleague has my current contact details? Up to now, I've deleted them when I get them. If you want to reach me and have my contact details, use those contact details to do it. I'm not all that hard to find.

So... am I missing some key piece with Plaxo? Am I being overly paranoid about having to fill out an online form just so that someone who's contacted me before can contact me again?



Update:  Just a few hours after posting this (on a Satuday, no less), a comment was posted below by Stacy Martin, Plaxo's Privacy Officer. Her post does a good job (in my opinion, anyway) of explaining how the "contact updates" work and what happens with the information provided. If this post was of any interest, I recommend making sure you also read her comments.
posted on Saturday, October 09, 2004 9:16 AM Mountain Daylight Time  #    Comments [0]
 Monday, October 04, 2004

Eric Sink's blog has a new entry discussing the planned features for Vault 3.0. There are a few things on this list that I really like:

  • Email notifications
  • Improvements to DiffMerge
  • Integration with their "new bug-tracking product, Dragnet".

... I like how he slipped that last one in the list. Given how happy we've been with Vault at work, I'd love to get some details on "Dragnet". Nothing of substance has been mentioned in their support forums, so I guess we wait.

We're currently using the open-source BugTracker.NET, which isn't bad... but having true source-control/issue-tracking integration would rock.

posted on Monday, October 04, 2004 11:43 AM Mountain Daylight Time  #    Comments [0]

Search away! After doing a bunch of searching on CodeProject, I decided to see if there was a search plugin for Firefox that worked on that site. I couldn't find it, so I figured "how hard can it be?" and created my own. I'm not completely certain that it's as great as it could be, but for a first effort it seems to be working just fine.

To use it, download this file and then place the codeproject.* files into your "searchplugins" directory (under the Firefox program directory). Once you do, you should have "CodeProject" listed in your search engines, along with the little CodeProject mascot.

I'll submit it to the Mozilla project before long, but figured it can't hurt to get it out there and get some feedback. On this page, they mention that their turnaround time for making these available is sometimes a few weeks.

You can edit the .src file in a text editor to change the options used by CodeProject when you search. Let me know if you find any improvements or problems... enjoy!

posted on Monday, October 04, 2004 6:13 AM Mountain Daylight Time  #    Comments [0]
 Sunday, October 03, 2004

It's been a couple/few weeks now since the version 1.0 Preview Release of Firefox was released. This weekend, I decided to look into it and see whether the various extensions I'm using had been updated.

Flashblock (blocks Flash/Shockwave media from loading/playing until I want it to)

Googlebar (the Google Toolbar for Firefox)

IEView (because not every site works outside of IE -- though there are ways to improve that!)

ChromEdit (Easy access to the customization files for Firefox)

Web Developer (A ton of developer-oriented tools)

Tabbrowser Extensions (customize the way those tabs look/behave)

All are installed and seem to be working fine on my laptop now... time to update my main dev machine, I guess. This blog entry will be my handy bookmark when I need to download/update these things. :)

posted on Sunday, October 03, 2004 12:19 PM Mountain Daylight Time  #    Comments [0]

Darrell Norton posted this snippet for Firefox on his blog and it works like a champ. MSDN pages that list code used to look like this in Firefox:

Oh yea... useful.

After adding the snippet below to userContent.css, it looks like this:

Ah, much better.

Here's the snippet to add to userContent.css. As Darrell mentions, using ChromeEdit is by far the best way to customize the Firefox customization files. Even finding them can be a trick at first...

/* Microsoft MSDN code stylesheet */
pre
{
   white-space: pre !important;
}

Sweet tip... thanks, Darrell!

posted on Sunday, October 03, 2004 12:03 PM Mountain Daylight Time  #    Comments [0]