Home
entries friends calendar user info flurf.net Previous Previous
Eric TF Bat's Journal
It's People Like You What Causes Unrest
Add to Memories
Tell a Friend
Death To The Craptop
The lurgy struck yesterday and I spent last night gasping for air and tossing like a waldorf salad, so I called in dead this morning and planned to spend the day in bed. The Beloved, however, had other plans.

Every Thursday, the local homeschooling group get together for group activities of a generally educational nature1. Today's particularly inspired idea was a Taking Stuff Apart Day. Knowing my penchant for disassembling computers, the Beloved suggested I come along and maybe find some piece of hardware to dissect.

I knew just the piece.

Years ago, when I was brain-loose and fancy-free, I had a good but certifiably insane friend who I will call Chloe. Now Chloe, apart from being stark staring insane but unbelievably cute to make up for it2, was also an Honours student at the ANU, and as such lacked (a) money, and (b) the equipment she needed to do her work. I, meanwhile, had a spare laptop I wasn't using, a sad old thing with Windows 98 and 16Mb of memory and no (count 'em: zero) USB ports. Still, it could run Word, which was all she needed, so I lent it to her.

Her RSI flared up almost immediately.

Lacking even a rudimentary ability to put 2 and 2 together, I later lent the laptop to the Beloved, who was also doing Honours.

Her RSI also flared up.

Suspecting (finally!) that the crappy keyboard and the crappy screen might have something to do with this, I sheepishly took the laptop back and left it in my shed. We christened it The Craptop, and never spoke of it again.

So today, the Craptop came out of the shed and made One. Final. Journey.

If you examine the photo at the top of this entry, you will see the Craptop, in all its glory and a very large number of pieces. Laptops are never very useful for spare parts at the best of times, and a Pentium 1 made by a company that even Wikipedia has never heard of3 isn't any use for even the most basic frankensteining. So it became an educational experience. Armed with screwdrivers, pliers and my Clever Tool (the best present I've ever got, and it came from [info]thelancrewitch, of course) we took the bugger apart.

The second photo demonstrates the best part of the dissection: the discovery of sheets of polarised plastic film, part of the laptop's display, which make eerie optical illusions when you look at things through them. That's the Elder Daughter of DOOOOM, in case you didn't notice.

I went home and collapsed in bed, but I and the Craptop had entertained several kidlets, and that made a successful morning by any standard. Mission accomplished, and good riddance to the Craptop.



1 That's a joke, actually. With homeschooled kids, everything is educational. You could no more get these kids together for non-educational activity than you could herd cats with promises of broccoli. They just get together and do stuff, and the education happens whether their parents like it or not.

2 These two qualities go together entirely too often. Or maybe it's that we avoid the insane ones unless they're cute, so all the ugly insane people have to join the Liberal Party so civilised people never see them.

