Miscellaneous : arfore dot com

Lately there has been a lot of flack going on over the Early Termination Fee (ETF) system that the major cellular carriers use to encourage consumers to abide by the length of the contract that they have signed.

Apparently a lot of people are upset that the various cellular carriers are wanting to charge a fee to get out of the contract they signed. Now I can understand that they don’t like paying some extra fee to switch carriers, however, they signed the contract in the beginning stating that they would pay the extra fee if terminating the contract early.

I can understand that there may be instances where the ETF seems onerous due to a dissatisfaction with the services or a case where the ETF is conceivably improperly levied. In fact, I had to pay an AllTel ETF when my wife died solely because the cellphone was actually in my name and not hers. If the phone contract had been in her name then AllTel would have waived the fee and just canceled the contract.

What I don’t quite grasp is why the very consumers that signed the contract are so loathe to abide by the terms. If you have ever signed a lease on an apartment, house or car, I imagine that you have agreed to pay extra fees in order to break the lease. This is a common practice and everyone seems to accept that it is worthwhile, so why is it so bad to have the same clause in the contract on cellular service?

So the USGS has almost completed the survey of the Bakken Formation. Estimates on the amount of oil contained in the shale formation range from 900 billion to 200 billion barrels.

A poster on Slashdot said that “Such a reserve would go a long way toward securing US energy independence.”

What exactly is energy independence? It seems to me that unless the United States starts taking alternatives to oil and coal more seriously that we are just trading dependence on foreign sources of petroleum for dependence on domestic ones. Is that really much better?

While watching Shark tonight I saw a commercial for the new Dyson root 6 handheld vacuum cleaner.  The commercial was pretty cool.  It showed the vacuum cleaner being built, in a Lego-like fashion.

Aside from the coolness of the commercial itself, it occurs to me that the design of the root 6 is quite similar to some of the designs I have seen for leaf blowers.  Maybe Dyson needs to look into building a line of outdoor products next.

How heavy is your laptop bag?  According to my passenger airbag sensors my latptop bag is at least as heavy as a small child.

The way I understand the system is that if the passenger is below a certain combination of height and weight, then the airbag is turned off and the seatbelt light is not triggered, but if you are a little heavier and/or taller then the seatbelt light is triggered.

The point of this is apparently to prevent injuries to small or under-weight passengers by a deploying airbag.

Awful nice of my truck to want my laptop to be secured by a seatbelt but not injured by the airbag.

Sayings : arfore dot com

So this morning, during a momentary lull in my workday, I was perusing my huge and unorganized list of bookmarks when I ran across a bookmark to the Burma Shave section of The Fifties Web.

For those of you, like myself actually, who are to young to have witnessed them yourself, Burma Shave used to put advertising slogans on signs up and down the roads in the US. For more on this, you can check out the article at Wikipedia.

Here’s you a good one:

The wife Who keeps on Being kissed Always heads Her shopping list

Burma-Shave

It’s always nice to see that the Internet is being used to keep alive parts of our culture that might otherwise go by the wayside of progress.

Another day, another off the wall saying.

So my father used to use the phrase “You Can’t Roller Skate In A Buffalo Herd” all the time when I was growing up. Until recently I never really cared what the origin was, I used the phrase and went on.

Recently, however, the subject of my unusual phrases came up at a luncheon for one of my student assistants that had just gotten a new job as a full time staff member in another department.

So, here’s the origin. The phrase comes from a song by Roger Miller entitled, strangely enough, You Can’t Roller Skate In A Buffalo Herd. For the complete lyris visit .

Every now and then I will utter a saying that I grew hearing or using that makes my assistants wonder.

Today I happened to use the saying If wishes were horses, beggars would ride in reference to one of my assistants wish that the timesheet process here was all done electronically instead of the paper system that we have.

She wondered where I get these things from. I thought it was a pretty common saying, but I had never actually investigated where it originated, so I went googling.

The first reference I found was from Bartleby.com which listed the meaning behind the saying according to the New Dictionary of Cultural Literacy as:

If wishing could make things happen, then even the most destitute people would have everything they wanted.

While this was nice, I already knew what it meant, so I went googling some more for the origin of the phrase. It turns out that it is a line from a Mother Goose nursery rhyme, entitled If Wishes Were Horses:

