Scott Hanselman

The Developer's Quitting Your Job Technology Checklist

August 1, '07 Comments [43] Posted in Microsoft | Musings | Tools
Sponsored By

Tomorrow is my last day at Corillian/CheckFree and I like to keep things tidy and ethical (that means I'm not going to toast or format my hard drive on purpose.)

As you likely do as well, I had a number of "Assets" listed under my name at this company. That means Laptops, Desktops, Monitors, etc. For the ones that are strictly development and have only dev tools and mostly-fresh operating systems on them, I just made sure that everyone had passwords and access.

However, I did have a personal laptop, and these things tend to get reused in my experience at companies. Here's the checklist I used to get ready to leave.

All this assumes that you're turning in your hardware and your IT department either:

  a. might not toast/re-image your system immediately
  b . they'll stick it on a shelf and get to it whenever
  c. you're paranoid.

Just because you're paranoid doesn't mean they're not after you.

Remember that if you're a Domain User, someone can, and likely will, log in as you later after you've left. Every byte in your hard drive is theirs (and always has been). So, tidy up.

  • RETURN: Turn in every piece of hardware that they ever gave you. I turned in Monitors, USB Hubs, everything. The last thing I need is someone from IT calling me looking for crap.
  • REMOVE: Clean your Firefox Data - Use Tools|Clear Private Data.
    Clear Private Data (2)
  • REMOVE: Clean your IE Browser History from Tools|Options|General|Delete...|Delete All...
    Delete Browsing History
  • CLEAN: It never hurts to do things twice, so run ATF Cleaner and go through each top-level menu item, tidying up.
  • CLEAN: I also like Crap Cleaner. Run the cleaner, and check everything. Also go to the Applications Tab and check everything and run.
    CCleaner (2)
  • CLEAN: Then run Disk Cleanup in Start Menu|Accessories|Disk Cleanup. Before you do go get the DriveCleanup Registry Hack (called VolumeCaches) that will make your Drive Cleanup experience faster and more thorough. If the tools before did their jobs, there will be nothing left at this point.
  • REMOVE PASSWORDS: Go into the Windows Wireless Network Connection Settings (or IBM's or whatever app is managing your wireless) and remove all the wireless networks, especially your home one. There's no reason to leave your system automatically trying to get on your home network.
    Wireless Network Connection Properties
  • REMOVE PASSWORDS: Remove saved passwords from all Applications, including Live Messenger. This is a very important step and rather than clicking "Remember Me" you'll now get to click "Forget me." Click Sign out in Windows Live Messenger and click (Forget me). We don't want anyone else logging in as my later. You can certainly uninstall also if you like but you want to disable any auto-login stuff regardless.
     Windows Live Messenger 8.5 BETA
  • DEACTIVATE LICENSING: Deactivate any applications that have licenses over the Internet that are specific to your hardware. For example:
    • Deactivate iTunes from the Advanced menu.
    • Deactivate the Sony Connect Reader software.
    • Deactivate XmlSpy and anything else that keeps track of the number of computers it's installed on.
    • Deactivate licensing and remove saved keys from Windows Media Center.
  • REMOVE: If you have any personal PGP Keys or Certs, remove them with certmgr.msc.
  • BACKUP: Backup then delete all your TrueCrypt disks. Clean out your My Documents of personal stuff. Take all your personal stuff with you.
  • UNINSTALL: Uninstall anything that you weren't supposed to have installed in the first place. I use MyUninstaller from Nir Sofer. It's AWESOME. You'll never use Add/Remove again. I removed Guild Wars and all the stuff I wasn't supposed to have on this box.
    • Uninstall FolderShare. FolderShare is a godsend, but it also synchronizes deletes and will auto log you in. It's possible that someone in IT could delete some files and FolderShare would "reach out" and delete them at home.
    • Uninstall Google Talk, IRC, AIM, Yahoo, whatever. Any and all chat programs.
    • Uninstall and delete your Password management app.
  • CLEAN: Run Crap Cleaner one final time, specifically the "Issues" button which goes through the registry looking for unattached remnants. The IT department likely isn't looking for your Guild War save games and stuff, but again, it never hurts to be tidy.
  • CLEAN: Empty the Recycle Bin.
  • CLEAN AGAIN: Run QuickWiper if you really have something to hide. Again, this is a tidying-up operation rather than a "cover your tracks" operation, so it's up to you.
  • STEAL: Take as many pens as you possibly can. And tape. And scissors. And paper*.
  • LEAVE FRESH AND MINTY DEW: Logout and go home. You machine is clean and usable by the next guy.

It's the end of an era for me. This is only my third job, as I have stayed everywhere I've worked for at least 5, usually 7 years. I got a little misty-eyed when I clicked "Forget me" in Messenger. I'm nervous, a little scared even, but there's a whole new world waiting for me and my little family starting in September. I hope it doesn't suck. 

I'm scared! Hold me, blogosphere, hold me! ;)

* Just kidding!

About Scott

Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, consultant, father, diabetic, and Microsoft employee. He is a failed stand-up comic, a cornrower, and a book author.

facebook twitter subscribe
About   Newsletter
Sponsored By
Hosting By
Dedicated Windows Server Hosting by SherWeb

Silverlight Video of John Lam on IronRuby at PADNUG

August 1, '07 Comments [20] Posted in Silverlight | Speaking
Sponsored By

image Here's the Video of John Lam talking about IronRuby at PADNUG last week. I recorded it on a Sony Wide-screen (I think HD) camera with a 60 gig hard drive. Now that I've been doing the Podcast thing I'm a freak about decent audio, so John is wearing a Bluetooth Microphone around his neck transmitting directly to the video camera.

I edited the 17 gig video in Sony Vegas Movie Studio Platinum - which I love DEEPLY. Then I ran the audio through a hiss filter and punched it up a smidge. Then I rendered as a WMV9 and used Expression Media Encoder to produce a Silverlight Project that is now sitting on my web server. The final file was about 300 megs and is about 80 minutes long.

GOOF UPDATE: Looks like there's 2 min of blackness at 58:44 that ends at 1:00:03. To be clear, nothing is missing. It appears I didn't drag two "Segments" close enough together in Sony Vegas. My bad, sorry. You'll want to skip over that part, otherwise I'll have to re-render the Whole Thing and finagle it back up to the Microsoft.com servers that I don't have access to. Live and learn.

GOOF UPDATE #2: My man on this inside, at least until September, Tim Heuer has saved the day and uploaded a re-rendered version of this video with the gaps removed. Thanks Tim!

I tried a little different technique with this video. I moved the camera the way I moved my eyes. Rather than just putting it on a tripod and attempting to interlace in Camtasia footage, I attempted to fill more documentary style with big zooms into the projected screen. I actually think it works pretty well. There's so many great presentations that happen in small groups like this (classrooms, lectures, whatever) and they often sound and look like CRAP. My goal is to experiment with audio and video styles that are the most effective - and that folks will actually SIT through. When this video is resized full screen it's pretty watch-able. I'm interested in your opinion and ideas so I can try more in this style and possibly get my new boss get loan me a camera. Hint hint, nudge nudge.

But enough about video editing, do check out the video. John talks about a number of interesting things from his OSCON presentation including side by side speed comparisons with IronRuby against Ruby proper as the new Ruby runtime that is many times faster than the old. He also shows where IronRuby isn't so fast and why there are places where it won't even be fast. It's all done in a very accessible way. It was one of the first talks in a long time that I didn't get even a little sleepy.

If you have trouble viewing the Silverlight Version of the Video, you can get the WMV directly from download.microsoft.com (which is cool considering I don't work there yet, eh?)

So, again, that's:

Video doesn't work? Remember that Silverlight is NOT released, so things aren't necessarily 100%. If you are having trouble viewing this video, do me a favor. Go to a command-line and run MSINFO32.EXE.

You'll find it in one of two places - either in c:\windows\system32 or c:\Program Files\Common Files\Microsoft Shared\MSInfo

Export the results to a text file via the File | Export option (the command line switches don't always work.) It WILL take a long time. Relax. Then, zip it up and send it to me. My email is my first name at my last name .com if you know what I mean. I'll forward it along.

About Scott

Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, consultant, father, diabetic, and Microsoft employee. He is a failed stand-up comic, a cornrower, and a book author.

facebook twitter subscribe
About   Newsletter
Sponsored By
Hosting By
Dedicated Windows Server Hosting by SherWeb

Expression Media Encoder - Preview Update for Silverlight RC

August 1, '07 Comments [2] Posted in Silverlight
Sponsored By

Microsoft Expression Media Encoder Preview I'm using the Expression Media Encoder right now to prepare the video of John Lam that I recorded during his recent visit to Portland. If you work with video and you haven't tried this app, do check it out. It does one thing and one thing only - it preps video for presentation, presumably via Silverlight.

As of today, make sure you get both packages:

Even though I use Sony Vegas for my video editing (Note to self, get boss to buy me a copy, as I'm on my 4th 30-day trial) the A/B Compare stuff in Media Encoder are reason enough to use it.

Open Media Encoder and drag/drop a video into it. Hit A/B Compare and now drag a small bit in the timeline to select a range of time, perhaps 30 seconds, then press Build Preview. Notice that the preview screen will split with a yellow line. If you double click on the line it will toggle between horizontal and vertical. After the Compare is rendered, hit play and drag the yellow line back and forth to compare the before and after. Love that crap.

Lam Silverlight After you've found a nice compression ratio that fits your needs, click on the Output Properties dealie in the upper right corner.  Click "custom" in the Thumbnail section and select a frame for use as your thumbnail.

Under Job Output, select a template. The template will say "Silverlight RC." 

ODD: for some strange reason, my favorite template called "Clean" wasn't updated for the Silverlight RC. You can go edit the templates yourself from the C:\program Files\Microsoft expression\Media Encoder 1.0\Templates\en. I'll probably go update "Clean" later, unless the guy who did "Clean" reads this blog and hears my plea. It was an awesome template.

A folder will be created with everything you need to upload. Put it all up on your site and you're all set. You can also edit the template's startPlayer.js and put your file in the  mediaUrl spot as seen below. 

function get_mediainfo(mediainfoIndex) {
    switch (mediainfoIndex) {        

        case 0:
            return  { "mediaUrl": "JohnLamIronRuby.wmv",
                      "placeholderImage": "",
                      "chapters": [               
                                  ] };                                                                
                          
        default:
             throw Error.invalidOperation("No such mediainfo");
     }
}

I should have this video up soon.

About Scott

Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, consultant, father, diabetic, and Microsoft employee. He is a failed stand-up comic, a cornrower, and a book author.

facebook twitter subscribe
About   Newsletter
Sponsored By
Hosting By
Dedicated Windows Server Hosting by SherWeb

Progress Bars in PowerShell

July 31, '07 Comments [5] Posted in PowerShell
Sponsored By

PowerShell has a thousand nice features, but one of the nicer ones that I end up using all the time is the built in Write-Progress cmdlet. Shady the Intern came by today with a PowerShell script that printed dots to report progress, like:

Doing some stuff........................

I recommend he switch to Write-Progress. A nice feature of Write-Progress that I don't see used enough is the assigning of IDs to Activities, and then referencing those IDs as ParentIDs when writing out the progress of a Child Activity.

for ($i = 1; $i -le 10; $i++) 
{
  write-progress -id 1 -activity "Doing some stuff" -status "whatever" -percentComplete ($i*10);
   sleep 1; 
   for ($j = 1; $j -le 10; $j++)
   {
      write-progress -id 2 -parentId 1 -activity "Doing some child stuff" -status "yay" -percentComplete ($j*10)
      sleep 0.75
   }
}

PowerShell Progress

Here's a trivial example. Two for loops, each sleeping for a bit. The second for is a child of the first. Notice that ID of first loop is -activity 1 and the second references that activity via -parentActivity. This really adds, in my opinion, to the fit and finish of any script.

About Scott

Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, consultant, father, diabetic, and Microsoft employee. He is a failed stand-up comic, a cornrower, and a book author.

facebook twitter subscribe
About   Newsletter
Sponsored By
Hosting By
Dedicated Windows Server Hosting by SherWeb

Paper - Managing Large Scale System Deployment and Configuration with Windows PowerShell

July 31, '07 Comments [11] Posted in PowerShell
Sponsored By

Hanselman - Managing System Deployment with PowerShell.pdf - Adobe ReaderLiterally 1 million years ago, as I remember it (actually around November of 2006) I wrote a paper on our Financial Services solution that uses PowerShell to manage deployment.

There were a few Channel 9 Videos on the subject and a whole category on PowerShell was born on my blog. I even did a few presentations on the topic.

The paper was/is like 28 pages long and I wanted to get it out ASAP. I gave it to Dino at Microsoft and he was trying to get it to a guy at TechNet, and I wasn't supposed to blog it or release it or anything until they had their exclusive.

Fast forward to darn-near August 2007. My last day at Corillian is Thursday and my first day at Microsoft is in Sept...so, here's me releasing the paper myself and phooey on all those folks who were taking so long to publish it. It's too late for Corillian to fire me and (maybe) too late for Microsoft to un-hire me.*

Thanks to the Corillian Team who work on this project and who did all the hard work I take credit for. Thanks again to Geoffrey Bard for the Signing PowerShell Scripts section.

* Just kidding, of course I asked first. Seriously, you know me so well.

About Scott

Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, consultant, father, diabetic, and Microsoft employee. He is a failed stand-up comic, a cornrower, and a book author.

facebook twitter subscribe
About   Newsletter
Sponsored By
Hosting By
Dedicated Windows Server Hosting by SherWeb

Disclaimer: The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.