Wednesday, July 06, 2005

Many may have noticed a lag in my keeping the blog up to date.  I've tried, somewhat successfully, to post some thought every few days.  However, the past few weeks have been crazy that I haven't had much of a chance to submit any meaningful thoughts.  What with the various projects around the house and at work it's been nie impossible to break away and put some real thought into a technical discussion on an interest.  Though I'm sure I'll have some free moments in the days to come to formulate a reasonable discussion around something I'm working on.

Today, however, offers a moment of reprieve.  I am getting packed and ready to go to the Microsoft Worldwide Partner Conference in Minneapolis, representing Experlogix.  Last year I had the opportunity to attend the WPC in Toronto and had a great time - I expect nothing less this year.  It looks to be fantastic.  Interest around our web-based product configurator has been spreading like wildfire over the last year and a half.  This year we have some new things to show too: deeper integration with Microsoft CRM as well as new integration with Microsoft Great Plains (something that partners and customers have been clamoring for).

Upon returning, I'm taking a week off work to work.  In fact I'm very excited to teach a custom, advanced C# course.  In years gone by I was a trainer and instructor and have a very warm place in my heart for teaching.  It's been a passion of mine since I got into full-time instruction back in 1992 and I am looking forward to the coming weeks.

Wednesday, July 06, 2005 3:31:00 AM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  |  Trackback
 Saturday, July 02, 2005

After a few days of frustration, I finally have this issue resolved.  I am so thankful that I still have some great contacts inside Microsoft that I can call on a moment's notice and they'll help me through these issues...the favors go both ways frequently, however.

First of all, I want to apologize to everyone that tried to contact me (either via the blog or email).  My email server bombed a few days ago.  It took me about 24 hrs to see the issue...I thought I simply wasn't getting much email.  Once I realized that I was only getting my POP3 email and not Exchange (IMAP) my worries began.

As those of you that know me can attest, I have a penchant for having hard drive issues (I think I live in or near a vortex of some sort).  It turned out that I had a series of CRC errors in my exchange database.  Upon performing a CHKDSK /F I realized that I had about 8 KB of bad sectors on the drive.  Once the CHKDSK finished, I moved the database, repaired it, created a new database, and restored the old data into the new one and we're back up and running great!

Thanks everyone for your patience!

Saturday, July 02, 2005 5:42:00 PM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  |  Trackback
 Wednesday, June 29, 2005

The last several weeks have been insane in terms of business (as the two readers that follow my blog might be able to attest), but the 20 hr days haven't posed an impediment at getting work done around the house.  Last summer I built a shed from scratch in my backyard.  Well, (finally) we got around to putting siding on it to match the house and I must say it looks fantastic!  I've included a 'before' and 'after' picture below from slightly different vantage points.  I'm very happy with how it turned out.

Additionally, we bit the bullet and replaced our garage door on the house with a door from Martin Door.  We got the works (fully insulated, whisper quiet opener, powder coated tracks, weatherseal, windows, and all the upgrades), plus it matches the shed in the back yard.  It's wonderful to be nailing out these projects.

I have four outstanding projects now that I must finish this summer - preferrably in the coming weeks but we'll have to see how much is humanly (and walletly) possible.

  • Finish the basement.  I've built out a very cool office and home theatre downstairs, but I still have to put in the drywall and finish it up, but we've already purchased the hardwood flooring for the office.
  • Sand/Oil the deck.  Last summer I designed and had built a deck in the backyard out of iron wood.
  • Enclose the front porch in a brick wall w/columns and lights.
  • Paint the garage floor

Looks like I have my work cut out for me, but it'll be rewarding and nice to have it all done.  I'll post up pictures when I finish the various projects.

Shed before:

Shed after:

Garage and Shed:

Wednesday, June 29, 2005 6:06:00 AM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  |  Trackback
 Monday, June 27, 2005

Ok, so this makes for two non-programming-targeted posts (the last one was pretty stupid, I must admit), but I can't quite make out what the real intentions of the author was.  I understand that English is not the easiest of languages to speak or translate to from another tongue (far too frequently things get trans-literated often to hilarious results), but this case doesn't seem to make sense.  When you click on the site's 'prices' link this message pops up.  Can anyone help me out?

Monday, June 27, 2005 5:36:00 PM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  |  Trackback
 Thursday, June 23, 2005

Today I was contemplating the universe and stumbled upon a quandary.  We as humans have associated terms with the social structure and organization of the various creatures in the animal kingdom.  For example, wolves travel in packs whereas cows meander in herds.  What is the appropriate term for a group of gremlins?

Is it a...

...pack of gremlins?
...herd of gremlins?
...gaggle of gremlins?
...flock of gremlins?
...pod of gremlins?
...school of gremlins?
...swarm of gremlins?
...litter of gremlins?
...gang of gremlins?
...legion of gremlins?