If wishes were horses, beggars would ride. If turnips were watches, I would wear one by my side. And if “ifs” and “ands” Were pots and pans,

There’d be no work for tinkers!

Ref: apples4theteacher.com

Rhyme : arfore dot com

So this morning, during a momentary lull in my workday, I was perusing my huge and unorganized list of bookmarks when I ran across a bookmark to the Burma Shave section of The Fifties Web.

For those of you, like myself actually, who are to young to have witnessed them yourself, Burma Shave used to put advertising slogans on signs up and down the roads in the US. For more on this, you can check out the article at Wikipedia.

Here’s you a good one:

The wife Who keeps on Being kissed Always heads Her shopping list

Burma-Shave

It’s always nice to see that the Internet is being used to keep alive parts of our culture that might otherwise go by the wayside of progress.

At my local Linux users group meeting, someone brought up the Nerdcore HipHop music.

So if you are a nerd or a geek, then check out this Hip-Hop rhyme, called Kill Dash Nine.

I like the chorus:

KILL DASH NINE, No more CPU time. I run KILL DASH NINE, And your process is mine. I run KILL DASH NINE, ‘Cause it’s MY time to shine So don’t step outta line or else it’s

KILL DASH NINE!

Who says geek can’t be hip?

Uncategorized : arfore dot com

Kameron Daio Beepath was born at 6:18p.m. on Wednesday, January 16, 2008. He had a birth weight of 3 lbs. 13.8 oz. Mother and baby are doing fine, but now the fun really begins for the dad.

Here’s what the proud papa had to say last night in an e-mail

He comes to us a full month ahead of term because he was tired of being cooped up and just wanted to use the bathroom. First he peed on the delivering doctor, and again on the tech when she placed him in the scale.

Java : arfore dot com

At work we run the WebCT Vista course management system by Blackboard.

Recently I was requested to figure out how to import the security certificate from the command line so that we could add this to the login script used for our campus computers. The main reason behind this was to eliminate the need for the user to have to manually agree to the security certificate when browsing to the CMS.

Normally when you want to create a Java keystore, you would use the keytool program located in $JAVA_HOME/bin. If you run this program to import a certificate without specifying a location for the keystore it tries to create one named .keystore in the user profile home directory.

However, when the JRE actually imports a certificate it doesn’t put it in this file. After some investigation, it turns out that the JRE imports certificates into a file named trusted.certs which is located in the following directory

C:\Documents and Settings\USERNAME\Application Data\Sun\Java\Deployment\security\

In order to import a certificate into a keystore you need to vital pieces of information:

  1. the keystore name
  2. the keystore password

The problem here is that this keystore is being automatically created by the JRE. It turns out that this keystore has a password that is an empty string. What this means is that when you import a certificate you have to specify the password by using the storepass parameter with a value “”.

For example if the certificate that you want to import has a name and path of

c:\Blackboard.cer

the command to import the certificate for the user jdoe would be

keytool.exe -import -noprompt -keystore C:\Documents and Settings\jdoe\Application Data\Sun\Java\Deployment\security\trusted.certs -storepass "" -file c:\Blackboard.cer

Update 2008-04-09:

I have also found how to do this on Mac OS X. According to the developer documents, the JVM on Mac OS X uses the user’s default keychain to store this type of certificate instead of using a file-based keystore like the other OS.

In order to store the certificate in the user’s login keychain you can import it via the command line tool certtool that is installed on the OS.

The command to import this certificate from the command line is

certtool i path/to/cert/file k=~/Library/Keychains/login.keychain

If you want to have this happen at login for each user who might login, then you could implement this via a login hook. For more on this, take a gander at the article 301446 in the Apple knowledgebase.

Research : arfore dot com

So, PayPal has thrown down the gauntlet on the safe browser war.  According to an InfoWorld article, they have declined to add Apple’s Safari browser to their list of safe browsers due to the lack of native anti-phishing technology.

I find it interesting that one of the features they explicitly mention in the InfoWorld article as being a reason behind this is the use (or lack thereof) of the Extended Validation Certificate (EV).

Firefox 2 does not currently support this, however the possibility of having the browser warn you to a possible phishing attack is apparently enough for PayPal. According to the Mozilla developer’s, FireFox 3 will support the EV technology.

