All the printers I’ve ever owned …

bird you can see: hp print test

  • An ancient (even in 1985) Centronics serial dot-matrix printer that we never got working with the CPC464. The print head was driven along a rack, and when it hit the right margin, an idler gear was wedged in place, forcing the carriage to return. Crude, noisy but effective.
  • Amstrad DMP-2000. Plasticky but remarkably good 9-pin printer. Had an open-loop ribbon that we used to re-ink with thick oily endorsing ink until the ribbons wore through.
  • NEC Pinwriter P20. A potentially lovely 24-pin printer ruined by a design flaw. Print head pins would get caught in the ribbon, and snap off. It didn’t help that the dealer that sold it to me wouldn’t refund my money, and required gentle persuasion from a lawyer to do so.
  • Kodak-Diconix 300 inkjet printer. I got this to review for Amiga Computing, and the dealer never wanted it back. It used HP ThinkJet print gear which used tiny cartridges that sucked ink like no tomorrow; you could hear the droplets hit the page.
  • HP DeskJet 500. I got this for my MSc thesis. Approximately the shape of Torness nuclear power station (and only slightly smaller), last I heard it was still running.
  • Canon BJ 200. A little mono inkjet printer that ran to 360dpi, or 720 if you had all the time in the world and an unlimited ink budget.
  • Epson Stylus Colour. My first colour printer. It definitely couldn’t print photos very well.
  • HP LaserJet II. Big, heavy, slow, and crackling with ozone, this was retired from Glasgow University. Made the lights dim when it started to print. Came with a clone PostScript cartridge that turned it into the world’s second-slowest PS printer. We did all our Canadian visa paperwork on it.
  • Epson Stylus C80. This one could print photos tolerably well, but the cartridges dried out quickly, runing the quality and making it expensive to run.
  • Okidata OL-410e PS. The world’s slowest PostScript printer. Sold by someone on tortech who should’ve known better (and bought by someone who also should’ve known better), this printer jams on every sheet fed into it due to a damaged paper path. Unusually, it uses an LED imaging system instead of laser xerography, and has a weird open-hopper toner system that makes transporting a part-used print cartridge a hazard.
  • HP LaserJet 4M Plus. With its duplexer and extra paper tray it’s huge and heavy, but it still produces crisp pages after nearly 1,000,000 page impressions. I actually have two of these; one was bought for $99 refurbished, and the other (which doesn’t print nearly so well) was got on eBay for $45, including duplexer and 500-sheet tray. Combining the two (and judiciously adding a bunch of RAM) has given me a monster network printer which lets you know it’s running by dimming the lights from here to Etobicoke.
  • IBM Wheelwriter typewriter/ daisywheel printer. I’ve only ever produced a couple of pages on this, but this is the ultimate letter-quality printer. It also sounds like someone slowly machine-gunning the neighbourhood, so mostly lives under wraps.
  • HP PhotoSmart C5180. It’s a network photo printer/scanner that I bought yesterday. Really does print indistinguishably from photos, and prints direct from memory cards. When first installed, makes an amusing array of howls, boinks, squeals, beeps and sproings as it primes the print heads.

not the smartest loaches in the tank

Came home, said hello to the fish, and did a quick count; I was one loach down, and the CO2 generator had an orange tail …

Seems that one of the loaches had decided it was way cool to get wedged up the back of the gas generator, and couldn’t get back out. I gingerly pulled off the device from the side of the tank, and the loach fluttered off, a little dazed.

No sooner had I put the generator back did another loach zoom up and get jammed. It must’ve been told that you got a “wicked headrush, dude”.

And for this reason, loaches don’t rule the earth.

to work, and back again

Biked to work today, and just got back. Maybe not the smartest choice of a day â€” second hottest of the year, with thunderstorms threatened — but I made it. Going there was rather slow, as I got lost a couple of times, but coming back was faster than transit.

If I felt really nerdy, I’d post my route as GPX, but it’s a bit twisty.

mail from the city

The only downside about being part of the Billboard Battalion is that you get a lot of mail from the city. I get a separate letter for each variance contested, and sometimes duplicates, so I get between four and twelve letters after each community council meeting.
You would have thought they could have stuck them all in one envelope, or used e-mail, to save money and paper. But no; we’re a world class city, after all.

AWEA06: by the river (or in it, nearly)

by a river at AWEA06

We’re not getting the best weather for the conference, but I hear that the coincidentally-running Three Rivers Arts Festival has had rain 18 out of the 20 years it has run, so noone’s surprised.

Conference hasn’t quite started yet, but the preliminary swag is quite promising; yoyos and balsa aircraft.

