Friday, August 29, 2014

Frivolous Friday, 2014.08.29: Mind games

One bit of continuity in our move across half a continent has been Dennis's ability to find enough people with which to play board games.

As I write, he's unpacking a "new" game, which tends to follow the same ritual: Pop out all the cardboard pieces, sort out the cards, markers, tokens, dice, etc., into tiny plastic zip-lock bags, unfold the board (which, in tonight's case, looks like the Periodic Table of Elements moshed together with a map of Middle-Earth), and (finally) study the rule-book.

For all that I don't in any sense consider myself a gamer, it's still fun to watch that ritual. To hear the mental gears whirring as Dennis works out the mechanics (and with it, the underlying strategy). To be regaled with the adventures and gossip of the usual suspects after a gaming session. To watch the preferences (for what makes a good game) develop into full-grown snobberies. To appreciate, even at a distance, the craftsmanship that goes into the artwork (and in some cases the design of the playing pieces). To giggle at the silliness of some game concepts (e.g. "Evil Baby Orphanage").

Given the ancient gaming pieces I've seen behind museum glass (including what looked suspiciously like D&D dice--true story), I can only wonder if games are woven into our neural patterns nearly as deeply as language. Oddly, it seems that such pastimes live and thrive more because of the internet than in spite of it. And that, mind you, in an age of MMORPGs geared for the lizard brain. Which it gives me some hope that the ability to gather peaceably around a table may continue to be a selecting characteristic in our species' evolutionary trajectory.

Wednesday, August 27, 2014

A horrific parallel

To honour the centennial of "The War to End All Wars," (and with thoughts of my Doughboy Grandfather close in mind), I've been inching through Barbara Tuchman's iconic The Guns of August, It's a chronicle of the lead-up to and first month of WWI.

Prior to the war, the great European powers had promised not to pick on little sibling Belgium.  Problem was, it was the no-brainer route for a German army intent on invading France.  Unsurprisingly, when hostilities again flared, Germany had already developed meticulously-timed plans for cutting through Belgium in six days en route to Paris.  (One can only imagine how Microsoft Project would have been abused by Field Marshals von Schlieffen and von Moltke the Younger...)  Belgium hadn't really kept up its military in recent decades, so Germany expected that the Belgians would step quietly aside, pacified by assurances that they were only being a little inconvenienced. 

One thing that Belgium did have going for it at the war's outset was a ring of twelve forts near Liége.  On August 5th, the German assault began.  Belgian resistance surpassed even the most pessimistic expectations.  The Germans, rather than fall back and regroup, counted on their superiority in numbers, and so sent wave after wave of troops into mostly one-sided carnage.  [snark] Because, you know, they had a schedule to keep.  Stepping back to think takes too much time. [/snark]

Honestly, I cannot even begin to stretch my brain around what it must have been like to charge machine-gun fire when the wall of bodies was already a meter high.  Nope. Nope. Nope. Nope.  Multiple parallel universes stuffed wall-to-wall with 24-carat Grade-A Nope.

At which point, I'm afraid that my cynical defences kicked in, and I thought, "Sure, because throwing more bodies at a problem when you're slipping your dates is always the logical response, right?"

Which almost sounds like I'm trivialising, and I most emphatically am not.  If anything, it just made me angrier that, even with such brutal Q.E.D examples, the lesson has clearly not been absorbed a century later.

Monday, August 25, 2014

"The Handyman's Secret Weapon"

Since moving to Canada, I've had to hang up my proverbial shingle as a freelance web developer. Despite having a steady client, I decided a couple years back that it would be a good idea to have a Yellow Pages (a.k.a. Pages Jaunes) listing. The calls are usually interesting. (Well, not the run-of-the-mill cold-calls from people who have obviously done ZERO research. I mean...dudes. It's pronounced "grahnd deeg," m'kay? kthxbi) Last Friday was definitely the most so, with someone looking for translation software. The catch was that it needed to work within formatted documents like Microsoft Word and Microsoft PowerPoint.

In other words, Google Translate wouldn't cut it.

As a favour, I contacted a couple folks I know who do a lot of bilingual writing, but aren't themselves translators. They generously shared with me the benefit of their experiences. (You know who you are. Thanks again, ladies!)

