RSS Atom Add a new post titled:

It was a decade ago, give or take another, when it started. The fight. The loss. The covert combat for food in our family.

I struck first. My lovely wife and I were mid-snack in our house one day. I ate a banana. She ate a banana. I ate another banana. She started eating another banana, then stopped a moment to say something. I was not listening. As if driven by reflex, my body computed that the male-to-female distance was ideal. I bent forward, right over, smoothly toward her.... Hey, get your mind out of the gutter - I was aimed at hand holding the peeled fruit. Less than three syllables into her speech, my mouth was on a trajectory that perfectly enclosed her second banana. I stole a bite. A big bite, like half. All before she or I even consciously realized what happened. I straightened up. It took her a few seconds to figure it out, then ... "HEEEYYYY!!!".

My smug smile upon recalling the raid could not be chiseled away for several years.

What I did not realize is that she was plotting revenge.

It was a dish served cold. She didn't even do it herself: she subcontracted to son number one. He's almost 13 now, growing like mad and eating even madder. The wife has somehow hypnotized him into believing that taking food from me is not only forgivable, it is also proper. At least I assume she has done it, because he's so good at it and she laughs every time. Slices of ham, the occasional berry, whatever .... if it's on my plate and if Eric can reach over quietly, he does. Sometimes I get a "please" afterwards (?!). Rarer still is a "thank you". Alas, fatherhood.

Round #3 went to me. Just the other day, I deliberately stole freshly cut smoked cheese off of son number two's sandwich. Yup, he had it all set up, all ready to eat, but I distracted him. "Look out the window - there's a bird!" ... or some such manipulative lie, well-aware of Stuart's fascination with nature. Even though the boy is quite astute, he trusted me that time. And yes, I stole one cube. Then, with another distracting line, another, and then another. I was starting to feel guilty, but not guilty enough to stop. But by now, Juimiin was laughing her head off -- which tipped Stuart off about the crime in progress. "HEEEEYYYYY!"

He took it out on me later by stealing my stuffed Scouting plush wolf.

The punchline to this sorry saga occurred today at lunch. For the first time, criminal went head-to-head against criminal. I was neither: it was boy #2 vs wife #1, both pecking at a piece of chinese bakery bun. Like two pretend-starving seagulls, they poked at it with chopsticks. They ripped with hands. They bit into the piece -- then pulled it from each other's sweaty-tooth madman hands. This was all over one little delicious coconut bun. It went on for a few minutes, with crumbs all over the place, and both parties having a great time.

What they didn't realize was that I was studying their tactics the whole time. I realize I can beat them both. I have a plan for the remaining buns in the house. Kind reader, say a prayer for this once and again dominant food pirate, for the aftermath is unpredictable. If you don't hear from me in a few more days, send a rescue party. And a bag of buns.

Posted Thu 05 Oct 2017 11:17:47 PM EDT Tags:

You've probably heard of Zeno's Paradox - the famous one about Achilles and the tortoise. It's a 2000+ year old puzzle about the nature of infinity. An equivalent formulation is roughly this:

  • Imagine someone running from point A to Z. At some time t, the person will be half way between A and Z, let's call it B.
  • The person will run from point B to Z. After time t/2, the person will be half way between B and Z, let's call it C.
  • The person will run from point C to Z. After time t/4, the person will be half way between C and Z, let's call it D.
  • One can continue this pattern of subdivision infinitely.
  • Therefore, the person will never reach Z.

It's hard to believe that this little puzzle was taken too seriously by those clever Greeks. Formally modeling it in math is easy - arithmetic of infinite convergent series is taught in high schools, so it's clear that at time 2t, the runner will reach Z. But the infinity is bothersome enough that even 2000 years later we take the problem seriously. Some even bring up silly stuff like quantum mechanics and uncertainty principles to try to work around it.

But I came across another way to approach the problem - to sever the Gordian Knot, so to speak. That is to recognize an implication of the basic fact that argumentation about a situation is not the same thing as the situation itself.

In this case, the argumentation can indeed go on infinitely, as one talks about shorter and shorter distances & time intervals. But the error in logic is the last step of the list above. The "therefore" doesn't hold, because the only thing that's infinite is all this argumentation. The situation is quite simple and evolves independently of how a goofy observer might want to talk about it - or to imagine breaking it up.

