Categories: ,
Posted by: bjb

I was looking at django sessions and was a bit confused until I read the source code.

django/contrib/sessions/models.py
django/contrib/sessions/backends/base.py
django/contrib/sessions/backends/db.py
django/contrib/sessions/backends/cache.py
django/contrib/sessions/backends/cached_db.py
django/contrib/sessions/backends/file.py

You might think the interesting file to look at is django/contrib/sessions/models.py, but really the “toplevel” session object is defined in base.py. The object in base.py SessionBase. It is a base class for the various session implementations.

If you’re using a database-backed SessionStore, then you’ll be using base.py, db.py and session.py. db.py uses session.py for the database model and database interaction. In a view, the session object in the request object that is supplied by the session middleware is actually a SessionStore object. That is the object that has the methods get_expiry_age, etc.

I wanted to get some info out of every session in a batch mode including expiry age, so I needed to traverse SessionStore.objects.all(), not Session.objects.all().

Categories: ,
Posted by: bjb

None of my domains have expired yet, but the guy who was handling my domain names has changed the glue records to point back to the 1and1 “available” page for the .com, .net and .org domains. The .com and .net expire April 16 (a few days in the future as I write this) and the .org expires in July (a couple of MONTHS in the future as I write this).

Hmm, doesn’t sound like very ethical behaviour to me. Who knows when the .ca will disappear?

I’ve opened a case with the Better Business Bureau, for now, and I’m keeping my options open.

The case continues … unfortunately.

Categories:
Posted by: bjb

My garden is blooming.

The flowers actually in bloom are the snowdrops. They come up first (they are there when the snowbanks melt).

The other bits of greenery between the snowdrops are crocuses. They are blooming now, but weren’t blooming when the picture was taken.

The reddish bits are the tulip leaves coming up. The heftier green at the far corner of the garden are hyacinths.

I have very early blooming varieties of all these things. My garden if finished about when other people’s tulips are blooming. But by that time I can enjoy other people’s gardens — the same way that I hope my neighbours enjoy my garden before theirs is up.

Categories:
Posted by: bjb

I’m interested in the “Star Trek interface”. I want to talk to my computer instead of typing into it (that soon-to-be-arcane skill). So I’m starting to look into speech recognition. It seems that there are some commercial offerings that are pretty good, but the free offerings are suffering from a lack of a large “corpus” of spoken and matching typed samples — needed to make good quality acoustic models.

www.voxforge.org is aiming to collect a bunch of freely available speech samples. I encourage everyone to visit Voxforge and start contributing speech samples, a little every day, in order to build up the body of samples.

Here’s a little of what Voxforge has to say about it:

Acoustic Models are Closed-Source Most Acoustic Models used by ‘Open Source’ Speech Recognition engines are ‘closed source’. They do not give you access to the speech audio (the ‘source’) used to create the Acoustic Model. If they do give you access, there are usually licensing restrictions on the distribution of the ‘source’ (i.e. you can only use it for personal or research purposes).

The reason for this is because there is no free Speech Corpus in a form that can readily be used, or that is large enough, to create good quality Acoustic Models for Speech Recognition Engines. Although there are a few instances of small FOSS speech corpora that could be used to create acoustic models, the vast majority of corpora (especially large corpora best suited to building good acoustic models) must be purchased under restrictive licenses.

VoxForge hopes to address this problem by creating a repository of ‘source’ speech audio and transcriptions, and by creating Acoustic Models for each of the main Open Source Speech Recognition Engines (such as Sphinx, Julius, HTK and ISIP) .”

Once you’ve submitted all the prompt-sets they have, you can continue by reading public-domain books for librivox.org and add to the available collection of free audio books.

Categories: ,
Posted by: bjb

There have been a few more exchanges, some less friendly and some more friendly, but each of us is keeping our position: he says I owe him $120 (ish) and I say I don’t.

He has made the domains available for me to take. But he won’t issue a credit for the invoice.

So I’m not taking the domains. I’ve already got another domain name. I got it when we were arguing back and forth and it wasn’t clear to me that I was going to get linuxbutler back before they either expire or in time for the NCF static address change.