Hopefully those helped out my caller of last week. But I couldn't fail to appreciate a bit of irony in how the "silo-ing" of the big players sustains cottage industries. In this case, Google has its translation feature and Google Docs. But Microsoft is still the gatekeeper when it comes to business documents (particularly when you're leery of entrusting the corporate crown jewels to the cloud servers of a company that's getting stalkier by the day).

Grethor will open a Disneyland before we see Microsoft and Google collaborate on anything that important. Thus, a small company that's just interested in making a living can duct tape over the problem of converting human languages back and forth within a crust of proprietary gibberish markup. Not unlike birds cleaning the teeth of crocodiles. (The crocodiles, naturally, being smarter than corporate behemoths because they know a win-win situation when they see one and cooperatively keep their jaws open rather than trying to eat said birds.)

Similarly, I'll be spending another day tomorrow cranking out "duct-tape" code meant to work around the differences between the reality distortion fields created by the Microsoftverse and the Googleverse. The Handyman's Secret Weapon is not unknown in the programming world. And for much the same reasons--trust me, Red Green would totally have my back on this.

Friday, August 22, 2014

Frivolous Friday, 2014.08.22: Culture Shock

(This one's more for friends and brethren back in "the old country."  Then again, Maritimers may be amused by the mindset-tweaks required when one trades the Upper Midwest for Maritime Canada.)

Top Ten Maritimes Things that Took Some Getting-Used-To

10.) The Metric System - Only a little bit, though.  It's when I'm on the road to someplace distant, and the highway sign says something like, "Miramichi 100."  I still reflexively divide by sixty and think, "Just over an hour and a half."  Nope--try an hour or less if you're doing 110 clicks on a four-lane.

9.) Homebrewing/Homevintning - La Crosse, WI was lucky to keep one homebrewing shop open.  Moncton (equivalently sized), by my count, has four.  You can buy kits/supplies at the Co-op where we do our grocery shopping.  (For various reasons, commericially-made booze tends to be very expensive. 'nuff said.)

8.) "Sir John A." -  Canada's first Prime Minister, which sort of makes him the George Washington of the country.  Except that America's first President is carved in ivory and put on a marble pedestal, and Canada's first PM has a beer named after him.  (In the latter case, for good reason.)

7.) Politics (sort of) - There are three brand-name political parties instead of two, which mixes it up a bit.  (Elizabeth May of the Green Party is both vocal and competent, which tends to disguise the fact that she's the only member of her party in Parliament.)  But Liberals are red; Conservatives blue, which takes some mental re-wiring when yard-signs sprout up at election time.  (The New Democratic Party, or NDP, is orange, which is totally outside the pale.)

6.) Atlantic Time Zone - Two hours difference for most of my family.  (Oddly, if I'd moved to certain parts of Newfoundland-Labrador, I'd be two and a half hours ahead.)

5.) Saltwater - It's stupid, I know.  I've been a "river rat" most of my life.  Nineteen years in Eau Claire on the Chippewa.  Four and change in Red Wing, MN on the west side of the Mississippi.  Then ten living on a glorified sandbar in the Mississippi itself (French Island, WI).  But after 2.5+ years of having the Northumberland Strait about three football fields off my yard, I still occasionally have a blinding flash of the obvious and start giggling, "Dude, that's the ocean." Dork.  (Not to mention there's that whole thing with clam-shacks and lobster-rolls being ubiquitous.)

4.) Thanksgiving - Second Monday in October, not fourth Thursday in November.  Has ambushed me Every. Single. Year. (so far).

3.) Colloquial French - Intellectually, I knew that the Parisian French taught in American high schools is not necessarily what you'll hear on the street--even in Paris.  Maritime Francophones have a different dialect ("Acadian") than Francophones in Quebec.  And then there's there's my area, which has a patois known as "Chiac," a French-English-Mi'kmaq mashup.  Still, it has its colourful points--sweet corn is "blé dinde," which translates as "turkey wheat."  (Loves it!)

2.) Wildlife - When your neighbour calls to ask, "Did you guys know that you had a moose in the backyard this morning"?  (Comment dit-on en français <<wat>>?)

1.) Hurricane Season - Well.  Yes.  Intellectually, I knew this was going to be a thing.  Our electrical system even came with a hookup for a generator, for pete's sake.  That's totally not the same as realising that Hurricane Sandy might be dropping by for awhile. o_O

