Monday, September 17, 2007

Great Uses of AJAX

There is a lot of talk about AJAX these days, but very few sites are doing a truly great job of implementing this technology in a seamless and "natural" manner. I'm keeping a list here of sites that do a good job of presenting their sites with more than just "oh/ah" factor and actually make this technology integral to a great user experience.

  1. http://www.pandora.com/ Uses AJAX extensively and, some might say, gratuitously, but to nice effect.
  2. http://www.slashdot.org/ The usually gee-wiz-phobic site's Threshold Slider is pretty nifty. Dead simple, quick and it improves your experience and allows instant feedback on your interaction with their site. Nice.

Monday, August 27, 2007

IIS 7.0 Gives HTTP 500 Internal Server Error for all Requests--The Answer is in the Pipeline

Our company runs a variety of applications based on the ASP.NET 2.0 Framework. Our standard environment is to run these apps on Windows Server 2003 machines with IIS 6.0, but I'm a bit more bleeding edge and chose to install Vista, and thus IIS 7.0, the last time I rebuilt my machine. I have encountered a few issues here and there, but perhaps the most frustrating was the HTTP 500 Internal Server Error I would get every time I hit the site on my Vista machine.

It turns out that my problem was in the Managed Pipeline Mode. We are using a variety of Handlers and Listeners to support logging and error tracing and they were not working in Integrated mode. Switching to Classic fixed it right up, though.

Sweet! Now on to the next challenge.

Friday, August 17, 2007

How to Set Network Access for DTC in Windows Vista

Finally, a developer related post by the Cranky Developer. I am using Transaction Scope in ADO.NET 2.0 to maintain cross database transactions. It's a great technology, but as anyone who has used it knows it takes some fiddling with the configuration of the participating machines in order to work correctly. In my case I was getting the "Network access for Distributed Transaction Manager (MSDTC) has been disabled. Please enable DTC for network access in the security configuration for MSDTC using the Component Services Administrative tool." error.

No sweat, the solution is pretty simple--in versions of Windows previous to Vista you would just go to Administrative Tools and open Component Services and change the settings in the MSDTC tab of the properties of My Computer. It's changed significantly in Vista, however. For starters, the Component Services console isn't linked from the Administrative Tools any more. To start it you have to open %windir%\System32\compexp.msc.


The difference is that the properties you're looking for are no long on My Computer, but "Local DTC". To get to it go to Component Services\Computers\My Computer\Distributed Transaction Coordinator\Local DTC and use the Security Tab.

Check Network DTC Access, Allow Remote Clients, Allow Inbound and Allow Outbound and you're set.

Friday, June 29, 2007

Yes, you can buy an extra Sirius Conductor remote

We bought a Sirius Conductor SCH1W satellite radio and remote recently. Our challenge was that we have all of our home entertainment and amplifier equipment in our living room, but we have speakers in our upstairs bedrooms. We needed a device that would allow control of the audio source in the living room, would be simple to use, and perhaps most importantly, one with a remote user interface. Having an IR blaster controlling an iPod wouldn't do you much good if you couldn't see what you were playing.