3 Slight exaggeration, but I can't remember what it was now so it hardly matters.
Add to Memories
Tell a Friend
Meme Question
Why is it that absolutely everyone on my f-list is a right-handed potential Playboy centrefold with ten fingers who's never seen Napoleon Dynamite? Are my friends all that homogeneous?
Add to Memories
Tell a Friend
Why Lisp
[info]jeff_duntemann commented "Lisp ties my head in knots", so I thought I'd help him out. The Aha! moment for me with Lisp came from seeing the association with Abstract Syntax Trees, which are a language compiler's internal representation of a line of code. Consider, for example, the quadratic equation, which can be expressed in Pascal syntax as (-b + sqrt(b*b - 4*a*c))/(2*a), where sqrt() is the square root function and * is the multiplication operator. (Note that this deliberately misses out the plus-or-minus part; I'll get to that later.) If you feed this into a compiler, what you get looks a bit like my illustration at right: a tree of operations, rearranged so that each operator has its operands as branches. If you were to convert an AST like this into text, using parentheses to show the tree structure, it would look like this:

(÷ (± (- 0 b) (√ (- (× b b) (× 4 a c)))) (× 2 a))

Lisp is, in essence, the textual form. The syntax is different - it doesn't use × and ÷ because it started in the 1950s with typewriter terminals, just like Fortran, but the differences are trivial. It takes some concentration to see how we get from the diagram to the Lisp form, but it makes sense. And once you have that sorted out, whole new vistas open up.

One significant step is the idea that you can define functions that operate on code as if it were data. I could write a function called expand-plus-minus, for example, that took a list like the above and turned it into two lists, one with a plus in place of the ±, and the other with a minus. Thus, without knowing anything about the quadratic equation, my function can create two new pieces of code. Compiling and interpreting blur into irrelevance, and it becomes a genuinely powerful tool.

That's really the key to Lisp. It's what makes the Lots of Irritating Superfluous Parentheses necessary and valuable, rather than irritating. Any time anyone refers to Lisp as like oatmeal with fingernail clippings, or asks me "how can you read it with all those parentheses?", I have to agree with whoever it was who replied by opening up a book, pointing to a page and asking, "How can you read the words in among all those spaces?"
Add to Memories
Tell a Friend
Lies To Children
From Paul Graham, Lies We Tell Kids:
We arrive at adulthood with a kind of truth debt. We were told a lot of lies to get us (and our parents) through our childhood. Some may have been necessary. Some probably weren't. But we all arrive at adulthood with heads full of lies.

There's never a point where the adults sit you down and explain all the lies they told you. They've forgotten most of them. So if you're going to clear these lies out of your head, you're going to have to do it yourself.
This has got me thinking about the lies we tell our munchkins.  I'm not sure there are any - certainly, keeping them out of school saves them from the worst of it - but we need to monitor more carefully.  I'd rather my kids were confused than pacified, generally.

There are some lies to children that are necessary.  The one about electrons orbiting nuclei like planets orbiting the sun is necessary to get the hang of chemical valence without getting bogged down in quantum physics, which is a science that's probably still in the four-humours-and-philosopher's-stone stage of its development.  But unlike my school teachers, it would be nice to be told "this is an approximation, you need to pretend it's the truth for now and if you like we can cover the reality after the lesson is over".

This reminds me of Alan C Dexter, my maths teacher in year eight or nine.  We were going through some algebra on the blackboard, presumably simplifying equations or somesuch.  I asked if such-and-such an equation could be reduced down to so-and-so.  Mr Dexter looked at me, and looked at the board, and said, "Hmmm! Good question!" and proceeded to do some working out on the board.  I was dazzled by the stuff he was doing - he was using techniques we hadn't been exposed to, and using shortcuts I'd never seen.  I only grasped a tenth of it at best. When he'd finished, he said, "No, that's not equivalent - but it was a very good try!"  He turned around to erase his working and I shouted out, "Hang on!  What was that you just did there?"  He turned back: "You're not up to that yet. Don't get sidetracked."  And he rubbed it all out.

If he'd said, "It's called calculus, and it's complicated. Come back after class and I'll show you, but don't worry if it's a bit advanced," then I would have come back, and I would have learned something.  But he was convinced that kids aged 14 don't get to learn stuff that's meant for kids aged 16, so he shut me down.

Which isn't quite about Lies To Children, but it's close.  Maybe the connecting thread is: treating children like they're retarded and useless is foolish.  The fact that it's frequently also a self-fulfilling prophecy -- that's just poetic justice for the parents who'll one day need to rely on the next generation to change their bedpans and administer their pills...
Add to Memories
Tell a Friend
Nothing Is The Best Something
My nursing home simulator has had a definite win.

For those who came in late: I work for a company that produces medication management software. One of the problems we found a while back was that the software slowed down a lot in nursing homes. The explanation was simple: in an ordinary hospital, patients come in, get treated and leave. With our software they leave even quicker, because they don't have to lie around taking up valuable bed space to recover from medical malpractice caused by misadministered prescriptions. But in a nursing home, patients come and stay, hopefully for years. So the parts of the program that read patient histories and produce summaries start out OK in nursing homes, but after a few months they bog down horribly. We needed to find out how this was happening, but we had a problem: we don't have several months of useful data from nursing homes to test with; if we did, we'd have already solved the problem.

So I wrote my simulator. It's a Lisp program that reads a set of sample data and some probabilities, and produces a database full of plausible-looking data. It took a while to sort out a couple of bugs, during which time I learned a hell of a lot about how our software works under the covers, but last week it started producing useful results. Want a month worth of nursing home data, with patients coming in, getting prescribed, taking their pills, occasionally dropping dead in the night and being replaced the next morning? Type one command and voila! Want six months worth? Want a year?

Well, a year was a problem. That much SQL takes a long time to generate and a very long time to load into the database. I fiddled around with all sorts of memory settings, and I was getting stumped until my boss suggested inserting GO commands at regular intervals into the script. The GO command is a bit mysterious. It's not actually an SQL statement like SELECT and CREATE, but a command to the server software. If you have a long sequence of SQL statements followed by a GO, the server runs all of them as a single transaction. Sometimes it even rearranges the order of the statements, which can cause problems if you've got a CREATE TABLE followed by an INSERT: better stick GO between those or it might try to insert data into the table before it creates it. But transactions need to be held in memory all at once, like a Jatravartid juggling fifty chainsaws, so my year's worth of data caused my computer a fair amount of stress. Sticking in the GO commands did the trick though, and what previously took hours to run now takes three minutes.

Which brings us to the big win. I opened up the software with a year's worth of data and went to the Administration Overview page, which is what the nurses see when they're about to administer all those pretty pills to a ward's worth of geriatrics. Reports from an earlier nursing home trial had shown a slow-down with even just three months worth of data, so a year should be painfully slow. But when I ran it... it was fine. No slow-down at all. I was mystified for a while -- I even considered taking some of the RAM out of my computer to see if it had been a memory issue -- but then another suggestion from my boss led me down a different path. I disabled the part of my simulator that recorded the administration of medications, so that they were being prescribed but not given. Then I loaded it back in and tried again. Success! Or rather, failure: it failed to load the Administration Overview in anything less than a minute and a half. This was the behaviour we'd heard from the real-world nursing home trial, and was exactly what I'd been given the simulator task to find.

What we think happened is this: around the middle of last year, a new column was added to the database structure, to help reduce the amount of data our software had to wade through to produce the Overview. It works, but only if drugs are being given regularly. If the users prescribe but don't administer, and then try to use the Admin Overview, the system has to read right back to the beginning to find enough history to display on the screen. But if they prescribe and administer regularly, allowing for the occasional delayed and missed doses, the new column records sufficient information that the system doesn't need to go searching. The result: speedy display, no waiting, and no worries for our new nursing home clients.

What it means is: we now know, with confidence, that we're safe. In a way it's less satisfying than if I'd found a problem and had to fix it, but it's reassuring to know that we don't have to rush out an untested patch. Not that we ever do that, but it's good to avoid the temptation. The software is solid and stable, and the simulator has proved its worth. That's the kind of happy ending I like.
Add to Memories
Tell a Friend
Cranky Symmetry
Wading through the glorious textual sewer lovingly tended by the dunnikin divers of Crank Dot Net, I found this particularly cranky site, The Official Geocentricity Website.
At that time Nicolaus Copernicus (picture below), a Polish canon who dabbled in astrology, claimed that the sun and not the earth was at the center of the universe. His idea is known as heliocentrism. It took a hundred years for heliocentrism to become the dominant opinion, and it did so with a complete lack of evidence in its favor.

It's amusing stuff, but what's really telling is how similar these arguments and explanations are to the people who rave on about the impossibility of human-caused global warming. All the same smears, smarms and outright lies that we see in the Crankiest biblical websites are regurgitated, cut and pasted, by the people who want us to think that global warming is just a conspiracy in which hundreds of thousands of scientists of widely differing origins have all gotten together to create a grand coordinated lie without leaving any meeting minutes or incriminating emails behind as evidence.
Add to Memories
Tell a Friend
Zzzzzzz...
Went to see the EDoD riding her recalcitrant pony in circles at the pony club get-together, then had a moderately edible lunch at the new cafe. Afternoon was spent fixing things that needed fixing, lamenting the impossibility of finding time and resources to fix other things that needed fixing, and getting each of the three munchkins to go to sleep.

Sleep methods employed:

The Boy Wonder: cuddles, a phone playing soothing, spooky music, and darkness. The Boy likes going to sleep with music, usually classical. I set a transistor radio to ABC-FM and duct-taped the dial so it can't be fiddled with, and it frequently does the trick when nothing else will to get him off to dreamland.

The BatPup: Mummy Milk didn't quite work, but a couple of Three Batpups stories got her most of the way there and Empty Garden, The Minstrel Boy and My Old Friend The Blues finished her off.

The Elder Daughter of DOOOM: feeling very disconnected and emotional (oy, vey) but concentrated Daddy and Mummy time and the spare mattress up in our bedroom did the trick, so she finally drifted off to sleep not long ago.

We need to try drugs, I think. Strong ones.

Now I'm going to try to get [info]teffania's minions up and running with Gratian, then I'm off to sleep.
Add to Memories
Tell a Friend
Understand the 1980s
It's important for the young whipper-snappers to understand that computer games weren't always hi-res colour and surround sound. In my day, we didn't have any of that, but we got by.

And get the hell off my lawn!
Add to Memories
Tell a Friend
The YouTube Muse
The Batpup has wildly eclectic tastes in music and videos. Here's a selection.

I heard Gotye's Heart's A Mess on a shop's muzak system one time, and remembered enough of the words to google it and find this video. I like it because of the Alan Parsons Project-like harmonies; I think the BatPup likes it for the animation, which is quite hypnotic.



Clicky-clicky for more tubey-tubey )

Now what I really need is more suggestions for quiet bedtime songs that I can sing and silly song videos that I can show her. My repertoire is running low...
Add to Memories
Tell a Friend
Mr McGee...
Via Tegan:

profile
Eric TF Bat
User: [info]etfb
Name: Eric TF Bat
Website: flurf.net
calendar
Back May 2008
123
45678910
11121314151617
18192021222324
25262728293031
page summary