Vacation

Posted by Greg on 05 Feb 2008 | Tagged as: Uncategorized

I have the pleasure of starting this article from somewhere in the Caribbean toward the end of my 7-night cruise.  This is the first real vacation I’ve taken in, well, more than 5 years.  After a stroll on deck this evening I became inspired to write this post.

One thing that has been dramatically different about this trip is my total isolation from the outside world.  By choice, I have no Internet access and my cell phone has been disabled.  I have no contact with my employer, or my friends and family for that matter.  And that is a good thing.

My inspiration came from thinking about the one activity that I did for hours on this trip; while laying in the sun I watched the clouds fly overhead.  I would expect most of us as children did this, and then at some point we become too busy to do it (or its not “cool”).  But that’s the point of a vacation; to do something different from your daily life, not do the same thing in a different location.  That’s called telecommuting (while on vacation).  Our world has become extremely connected, which is a very good thing.  And because of this connectivity we can do more work from home or on the road than in the office (that whole “productivity” thing). 

By now you know where I’m going with this post; we are working more and playing less, and just plain burning out.  Yes, our Business 2.0 highly competitive world demands fast response times and certain skill sets are often held by single individuals in an organization.  Blah, blah, blah.  We are working more and more just to keep our jobs.

The bottom line is that my vacation was relaxing and recharging because of the things I did do, as well as the things I didn’t do.  I’m ready to come home and feel a new sense of energy and perspective.  I will be a better employee.

And as a manager, I need to ensure my folks actually take a vacation… and when they are away, give them the peace of mind that I will not be calling for some silly little question.

Building Godzilla

Posted by Greg on 29 Dec 2007 | Tagged as: .NET/code/geeky stuff, Hardware/Systems

It has been a while since I built a high performance desktop.  In fact, the last two desktop I built was a small form-factor (SFF) that are pretty good in its own right (a Shuttle SB83G5 and an Asus S-Presso).  But its been a long while since I built a big, honking powerhouse.

Inspired by Scott Hanselman’s blog post on Building the Ultimate Developer PC, I decided to trade in my portable workhorse (an HP dv9000t 17″ laptop) for a monster.  And that pretty much sums it up…

The shopping list

Case Antec P182 Gun Metal Black 0.8mm cold rolled steel ATX Mid Tower
Power CORSAIR CMPSU-520HX ATX12V v2.2 and EPS12V 2.91 520W
Heatsink Scythe MINE Rev. B
Processor Intel Core 2 Quad Q6600 2.4GHz LGA 775 Quad-Core Processor Model
Motherboard EVGA LGA 775 NVIDIA nForce 680i SLI ATX Intel Motherboard
Dual NICs are write-combined for a lightning fast Internet connection
Memory 4GB CORSAIR XMS2 DDR2 800 (PC2 6400)
Video (2) GeForce 8600GTS 256MB GDDR3 PCI Express x16
Primary HD Western Digital Raptor 74GB 10,000 RPM ATA150
Secondary HD (2) SAMSUNG SpinPoint 500GB 7200 RPM SATA
in raid 0 configuration
CD/DVD LITE-ON 20X DVD±R DVD Burner with LightScribe Black SATA
Floppy SAMSUNG Black 1.44MB 3.5″
Display Dual SAMSUNG 226BW Black 22″ Widescreen LCD Monitors

  

Assembly

Staging the parts

P1030417

Prepping the case

P1030418

Running power

P1030419

Motherboard and drives, running cables

P1030422

That heat-sink is huge!  And so are the video cards!

P1030423

The finished product

1002070723

  

Build Notes

Everything went together more or less without issues.  The case was wonderful to work with.  All drives were mounted on rubber grommets, which has helped reduce the overall noise— and each drive bay was removable which made assembly a breeze.  Would have been nice to have a few more motherboard mounting screw backs but it wasn’t a big deal.

There were 3 aspects that were challenges I would have done differently.

  1. Â
    1. Power cables.  The cables that came with the PS were of the correct length but were a little hard to run through the case.  I think aftermarket, rounded cables would have worked better.
    2. IDE cables.  Pretty much the same, should have bought more rounded aftermarket cables, about 16″ in length.
    3. Mounting the heat-sink.  The pics don’t do it justice, this thing is HUGE!  I wish I had installed it before I mounted the motherboard in the case— tightening the mounts was a challenge with it in in the case.

Operating System Install

I decided to bite the x64 bullet and install Vista Business x64 edition.  Install had only one bump; the initial install went fine but after the first reboot it blue screened.  And did so consistently.