The Sirius Conductor, with its RF remote, fit the bill perfectly. As you can see it has a nice, large LCD display and works through walls (though unfortunately I was unable to get enough range when I tucked it away inside of our oak entertainment center, but the radio unit is small enough that it's not too obtrusive to leave it exposed).

Anyway, the device works great as a Sirius radio. What turned out to be an unexpected bonus is its excellent universal capabilities. Of the stack of admittedly cheap universal remotes I have none was able to communicate so quickly and easily and with all my devices as the Conductor. It can support up to 6 devices, has an extensive list of existing codes for programming a wide variety of devices, and even has learning and macro capabilities. Come that with the built in IR blaster and I can even control IR devices through walls using its Z-Wave RF capabilities.

Even better is the fact that the radio's base station can communicate with multiple remotes, and a remote can communicate with multiple radios. I finally have a solution that will allow me to consolidate all of my components down to one remote, and a remote that can be used anywhere in the house. I can also consolidate to a single "remote platform" so that my wife and I don't have to face a different remote for every task. The remote clone feature, which will let me set up one remote and make a copy of it with the second will be very handy. Very nice!

Now all I needed was an extra remote. You can't buy them from the normal channels, but after calling tech support at Crutchfield.com they were nice enough to give me the phone number for Directed Electronics (Directed.com) the company that manufacturers the radios, 1-800-876-0800. The staff there was friendly and I worked my way to customer service, then the tech support department before finally getting to parts. Tell them you need a replacement remote for model # SCH1W.

They are shipping me a new remote for a less than $27! Amazing. I'm getting this sophisticated RF and learning remote for $32.73 with shipping. Quite the deal.

Update (August 7th 2007):



Well, it's been quite a challenge but I've gotten my Conductor set working nicely. The first issue I had was that the IR blaster didn't work. Both Directed and Crutchfield were very helpful but we were unable to get the IR blaster working and they explained that I would have to wait over 3 months for a replacement unit.

The second issue was that no matter what I did I could not get the second remote to pair. The way it is supposed to work is that you pair one remote to the tuner then use the setup menus to do a "Remote Copy" from the primary remote to the new secondary remote. It would seem to work with no errors saying "Transmitting" on one, "Receiving" on the other, then "Success!" on both. However, the second remote would always report "out of range".

Luckily the replacement unit arrived from Crutchfield earlier than expected. I was able to pair the new remote to the new receiver then do a remote copy from the new remote to my old remote. Now I can have one remote on the third floor of the house and use the other as my multi-function remote for my entertainment center in the living room. Excellent!

It has taken much longer than expected, but I'm very pleased with the results. Along the way the guys at Directed and Crutchfield were great, gladly sending me replacements that I needed before I even returned the units I had. They didn't always have the answer but they were always polite and supportive and in the end it's working great.

Thanks!

Thursday, June 14, 2007

YAGCHS (Yet Another Google Checkout Horror Story)

O.K., "horror" might be strong, but I've learned my lesson and will not be using Google Checkout again.

The basic concept of Google Checkout is brilliant. I trust Google, so I store my personal data (importantly my credit card) with them and I am able to shop without revealing this sensitive information to whichever vendor I'm dealing with. Excellent!

The problem, however, is the complete lack of customer service of any type. See, I made a mistake and Google still has my old address. The order went through and now I have a total of three packages heading to the home of the people who bought my house. So I call up UPS and they tell me I have to contact the vendor to change the destination address. I then contact J&R Electronics and they say that for all customers except those using Google Checkout that would be no problem, but Google Checkout orders cannot be modified in any way. The same is true of my order with Buy.com, and in fact you have to go to a special page on Buy.com's site to even search for your order to get the tracking number.

The solution? Well, Google Checkout could fix it if it weren't for the fact that they do not have any customer service, not even through email. It was definitely my mistake to send these items to the wrong address initially, but it's apparent that Google Checkout works fine as long as, well, everything works fine. If there is any deviation from a standard transaction you're completely out of luck. Now all I can do is sit and watch helplessly as my new Sony 6.1 Home Theater Receiver, 500 GB external hard disk and USB 2.0 hub are individually traveling across the countryside to the incorrect address. Quite frustrating, as you can imagine.

Monday, April 16, 2007

I obviously have a serious lack of judgement...

Having purchased two of the nominees for Engadget's Worst Gadget of 2006 (my MacBook and Motorola Q) I obviously have questionable, at best, judgment. Moments after reading this poll (and voting for the Q as the worst of the worst) the Motorola just rebooted itself without warning in my hand. It is obviously punishing me for my lack of faith in it.

Tuesday, April 10, 2007

Problems connecting Mac with Bluetooth Motorola Q Modem

O.K., I went and bought a Mac. As someone who makes his living off of Microsoft technologies it may seem like an odd decision. I ended up deciding to go with the new MacBook due to iLife's nicely integrated suite of applications that allowed me to easily edit my old family slides and Super-8mm movies into a nicely polished DVD for the rest of the family to view.

Anyway, that part worked great and everyone was impressed with the quality of the results.

It didn't take me long to want to connect to the Internet through my Motorola Q. I have been wanting to do this for years, and I am finally doing it. I won't go into all of the details of how to do this (there are loads of great sites--Tharmsen's post was probably my favorite).

They all have one thing in common--the assertion of "follow these steps and it will work". However, I had problems and I will explain them here.

It worked briefly yesterday, but then stopped working. It would start to connect, then immediately go to "Disconnecting" where it would hang indefinitely. Very frustrating. It helped to go to the terminal window and navigate to:

/var/log
tail +40 ppp.log

This showed me the following problem:

Tue Apr 10 16:05:02 2007 : Starting Apple Verizon Support CCL
Tue Apr 10 16:05:02 2007 : CCLWrite : AT\13
Tue Apr 10 16:05:06 2007 : CCLWrite : AT\13
Tue Apr 10 16:05:09 2007 : CCLWrite : AT\13
Tue Apr 10 16:05:12 2007 : Connect script failed

A search on this problem turned up no definitive solutions and whatever I did (changing the connect script/modem, setting the PPP settings, etc.) didn't affect the behavior.

The solution turned out to be pretty simple. I just unpaired my phone and computer then re-paired and it worked. I can't remember for sure, but I think the first time I paired the DUN option wasn't available (just the Address Book was there). This time DUN was an option, I selected it, entered the login information and I was connected. Sweet!

A quick trip tohttp://www.dslreports.com/speedtest?flash=1 turned up a download rate of 230 kbps and an upload of right at 100 kbps. Not too shabby considering I can connect from just about anywhere here in Denver for only an extra $15 per month on my Verizon bill.

[A Note: Since I discovered this "fix" I've had to re-do this a couple of times as the behavior will re-appear. Oh well, it's not too difficult or time consuming, though sometimes I arrive at my train station about the time I get fully connected. Still, being connected to a remote desktop session with my office while sitting on the train is pretty cool. ]

Wednesday, February 28, 2007

E_ACCESSDENIED Error Configuring Microsoft Office SharePoint Server 2007

I was installing MOSS and got most of the way through the SharePoint Products and Technologies Configuration Wizard and it was crashing with "E_ACCESSDENIED". The answer was outlined at
http://forums.microsoft.com/TechNet/ShowPost.aspx?PostID=626316&SiteID=17. Basically you need to look up the CLSID for the failing DCOM activation in the System event log and change its permissions.

The problem was with the class {61738644-F196-11D0-9953-00C04FD919C1}. The only slight gotcha was that that GUID was not referenced in the DCOMCNFG.exe tool. A bit of searching and I was able to narrow it down to IIS and it turns out that it is the "IIS WAMREG admin Service". Change its Launch and Activation Permissions to allow Launch and Activate to "Network Service".

That's it--the install went just fine after that change.

Am I the first person to ever go through this?

Yes! Well, it seems like that sometimes. I'm currently working on a Microsoft Office SharePoint Server 2007 project and I think I'm traveling in new territory every day. I'm going to post my experiences here not because I have anything new to add but just to keep track of my experiences for myself.