Personally I think that the automated protection schemes are great, when they work.  One of the first things I did when installing IE7 on my virtual machine was to disable the anti-phishing filter.  It is nice to have the automated systems, but there is nothing like a little user education to make the world a safer place.  According to a NetworkWorld article:

In one study, three groups of 14 participants each received e-mail messages that included spam and phishing attacks as well as legitimate mail. Two of the groups were presented with educational material about how to prevent being phished; but only one group received the material after having fallen for the phishing e-mails and entered personal information into a fraudulent Web site.

The group that was given educational materials but hadn’t been phished were no better at spotting phishing attacks that the third group, which received no educational materials at all, researchers say.

Besides, who is to be the arbiter of whether or not the site really deserves being declared a phishing site?  Sure sometimes it is patently obvious, like when the site is dressed up to look like Citibank, but the URL is really something like “www.citibank.secure.orangecrush.cz”.  However, there is no such thing as a perfect system, and we don’t need to train the users to rely completely on the built-in safeguards.

When reading an article from ScienceDaily that was referenced on Slashdot, I noticed that at the end of the article there was an option to copy a citation reference for either the MLA or APA style.  At first I thought that this might be unique to that particular article, but then after more investigatio, it turns out that this is a standard feature.
This quite nice for people using this site as a source for their research.  I wish that this was a trend that more online news outlets were taking.  For instance, it would be great if the Atlanta-Journal Constitution would do this, since you can no longer purchase the AJC in it’s traditional format in Valdosta due to having drastically cut its delivery area recently.

Poetry : arfore dot com

The Gypsy Violin
by Munda

The compelling violin lures With an irresistible yearn Dance, dance, please dance for me

I can no longer adjourn!

Ethereal notes float from its strings Caressing like a lover’s hand Sensual music, Angel’s touch

Leading the way to wonderland

Embracing with utter delight Craving, beckoning me Tempting my lonely heart

Dance, dance on my melody!

Faster, faster the music escapes Without compassion to body or soul Seducer of lonely hearts

Until dancing is my only goal

Faces gyrate while I dance on passion Flashes of fire in the corner of my eyes The violin plays like never before

Until I become one and loneliness dies

With a final cry and a final touch The violin stops, the music ends Leaving behind an emptiness

We’ll meet again, my violin friend

ref. url: The Gypsy Violin

When You Are Old
by William Butler Yeats

When you are old and gray and full of sleep And nodding by the fire, take down this book, And slowly read, and dream of the soft look

Your eyes had once, and of their shadows deep;

How many loved your moments of glad grace, And loved your beauty with love false or true; But one man loved the pilgrim soul in you,

And loved the sorrows of your changing face.

And bending down beside the glowing bars, Murmur, a little sadly, how love fled And paced upon the mountains overhead,

And hid his face amid a crowd of stars.

ref. url: When You Are Old

Who is She?
by Gabriel Rosenstock

Who is this goddess of yours? Who is she?

‘Pure fantasy, I wager.’

‘Is she not clear to you?’
‘No, she is not.’

‘Clearer than day is she
‘ clearer than night …’

‘Not clear to me …’

‘Day in night is she
‘ night in day …’

‘I see her not …’

‘Look inside yourself!’

‘Difficult …’

‘Then look at her frost

covering the grass.’

ref. url: Who is She? In English and Gaelic

Music
by Walter de la Mare

When music sounds, gone is the earth I know, And all her lovely things even lovelier grow; Her flowers in vision flame, her forest trees

Lift burdened branches, stilled with ecstasies.

When music sounds, out of the water rise Naiads whose beauty dims my waking eyes, Rapt in strange dreams burns each enchanted face,

With solemn echoing stirs their dwelling-place.

When music sounds, all that I was I am Ere to this haunt of brooding dust I came; And from Time’s woods break into distant song

The swift-winged hours, as I hasten along.

ref. url: Music by Walter de la Mare

Today is the birthday of Lord Byron, an English poet born in 1788 in Scotland. He was born George Gordon Noel.

His first success was the poem Childe Harold’s Pilgrimage written in 1812, which is based around his journeys from England to the eastern Mediterranean.

Check out today’s daily poem for another of his more recognizable poems, She Walks in Beauty.