In other words, just because someone chooses a degenerate, infinite, useless way to talk about a situation, the situation itself can be perfectly finite, reasonable, intuitive. There is no paradox.

In other words, the map (argumentation) is not the same thing as the territory (subject of the argument).

Posted Thu 17 Aug 2017 06:01:58 PM EDT Tags:

A brief update on proof of parental success: while on a nearby trail during the family's morning warmup ride, we saw a green/brown toad. It was hopping comfortably across the path. Why? To get to the other side, of course.

Without missing a beat, Stuart yelled out "PEPE!".

My work here is done.

Posted Wed 28 Jun 2017 10:15:59 AM EDT Tags:

Public Service Announcement:

I've found that, in 90% of the cases I've seen the Dunning-Kruger effect mentioned as a way to put down a debating partner, the speaker considers her own cognitive ability beyond the ken of her target, mistaken in much the same way as the target supposedly misoverestimates his own. I hereby christen this phenomenon, a relative of simple "projection", as the Meta-Dunning-Krueger Effect. © ® ™ &c.

See also. See also.

Posted Tue 27 Jun 2017 05:10:51 PM EDT

It was chemistry day at our homeschool yesterday with this awesome kit, and Frank making dinner day today. No particular relationship except for cedar vinegar. It was needed in both, and used in only one.

Why? 10-year-old Stuart explained:

It may be contaminated with copper sulfate. That's poisonous, you know.

I rolled my eyes and went digging for non-cedar vinegar. The wife overheard the discussion and comforted me:

At least there's no brain in the fridge.

This time.

Yup, just another day at the household.

Posted Thu 15 Jun 2017 10:17:36 PM EDT Tags:

Imagine you are someone who has played with performance co-pilot and its web applications. You've grown beyond the default dashboards, and want something more.

You've come to the right place: the Custom Metrics Web Emporium!

step 0: log the metrics

Let's presume you already have basic PCP up and running on a Fedora/RHEL-like system. If you need a non-default PMDA, you may need to:

# yum install pcp-pmda-FOOBAR
# cd /var/lib/pcp/pmdas/FOOBAR
# ./Install < /dev/null

If the PMDA is self-configuring, that's enough to fetch live data from it. If you also want the data archived, which you do, you may need to edit the appropriate pmlogger configuration. You could run pmlogconf against a config.pmlogger file you're already using, or edit it, assuming you know where to find it. If you're avant-garde enough to let pmmgr run your logging, and you want it to simply work for your whole network dammit,

# cd /var/lib/pcp/config/pmlogconf
# cat > MY_FAIR_METRICS.conf
probe FOOBAR.ONE exists ? include : exclude
# /sbin/service pmmgr restart

The FOOBAR.ONE metric is any metric you know is contained in the PMDA, if it's working correctly; the other FOOBAR.* ones are metrics or whole hierarchy prefixes of metrics that you want future pmloggers to archive. You can confirm that any new archives get the FOOBAR metrics stored in them via pmdumplog /var/log/pcp/.../archive*.meta, or by looking at the pmlogger.log files.

If you agree that this is rather too many steps, consider adding your voice to this enhancement request.

step 2: find the metrics in graphite

Once your fancy new metrics start being logged to a file, it's time to check them out on the web. You'll need to run a pmwebd server and have its pcp-webapps package(s) installed, so that its web page http://localhost:44323/ pops up.

Then comes finding the metrics. Since there are approximately one gazillion of them, and possibly stored over one mazillion separate pcp archive files, pmwebd needs a notation to identify the one(s) of interest. It does this via the graphite webapi subset it implements. The gist of it is that metrics get named something like archive.met.ric, where the first component identifies the archive file or host name, the middle components identify the pcp metric names, and the optional last component identifies the instance within that metric.

It's harder to explain than to show, so go and hit the graphite top level link.

Hit the little plus sign beside the "Graphite" folder, wait for the first level (archive-file/host-name) of the metric hierarchy to be populated. Find the most recent archive for your host, and keep clickin on the little pluses until you get to a real live FOOBAR metric.

