iTunes web site and Google Chrome on Microsoft Windows

Here’s proof that Apple’s iTunes web site doesn’t natively recognize Google Chrome for automatically launching the iTunes application from the iTunes web site. Below is a screen capture of the source code used by the iTunes web site to detect the presence of the iTunes software on the PC accessing the iTunes web site. The JavaScript function used to detect iTunes is called “iTunesDetected” and will only return TRUE if any of the following are true:

  • the browser’s user agent string contains the word “Macintosh”
  • the browser is Internet Explorer and the iTunes ActiveX component installed
  • the browser is Firefox and the iTunes Mozilla plugin is installed
  • an iTunes cookie named “iTunesPresent” set to true in the domain of the Apple web site visiting or in “.apple.com”

iTunes web site JavaScript that excludes Google Chrome

The $64 question now is what’s the best way to get the “iTunesPresent” cookie set in domain “.apple.com”.

My first thought was to configure Chrome to use a user agent string containing “Macintosh” and then launch iTunes from the iTunes web site once thereby setting the cookie.

Chrome using Macintosh/Safari User Agent String

I was perplexed when this didn’t work. Using the built-in debugger in Chrome I proceeded to set a break point in the iTunesDetected function and then single stepped through the function to see what was happening. Even thought I had set my user agent string to “Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_3; en-us) AppleWebKit/525.19 (KHTML, like Gecko) Version/3.2.1 Safari/525.19” using the Chrome command line switch “–user-agent=” debugging showed me that “navigator.agentString” was still set to the default Chrome UAS.

navigator.userAgent

At this point I decided to take the sledgehammer approach. I navigated Chrome to the following url: http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewTop?id=25204&popId=30 and after receiving the error that iTunes wasn’t installed I set a break-point in the JavaScript that tested whether iTunes was “installed”.

itmsCheck.js

I then reloaded the page and after the breakpoint triggered, I changed “iTunesDetected()” to “true” and began to single step through the code. Once I entered function “its.cookies.setUnescaped” I proceeded to change “if (domain)” to “if (true)” and hard-coded the setting of domainString to ” domain=.apple” (see lines 216 and 217 below).

How to force creation of iTunesPresent cookie in .apple.com domain

I then let the script continue by pressing the run pause-run buttonbutton.

My PC now contains the iTunesPresent cookie in the “.apple.com” domain which now allows me to automatically launch iTunes from web pages on the iTunes web site using Google Chrome.

iTunesPresent cookie

Why Apple doesn’t directly support Google Chrome remains a mystery to me. I understand that Google Chrome is a competing product to Apple’s Safari browser, however, I am confident that Apple will make far more revenue from the iTunes store by making the user experience of iTunes best-in-class using any platform or browser.

Twitter tip – How to remove a saved search that returns no results

If you have a saved search in Twitter that returns no results Twitter doesn’t allow you to remove or delete the saved search. To resolve the problem, all you have to do is to send a new tweet that contains the item that the saved search is looking for. If the saved search is for some hash tag that isn’t popular any more, just include that hash tag in a new tweet. Give Twitter a few minutes after you send the tweet for them to update all of their indexes and when you rerun the search your new tweet should appear in the results and Twitter will then allow you to delete the saved search.

This worked for me today. Here are the specifics of what I did. I had three saved searches that I couldn’t remove. I had the hash tag #amexgiftcard, the word “ch9live” and a search for all tweets to me “to:HeatFanJohn” (I guess I not a very popular recipient of tweets!). I therefore generated a tweet containing all of these items. My new tweet was “@HeatFanJohn Test tweet with #amexgiftcard & ch9live to allow me to delete these saved searches & to:HeatFanJohn – this worked @support !”.

Below is a screenshot of running the saved search “to:HeatFanJohn” right after I sent the tweet. As you can see Twitter hadn’t updated their indexes yet so my search returned no results and as a result Twitter didn’t include the link to remove the saved search.

After waiting a couple of minutes I reran the search and as you can see my new tweet showed up and I was then able to click on the link to remove the saved search.


Voil√°! After clicking on “Remove this saved search”, my saved search was deleted!


Again, this method worked for me. I hope that it helps you. Perhaps Twitter will correct this problem soon to eliminate the need for this easy workaround.

Happy Tweeting!

This blog is carbon neutral

“My blog is carbon neutral” is an initiative started in Germany by the “Make it Green!” program. By creating this post about the initiative and emailing them the link to this post, they will plant one tree in the Plumas National Forest in California.

carbon neutral coupons and shopping with kaufDA.de

The text below was copied from planet green, a Discovery Company web site.