In my defence, there are a few things that I've been able to mentally assimilate fairly readily:
  • Garbage disposal - The different way garbage is separated here (green sacks = compostables; blue = everything else that's not toxic) was kind of a no-brainer.  When folks here complain about that, I horrify them with tales of separating out newspaper, cardboard, aluminum cans, bi-metal cans, etc.
  • Weather - When we first moved here, local folks seemed to assume that winters would be a wee bit of a shock, what with coming from a more southerly region.  Um, nooooo.  On balance, it's been less cold, more snow.  I'll take it, thanks.  (Ice storms need not apply, though.)
  • Place-names -  There's a bit more emphasis on famous historical people here.  (I mean, Queen Victoria's Dad has a whole province named after him, fer cryin' in yer Molson's.)  But apart from quibbling over whether a place-name is "Native American" or "First Nation," it's pretty much a wash.  Dead Presidents, dead Royal/noble people--same difference.
  • Anglicised spelling - At once point in my college career, I started doing this as an affectation, just because I thought that it looked cooler on paper.  So doing it again is just neuron "muscle memory" kicking in.  That being said, I still don't go the fully Monty and use phrases like "at hospital," or "at University," even having a British neighbour.
  • Hockey - C'mon, after living in a state where people wear styrofoam cheese-wedges on their heads, I am soooo not in a position to comment on the CBC segregating their "Sports" news and their "Hockey" news.  Just sayin'.
It probably goes without saying that the similarities outweigh the differences.  I live in a province with strong agricultural sector, with a long legacy of the timber trade.  (New Brunswick is basically the dairy province of the country.)  The stereotype of Canadian politeness rings as true as the ethos of "Minnesota Nice."  Absent the coulees of La Crosse, eastern NB is as vertically challenged as Wisconsin, and there are stretches of highway that could make me swear I'm going through the Dells.   And Johnsonville brats are readily available here--though I'm still waiting for Leinie's Honey Weiss to make it across the border. ;~)

Wednesday, August 20, 2014

A programmer's perspective on Ferguson, MO

Two Three Four thoughts:
  1. Communities and organisations are systems.  Inputs and outputs.  Lines of communication and feedback loops -- some obvious, some more under-the-hood.  Nodes coming and going, and networks forever in flux.  Lost signals, crossed wires.  
  2. Where you start debugging any system is a function of what part is most familiar to you.  If you don't go looking outside your own mental model, you're usually gonna have a bad time...for a longer time than necessary.
  3. Trust me and over a decade of experience in debugging when I say that the problem is too often farther upstream than you think it is.
  4. Throwing lots of hardware at a problem doesn't count as a fix.

Monday, August 18, 2014

Governments: Boost Your Credibility with This One Weird Trick!!! *

Yo, government (Fredericton, NB + Ottawa):

The fact that people don't trust you (or the resource extraction industries you're so cozy with) is your problem, not theirs.  Own it.

You need to do a lot more of this:  http://www.cbc.ca/news/canada/new-brunswick/pre-shale-gas-water-quality-to-be-studied-1.2737559

To have less of this:  http://www.cbc.ca/news/canada/new-brunswick/n-b-fracking-protest-raised-fears-of-copycat-rallies-1.2738921

Any questions, call me. 

xoxo,

Doreen

* Apologies to my Gentle Readers (of the non-governmental persuasion) for the skeezy Newsmax-esque ad headline.  I'm fighting the urge to boil my laptop in bleach after typing that.

Friday, August 15, 2014

Frivolous Friday, 2014.08.15: Molly-arty

By this point, Dennis is no doubt regretting the day he ever convinced me to try out the BBC series "Sherlock."  At the time, I thought he was referring to CBS's "Elementary," which frankly sounded gawdawful.  Plus, there was that Robert Downey Jr. monstrosity still lurking about, which didn't help matters.

Now, I remember seeing what happened the last time Hollywood modernised The Great Detective, when Basil Rathbone was suddenly dragged forward in time from fin de siecle London and dropped off in the 1930s.  It clunked.  Besides, to me, Jeremy Brett will always be Sherlock Holmes. 

