Todd Anglin's Code Campground

A casual look at the world .NET coding

August 2009 - Posts

Are you a digital pack rat?

digitalpackrat With the recent acquisition of my new Mac Pro, I knew it was time to face the music and clean-up years of accumulated digital files. I have procrastinated the task for years, and now I fear further delay could lead to tragedy, with old, loud hard drives just daring me to let them guard my data until their platters spin no more. It is time to stare my digital pack rat behavior in the face and do some house cleaning.

But how did I get to this point? How did I become a digital pack rat?

The problem begins when you buy (or build) a new computer. The thrill of a new computer- a computer that runs fast and clean- overrides all reason. You know your old, raggedy documents need to move to the new computer with you, but you can’t be troubled at a time like this to go digging through your old hard drive making “life or death” decisions about old documents. And you definitely don’t want to just copy everything to your nice, new, clean hard drive.

What do you do?

If you’re a digital pack rat, you just add the old drive to your new computer. IDE (for really old drives) and SATA cables are cheap and chainable, so you just slap the old drive in the new system and your problem is solved. Not enough room in the new computer case for more drives? Then your drive finds an external HDD enclosure and leeches on to your new computer, like a suckerfish attached to a shark. You can worry about your old documents later when you have more time.

And, of course, that time never comes.

Years go by and systems get upgraded. Each time you make yourself the same promise: I’ll bring my old files with me now, but as soon as I have more time, I’ll go through my old files and consolidate them on one drive. This builds, until one upgrade you’ve had enough.

That’s where I found myself this weekend. Staring at five dusty hard drives, a mix of IDE and SATA, accumulated over years of upgrades. With my shiny- and most importantly, quiet- new Mac Pro begging me to not ruin the silence with my bevy of bytes, I set-off to finally make good on my promise and consolidate my digital life.

It was actually more fun than I thought. You’d be amazed by how much old files can tell you about your life. I found everything from old college class work to saved “IM fights” with my wife from our dating years. I found random sound clips, funny short video clips (reminding of the days before YouTube), and pictures of forgotten events.

There were three important pieces of technology that helped me unpack my digital pack rat nest:

  1. External HDD to USB Dock – This little dock allows you to treat a full-size HDD like a USB stick. With the convenience of plug-and-play, and the transfer speed of eSATA, I was able to make quick work of my GB of old data.
  2. 1TB Internal HDD – To consolidate your old data, you need a big drive to hold everything. My old drives ranged from 60GB to 320GB, so a 1TB drive was plenty for my needs. I opted for the “green, low power” Western Digital primarily because A) this drive is for storage, not active work, and B) noise is very important to me, and this drive is whisper quite!
  3. Mac OS X – For quickly digging through old files you don’t recognize, you can’t beat OS X’s “Quick Look” functionality. You can literally hit the spacebar for almost any selected file- Office document, Adobe document (including Photoshop and Illustrator), videos- and OS X will instantly preview the contents for you without opening any new programs. I love Windows 7, but it has nothing on this OS X feature.

I now have an organized collection of digital files on a single drive, and a stack of old drives on my desk to format and reuse for other projects. Once a digital pack rat, I’m now organized and clean…at least until the next computer upgrade!

What you about you? Are you a digital pack rat? How many years of hard drives or “archived” files are you carrying around with every computer upgrade? Share you pack rat stories in the comments.

Unexpected changes from Silverlight 3 Beta to RTW, The Good and The Confusing

SilverlightBlackVertical By now, everyone should know that Silverlight 3 is official. Born on July 10th at a big launch event in San Francisco, Silverlight 3 completes the 9 month cycle of improvement that kicked-off immediately after the official release of Silverlight 2 in October of 2008.

If you are at all interested in Silverlight, you probably participated in the Silverlight 3 beta. It was a great beta program that gave developers a solid look at many of SL3’s new features, but as with all betas, there were changes in the final Release To Web (RTW). Actually, there were a lot of changes, many of them “breaking,” though I’ll be quick to acknowledge that you’re “allowed” to make breaking changes during a beta cycle. You can find a complete listing of changes and how you should address them on MSDN:

http://msdn.microsoft.com/en-us/library/cc645049(VS.95).aspx

So far, so good.

In fact, some of the changes in the RTW are good breaking changes.

  • Out-of-Browser API Breaking Changes
    During the beta, this API had some less than intuitive names that lead to some awkward programming. For instance, during the beta, the idea of taking a Silverlight application OOB was considered “detaching” it from the browser. When running in a “detached” state, the Silverlight app was said to be “RunningOffline.” Confusing, since an OOB Silverlight app can still be connected to the Internet and running “online.”

    In the RTW, the API names are much better. You now “Install” a Silverlight app to take it out of browser (instead of “Detach”), and you can detect OOB apps by checking the “RunningOutOfBrowser” property (instead of “RunningOffline”). Much better…
  • Assembly Caching Changes
    During the beta, there were two problems with Assembly Caching (a.k.a Transparent Platform Extensions): it only worked with Microsoft assemblies and it required that the assemblies come from Microsoft.com. With the RTW, both problems are fixed. Now any assembly (including 3rd party assemblies, like Telerik’s RadControls) can be cached and by default the assemblies will come from your own domain (though apparently you can still use the Microsoft.com downloads if you want them).
  • URI Mapper Changes
    Less breaking change, more RTW improvement, the URI Mapper (used in Silverlight Navigation to define URL routes) is now part of the default “Silverlight Navigation Application” Visual Studio template. In RTW, the Navigation routes include a “pattern matching” convention by default (instead of hard coding all links), which I think is going to make it a lot easier for people to discover the path to “clean” Silverlight deep-linking URLs.

Not all breaking changes in the RTW are good, though. And I’m not complaining about changes that are just frustrating because they break code. I’m talking changes that actually made me pause in confusion and wonder if Microsoft made the right choice in their design decision.

  • The ASP.NET Silverlight Controls Are Dead
    This is the most shocking and confusing change to me. In the Silverlight 3 RTW, Microsoft has officially “killed” the Silverlight ASP.NET server controls (<asp:silverlight… and <asp:mediaplayer…). These weren’t complicated controls. They were simple wrappers that automated the somewhat tedious process of adding all of the HTML object embed tag code required to place a Silverlight application on a page. I, for one, found them convenient.

    To make matters more confusing, Microsoft isn’t making very clear why they killed them- only that the new guidance is to write the Silverlight embed HTML yourself (or use the new VS templates). You can continue to use the “old” version of these server controls, and you can even download the source and enhance them. But I’m still left wondering why these controls were abandoned.
  • More Controls Removed from the Silverlight SDK
    I get that Microsoft wants (needs?) to keep the Silverlight plug-in size small. I was happy to hear at MIX 09 that after all the new features in Silverlight 3 that the plug-in size got smaller. But with the Silverlight 3 RTW, Microsoft has moved 10 controls back out of the SDK and in to the Toolkit. And what does that mean…

    It means your application XAPs just got bigger if you use any of these controls. Frankly, I’d rather have a 1% bigger core install and save all apps from delivering these controls.

    And should we really have to use the Toolkit for basic layout controls like WrapPanel and DockPanel? I know the Toolkit helps controls get updated faster, but these seem like staples that belong in the core- where they started in Silverlight 3 beta!

Silverlight 3 is a huge improvement over Silverlight 2. I think it is the version that is going to really make more people attempt serious application development on the RIA platform. The feedback from the Beta program obviously had a real and noticeable impact on the RTW- I’m just not sure all of the impacts are good.

What do you think?

Posted: Aug 07 2009, 02:51 PM by tanglin05 | with no comments
Filed under:
More Posts