DL

April 15, 2008

Firefox changing bookmark format

Filed under: Technology — Dave @ 10:51 am

Firefox 3 will be abandoning the bookmarks.html file for the storage of bookmarks in favor of an SQLite file.

That might be cool for performance, but bad for those who occasionally tweak their bookmark file directly (say, to fix icons that Firefox gets wrong).

Anyone know of a good free SQLite browser for Windows?

I suppose I have the option of exporting the bookmarks, which will still support bookmarks.html and then re-importing.

April 1, 2008

Are you kidding me?

Filed under: Uncategorized — Dave @ 9:02 pm

I save for retirement, I invest and I take a pretty active role in my savings.  However I’ve never seen a good method for determining what I will need.  I recently received an ad from Fidelity, which holds the vast majority of my retirement savings, about a retirement calculator that is supposed to tell you if your on track for a comfy retirement.

I couldn’t answer all the questions but look at this, can I be this far off?

clip_image001

They say I will need almost 6 million to retire?  And that I have to increase my savings by 10 to 12K per month – well over my take-home?  I didn’t even specify what I thought I’d need to live on, I let them estimate it for me.

March 25, 2008

Vintage Ads for New Products

Filed under: personal — Dave @ 9:26 am

Here’s a collection (click on the picture) of phony vintage ads for modern products

I’m Famous

Filed under: personal — Dave @ 8:40 am

Some travel web site, schmap, has picked up my picture of Massey Hall in Toronto from my flickr stream and is using it in their online guide.

It appears that there are dozens of photos for many locations. My guess is they include as many pictures as possible, less for illustrating their guide and more for getting the people they include to spam their site around.

As I’ve just done: My Schmap Entry

February 10, 2008

Better OnLoad handling in Javascript

Filed under: programming,Technology — Dave @ 11:23 pm

The onload handler on a page’s <body> element is the place to do any JavaScript initialization that depends on the page being loaded to proceed. If you have some JavaScript and you’re sure it has no dependencies on the page structure, you can have it called earlier but generally it’s safest to call it in the onload handler. It might look like this

<body onload="ajax_subsys_init();">...

But just as you should use CSS to separate presentation from structure, you should separate behavior from structure as well. And you can do that in javascript by writing to the onload handler directly:

window.onload=ajax_subsys_init;

This is an example of when it’s OK to break the rule prohibiting execution of JavaScript before the onload handler runs. Obviously this must run before the onload handler is called.

This is great because the page’s JavaScript can then take the responsibility for initializing itself. The problem with this approach is, as pages get more complex behaviorally, you might have several overlapping bits of javascript that want to initialize themselves. Then you have

//from inside of ajax.js
window.onload=ajax_subsys_init;
....
//from inside gui.js
window.onload=gui_widgets_init;

The gui widgets initialization routine overwrites the ajax subsystem initialization routine and when onload is called the gui widgets are initialized but the ajax subsystem is not.

So, actually, you can’t let the individual subsystems manage their own initialization, because the last one that does so is the only one that gets called. Your only option is writing your own initialization routine such as

//from inside of ajax.js
window.onload=ajax_subsys_init;
....
//from inside gui.js
window.onload=gui_widgets_init;
....
//inside your page
function page_init(){
    ajax_subsys_init();
    gui_widgets_init();
}
window.onload=page_init;

Well, that works but, you need to be aware of the initialization requirements of all the javascript libraries you include. If you add a new javascript library you need to change this initialization code.

It is possible to create a javascript class that will allow each javascript subsystem to take responsibility for it’s own initialization and yet not overwrite each other. And here is that class:

function onLoadHandler(init_fxn){
    var old_init = window.onload;
    var new_init = init_fxn;
    window.onload = function(){
         if (typeof(old_init)=="function"){
            old_init();
         }
         new_init();
    }
    return this;
}

Each subsystem that wants to hook into the onload handler can use this class to add their initialization routine to a chain of initialization routines. Here’s how it can be used.

//from inside of ajax.js
new onLoadHandler(ajax_subsys_init);
....
//from inside gui.js
new onLoadHandler(gui_widgets_init);

Now each javascript library can be included and can automatically initialize itself.

February 5, 2008

Here we go

Filed under: personal,Politics — Dave @ 6:40 pm