If you click on the "Graph Data" button in the little composer/graph subwindow, you will see the full graphite name for your FOOBAR metric. Note it down. The you will probably want to replace the first component with one with a wildcard such as *HOSTNAME*, in order to let pmwebd search for all archives for the same host. You may want to replace the last component with * too, if it's a metric with an instance domain, in order to draw all instances.

If you click on the graph image itself, and get your web browser to spit out its URL, you will see something like


If you play around with the time interval buttons at the top of the subwindow, extra fields will appear in the URL querystring:


to specify the time interval. In this example, these are UNIX-style epoch-seconds, but other syntaxes such as -2day for "two days ago" or now for now, or HH:MM_YYYYMMDD for, well, it's obvious. All times/dates are interpreted in UTC.

Other parameters are available to specify rendering parameters like colors, to add or subtract a legend, add other metrics. Experiment with the graphite compose window's interactive options to see their behaviour.

step 3: construct dashboard

OK, now that you have a URL for an image, you can keep it, pass it around. But that's not good enough, is it? Otherwise you wouldn't still be reading this.

But you are. So let's get to making a dashboard. There are at least two basic approaches: roll-your-own HTML, or grafana. In the roll-your-own HTML case, you already have everything you need: make an HTML file with a set of IMG tags, with each SRC pointing to one of the above graphite image URLs. Format it as you like, publish it, done!

Grafana is another way. This is another webapp we bundle with pcp, and it is oriented toward building sets of related graphs. Normal grafana includes a dashboard storage/management server, which pcp's version doesn't, so we have to work a little harder. See this blog post for details about how the grafana dashboards may be constructed as explicit JSON files, or synthesized on the fly from a URL that includes metric/host names as querystring elements. Just use the compound graphite metric names you found for your FOOBAR metrics. Add any others of interest. Use wildcards liberally.

step 4: profit!

(warning - results not guaranteed)

Posted Thu 15 Jun 2017 06:08:26 PM EDT Tags:

The title is a military term, relating to shaping the physical and metal environment of conflict, before actual fighting breaks out. Getting supplies ready, men trained is only one part -- propaganda toward your opponent is also key. After all, if you can make him lose faith, he will lose faster.

Bonus points to those who recognize this recent news photo without googling. But I'm not here to talk about terror today. My interest was piqued by the boys returning form a coin show, with the Royal Canadian Mint's Canada 150 collection in hand. What could such patriotic paraphernalia possibly have to do with future battle?

Well, I made the mistake of looking closer at the coin designs. Not fewer than six of the twelve coins feature distinctly native style/theme art. So what? Well, not much, except if you recall that the more outspoken natives consider colonization of North America by whites about as horrible a catastrophe as the Palestinians consider Nakba. They describe themselves as a distinct society - at least as much as Quebec. Some of them describe themselves as non-Canadian. So ... why on earth would native art be on the very coins that commemorate the founding of their "oppressor" nation?

Another bit of the puzzle is the recent constant harping on "cultural appropriation" in various organs of the government. The CBC is getting up to article number 59,000 on the topic and the main "protected class" there is the indigenous. "Thou shalt not make native style art." Oh, it's more than just the CBC. Government-funded universities - and elementary schools - teaching how much we owe to ancient indigenous culture & knowledge, when it is in practice quite small. Come on, name a native invention or idea that we rely on in our daily lives. Name a few more. (No, working as a tenured native studies prof doesn't count.)

Another piece is the regular news, again from government organs, about how natives are in dire straits. No clean water. Huge gap in quality of life. Annual flooding. Many missing & murdered women (what about men?!). All of which require $, ever more $, but no strings attached please! Don't judge, don't ask for an accounting, don't tell them how/where to live, just feel bad and pay. There were times when we'd hear about these things mostly around federal budget time. Now it's year-round.

My spidey-senses are tingling. We are to believe both that natives are as Canadian as anyone else - and at the same time a separate nation; that they are strong - and yet require constant rescue. This is deliberately induced confusion, with a sublayer of guilt. I think the Canadian governments are preparing the mental battlespace - that is us, voters/taxpayers - for a massive round of reparations.

Posted Sun 11 Jun 2017 11:41:34 AM EDT Tags:

There is a hunger for meaning in people. Our lives are so small that to feel big and important, we sometimes try to describe our small lives and actions with grand words. But by using those big words for small purposes, we take away their mystique and their power.