I’ve had various bits of advice from different people, ranging from “just take the domain back, you can get the registrars to give it to you” to “report the guy to the police, he stole your domain” to “make a web page about your experience” to “go to small claims court”. He has made the domains available, so that eliminates the “police report” approach.

I’m not really keen on taking the domains back, as that gives him grounds to expect me to pay the invoice.

Anyway, my last email to him was “don’t do anything that will cause you to invoice me”. He wrote back and said that concludes our communications. So I guess he won’t be willing to change my IP address, although the address will change before the domain name expires, and he did do the same kind of change last time it happened. Without charge. I would expect a domain name handler to do that. But, I’m just glad to be out of the business relationship.

Categories: ,
Posted by: bjb

It seems my domain name reseller also works on the weekend. He sent me an email saying I haven’t paid last year’s invoice. So I sent him an email with the details of payment. and pointing out that now he owes me money (because of a credit note that was issued on my account).

Of course the amount of the credit note does not cover his full “exit fee” charge … so we’ll see what he does now. I offered to forget the credit if he signs over the domain names.

And I pointed out that transferring the domains is a one-step process, why did he say he had “staged” the transfer for one of the domains? What does that mean? In fact, since I got the domain history from namespro, I know it means he moved the domain name from steveg * emoss-ca account to steve * emoss-ca (earlier this week). What’s the point???

The saga continues.

Categories: ,
Posted by: bjb

I asked namespro for a history of my domain name, and they responded within 1 hour on a Saturday. Wow.

Categories: ,
Posted by: bjb

I’ve replied to the reseller saying:

  • His invoice copies did not match his statement (that he attached on his email to me) and I have no amount overdue (according to him in an email last year after my payment).

  • He should not make me pay for putting my name back on the domains, when the domains had my name on them when I started using his service.

I got the domains in 2004, and started using his service in 2005.

We’ll see what his response is.

Categories: ,
Posted by: bjb

Last year about this time I mentioned to the company that currently renews my domain names that I wanted to do the renewing myself before the year was up. We agreed that he would put the domains in my name (the admin contact etc) in October. October came and went, and eventually it became March. I emailed and asked about the progress on this.

He wrote me back and said that I owe some money and he would also be charging me $125 (ish) for 1 1/4 hours of his time to put it back in my name.

First off, I got the domains myself, and asked that company to pay the renewal bills and bill me back. There was never any need for him to put his name on my domains — he certainly didn’t call attention to himself by charging me for that “service”. But now, a month before some of them expire, he’s hitting me with the news that suddenly I have to pay an “exit fee”. No warning about it last year, no warning in October. Just a fee one month before the names expire.

The other money he claims I owe — about $30.00 — I haven’t researched that yet. I expect it will turn out I don’t owe anything, but I’m willing to do the research before I deny the charge.

I’m not happy.

Anyway, I’m “contemplating my options”. One of which is to let the names expire and get new ones. There are other options, and I’m considering all of them.

Categories: ,
Posted by: bjb

I’d like to add a “restore” feature to xen-create-image to go alongside the “install disk”, “install lvm” etc options. It would take an existing disk, mount it and apply some “restore” scripts to it. It would skip over the “create the disk and put stuff on it” part.

The xen-create-image script (in xen-tools) is almost all the way there. It’s fairly modular. It calls other scripts to do parts of its work (like xt-create-xen-config). Those scripts get the (extensive) list of options by inheriting them in the environment.

That means xen-create-image exports the list of config options to its environment. It does this in the exportEnvironment function — except for the ip address list. That is done in runCustomisationHooks. Most unfortunte for me, because the main part of the script goes like this:

exportEnvironment();
if ( $CONFIG{'install'} ) {
    ...
    if ( $CONFIG{'hooks'} ) {
        runCustomisationHooks ();
    }
}

It’s that way in xen-tools 4.2 and in xen-tools 3.2.

Unfortunately, that means that not only are the ip variables not available if I’m not installing, but neither do the customisation hooks get run. I had been hoping to make a new “distro” called “restore” in which I could put scripts like “restore-database-from-dump” and “fix-up-networking-for-new-dom0-location” and suchlike.

I’ve subscribed to the xen-tools mailing list and submitted my comments, we’ll see what happens.