Went to the Cuyahoga Board of Elections at lunch to see if I can get a bunch of voter registration forms. I did a lot of that in 2004 but I kept hearing they were going to change the rules to make it more difficult to register people so I didn’t know if there was going to be a problem.

I talked to a really nice lady who asked one suspicious sounding question which I must have answered correctly because she gave me a whole stack, some pointers about the registration deadlines and then also gave me a bunch of applications for absentee ballots. Finally she thanked me for going out of my way to do this.

So I’m heading off to a bar where a bunch of progressively minded people are gathering to watch Super Tuesday results roll in.

Maybe I’ll score a few new voters.

February 2, 2008

What’s Cooler?

Filed under: personal — Dave @ 4:13 pm

Humans dancing like robots:



Or robots dancing like humans:

January 21, 2008

Ice on Lake Erie

Filed under: personal,Uncategorized — Dave @ 10:29 am

I see this morning that lake Erie has finally developed a little ice on it. I’ll be surprised if it freezes over this year though.

January 16, 2008

The Upside of Anger?

Filed under: personal,Technology — Dave @ 10:26 am

Last night I got home and found a message on my machine from Earthlink that said I should call them. This was 48 hours after I was told I would hear from them in 24 hours. I called to find out what progress they had made or what problem they found.

Instead I was connected to a guy who decided to test my line again, from India, and who told me my speed looked fine. This is after I went through all these speed tests on Sunday, with a different guy. This new guy asked me to run a speed test on my side again just to make sure. I went to the speakeasy speed test site but got quickly exasperated when the test page stalled half rendered because of my slow speed. I told the guy this was ridiculous, that my service is so poor the speed test won’t even come up and how can he seriously tell me that my speed is OK.

He said he’d escalate this to local support and I asked why that wasn’t done Sunday when we had established there was a problem. He reiterated that he’d escalate this to local support. I asked for the number of local support so I can make sure they don’t just sit on the escalation for another 48 hours. He explained that he can’t give me their number, that they would do the work and then report back to Earthlink and then Earthlink would report back to me.

I asked, then, when can I expect a response. He said 4 hours. Then he said, but we close in 2 hours, so call back at 11 or 12 tomorrow (my time). So that’s more than 12 hours.

I hung up but I was still angry that I had been waiting patiently for a response for 48 hours while they did nothing. So I called back and told them I didn’t want to pay for the 2 days during which they neither delivered the proper service nor worked on the problem. The woman I talked to told me that, at the rate I was paying, that would only come to about $5.00. I told them to do it anyway. I then complained that I wanted something done to assure that this problem would be worked on tomorrow and wouldn’t just sit is a queue for several more days. She transfered me to someone else and a friendly recorded voice informed me that the wait time would be about 33 minutes. I hung up and went to bed.

In the morning I checked out a couple sites and they seemed to come up fine. I then ran a speed test and got just a hair under 5Mbps. Ahhhhh…. it was like being able to breath again.

I still don’t know what the problem was or whether Earthlink (actually probably Covad at this point) fixed it or did a squirrel family that had been gnawing on a cable somewhere move on to gnaw on something else?

I’ve generally not had problems with Earthlink’s (or Covad’s) service but I don’t want to praise them just for doing what I pay them to do, which is deliver problem free dsl, and I haven’t decided yet whether to pursue this further and find out whether they fixed a problem or did the problem just mysteriously stop on it’s own with the danger of returning again just as mysteriously.

Now I’ve got to go through the headache of reconfiguring my system for use with the router to get all my PC’s back online.

January 15, 2008

Sub-dialup speeds

Filed under: personal,Technology — Dave @ 5:16 pm

I was able to get an indirect speed reading on my home DSL

I use a program called FolderShare to automatically sync a directory on all my machines. Then to transfer something from, say, my work computer to home I just drop it into my synced directory and eventually, all my other computers have it.

I happened to notice that FolderShare was busy and so I checked what it was doing. It was streaming an album (I had downloaded yesterday) to my home PC (the only one online since I can’t use the router until this problem is resolved). It gives the rate at which the file was being transfered

572bps – yes, bits per second.

So, it seems they still haven’t resolved the issue.

« Newer PostsOlder Posts »

Powered by WordPress