(Obviously my thoughts don't run too deeply...)

Thursday, June 23, 2005 4:10:00 PM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [1]  |  Trackback
 Sunday, June 19, 2005

If you're like me, you have created a few web pages/sites in your time.  Some, if not most, of these require some level of authentication (be it Forms Authentication or Windows Authentication (Integrated Security)).  Oftentimes, the website you create resides on the local machine and you can simply browse to it via http://localhost, but such is not always the case.  You may have been occasionally perplexed that when you use Windows Authentication that the browser (Internet Explorer) will prompt you for your user name and password.

Shouldn't it already know who you are, since you're already authenticated to the domain?  Well, the answer is yes, it knows who you are, but it doesn't care in certain circumstances.

If you browse to http://localhost or http://MyComputerName to a website using Integrated Security, IE will automatically provide credentials to the webserver and thereby not prompt you.  However, if you use the FQN (Fully Qualified Name) of your machine (e.g. http://MyComputerName.Domain.local), IE will prompt for a password - even though it's the same machine, the local machine no less.  The primary reason behind this is the punctuation...period :-).  In fact, IE will consider dotted URLs (those that contain periods) to exist in the internet zone.  Because that zone is more hazardous and less trusted than the intranet zone, credentials are not automatically provided.

You can circumvent this issue by adding the URL to the Intranet Zone:

  1. Click Tools -> Internet Options
  2. Select the Security tab
  3. Select Local Intranet and click the Sites button
  4. Click Advanced
  5. Add the FQ URL (e.g. http://MyComputerName.Domain.local)

There are other factors to consider besides just the dotted name.

  • The browser must be IE (duh, it's the only browser that supports Windows Integrated Security)
  • The site must be set up for Integrated Security (if anonymous is enabled, Integrated Security will have no effect)
  • Automatic logon only in Intranet zone must be enabled

For more details, check out the Microsoft documentation.  This took me a long time to find.  I have long suspected that the periods in the name were causing the issue, but had never seen this documented until a few days ago.  Anyway, it's good information to know.

Sunday, June 19, 2005 4:35:00 PM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [1]  |  Trackback
 Thursday, June 16, 2005

I have an archive folder on a dedicated drive in which I store 'clean' Virtual PC images.  These images are the baseline install (+Patches) of the various operating systems I run (e.g. Windows XP, Windows Server 2003, et al).  When creating a new virtual PC (something I do quite frequently), I'll copy out one of these clean images into a 'working' folder, rename it and mount it as a virtual machine.

You can quickly run into issues when doing this however as there are a variety of things that can crop up later as you go about using them.

  • Machine names will not vary, until you change them.  It's a little crazy to have 5+ VPC's all with the name WIN2K3 running around.
  • SID's will not vary.  This is particularly important when you create a private domain of copied VPC's.
  • Network settings.  You have to be careful how you set up your private networks or you will run into issues.

If you're making multiple copies of a single VPC and you want to create your own little domain, here are a few tidbits that might be helpful to you in establishing it properly.  Note, I've only really tested these guidelines on a Windows Server 2003 domain, so you're on your own.

  • If you've already created a domain controller from a VPC clone and you want to rename it, you'll need a tool called netdom.  This utility is included in the \Support\Tools directory on your Windows Server 2003 disc.  Then to rename a domain controller, follow these steps:
    • Make sure the domain function level is Windows Server 2003 (in Active Directory Domains and Trusts)
    • Open a command prompt
    • Enter netdom computername [CURRENTCOMPUTERNAME] /add:[NEWFQDN]
    • Enter netdom computername [CURRENTCOMPUTERNAME] /makeprimary:[NEWFQDN]
    • Reboot the server
    • Open a command prompt
    • Enter netdom computername [NEWFQDN] /remove:[PREVIOUSFQDN]
  • Before you join the domain of VPC's, you should change the SID of each participating VPC.  The easiest way I've seen to accomplish this is to download a small utility from www.sysinternals.com called NewSID.  This utility allows you to alter the SID of the computer by randomly generating a new one, copying the SID off of another machine, or specifying it manually.  Very cool!
    • Note, you can join the domain even if you don't change teh SID but it's pretty useless.  When you attempt to login to the domain you will be presented with an error message resembling: The name or security ID (SID) of the comain specified is inconsistent with the trust information for that domain.
  • Don't forget to follow the guidelines I alluded to before in establishing your network.  Once you have it set up, it works pretty flawlessly!

Good stuff.

Thursday, June 16, 2005 1:18:00 PM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [1]  |  Trackback
 Wednesday, June 15, 2005

Today, we held our June .NET User Group meeting.  It was great!  Unfortunately due to very late speaker cancellation and other scheduling issues we had to move our meeting from our usual last Thursday's meeting.  David Waddleton, an MSDN Events Team member out of Houston was in town and offered to present to our group a few weeks ago.  Boy! Talk about the stars aligning.

David spoke on Advanced Web Services and touched on quite a few topics that are of interest.  Primarily, he focused on WSE and demonstrated taking what would normally be an unencrypted, insecure SOAP request to a web service and tagged on the Web Service Extensions to encrypt the contents and in essence make the same request to the web server, getting the same results, but in a secure manner.  David also touched on SQL Reporting Services and Http end points in SQL Server 2005.

All very cool stuff.  I was very impressed as well with the turnout.  We had 50+ people there which was unexpected but very welcome!  We had some great giveaways as well: a few SQL Server Standard licenses, Sax.Net Communications Library, Primal Code, and much more.

Thanks go out to the user group members and their support!  What a fantastic user group!

Wednesday, June 15, 2005 2:51:00 PM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  |  Trackback