Tuesday, November 28, 2006

Tools

I found a couple of cool (and free!) development-related tools last week that I thought were worth sharing. The first one is actually a small suite of tools, SlickEdit Gadgets (for Visual Studio 2005). There are 5 gadgets included: Editor gadgets, Command Spy, File Explorer, Data Object Analyzer, and SLOC Report.

I'm a huge fan of keyboard shortcuts, so the main reason I installed this add-in was for the Command Spy. This little utility watches your actions in the Visual Studio IDE and shows the associated keyboard shortcuts for those actions. If you have to keep grabbing the mouse to get to a command buried in the menu system, this can easily show you the key binding (if there is one) and save you some time in the future.



The SLOC Report (Solution Lines Of Code?) generates a pie chart showing the breakdown of the lines in the selected code file(s), project, or entire solution. Not exactly a productivity breakthrough, but it's cool to see what your project is made of.



I haven't really used the other gadgets much, but you can read more about them on the site.

Paint.NET is an image editing app similar to Paint, PhotoShop, PaintShop, etc., written in the .NET framework. I know, it's not really a development tool, but it's great for some of the quick image-editing tasks I occasionally have to do related to development (website images, UI images and icons, etc). It covers all the functionality of MSPaint, and quite a few of the tools and effects in PhotoShop and PaintShop -- it even supports layers. I don't really get into image editing unless I have to, and even then, it's usually small stuff like cropping and resizing where PhotoShop would be considered overkill. Paint.NET is a great lightweight tool for these situations.

Visual Studio 2005 Select Area

Page shared this great tip with me many months ago, and I completely forgot about it until today when I needed to use it.

In Visual Studio 2005, you can select a rectangular area of text without selecting the entire lines (default multi-line select behavior). If you hold down the ALT key when you select text, you can draw a rectangle spanning multiple lines. It may not be an everyday-useful feature, but there are certainly times when it comes in handy. In my case today (and in the example in my screenshots) I wanted to move several lines of comments over.

As we all know, the default select behavior looks like this:


But I wanted to select the comments (ALT-select):


And tab them over some more (TAB the selection):


I know my screenshot example here is pretty basic, but my real-world use today was about 10 lines of aligned comments like this, and a couple of keystrokes and a wave of the mouse was much faster than individually tabbing each line. I'm sure there are several other operations you can perform on a selection like this, but the ones that come to mind are tabbing and copying. This works well for situations where you have aligned comments (like my example), formatted text, etc. in your code. Let me know if you find any other handy uses for this feature. Thanks to Page for sharing this tip!

Friday, November 24, 2006

A Warm Welcome

I've been slack about posting recently, so this is going to be old news to those of you who read Chris Reeder's and/or Dean Lisenby's blogs.

Monday was Chris Reeder's first day at ACS, and since we had some time on our hands and mischief in our hearts on Friday, we decided to extend a warm welcome to our new employee. It started off innocently, as Dean was trying to track down a decent chair for his then-empty cubicle, and escalated to the point that we were looking for trashed hardware, duct tape, and all kinds of other crap.




We often do this sort of thing to employees who go on a long vacation (hey, if you have the nerve to go on a honeymoon cruise and leave us to pick up your slack at the office, you should EXPECT to come back to find your 7x7x5-ft cubicle filled to the top with packing peanuts... but I'll save THAT story and pictures for another post). This is the first time we've done anything to a brand new guy, and we didn't quite go "all-out" this time.

Anyway, Chris, we hope you feel welcomed to your new home, complete with metal folding chair and an ancient PC held together by hopes, dreams, and duct tape.

Don't even think about taking a vacation.

Sick of Christmas

Well, we're just wrapping up Thanksgiving, and I'm already sick of Christmas. This season of joy, goodwill, and cheer (which now means commercialism, theft, and greed) seems to be starting earlier each year. People have been putting up Christmas decorations for weeks now -- some houses in my neighborhood skipped straight from Halloween pumpkins to Christmas snowmen. I guess they couldn't find an appropriately tacky 7-foot inflatable turkey to stick in their front lawn for the month in between.

I've been told that radio stations have been playing Christmas music for the last couple of weeks. The Hallmark channel (and probably many others) has been playing a lot of cheesy made-for-TV Christmas specials for the last few days. I know this only because I'm visiting my family for Thanksgiving, and my mom and sister insist on watching every one of these holiday-themed abominations -- nevermind the fact that it's not even December yet.

My family already thinks I'm a "Scrooge" because I'm always sick of the holiday season long before Christmas even gets here. I don't even put up a tree in my house because I get so many trees and holly and bows and lights shoved in my face every time I drive down the street or see a commercial on TV. Is it really just me, or has this holiday gotten out of hand since the wonderful days of my youth when Christmas actually meant something, and was something to look forward to rather than something to drag out for as many weeks as possible? Don't get me wrong; I'm all about the idea of Christmas, and the true meaning behind it, but I think that we as a culture have destroyed it by focusing on all the wrong aspects of the holiday.

Wednesday, November 01, 2006

SQL cluster instance difficulties


Today I've been working to install a third SQL instance in an existing SQL 2005 failover cluster on Windows Server 2003. I went through the setup process several times, and each time it failed with this message:

Setup failed to start on the remote machine. Check the Task scheduler event log on the remote machine.

I tried running the setup from the other node.
I tried rebooting each node.
I tried clicking the mouse button harder on the last step.

Each time, I got the same error. Then, eventually, I gave up and asked my friend Google what I should do. Google replied with this link.

In a nutshell, it says that the problem was my open RDP connection to the other cluster node during setup. Sounds like madness to me, but I was frustrated, so I closed the other RDP connection and tried it anyway.

It worked.

So far, I'm just happy to get this instance up and running, so I haven't spent much time digging deeper to find out why an RDP connection has anything to do with installing another clustered SQL instance. If I had to guess, I'd say it probably has everything to do with the fact that a user is logged in to the server, and nothing to do with the detail that the user is connected via RDP. I know my curiosity will get the best of me and I'll have to search for an explanation soon, but if you happen to know, please leave a comment and share it!