After a great deal of research, the answer turned out to be that I had all 4 sticks of 1GB ram installed.  After removing two sticks the system reinstalled correctly and completed without issue.

Probably the most frustrating issue was reinstalling the 2 sticks of RAM and seeing the box continue to crash.  Turns out there is an issue with Vista out of the box that it doesn’t handle more than 3GB of ram very well.  There is a stand-alone patch (KB929777) that fixes this.

Installing motherboard updates went fine along with all other device drivers.  I did experience a number of crashes that seem tied to both Internet Explorer and Windows Media Player.  Again, after research and patience it turned out that I had two bad sticks of RAM.  NewEgg took very good care of me and the replacements fixed the issues.

Bottom Line

Me likey!  This box is FAST!  Not as fast as I had expected, but very fast.  I do not wait for much anymore, and its hard working on other computers as a result.  Games rock.  Virtual PC/VMWare runs blazing fast.

Buying the two video cards was overkill, especially with two monitors.  SLI technology means combining two video cards into one, and that one video card powering only a single monitor.  I am considering long term of getting a third monitor and adding another video card; use the “main” for SLI and the 3rd to power the two “side” monitors.  Again, overkill.

Total cost was a little over $2000, which is before around $300 in rebates that continue to trickle in.

A different kind of charity gift for the holidays

Posted by Greg on 15 Dec 2007 | Tagged as: Life

Featured on Good Morning America this Saturday, World Vision is a different kind of charity.  Instead of writing a blank check that [thankfully most] is used fund aid programs, you are buying a specific gift to send to a needy family overseas. 

For example, $75 will buy a family a goat.  The recipients are trained on how to handle and care for the goat, obtaining milk and making cheese that will feed their family for a long time.  More goats means the ability to breed and sell goats to others to make an income.  Or start a goat fertilizer business!

http://www.worldvision.org

So I’m thinking of buying a goat, two soccer balls, maybe two chickens.  Should I go for the gift wrap?

Wordpress Blog Spam

Posted by Greg on 09 Dec 2007 | Tagged as: .NET/code/geeky stuff

Well, it didn’t take very long at all.  Within two weeks of launching a new blog I am getting flooded with comment spam.  Okay, perhaps flooded is a little over the top, but 15-20 per day.  Fortunately Wordpress has comment moderation so it never makes it live, but it is none-the-less annoying.

There is a very easy solution; CAPTCHA.  I did this before with my .text and Community Server blogs, but this has been by far the easiest set up (taking literally 15 minutes to generate, test in dev, and deploy to my production site).

http://www.protectwebform.com/plugin_wordpress

From their page:

How to install:

  • Create account at protectwebform.com. To do this, just go to the registration page: signup.
  • Generate your CAPTCHA type with all the desired parameters.
  • Follow the link “install” under the new CAPTCHA.
  • Choose the “Wordpress Plugin” section and download the file.
  • Place this file “wp-content/plugins” directory of wordpress installation.
  • Go to the “Plugin” section in admin area of your wordpress installation.
  • Find the plugin “CAPTCHA From ProtectWebForm” and click approptiate “Activate” link.

That’s it!

What especially intrigued me on this version of CAPTCHA is their smart feature.  Knowing that blog spam is generated by ‘bots, it follows a simple algorithm to see if the sender does not supports JavaScript (meaning it is not browser based) and whether its from a suspicious IP address.  If the answer to both is yes, it displays the silly little box (complete with audio read-back).  If not, no CAPTCHA.  Pretty cool stuff!

We will see shortly how effective it is…

Windows Live Writer + WordPress

Posted by Greg on 25 Nov 2007 | Tagged as: Tools and Toys

It works… with no configuration or whatnot.  Just download, install, enter your blog URL and account credentials, then start writing… just like I am now.  SWEET!

Moved blog to WordPress

Posted by Greg on 25 Nov 2007 | Tagged as: Life

Congratulations if you made it this far!  My old blog had broken down and it became apparent it was time to upgrade to some new blogging technology.  I’ll get into those details in later posts, but the good news is my blog is up and running and hopefully stable. 

Multiple websites, host headers, SSL, and IIS (oh %^*@)

Posted by Greg on 21 Jun 2007 | Tagged as: Hardware/Systems

Do you have a web server, running IIS, with multiple sites all listening on port 80, and each of those sites need SSL certificates? Seeing as how I’ve broken a server thrice now, its time to write the definitive how-to guide on doing this to help you, and to remind me the next time I need to do this.