This particular poem is one of my favorites, and it was featured in the television series Beauty and the Beast that ran on the CBS network in the US from 1987 until 1990. The first season of this show has recently been released on DVD.

Next Page »

Mac OS X : arfore dot com

One of the small annoyances I have with Firefox is the default URL used for the Google search plug-in.  While I generally just type in a search term and hit enter, I do sometimes just hit enter without a corresponding search term just to get sent to the main Google page.  Why do I do this?  Mainly so that I can view the updated Google logos when they change for holidays.

With a default installation of Firefox the default Google page is the Mozilla Firefox Start Page.  While this is nice from a corporate branding sense, this special page does not have the links to either iGoogle or the Google Accounts login page, nor does is feature the often customized Google logo.  Also, none of the other search plug-ins that I have tested in Firefox exhibit a similar “feature”, they all dump you at the default page for that particular service.
Here’s how to change all of that.

Firefox 2.x for Mac OS X

  1. Quit Firefox.
  2. In the Finder, navigate to /Applications
  3. Right-click (or control-click) on Firefox.app and select Show Package Contents from the context menu
  4. In the window that comes navigate to Contents -> MacOS -> searchplugins
  5. Open the file named google.xml in your favorite text editor
  6. Change the value for the XML attribute named SearchForm as follows:

    Default:  http://www.google.com/firefox
    Changed: http://www.google.com

  7. Save the file and start Firefox.

Firefox 2.x for Windows

  1. Quit Firefox.
  2. In Windows Explorer open the following directory C:\ -> Program Files -> Mozilla Firefox -> searchplugins
  3. Open the file named google.xml in your favorite text editor
  4. Change the value for the XML attribute named SearchForm as follows:

    Default:  http://www.google.com/firefox
    Changed: http://www.google.com

Voila!  Now you have what many of my friends would have logically concluded as the expected action for the Google search plugin for Firefox.

Note that this mod will have to be changed for each successive update of the Firefox application, so it may not be to your taste.

Those of you out there who are running an installation of SCT Luminis 3 may have noticed that the browser check always comes up warning you that the browser is unsupported when using Firefox 2, even though all the features seem to be completely supported.

This is due to the fact that the browsercheck javascript does not know about the new agent string that was introduced with Firefox 2. Generally a new release, or service pack to Luminis fixes this for newer browsers.

In order to change this you will need to alter a couple of files in you Luminis install.

The two files that need to be altered are:

  1. webapps/luminis/js/clientsniffer.js
  2. /webapps/luminis/WEB-INF/templates/portal/browserchk.thtml

clientsniffer.js

In this file you will need to alter the conditional of the big if-statement that follows the assignment for the variable is_nav5.

The problem is that the if checks for the existence of a revision number of 1.8. What you need to do is add an additional check for a revision number of 1.8.1.6. So the if-statement conditional becomes:

if (is_nav5 || agt.indexOf(”rv:1.7.12″) != -1 || agt.indexOf(”rv:1.8″) != -1 || agt.indexOf(”rv:1.8.1.6″) != -1)

The next thing to do is to add an additional Firefox variable that is set to true if the major number is 2. I added this after the existing variable is_fox1_5.

var is_fox2 = (is_fox && (is_major == 2));

browserchk.thtml

In the browsercheck file you need to alter if-statement that sets the variable supported to have a true value. This if-statement should follow immediately after the one that checks for whether java is enabled in your browser.

What you need to add is an additional OR check, so that the if-statement conditional looks like the following:

if ((is_nav8) || (is_nav7) || (is_moz1_7) || (is_win && is_ie5up) || (is_win && is_ie6) || (is_saf1_3) || (is_fox1_5) || (is_fox2) || (is_win && is_fox1))

I have tested this change with Firefox 2.0.0.6 on the following browsers:

  • Mac OS X 10.4.10
  • Windows XP SP2
  • Windows Vista
  • Ubuntu 6.10

Resources

So, I hate developers. Wait, let me clarify: I hate developers who can’t think through the user experience.

When an uninstaller is written it really should remove all file associated with the application.

Case in point, recently I moved to a Windows Mobile-based smartphone, so I needed to cross-grade to Missing Sync for Windows Mobile from the PalmOS version.