I spent the day in workshop run by KidWind, who have a school science kit for teaching the basics of wind turbine effectiveness. We got to build wind turbines, and test them. Here’s mine, big wean that I am:
stewart's kidwind turbine

I guess I got some losses near the hub there, but at least it worked. I was the only developer type there (there was a DoE person, and lots and lots of Pennsylvania teachers). I came away impressed, and hope I can work with Michael Arquin of KidWind to bring the project to Ontario.

(This post has the worst GPS location ever; could only get a fix to within 100m, so that’s why the map location appears to be in the river.)

the commitments

When I was testing BlackBerry typed-alike words (dactonyms?) I found that sqlite was averaging about 1 insert per second. This is by no means good.

It turns out that, under Perl, sqlite auto-commits after every write. This slows things down terribly. Here’s how to fix this:

When opening the database handle, turn AutoCommit off:

my $dbh =
DBI->connect( “dbi:SQLite:bberry2.sqlite”, “”, “”, { AutoCommit => 0 } )
or die “$!”;

Then, only commit occasionally — say every thousand writes:

while ( … ) {

…$id++;
$dbh->commit unless ( $id % 1000 );

}
$dbh->commit;

It works out about 1000 times quicker this way.

shaving on the go

Neat eBay find; an unused Gillette Travel razor:

Gillette Travel Razor

It is absolutely tiny, and it looks as if it has never been opened, let alone used. The blades are still in their cellophane wrapping, and the razor has its cardboard “blade” in place. I wonder how old it is?
The case doesn’t look very robust (it’s that cardboard leatherette that falls apart at the slightest use) but I’ll be able to shave in style anywhere in the world.

well, that was easy, maybe

Just did my citizenship test. 20 questions, two of which you must get right, three of which you must get at least one right, and fifteen non-mandatory questions. Pass mark is 12/20.

Seemed not very difficult, either:— who was the first prime minister, who can vote, when was the Charter introduced, when did Newfoundland & Labrador join the Confederacy, when did Nunavut become a territory; that sort of thing. To think I spent all that time worrying about natural resources, the third line of O Canada! and Lieutenant Governors (sings: Bartleman, Bartleman, Does everything a … hey, wait a minute, just what can a bartle do, anyway?).

It did dismay and astonish me how badly prepared some people were. About 5 out of the 40 people didn’t turn up, and maybe 10 people didn’t have the requisite papers. C’mon people, don’t you want to be Canadian?

fido sms e-mail

Looks like it’s down in some way; my daily condition monitoring e-mail didn’t get through to the fido.ca address, and neither did other subsequent tests.

batch renaming iTunes directories

In partial response to the Ask Metafilter question “How can I rename my music folders on my Mac based on ID3 tags?“:

#!/bin/bash
# itunes_sanity.sh - fix dir names created by iTunes
# only works for mp3s, and not actually tested on a Mac
# created by scruss on Sun Sep 4 22:05:00 EDT 2005

find "$@" -type d -mindepth 1 | while read directory
do
  artistdir=$(dirname "$directory")
  firstfile=$( find "$directory" -type f -iname '*.mp3' | head -n1 )
  year=$( id3info "$firstfile" | egrep ' TYE ' | sed 's/=== TYE (Year): //; s/[^0-9]*//;' )
  album=$( id3info "$firstfile" | egrep ' TAL ' | sed 's,=== TAL (Album/Movie/Show title): ,,;' )
  echo mv \'$directory\' \'$artistdir/\[$year\] $album\'
done

So if you were in the terminal, in your music library (one up from the individual artist directories), and you did:

itunes_sanity.sh Dan\ Jones Tripping\ Daisy

you’d get:

mv 'Dan Jones/Get Sounds Now' 'Dan Jones/[2005] Get Sounds Now'
mv 'Dan Jones/One Man Submarine' 'Dan Jones/[2003] One Man Submarine'
mv 'Tripping Daisy/Jesus Hits Like the Atom Bomb' 'Tripping Daisy/[1998] Jesus Hits Like the Atom Bomb'

If that looks okay, run the output through the shell:

itunes_sanity.sh Dan\ Jones Tripping\ Daisy | sh

and all should be well.

You’ll need id3lib, which is probably most easily installed from Fink. Also, this only works for mp3 files; I can’t grok the tag info for AAC files. And finally, this might go seriously screwy on weird characters in filenames. You know my feelings on that …

tim test

Yesterday’s Tim‘s coffee, black, reheated from cold, is as identically mediocre as when drunk fresh. It’s a whole new meaning for Always Fresh.