But Dennis insisted that the BBC reboot was "smart...sexy...funny," and he went so far as to snag the first two series on DVD.  So I sat down to "A Study in Pink," and was *hooked*.  Uh-oh.  I snagged the original A.C. Doyle canon, and have only left one short story unread (saving it for a special occasion), and know the rest well enough that I can re-watch episodes and go, "Aaaaaah--I see what you did there!" when the writers slyly sneak in references. 

Like most good nerderies, the A. Conan Doyle canon has the selling-point of a limited supply:  Four (short) novels and fifty-six short stories, plus a few extra-curriculars for the hard-core fans.  (Mercifully, we're not talking "The Dresden Files" here--he can't write more.)

But if the original canon is limited, BBC only produces three "Sherlock" episodes every two years.  And they've left each season on a cliffhanger.  Jerks.  Worse, they loooove to tease the fans--witness the 6-minute mini-episode released Christmas Day.  The two principal actors, Benedict Cumberbatch and Martin Freeman, are hot properties on both sides of The Pond, so we'll be lucky to see Series 4 before 2016.

That's a lot of time for speculation--and by "speculation," I mean terabytes worth of fan-fic, YouTube mash-ups, and the obligatory online food-fights.  Team Johnlock, Team Sherlolly, Team Sheriarty, and whatever you'd call Sherlock plus Irene Adler.  Even rumours of a for-charity mash-up of "Sherlock" and "Dr. Who."  ("Sherlock" co-creators Steven Moffat and Mark Gattis are also writers for the latter series.  British show-biz is nothing if not incestuous that way.)

*** HERE THERE BE SPOILERS ***

So if the hot question in 2012 was, "How did Sherlock survive jumping off a tall building?", in 2014 it's "Is Moriarty really back from the dead himself?"