When I run the uninstaller it removed a lot of stuff, but the following data was left behind:

  • Missing Sync under the home library Application Support
  • Palm Hotsync under the home library Application Support
  • com.markspace.missingsync.ConduitManager.plist under the home library Preferences
  • com.markspace.missingsync.palmos.plist under the home library Preferences
  • com.markspace.MemoPad.plist under the home library Preferences
  • Palm under the home Documents directory
  • Palm Hotsync under the system library Application Support

Admittedly, some of these files/directories might be valuable if you want to re-install your software for some reason, but at the very least the installer should ask you if you want to remove it.

Also, in the Hotsync folder(s) there are sometimes conduits that are not part of the Missing Sync software, so it was actually nice that those were left behind.

Why is it that some of the essential tools that are used on a daily basis are missing from OS X?

Today I wanted to use wget and found that it was missing.

Fortunately, this is a very easy thing to fix. All you have to do is download the source code from the GNU page on the wget project, then follow the standard compile steps:

  1. unpack the source
  2. ./configure
  3. make
  4. sudo make install

Note: The compiled binary is placed in /usr/local/bin so you will need to add this to your path. This process varies depending on what shell you are using, but the default shell in 10.4.9 is bash.

Apple : arfore dot com

In my process of tranferring my DVD collection to a digital media server I discovered that the Apple TV software is smarter than I thought.

I have been ripping my DVD collection using Handbrake on my Mac and transferring them to a Windows box which is shared out via my internal only network to the Apple TV using iTunes.  I use the built-in Apple TV profile to do this.  The profile sets the frame rate option on the encoder to be “Same As Source”.  It turns out that if your rip has a final fps (frames per second) that is greater than 30 then the resulting movie will not be available in the list of Shared Movies on the Apple TV.

So apparently, the category logic, or lack thereof, of the App Store extends to the rest of the iTunes Store as well.

On the iTunes Store if you look at the category of music labeled Albums Under $7 you will find the Maroon 5 album The B-Side Collection.  However, if you look at the category of music labeled Albums Under $9, you will not find the Maroon 5 album.

If an album is under $7 it would seem to me that it is also under $9.

This so doesn’t make any sense.

A friend of mine took this photo of the Apple Store Tokyo, during a recent trip.

SCT Luminis : arfore dot com

Those of you out there who are running an installation of SCT Luminis 3 may have noticed that the browser check always comes up warning you that the browser is unsupported when using Firefox 2, even though all the features seem to be completely supported.

This is due to the fact that the browsercheck javascript does not know about the new agent string that was introduced with Firefox 2. Generally a new release, or service pack to Luminis fixes this for newer browsers.

In order to change this you will need to alter a couple of files in you Luminis install.

The two files that need to be altered are:

  1. webapps/luminis/js/clientsniffer.js
  2. /webapps/luminis/WEB-INF/templates/portal/browserchk.thtml

clientsniffer.js

In this file you will need to alter the conditional of the big if-statement that follows the assignment for the variable is_nav5.

The problem is that the if checks for the existence of a revision number of 1.8. What you need to do is add an additional check for a revision number of 1.8.1.6. So the if-statement conditional becomes:

if (is_nav5 || agt.indexOf(”rv:1.7.12″) != -1 || agt.indexOf(”rv:1.8″) != -1 || agt.indexOf(”rv:1.8.1.6″) != -1)

The next thing to do is to add an additional Firefox variable that is set to true if the major number is 2. I added this after the existing variable is_fox1_5.

var is_fox2 = (is_fox && (is_major == 2));

browserchk.thtml

In the browsercheck file you need to alter if-statement that sets the variable supported to have a true value. This if-statement should follow immediately after the one that checks for whether java is enabled in your browser.

What you need to add is an additional OR check, so that the if-statement conditional looks like the following:

if ((is_nav8) || (is_nav7) || (is_moz1_7) || (is_win && is_ie5up) || (is_win && is_ie6) || (is_saf1_3) || (is_fox1_5) || (is_fox2) || (is_win && is_fox1))

I have tested this change with Firefox 2.0.0.6 on the following browsers:

  • Mac OS X 10.4.10
  • Windows XP SP2
  • Windows Vista
  • Ubuntu 6.10

Resources