On their website, Make It Green! explains that a study out of Harvard University shows that the average website is responsible for 0.02 grams of carbon dioxide emissions for every visitor. They then calculated that a blog with 15,000 visitors each month produces 8 pounds of emissions each year. Given that the UN Framework Convention on Climate Change estimates a tree absorbs about 20 pounds of emissions each year — though it is important to note that fewer emissions are absorbed in the tree’s first few years of life — even a blog with thousands of visitors a month can be carbon neutral by planting just one tree.

To date, Make It Green! has helped the Arbor Day Foundation plant about 350 trees in Plumas National Forest, a 1-million-acre forest in northern California that was devastated by forest fires in 2007 (88,000 acres of the forest was destroyed). The 350 trees is a good start, but eco-conscious bloggers can do their part.

How to Take Your Blog Carbon Neutral

  1. Write a blog post about this initiative and insert one of the buttons from Make It Green! in the post.
  2. Email the post’s link to Make It Green! at co2-neutral@kaufda.de

That’s all it takes on your part. Once Make It Green! receives the link, they will plant a tree in Plumas National Park.

It’s important to note that Make It Green! will plant one tree for each domain. But if you’ve got a very popular blog with more than 15,000 viewers per month, you can e-mail Make It Green! to make sure your blog is indeed carbon neutral.

For more information on the project please visit the “What we do page” on Mach’s web site.

Who’s participating?

If you want to see which blogs we made carbon neutral you can browse through our participant list. Your blog is missing? Then let us know and we will make your blog carbon neutral too!

Who's participating?

No AT&T uVerse for you today!!!

Seinfeld's Soup NaziTuesday, March 30th, 2010 was supposed to be the big day for AT&T to install their new uVerse service in my home.

Well sadly, as the “Soup Nazi” on Seinfeld would say, “No soup for you!!!”. For me is was AT&T saying “No uVerse for you” … at least not today, we’ll try again next week.

About a week ago I signed up for AT&T’s triple pack bundle which includes digital TV, internet and phone service. I received several email confirmations from AT&T confirming that my service would be installed today. This morning I received phone calls from two different AT&T installers, one for the inside the home work and the other for the outside of the home work. At least AT&T is organized enough to coordinate having two installers perform the required work at the same time.

My problem started when the inside technician showed up at my home within the agreed to time window and told me that my voice service had been canceled! I asked him why and he said that his work order didn’t show why it just showed that it had been canceled. At my urging he called into AT&T’s support center to find out why my voice uVerse service had been canceled. On his second call into the support center (the first time the support center hung up on him) he found out from the VOIP support group that my voice service had been canceled because my current AT&T voice service has RingMaster¬†enabled and RingMaster isn’t compatible with uVerse voice. I then said that this was no big deal, just cancel my RingMaster service (which I had enabled to receive faxes on my fax machine using a different phone number with unique ring pattern), but unfortunately this could not be done immediately. AT&T needs 48 hours to cancel the RingMaster service.

Fortunately the inside premise installer was very friendly and helpful. He took the time to schedule a new appointment for installation next week.

So at least, unlike Ellen who was banned from having soup for one year, I only have to wait one week.

My real issue with AT&T is why didn’t they notify me earlier that there was an issue that prevented a smooth conversion to uVerse voice. All it would have taken was a simple call or email alerting me to the issue and the problem would have been resolved prior to my scheduled installation time.

University of Miami Computer Room Nostalgia

Joey Vossen and Barry Miller in UM computer room

Joey Vossen and Barry Miller in UM computer room
Photo courtesy of Edward P. White © All rights reserved

This is a picture of Joey Vossen and Barry Miller (two of the best programmers that I know – Barry wrote a standalone bootable operating system for the 1106 that played Mozart through the system’s maintenance speaker and Joey wrote a program that transparently removed deleted items from every program file on the system) in the University of Miami computer room. In the background you can see two Sperry Univac 770 line printers. In the foreground in front of Joey (who is sitting) is a Sperry Univac U300 console terminal. The U300 was the console device for the University’s Sperry Univac 1106. As I recall the 1106 @ UM had eight U16 tape drives (seven 1600 BPI 9-Track drives and one 7-Track drive for use with the University’s Calcomp plotter), several 8440 and 8430 disk drives, two FH-432 drums and one FH-1782 drum.

The University of Miami had a Sperry Univac 1106 computer when I started there as a student in August 1976. My first full time job was as a systems programmer for the University. When I left the University in 1982 to work at Eastern Air Lines the University had a Sperry Univac 1100/80A computer system.

My guess is that this picture was taken sometime between 1976 and 1978.

Trademarks Unisys, UNIVAC, FASTRAND, and UNISERVO are registered trademarks of Unisys Corporation.