Examples are numerous. Every social cause fundraiser is a "hero". Everyone who heals the sick or goes on a simple march is a "warrior". Search your favourite news site for their dispensing of these terms to normal everyday people who do something slightly out of the ordinary. NO. A hero is truly exceptional, courageous, noble. A warrior takes extreme personal risk for his nation, to kill an enemy. People who do not take grand risks do not deserve such grand terms. Let people starve for grandness. Let them stay hungry.

Opposite direction examples are also numerous, where to slam a person or an idea, a commonly hated person or idea is cited. Labelling people as Nazi or racist or commie or hater or misogynist or whatever ... is now so low-effort and cliché as to be laughable. But that took a long time. Until then, the guilt-by-mental-association was a murder weapon.

In both these cases, the misused words and the language are figurative victims. But real victims exist too: the person in the audience, the person who reads that someone is a nazi or a hero or a thought-leader, when they are clearly not. It shakes their confidence, muddles their thinking. It lowers their defences toward further abuses of persuasion. It literally dumbs them, and is intended to.

We need a word warrior hero to protect the language from nazi thoughtwreckers! Until one shows up, please speak up for precise use of language.

Posted Sun 04 Jun 2017 05:37:51 PM EDT Tags:

A week ago, both boys were among a dozen kids invited to perform for the local Women's Probus Club, on account of their competition in the Kiwanis Music Festival. We were there to entertain a lunchtime crowd of older ladies who get together monthly to socialize. It was a school day, so the other kids' & parents' availability was limited. Thus the show wasn't just the top overall winners, but a nice little mix of young and less young, a wide range of grade levels. Less than an hour in total.

The hundred ladies of the club were very polite and attentive while sitting around the dozens of circular tables. A clearly-spoken MC read out the biography of each performer, and the right level of claps always arrived before & after. There was often just a little bit of murmur in the background as the kids were playing, nothing offensive. Eventually Eric was called up. Polite clap after his bio was read out. He sat down, examined the odd little CD player nailed to the piano, then started playing his Mozart piece.

Two bars in, the place went silent.

Not Eric of course, he kept playing.

But the din was done, gone. I caught a glimpse of more happy faces turning around to face the piano. Eric played it, almost as well as he ever has. 140 seconds later, it was over. There was a collective breath, a few quiet wows, and then applause. Another piece, then other kids followed, and they probably received the same good silent treatment, but I was in a little smiley world of my own by then, reliving the "hush ... wow".

Posted Mon 22 May 2017 07:36:07 PM EDT Tags:

18ish months have passed since the election of the federal Liberal party in Canada. My one or two readers might recall blog-0667, where I asked for specific predictions. It's time to score. Here are those old predictions:

(Frank) $8B annual federal deficits (sorry, kids!)

Wew lads, the actual 2017 budget deficit is $28.5 billion. It's far worse than I thought.

(Frank) +10% in my taxes

My federal income taxes have gone up 8% while my pay went up 0.8%. Prediction failed, strictly speaking. It is still obscene (both in relative and absolute terms), and doesn't count provincial/municipal/other taxes, which also increased.

(Lukas) A reduction in the annual TFSA contribution room back to the $5500 (indexed) amount


(Lukas) Re-enactment (in some form) of the long gun registry

Nope, but there are stirrings, and the RCMP continues its gun reclassification shenanigans.

(Lukas) Legalization and taxation of marijuana (ok, that’s my pie in the sky/hell freezes over, prediction)

Correct, this is under way.

(Jay) I'm predicting less money in my pocket (from higher taxes) ..... but I hope I'm wrong.

Correct, of course.

(David) Amending bill c51 for starters

Nope. The bill the liberals voted for, then campaigned against, is still untouched.

(David) Independent foreign policies that don't blindly follow US.

Probably correct. Trudeau seems to be enjoying his role as an anti-Trump. (This is in no way an endorsal of the "independent foreign policy", only a agreement that it is independent!)

(David) A more compassionate government over all and a less fear based government for starters!

I never learned how to measure this, so no score.

The grand totals on prediction success indicate congratulations are in order for Jay. I think this is a healthy exercise, and any honest and thoughtful elector should consider doing the same.

Posted Sat 06 May 2017 10:11:27 AM EDT Tags:

This blog is powered by ikiwiki.