It's already been pointed out that when Sherlock turns back to Moriarty's corpse sprawled on the rooftop, the gun with which Moriarty committed suicide is still in Moriarty's hand.  The gun should have gone well afield when Moriarty's body hit the roof (literally).  (There's also some noise made about "Richard Brook" being right-handed when "James Moriarty" is clearly a southpaw.)

Yet, just as Sherlock is leaving the U.K. on what is guaranteed to be his last service to his country, Moriarty's face is on every screen in the country--the Max Headroom of the 21st century--asking, "Did you miss me? Did you miss me?  Did you miss me?"

So, for the record, here's my over-obsessive fangirling on the hot question of 2014.

Naturally, we eliminate the impossible to arrive at the implausible truth.  So let's start with the basic premise that we have absolutely no reason to believe that the person who put a gun in his mouth and pulled the trigger on the top of St. Bartholomew's Hospital was in fact the person known as "James Moriarty."

One thing that's bugged me since S1E3 ("The Great Game") is the killing of the blind hostage.  All the hostages are wired with explosives which will be set off if the hostage deviates from her/his "script."  Because Moriarty can't communicate with the blind woman by text, he has to speak to her--stepping at least partly out of the shadows, as Sherlock points out at the time.  But after her "puzzle" has been solved, she starts to describe Moriarty's voice to Sherlock & Lestrade, and Moriarty has the trigger pulled.  That made absolutely no practical sense, simply because that was information she could have given to Scotland Yard once she'd been rescued and defused.  Conclusion?  She was still reading from the script until the very end.

Thus, we don't even have any guarantee that Moriarty is actually a dude.

Which leads to my premise that Series 4 will uncover the real "Moriarty," and she will wear the face of pathologist Dr. Molly Hooper.

Yep.  Molly-arty.  Better yet, Molliarty.

If you're familiar enough with the original canon to know that "Moriarty" was "Professor James Moriarty," you can make a case for it being Dr. Mike Stamford, but I think Molly's more plausible.  Here's why:
  • The "Jim Moriarty" we see doesn't have many interactions with Sherlock that couldn't be scripted.  Molly is present at the first meeting in Bart's lab.  Moriarty briefly exits during the poolside meeting, and then receives a phone call when Sherlock takes things in an unexpected direction. Moriarty pretty much controls the script in the flat, and basically pwns Sherlock in the cab scene.  For the rooftop showdown, Sherlock had already worked out his plans, and was coordinating with Molly as well as his brother Mycroft and the Homeless Network.
  • When Irene Adler monologues Mycroft and Sherlock, she says that Moriarty calls them "The Iceman and the Virgin," suggesting a character read that could only be had first-hand.
  • Molly has a sociopathic streak herself.  When we first meet her (and Sherlock), she's wheeling in the corpse of a former co-worker, "I liked him; he was nice.".  Sherlock then beats Mr. Nice with a riding crop to test for bruising after death.  Molly's response is to smirk, "Bad day, was it?" before asking Sherlock out for coffee.  Also, at John's wedding, she sticks a fork into the back of her fiance's hand to shut him up.
  • When Irene Adler fakes her death, the body in the morgue just happens to be shown by Molly, who claims to have nothing going on on Christmas Day.  Molly very, very quickly produces the corpse "double" when Sherlock fakes his own death.  That suggests connections that NHS pathologists are unlikely to have.
  • When Sherlock deduces that Mary Watson is not who she claims to be, he notes both her "orphan" status and that her friendships have been formed w/in the last few years.  Molly also seems to lack close relationships, particularly after her engagement to Tom fails. (See above.)
  • When you're in the consulting criminal business, working in a morgue (not to mention being the person who officially determines the cause of death) comes in really handy.  'Nuff said.
  • Molly is conveniently on hand when Sherlock decides to face Moriarty head-on.  She has already let him know that she guesses what he is contemplating; he would have been stupid to refuse her help.
  • When General Shan (sp?) is trying to excuse her failure to Moriarty, she is talking, but "he" is typing, and then under the screen name of "M."  The "M" could also stand for "Molly," and indeed, balance of probability suggests first name, rather than last name, is more likely for a screen handle.
  • Actor Andrew Scott is openly gay, but we have no reason to believe that Moriarty is--even with the "Jim from I/T" performance.  When Moriarty first contacts Sherlock, "he" addresses him as "Sexy."  Later, Moriarty says, "You and I were meant for each other."  That sounds suspiciously like Molly's (apparent) feelings for Sherlock.
  • At the beginning of S2E3 ("The Reichenbach Fall"), Mycroft confesses to John that to get any information at all from Moriarty when they had "him" in custody, he had to trade tidbits about Sherlock, including their childhood.  We later learn that the young Sherlock was left emotionally scarred when their dog, Redbeard, was euthanised.  Yet somehow that information finds its way into the hands of blackmailer Magnussen.  Given their personalities, the likelihood of them working together is absurd.  However, Magnussen would have paid handsomely for Sherlock's "pressure points," giving Molliarty more capital to rebound for Round III with Sherlock.
  • Moriarty only returns when Sherlock is being sent on a kamikaze spy-mission, but also after Sherlock has whacked the only other criminal with the resources--notably a media empire--to be viable competition.  Bonus points for a strategic double-cross there.
Conclusion:  The person claiming to be Jim Moriarty could have been threatened into acting as a front for Molliarty.  After all, hostage-taking was all in a day's work for Moriarty.  The Reichenbach Fall played out slowly enough for Molliarty to move the bulk of her assets to safe havens, leaving a brittle shell for one-man-traveling-band Sherlock to take apart.  (Tellingly, Mycroft is skeptical of Sherlock's achievement.)  Molliarty may or may not have contrived to have Mary meet John.  But she probably instigated Magnussen's picking the first fight with Sherlock/Mary/John.  That seemed to happen far too soon after Sherlock's return for it to have been organic.  And setting up Sherlock so that killing Magnussen was the only way to protect John, Mary, and their child effectively signed Magnussen's death-warrant.

Which, with the exception of John having unwittingly married a trained assassin, pretty much sets the same pieces back on familiar squares for Series 4.   Except that if I'm right, it means no more Andrew Scott, which would suck because he's riveting in that role.

*** END SPOILERS ***

Unless I splurge on the full Jeremy Brett "Sherlock Holmes" from the 80s/90s, it's gonna be a looooooooong time until Series 4.  For, I suspect, Dennis as much as me.

Wednesday, August 13, 2014

Entrepreneurship is too important to be left to professionals *

Tonight the Moncton, New Brunswick Public Library hosted an "Ask an Expert"...uhhmmm...thingie.

I say "thingie" because I can empty the pockets of 21st century English and not find a word that accurately describes the format.

It wasn't a seminar or symposium because there were no presentations, either from the end of the table or behind a podium.