First and foremost, get the IIS Resource Kit. You will need one of the tools in there (selfssl.exe) and there are plenty of other tools that can make your IIS admining easier.

Open up your handy IIS admin tool and look at your list of websites in list view. You’ll see each name along with an associated "identifier", their host header name, port, and SSL port. Remember your basic TCP/IP networking, you send your packets on a port because something is listening on a port. And, you can’t have two services listening on the same port on the same machine. Actually, you can’t have two services listening on the same port on the same IP address. And, with IIS, you can— kinda of. On Windows Server 2003, you can have multiple websites. Each of these sites must be delineated by either a host header value or an IP address; all of them can not listen on port 80. Sorry, it just doesn’t work that way. Enter SSL; the HTTPS protocol does all of its business on port 443 and only port 443 (without browser modifications, not an option in the Internet world). So there is the quagmire. The answer is relatively simple (that is, once you’ve downed all your websites repeatedly…) :

  1. Ensure each sites has either a unique IP address or a host header.
  2. Create and install a wildcard SSL certificate. Work with your SSL vendor to obtain one of these. For internal servers (or ones that need not be fully trusted), you can use the selfssl tool from the IIS Resource Kit to create a self signed certificate.selfssl.exe /n:cn=* /k:1024 /v:1480 /p:443 /s:1This will create a 1024 bit certificate for site identifier 1 on port 443 which lasts 4 years.
  3. ** Note, this next step will stop your site **Copy the certificate from site identifier 1. Easiest way to do so if through IIS Admin | Directory Security | Server Certificate, then use the wizard to Assign a certificate already installed on your machine. Ensure you select the WILDCARD certificate. After clicking Apply or Ok your website will be stopped.
  4. Alter the IIS metabase to allow the sharing of the certificate.cscript.exe C:\Inetpub\AdminScripts\adsutil.vbs set /w3svc/[identifier]/SecureBindings ":443:[host header name]"Where [identifier] is the unique website identifier IIS assigns all websites, and [host header name] is the host header name for the site previously configured. For example":cscript.exe C:\Inetpub\AdminScripts\adsutil.vbs set /w3svc/123456789/SecureBindings ":443:my-host-header-name"
  5. Start your website in the IIS Admin tool.

You can repeat steps 3-6 for each site on your server.

References: 
IIS 6.0 Resource Kit 
To setup SSL on multiple Sharepoint 2007 web applications using host headers under IIS 6.0 
Configuring SSL Host Headers (IIS 6.0)

 

AJAX “waiting” indicator

Posted by Greg on 25 May 2007 | Tagged as: .NET/code/geeky stuff

Let’s face it, AJAX is the sliced bread of the Internet these days. And with all the toolkits out there, like Microsoft’s AJAX for ASP.NET, it isn’t a huge deal to Ajaxify an application. But with all the cool visual enhancements AJAX can bring to the user, we must also remember the whole “user experience” thing. That means feedback of some kind to let the user know a micro-postback is occurring and “something” is happening.

Using the Microsoft AJAX Library, this is very easily accomplished. Inside of an ASP:UpdatePanel you simply use a ASP:UpdatePanelStatus template to put in some kind of message or animation to offer the user feedback that an operation is taking place.

This article describes in detail how to do it. It also has a link to this site where you can create custom animations for your “working…” messages.

Email is the hardest written medium of all.

Posted by Greg on 13 Apr 2007 | Tagged as: Management

This is a great article, worth 5 minutes of your day to read and digest.

http://abcnews.go.com/GMA/Books/story?id=3035262&page=1&CMP=OTC-RSSFeeds0312

Dive for a cure fundraiser

Posted by Greg on 18 Mar 2007 | Tagged as: Life

One of my side goals for this year was to return to the sport of SCUBA diving. Yesterday I had that chance with a group of my friends in an introductory freebie dive. We all had a blast and I’ve been re-bitten by the diving bug. Its also obvious I need to take a refresher course before heading back out into open waters.

That aside, my local dive shop, Lynnhaven Dive Center, is holding their annual Dive for a Cure fundraiser this coming weekend (March 23-24). Its a marathon 24 hour dive in their training pool to raise money for Cancer research. I’ve signed up for the 4-5 AM time slot (yes, that’s EARLY) and are looking for sponsors who can donate any amount to cancer research (specifically, the American Cancer Society). I have family and friends, as well as electronic acquaintances who have all been touched by cancer and this is the least I can do to help raise awareness and money… and have a little fun in the process.

Please contact me through the site if you are interested in sponsoring me.

Next»