It wasn't a roundtable, though, because two of us were the designated "experts," and one the facilitator.

That being said, it wasn't strictly a Q&A session, though we went around the room introducing ourselves as context for our one or two most pressing questions.  Plus, it doesn't count the cross-pollination of ideas/resources.

Except that's not quite a true statement, because there were two folks from the CBDC (Community Business Development Center) and one from Universite de Moncton.  And they didn't have questions, actually.

You can't call it a "hackathon" because no one was expected to emerge with a fully-formed business plan inked in adrenaline and Red Bull.

And it certainly wasn't a "Shark Tank" VC beauty pageant.  (Small mercies, yo.)

Thus, "thingie."

 This was apparently the first time that the Library has done this.  I don't think it should be the last.  The balance of the low-key format with two veterans of business-building was about perfect.  Particularly for folks who are still in the "What-if"? phase.

Thumbs up to the MPL for the idea/initiative.  And certainly thanks to experts Natacha Dugas (STRATI App Labs) & Jon Chandler (Terra Verde), and a thank you for the generosity of their time and insights.

As for the terminology, I'm perfectly happy with "thingie."  You can pretty much guarantee no one will turn that into the next SXSWi anytime soon.

- - - - -

* Title is tongue-in cheek.  Mainly because, to my thinking, the term "professional entrepreneur" is an oxymoron.  Simply due to the sheer amount of they-don't-teach-this-at-MBA-school improvisation required.  And the only "certification" is longevity.

Monday, August 11, 2014

A thought on not living down (or up to) stereotypes


You can say what you like about the stereotypical programmer, but suspicion of all things new is not among the standard character flaws.  Like our idols Mister Spock and Sherlock Holmes, we can dispassionately dispense with the human bias for the comfortably familiar.

And yet.

I had to add the login feature to a web application today.  There's nothing particularly exciting about that.  Until you factor in the adrenaline-kick from sheer paranoia.  Login pages, after all, are the gateway into the castle that is someone else's data.  As a programmer, you want to do your due diligence and make sure that not only is the door itself is strong, but also that the portcullis is down, the drawbridge is up, and the moat is fully stocked with hungry crocodiles.

One of the recommended ways to go about this is to integrate something called a "stored procedure" into your web code.  If you're not a code or database geek, don't freak out:  I promise not to be too nerdy.  What you basically need to know is that this code actually resides in the database itself.  Mainly that's to take advantage of the database's own...shall we say..."immunities" to potential troublemakers.

So I started going through the usual motions of cranking out typical login code.  Then it occurred to me to check in with the database's documentation to see whether they'd upgraded the functionality which encrypts text so that passwords are rendered unintelligible to humans.  As luck would have it, a new and improved encryption function was waiting.  (Which is good, because the old standard had been compromised awhile back.)  The new function was slightly different, so I tweaked my in-progress code to deal with that and finished up the stored procedure.

When I called the procedure with my login name and password, however, the database had never heard of me.  Plus there was a semi-useful warning about data being truncated (which basically means some of it's being chopped to fit a smaller expected length). 

Weird... 

A sanity-check of the documentation and some extra poking-n-prodding says that I'm using the new function correctly.  I also have enough space for the encrypted password.  Maybe I didn't correctly encrypt the password when it was added to the database.  Whatever--let's do that again, just to make sure. 

Still no joy.  Huh.

So I copied just the relevant code-snippet into a fresh query window and executed it independent of the surrounding code.  The good news is that the snippet finds a match for my login/password; the bad news is that it won't do it inside the larger procedure.  Oh, and that warning about truncated data is still there.  Wat?

As it turns out, the problem all along was with my login name.  See, I'd set up the procedure to assume that login names wouldn't be any longer than 25 characters.  But then I used a (longish) email address to log in.  Result?  The chopped-off email address didn't match what was in the database and thus wasn't recognised. The password, on the other hand, was perfectly kosher.

But because this was my first outing with the new-and-improved encryption, I reflexively targeted it as the cause of my woes.   I have to chalk up the afternoon as a net "win," because I won't forget what I learned about the encryption feature while debugging its non-existent problems.  Though it looks like I will be still aspiring to Spockian/Sherlockian dispassion when problem-solving for some time longer.