Author Archive

Laying In, and Taking Stock

December 17, 2022 Comments off

Xmas Eve 2010

I think our Salazar Family does not have an excess of traditions, but the ones we do have are, well, pretty traditional. Foremost on our short list is Christmas Eve, which we celebrate in the French style of Réveillon. The essence of this is simply: On this special night, the best of everything. And the best, as I’m sure everyone knows, takes work. Kim and and I are already into the researching, recording, shopping, and planning. The day-of, every half-hour from 8am up to serving time will be scheduled. Here’s the menu:

Entrée: “Daniel Boulud” Cold Smoked Atlantic Salmon, French Canadian Cretons pâté, Rye toast points, capers, cornichon, mustard. Muscadet.
Soup: Double-Beef Consommé with Wild Mushroom, a la Jacques Pepin.
Fish: Sole Paupiettes with Lobster Mousse, again a la Jacques Pepin. Chablis.
Plat principal: Whole Roast Sucking Pig, Creamed Leeks, Gojujang Glazed Carrot. Sablet, 2018.
Fine Cheeses
Galaxie des Biscuits Bonne Femme (our fancy way of saying Kim’s Cookies)

We have had such a pig on Christmas Eve one time before, in 2010, as the above more-youthful Alex and Morgan can attest. While (forgive me) you never forget your first pig, I’m hoping this year’s edition will excel its predecessor. The plan this year is a slower, longer roast, with a lot of garlic and ginger inside.

There’s a lot of ingredients there, thus the laying-in. As pigs are not had on-demand at Stop and Shop, I have bespoke one from Savenor’s, to be available on the 23rd. I expect to get my seafood that day, though past few years sole has been hard to find. I know I can get it at some of the Boston pier outlets, but I’m hoping the better fish mongers in Cambridge will suffice.

In the back of my mind during all this activity is the Taking Stock. No, I don’t mean an end of year Augustinian reflection on my shortcomings – rather, it’s a work thing. For some years now in my jobI have been a manager and I now have a total of 22 teammates in my responsibility. As is the case with so many tech companies, now is the time we do a performance review – an assessment and comparison of each employee’s achievements and potential. Managers have to write a fact-based, thoughtful, encouraging yet realistic chunk of text that distills into a few paragraphs an employee’s professional worth and prospects. So, no pressure.

It’s really not that bad. I find that most people want to do a good job, and to get better at what they do. For me this process is more about bringing each person’s activities into perspective compared to what the company needs, and about helping them find their particular path to improvement.

The unfortunate thing is, in my company I have to do this for 9 people by Dec 30 the latest. I’ll likely be laptop-bound a good bit of the week between Christmas and New Year’s. Will the good cheer of the season permeate what I write? No way to tell but frankly – I hope so.

Last comment: Been re-watching a lot of ST:TNG of late. Last night was Lower Decks (S7E15), in my view a great episode and one in which the performance-review process aboard the Enterprise-D plays a part.

Categories: Food, Work

A writing look back

December 10, 2022 Comments off

I recently was posed an interesting question: What was the first email address you ever had? If nothing else that takes me back. In the late 80’s we had Compuserve and GEnie dial-up accounts. There was no SMTP email with those, but I seem to recall in our last years living in Maryland, circa 1992-6, we had a dialup ISP account that did provide email. For the life of me I can’t find any mention of such an address. When we came back to Mass in ‘96, we had accounts on and later

Anyway that was the starting point of me poking around in all the oldest files I have lying around. In that I cam across the fragment below, the start of a story I had titled “Into the Out”. I remember the characters and the concept very well, and who knows? In coming years I may come back to it. But I had totally forgotten the fragment below. It is crudely copying of Jack Vance in tone, and it’s way longer than I would render such an idea today, but it was a pleasing connection back to my 1990’s self.

So below, the opening pages of INTO THE OUT …

“Another day … when will it give up?” Kenneth Iborgan Teele muttered his customary morning complaint. He sat up straight and swung his feet over the side of the bed, twisting to give first his spine then his neck a crack. He tilted his head left and right, as if listening. On a few past occasions there had been in fact something to hear; for Teele such a situation could betoken nothing good.

Today there was nothing. His morning ritual completed, Teele threw a robe about his shoulders and went off to the kitchen for breakfast, pausing to pick up his data-cache, that was lying on the nightstand. As he went, he pulled aside some drapes, and slid open a window to let a breath of air through the cottage. A bright beam of sunlight described a yellow rectangle on the floor and highlighted wisps of dust floating and turning like asteroids. Teele paused a moment by the window to wonder at the golden yellow orb of Sol, so different from the paper-white lightbulb of Vega. A current anthropological fad suggested that the differences between Earth and Vegan culture stemmed from the quality of light their peoples lived under; Vega 9, under pure white light and razor-edge shadows became a world of crystallized towers and perfect symmetries; Earth under the flickering bonfire-light of Sol grew into a world of subtly blurred distinctions, of brushstrokes instead of penlines.

Teele, of course, knew the folly of hypothesizing after the fact. But he smiled as he recalled a conversation he once had on this very subject, with a self-proclaimed “Chromatic Redemptionist” in a tatty bar on the outworld Hodown.

“You hold then that light influences our brain?” Teele questioned.

“Never doubt it!” the man replied, already half-exalted from drink. “Strands of the visual apparatus intermingle with fiber of the frontal lobe, and the temporal, and even the hippocampus and other areas of the ancient under-brain. In this way the quality of light impinging on the eyes sends impulses of uncertain effect into every area of the mind. Thus, the time the mind functions best is in absolute darkness – and even then, so many pathways have been warped from a lifetime of seeing that there is little improvement to be gained.”

“But as I understand it, your creed admits the possibility of redemption from this state?”

“The lost world Eden orbits a star of the perfect light, of an exact spectral quality that will allow the mind to function in its perfection, as it was meant to be. To see the healing beams of the sun of Eden is to think and perceive as the original man, innocently and cleanly. Thus, when mankind attains Eden, the numerous ills of our myriad warped societies will be cleansed.”

“A happening we all fervently hope for, to be sure. Yet I wonder, since all the modulations of light can be created by simple machinery, if one might not experimentally generate stellar wavelengths and test them for the enlightening effect you describe. You might save us all a period of unhappiness as we await the discovery of the actual planet Eden.”

“Pah! I refute this paltry hypothesis! Man cannot replicate by craft the sublime frequencies of Eden; that you suggest such a thing is only evidence of a warped mentality caused by exposure to light.”

“By the same token, since your creed comes from a light-tainted brain, how can we know its veracity? Unless of course, you were swaddled in blindfolds since birth?”

“First you spout heresy, then inveigh against an obvious revelation from the divine; if not for this excellent beer you have purchased for our consumption, I would end our association on the instant!”

“Well then, how do you propose to locate Eden? Presumably you do not command an armada of pioneer-drones.”

The man brushed at the shoulders of his threadbare coat. “You presume correct. Till now, the best I can do is closet myself in absolute dark, and by sheer intuition try to apprehend the location of Eden. My efforts all conclude that Eden lies somewhere in Sagittarius. I then prevail on wandering spacemen to convey me in that direction. I perceive you belong to this class, and since you are of a sympathetic bent you can no doubt provide me a berth, possibly even joining me in my search … ”

“I fear my business Out is done; my plans take back through the Door and In.”

“Always worldly pursuits stand in the way of salvation. Shall we not at least take more beer? And consider those ladies at the end of the bar – do they not grow in attractiveness even as we watch?”

“I believe it is the light of barrooms that causes this effect.”

“As good a cause as any – but still the effect remains. Ladies! Are you occupied? Observe my friend; a bravo of the spacelanes – and myself, a searcher among stars …”

Strange, the things we choose to include in our memories, Teele thought.

Categories: Writing

We Were Innocent Then

February 28, 2021 Comments off


LORDS! I call thee! LADIES list now to my tale.
In Denmark’s far days came these doings dire,
when men of might were mickle and many,
when dwarf spoke doom in caverns dank,
dragons with demons vied to bring disaster,
ere even the pernicious pipes of the Scots
did assail the innocent ears of Northmen.

Thus begins a piece of writing dear to my heart, “The Tale of the Brothers (A Saga of Old Denmark)”. My wife Kim, aka Countess Ianthe D’Averoigne, recently noted to me that on a list somewhere, people were reminiscing about it. I brought out my copy and paged through. At once I thought, why not put out the text, perhaps someone may get some enjoyment out of the whole thing. The PDF is linked below. But I have been thinking much on it since and I see now a lot I did not understand back then. *Not* having the foresight of my people, I have no idea if my recollections will be worthy of note. Nonetheless, I will share them.

The year, 1979 (AS 14). At Masked Ball the previous December, I played in “The Song of Roland, or Franks (Incensed) and Moors”, a comedy penned by Eugenie de Bruges and Marian of Edwinstowe. Eugenie had a particular reputation as a wit, especially for her puns, and “Roland” while sweet and funny, was also a real groan-fest. Somehow I got it in my head I should write such a play. Why? I was a Count by then and had done more than my share of non-fighting SCA stuff, but truthfully my broader SCA interest was beginning to wane as I had started my training in Aikido. But my connection to my friends and that place and time was still there. The best answer is, it was because that is what Carolingians did.

The main subject, mythic Norse heroes, came to me instantly. I had recently read Poul Anderson’s “Hrolf Kraki’s Saga”, and also the actual “Njal’s Saga”; much of the plot was lifted from these sources and, after all, who doesn’t dig Vikings? But there was more going on. A favorite part of mine is when evil Frodhi questions Regin, the foster-father of the heroes:

FRODHI … I have longed to meet you, Sherriff, for I hear many things in my travels.

REGIN And what hast thou heard, hoary one?

FRODHI Nothing but that Regin was a fine lord with fine lands; but his pride was two hunting hounds, clever and strong beyond the measure of dogs. I would fain see them, for they are said to be a marvel.

REGIN Alas stranger, luck is not with you today. Those hounds ran away years past; and I wonder at it, for I was as a father to them. What else do they say of Regin?

Frodhi next asks about two fine falcons, and then finally about two sons. The direct inspiration for this was the ballad “King Henry”, as rendered by Steeleye Span. This is a “loathly lady” story wherein the female monster repetitively demands that King Henry first kill his hounds, then his horses, till finally he must sleep with her.

Now I must speak of wit. Words – using them well – mattered a lot back then and wit, frankly, was a far more valuable currency in the Carolingia of those days than fighting. Putting on a show for Masked Ball without a heavy larding of one-liners and puns – the more painful the better – was not to be thought on. I believe I did well enough – I’ll let the interested plumb the actual text for these “gems”, as it were. But above and beyond jokes I like to think this play, through well-placed repetition and reinforcement, got people more engaged in words than most others.

“Foresight of my people” appears 5 times in the play; this was enough for Eugenie to dub it “The Foresight Saga” – a coinage more clever by far than any of mine. Of course this is a Tolkien thing (his elves are always foretelling stuff) but he took it from the Scandinavian tradition where prophecies of doom practically come with the daily papers. Somehow after the first occurrence, the audience seemed to expect the next, then the next. Whether intuition or just dumb luck, this phrase set the rhythm of the play – hearing it was a signal of a turning point of information – and it seemed to buoy the audience and keep them connected.

The other phrase is “My name is not important”, which appears 4 times, or maybe 4 and one half. I still hear people say this today, typically accompanied by a small Jedi hand-wave to indicate the hearer is being beguiled.

This one ended up being more subtle. Again, I had no idea what I was doing, but “name” is an essential theme of the play. The heroes have 2 names each: Hrot and Hrani, their peasant names, and Helgi and Halfdan, their royal names. Finding their true names is their quest, though they don’t know it. But more, “name” is a super-important thing for a Norse hero. Such heroes seek renown in order to build the power and potency of their name; to have *no* name is to be a slave, a creature of no account. The prologue, Hugi, the avatar of Odin, says this line 2 times.; but he’s a god and beyond caring about names. Next, Frodhi says it – but he’s the bad guy and he doesn’t care about name, just grabbing power. Halfdan, played by me, is asked his name 2 times. He cannot bring himself to say his name is not important – my own vanity at work perhaps? – instead he declares his name to be “Vandrade”, Swedish for “wanderer”.

Finally Halgerde says it in the final scene. Now she’s a woman and in a trivial sense the names of women are not important, not when compared to heroes. But I like to think she sacrifices her dignity in order to save the Brothers.

Why 4 *and a half* times? Hugi, the Odin/Prologue, was played by my sword-brother Vissevald. Now even then, Vis was a man of significant name (which has only grown since). The final scene is very fast-moving, with tons of eye-patches, false beards, and flailing of weapons both long and short. Just as it looks to be curtains for the heroes and heroines, Hugi makes reassuring signs to the audience he will do a deus ex machina. But he is forestalled by the long-lost Gunnar – played by Cassandra Boell von Bayer – companion to the dead King and offstage since act 1, scene 1. The All-Father is flabbergasted by Gunnar’s impertinence:

HUGI (Indignant) What is this? Who are you? Don’t you KNOW who I AM?

GUNNAR YOUR name is not important. Away old man, I have business here!

I hope he will forgive the observation, but Vis, almost as much as me, is not blessed with an over-abundance of humility. I still chuckle at this image today.

Coming back to Tolkien, for anyone in the SCA, he is an inevitable influence for almost everything we do. The curse on Frodhi, “You will die at the hands of a woman”. is the same as that on the WitchKing, though more explicit of course. And the scene with Damnir the Dragon owes much to Bilbo and Smaug, though mainly through my determination to write something different from that iconic piece:

HALFDAN Verily, Damnir the Fierce! But first, I would have words with thee, oh calamity of the skies! For, mighty pinioned one, many questions assail my thought and only one such as thou, owl-wise mistress of reptiles, might answer them.

DAMNIR Think you so, lad? Tell me, what is your plan? To beguile me with riddling talk, and thus trick me out of my treasure? Frail youth, hardly an original plan! Though it might have proved useful if I were one of those overblown male dragons. Pride is their downfall, but I am wiser. No riddles!

HALFDAN By the hammer, how un-draconic!

DAMNIR If you will. But I warn you, I have a particularly strong dislike for young adventurers, so mind your tongue.

HALFDAN Yes, ma’am.

Damnir was played by Caryl de Trecesson. That was a truly great performance. Any play needs some suspension of disbelief but, rendering a dragon – that required an entire Verrazzano-Narrows of suspension. Yet Caryl brought it off: the looming danger, the petulant menace, the put-upon unpredicatability, all standing on an old trunk and equipped with an upholstery-and-stuffing tail that would not fool a 1-year old. Bravo.

Which brings me to another thing I now see about the play: Women do a lot in it. Damnir is a female of irritable temper – “dragon lady”, get it? – but I knew if I wrote women who were just doe-eyed damsels in distress, I’d never earn the approval of those I respected, most notably Marian. When my 22-year-old self playing Halfdan meekly answered “Yes, ma’am” to Damnir I might as well have been saying it to Marian.

Then there is Olga, wife to Regin, who defies the evil Frodhi to his face and is slain for it. And Haleth and Halgerde, the Forest Girls; they don’t wait around for help when they hear the brothers are betrayed – they make their own plan and rush to the rescue. Part of this is the Norse motif – the sagas abound with strong women. But the bigger part was the time and the place.

I write fiction today and I of course understand what I write is a product of all my experience, including the experiences of others. But today I very much write alone, saying what I think is important. In 1979 I was as much channeling the feelings of those around me as I did my own. Marian I have already mentioned. Two people I spoke with much about writing were Kali, who portrayed Halfdan’s brother Helgi, and Gyrth. They both had studied far more literature than I and in car trips to events, or late-night bull-sessions at the Buttery, I absorbed a lot from them. Finally an influence perhaps hard to recognize but still strong and foundational was Aelfwyn. His stoic demeanor, combined with a keen sense of irony and, lastly, generosity, was my image of Regin the Sherriff. The good in the story comes from them, from our other companions of those days, and the world they collectively created. Me, I just did the fiddly bits.

“The Brothers” is not great literature: It is small, topical, and lowly comic. But in the end it is a play about three things: Renown, Romance, and Honor. In our innocence that’s what we cared about back then. For a few hours each month, we sought an elevated life: To be a hero or heroine; To test ourselves; To see the right prevail. ‘Twas childish, I know. Yet I will defend it. Not because my name is important but because other names were, and are.



Categories: SCA

A CivSpace Christmas

December 25, 2018 Comments off

Twas the night before Christmas, and across his wide grounds

Terendurr the Black Stone listened for sounds.

His wide ears were twitching both downwards and up

And his head swiftly turned like the most nervous of pups.

His own sounds were sickly, twiddling and coarse,

An orchestra drained of all its force.

When I could stand it no longer I had to yell out,

“Boss! What’s the problem? What’s it about?

Alien invasion? Quantum death-beams?

A party of Keret forming volley ball teams?”

“The night is quiet, Blair,” he said,“Too quiet for me.

I fear some plot of fearsome degree.”

“No help for it now,” he said, nodding his head to the door,

“Go out to the city and search out the score.

Do not return until the danger is known –

Then I, a genius, the solution shall intone.”

He seemed so sincere I didn’t dare scoff

so grousing and grumbling I departed straight off.

My first stop was Bartoe the Monitor,

a lawman grumpy but tough as a boar.

“MacAlister!” he growled, “Trouble as always!”

“Thanks, Bartoe,” I said, “From you that is high praise.

But tell me, straight-up, any evil brewing tonight?

The Black Stone is nervous and fearing a fight.”

“No, nothing,” he barked so onwards I strode

My next stop, a Phair, to cash a favor long owed.

“Terril, you thief, you inveterate cad,

you owe me some info, so don’t make me mad.

A job is happening, this very eve.

Tell me the play and I’ll let you leave.”

His bald head he nodded, big eyes he blinked,

“Lovely Blair, I’m not so bad as you think,

no crime is planned across the town tonight.

In fact I intend a solemn and personal rite

Where clothing is optional and qualms passé –

What say we share a moment outré?”

In reply I just slapped him down to his bench

(Why should an alien know French?)

and headed out to the dark. My geas unlifted,

weary across the silent town I drifted

till at last I encountered a rare thing indeed,

an Oro-Ka, moving at speed.

Chaotic beings, of power great and manifest

He was my last chance to finish my quest.

“Hail, your worshipfulness!” (an ancient expression we scoundrels all favor).

“Questions I have I know you will savor.”

“What’s this, a Terran?” he cried.

“A child race – upstarts, infants – my patience you try!”

“Calm yourself,” I scolded, “lest dignity you misplace.

A riddle I have ,as great as space,

That I would pose.

Will you answer? Chose!”

“Ask,” he replied, sparks of power flicking about his head.

“My riddle,” I began, not without dread,

“concerns nothing, nothing at all.

When we are threatened by ‘nothing’, what defender shall we call?”

“’Nothing’, you say?” he stroked at his chin.

“A riddle from the Terran Sphinx’s kin.”

His powerful hand indicated the stars.

“Child, attend to the answer I tell.

Time is infinite, and space as well,

both curving, both swerving, both infuriatingly grim.

Back upon themselves they bend, an enclosing rim,

Tighter and tighter and the end – Is nothing – Unless.”


“Unless a fracture is introduced. Foolish primate.

Only by that can you avoid your fate.

At the beginning of things the answer lies,

When quanta were mist and atoms dreams.

I am done, and so are you I deem.”

There was a shimmering flash and he was gone,

Leaving me to ponder the night alone.

Above were alien stars, around me alien air,

All lonely, cold, beyond care.

But in that moment I smiled, and laughed —

the Oro-Ka was right, and not by half.

Back to the compound I sped,

Till through the silent doors I did tread.

Distant sounds drew me on, breathless,

To the Great Hall when, blinding light left me helpless!

For there was Madeline the Raylic and the Trang, Pierre,

Bearing wrapped gifts, the grinning pair.

And the Black Stone as well a present he had

(its wrapping I must say was terribly bad).

“Apologies, Blair,” he boss announced,

“for the false assignment so lately pronounced.

Too late I learned that gifts are needed this night

For your Terran celebration to be observed aright.”

And we laughed, and talked, till Terendurr inquired

“Christmas, Blair, what is it? besides presents acquired.”

“The beginning of things,” I said, thinking on The Oro-Ka.

“We choose how the symmetry cleaves, what flaw

Shall set our yearly path towards we know not where.”

“Hrrmphh,” he grumbled, “Unaccustomed for you, wisdom quite rare.”

Then shaking his head he left, off to his office to ponder,

On problems I’m sure most dire and somber.

But I heard him exclaim, as he tromped to his lair—

“Happy Christmas to all, but most to you, good Blair!”

Categories: Writing

Ask not for whom the app logs-in, it logs-in as thee …

September 8, 2018 Comments off

With this installment’s title I must extend apologies to John Donne, though had he lived today I’m sure the great metaphysical poet would have been concerned with more inevitable eventualities than death … like the inevitable need to go online and once there, to login to something.

Logging in and getting a personalized experience with our apps is a universal expectation, not to mention in lots of cases a logical requirement. Back in the day we’d blithely enter our email address yet again, and use the same ‘ol password, just to register with a site we’ll probably use only 1 time in our lives. Well, those days are gone. Not only are users weary of all these separate logins, I as a developer want to minimize the effort I spend on basic stuff, so I can save it for the specific features of my app. So what I decided to do is use OAuth, the standard that allows sites to cooperate on user-identity. In vastly-condensed summary: OAuth allows different applications to share identity information based on shared keys. When you got to a site and see “Login with Facebook”, and click that, here’s what happens:

  • The site formats a link to the identity provide – in this case Facebook – that includes a signature. The signature is a long string of data created by processing some input with a secret key.
  • The user’s browser is sent to page hosted by Facebook. Behind the scenes Facebook checks the signature, using its own copy of the secret key. Then it asks you, “App such-and-such wants access t your email address, etc. You good with that?”
  • Assuming you click “Yes”, Facebook re-directs back top the original site, including its own signed and encrypted data. because that data was  created, once again,  with the same secret key, the app can read it and find your user-name, along with whatever other things you may have approved.

That’s the theory. Now in practice I want to have such a “Login with Facebook:” button on my site. To do that I do what most developers do: Google “rails facebook oauth login”. As expected the 1st page of results had 3-4 tutorials on how to do just that.

What’s the next step? if I was at work I’d most likely read through the candidate articles, pick the best one, then write out the requirements and steps in a new document, then do that. At home, well, I can only say I have a more carefree attitude. I started following the steps of one tutorial that was based on Omniauth and React-Rails (more on React later) but decided after a hour or so that was too much UX work than I wanted to do just now. So I stopped that path and started a different route using Devise, a Rails-based framework that is a largely pre-made authentication system.

Then the hackery began. I removed the original routes I had added with the 1st version,  then used the Devise utilities to generate new ones. if you’re not familiar with Rails, its ‘generator’ facility is used all the time to create config files, stub files, and much more. For example:

rails generate device:install

will create a complete devise configuration, prompting you for settings along the way. Alas, I couldn’t do that all-in-1 step because of the 1st attempt stuff I had in place, so I set out doing it piecemeal.

In the end it all worked, but the process wasn’t pretty. I did have to spend about an hour trying to resolve an error, where I had only this log text to go on:

F, [6 #8279] FATAL — : [c6e010f3-c1b9-4675-90d6-9bdaeb42c1b5] ArgumentError (wrong number of arguments (given 0, expected 1)):
F, [7 #8279] FATAL — : [c6e010f3-c1b9-4675-90d6-9bdaeb42c1b5] app/models/user.rb:19:in `from_omniauth'[ 

This was one of those that looks specific to the problem – line 19 in file user.rb is messed up, right? – but actually did not explain anything. I tried different things, to no avail. Finally I brute force rescued the exception and printed the “real” stack trace, which was:

F, [5 #8280] ERROR — : [7120f455-99a1-4427-922c-053742c6194d] wrong number of arguments (given 0, expected 1)
F, [6 #8280] ERROR — : [7120f455-99a1-4427-922c-053742c6194d] /app/vendor/bundle/ruby/2.5.0/gems/devise-4.5.0/lib/devise/models/database_authenticatable.rb:166:in `password_digest’/

So the crash wasn’t in my code, it was in the Devise framework. The problem turned out to be this: I created my original user-model to use a Rails option has_secure_password. This requires a database column and model-attribute password_digest. However the Devise framework adds its *own* method named password_digest that takes 1 argument. The fix: remove has_secure_password and the password_digest column.

So there it is. If you’re of a mind you can Try the FB Login Demo here.

My closing thought … software frameworks, like cars, are things that people build and because of that you’d think we know everything about them. Well, we don’t. The picture below captures this thought:


Next time: SM Geeking takes on user-interface. Systems architect that I am, comedy is guaranteed. Don’t miss it!

Categories: SM Geeking, Technology

Saturday Morning Geeking: And So It Begins

August 25, 2018 Comments off

Been quite some time I posted anything here. Anyway I’ve started work on a personal coding project and it occurred to me might be useful / fun / get-something-out-of-my-yearly-Wordpress-subscription to write about how the project progresses. Finally, there’s the (probably vain) hope that starting a thread about the project will induce me to keep working the project. And hope is a fundamental aspect of programming, as anyone who has ever deployed to production can tell you, so here goes …

What is the project about? 2 things: My wife Kim (String-Or-Nothing) is an expert in textile arts like embroidery and knitting. Way, way back in the day I did a site for her,, that was a searchable catalog of yarn reviews. The data for that site is long-since sold, but we’ve often chatted about doing another textiles-related project. The second part comes from me recently taking a seminar at Google Cambridge where Google folks presented their latest cloud services and APIs. The machine-learning stuff got me thinking, and looping back to the textile-arts thing, I thought maybe there’s a fun learning opportunity here. So the overall goal of the project is to use Google Cloud and their APIs to make a site for some textile thing, that also uses machine-learning. I know you all thought that was were this was going from the start, right?

What do you need to start such a thing? past few years I’ve been doing a lot of Ruby on Rails, so that’s going to be my main framework. And I said I wanted to use Google Cloud Platform; you get an  account with $300 credit and access to bags ‘o APIs. However, while tis all well and good to ordain yours tools and your platform, getting the twain to meet is another matter. Google has lots of ways to deploy and run stuff: App Engine, Kubernetes, and Compute Engine; here’s an overview for using these with Rails.

Scanning through the options, I wasn’t super-enthused by any of them. Well, as most coders will tell you, you Google enough you’ll find an answer. the answer I found is called Nanobox. Billed as “PaaS V2” it struck me as not unlike Heroku, a PaaS I was familiar with from my last job. This tutorial, on using Nanobox to deploy a Rails app to Google Cloud I was able to read in about 3 mins. In my experience that means I could probably complete and verify the actual steps in about 3 hours. Anyway what Nanobox does is it layers on Google Compute Engine (an IaaS service similar to AWS EC2) a deployment model that allows you – or , me – to de isolated from details of what VMs, what storage, what load-balancers, etc. are needed for your app. Well, I am all about isolation, so at about 10:30 I started in …

Long story short – it worked! The only hitch was, while I created a role for Nanobox to use that had all needed Compute Engine permissions (it had to create a lot of stuff on my behalf), I hadn’t enabled the Compute Engine API in my account. It in fact took a little digging to determine that was the root cause of stuff not working. Well, after fixing that Nanobox deployed “all the things” as we say and my Hello world app was running.

Next time … the wonders of Facebook plus OmniAuth. Booyah!

Categories: SM Geeking, Technology

Looking into the Sun

June 13, 2015 Comments off

Electricity non-bill

I shared some info on this on Facebook.  Last year Kim and I decided we wanted to do solar photovoltaic on our home.  We knew we had a nice, south-facing open roof, it seemed big enough, and we all see fairly frequently articles on how cost of solar is dropping, so we took the plunge and started looking at options.

In our town there are many people with solar; I can see 1 such home from my back porch, and SF writer acquaintance of mine Jeff Carver also has a solar system.  Asking about online I saw that there were two active solar installers used by people in Arlington, one of which is Sunbug Solar.  Anyway I contacted Sunbug, the other outfit, and yet a 3rd, state-wide installer I found online.  The other outfit never got back to me, and bachelor #3 seemed technically not very savvy, so I went with Sunbug.

What do I mean by “technically not very savvy”?  I’m no expert in solar systems, but I can use Google, and I know that there are different grades of panel with different efficiencies, and that there are different ways of  gathering the DC output of the panels and turning it into AC, which is what your house needs.  The non-savvy solar people could not answer a single question, they had a set system they were pitching me, take it or leave it.  Meanwhile the folks at Sunbug seemed to like talking about this stuff – were excited, even – and that made the decision to go with them very easy.

The system I arrived at with Sunbug has 24 SunPower 327W panels. This means that under ideal conditions the system can deliver 7.85 kW of power.  Of course conditions are never perfect, and the sun don’t shine 24 x 7.  Here’s what production looks like on a day of typical sun:


Power generation reaches close to peak at about 10 am and stays there 3:30 pm or so, then drops.  The highest output I yet have achieved is 7 kW.

Anyway the system makes more electricity than I use – thus my negative electric bill for last 3 months.  I may not stay negative all through the summer – in the hot months I run dehumidifiers in my basement and they draw considerable power.

Of course all this is not free.  The system, fully installed, cost just under $39,000.  But right off the bat you get a Massachusetts rebate of $1,250, and a federal tax credit (not deduction) of 30% of your costs, plus a $1,000 Mass State tax credit.  All this put the upfront cost at about $25k.  But there’s more!  Massachusetts supports SRECs or Solar Renewable Energy Credits.  In brief outline, SRECs work this way: Different states want to encourage use of solar.  They therefore require utilities to show a proportion of their output comes from solar.  Utilities can do the generation on their own and meet the regulatory requirement that way, or they can buy from me the right to put forth my solar generation as credit towards their obligations.  SRECs are traded in a market like commodities and their prices will fluctuate based on plain ‘ol supply and demand.  Essentially utilities pay me to generate my own electricity by solar.

Bottom-line: Even with the minimum forecast prices for SRECs, my capital costs for the solar system will be recouped in 6 years.  For the 24 forecast years of system life after that, it is free electricity, no electric bills, and maybe even a small surplus.

Certainly this won’t be for everyone.  6 years seems like a short time to me but it may be an eternity to you.  And as fun as is is to gloat over a $0 electricity bill, you may have other more pressing needs for your money.  Finally be aware there’s other ways to get into solar than owning the whole show, like leasing the system.

In the end, panels or no, we all need sunshine, sometime.  I’ll leave you with The Soggy Bottom Boys, till next time …

Categories: Technology Tags: ,

You keep using that word …

April 4, 2015 1 comment

Master swordsman (not strategist) Inigo Montoya

And, what is the word?  No, not inconceivable – the word I have in mind is strategy.

Working in software products of course I have heard “strategy” in one context or another on a daily basis 20 years of more, and now as a product manager I hear it even more, if such a thing is possible.  However what the vast majority of self-styled strategists are really talking about is just features, like “Our strategy is to have web-based something-or-other”, or “Our strategy is to use middleware to achieve this-or-that”.  These kinds of statements are not strategy, they are just features or architectures.

What is strategy?  Among the things that stuck with me from my time in B-school at Babson was a statement from a professor (a former partner at Bain & Co.) answering that very question.  He said:

Strategy is: Where do you play? and How do you win?


“Where you play” is your target segment.  If you are not targeting some specific thing, you already don’t have a strategy.  Certainly the very biggest players in some industries can address really big and wide markets, but even the obvious examples – like Apple – use some targeting.  If asked about the target market for Apple I bet a lot of people would answer, “Everybody”.  Not true.  Apple targets higher-income consumers, and adapts for sub-markets in that group, like convenience-oriented multi-tasking men age 25-55, or family-oriented women age 20-40 who use technology to stay connected with friends and family.  I think segmenting is in fact even more important in the business software world.  I often hear vendors – my own employer included – saying things like “We sell to the biggest enterprises” or “We aim at the mid-market”.  These are probably true statements but they’re not helpful.  All business have specific problems inherent to their place in their market – they need to sell faster, or need to communicate with more customers, or need higher manufacturing efficiency, things of that nature.  If the benefit you provide is too generic and doesn’t address a clear problem and pressing problem, then you are a nice-to-have, not a must-have … and, nice-to-haves finish last.

“How do you win?” is a bigger question than most people think.  Many people believe winning is solely about better features: my light bulb lasts longer than the competition, my body-spray smells better, my car goes faster, my collaboration is more collaborative, stuff like that.  But think – Why are there so many examples of outwardly inferior products dominating their markets?  In my own industry I think the most telling example is Microsoft Sharepoint.  Now I can’t say Sharepoint is especially inferior; the product has a 12 year history after all and has seen a lot of improvement in its time.  But when Sharepoint came out it was not especially innovative and even today is criticized for having lousy administration, being slow and unwieldy, and for promoting “document graveyard” styles of collaboration.  For all that, Sharepoint apparently drives $2B of revenue a year for Microsoft.  How can something so bad be so successful?

Lots of reasons, actually.  A big one is network effects. Lots of people have Windows, lots of people use Windows Server, lots of people develop for Microsoft systems … all of this creates an ecosystem where technology buyers are likely to know about Sharepoint or know someone who knows.  From this they get confidence that the Sharepoint bet is a good one.

Next is ease of acquisition.  Sharepoint is easy to buy – just an option in your per-user Windows licensing – and easy to deploy – it’s a standard Windows server like all Windows services.  This short time to value goes a long way towards easing concerns the customer might have about not getting the ideal solution, from a features perspective.

Finally think about Sharepoint’s feature-gaps – real or imagined – as opportunities and not liabilities.  Enabled by the network-effect and Sharepoint’s  ease of acquisition/deployment, there is a large after-market of ISVs who offer products and services to augment Sharepoint or address its shortcomings.  Microsoft claims over 700,00 developers write for Sharepoint.  That number is probably too high, but there’s no question there are 1000s of Sharepoint partner vendors and 100s of solutions for the platform.

Network effects; Ease of acquisition; Developer ecosystem .. almost like they planned this, right?

Anyway my point is not that Sharepoint is some great thing.  In fact I see it as just sitting there waiting to get bumped off, the way Wordstar was bumped off by WordPerfect, and WordPerfect was bumped off by Word.  The point is, Sharepoint actually has a strategy and features are only one part of it.

Anyway, happy to talk to you about strategy.  Just be aware before you come by there’s a 2-question quiz: Where do you play? and How do you win?  If you don’t pass the quiz I may send you to this master for remedial training:

Bugs studies "stragety"

Another Opening, Another Show

March 22, 2015 Comments off

Enterprise Connect 2015

In my job as a Product Manager I find myself doing a lot more travel than when I was in engineering.  Been to three trade shows already this year, IBM’s ConnectED in January, Team Polycom in February, and just this past week, Enterprise Connect.  All three were in Orlando, FL.  If you don’t know it, in addition to being the promised land for lovers of all-things Disney, Orlando hosts 100s of conferences and trade-shows each year, ranging from the tech-oriented shows that I attend, to shows like Snaxpo, “The world’s largest, most comprehensive trade show devoted exclusively to the international snack food industry”, where you can attends sessions like : The State of Snacking: Finding an Identity in a Rapidly-Changing World; and shows like the International Fly Tackle Dealer Show, “the largest international gathering of fly fishing manufacturers, retailers, sales reps, media and fly fishing organizations in the world”.  I’ll leave it to the reader to imagine the result if only these two shows could join forces.

Back to Enterprise Connect.  This show is about unified communications in all its forms.  In the past the main topics at EC Shows have been the core technology – how do things work – and to some extent, interoperability – for example, how does video from company A talk to video from company B?  This year’s show had a distinct collaboration focus, however, with a strong emphasis on solutions that are easy to use, highly mobile, and lead to fast, straight-forward benefits.  Taking their cue from “over the top” applications like WhatsApp and #Slack, UC leaders Cisco and Unify introduced their Spark and Circuit offerings respectively – both being team-oriented chat, meeting and content-sharing apps, all with a social flavor.  So one of the big takeaways was, it’s not about ‘speeds and feeds” anymore, it’s about putting tools in the hands of users that they control and can use to get work done quickly and easily.  For my own product, IBM Sametime, this is a pretty timely message – hopefully we can bring together some of the concepts we’ve been brewing to not only equal these first-movers but to surpass them.

Of course one of the charms – such as they are – of trade shows is swag.  Tramping the exhibitor hall you will see stalwarts carrying show-bags loaded down with everything from pens to stress-balls to lightsabers.  But the best time to go swag hunting is  when the exhibitors’ hall closes down, because everyone want to pack up and ship back as little as possible.  Using this strategy my friend and colleague Karl scored some cool loot from Logitech, including a BCC950 Conference Cam:Karl and his swag

Tradeshow season is winding down, till things start up again in early Fall.  Hopefully by then I’ll have some product news of my own to pitch – assuming of course I can pass up that innovative snack foods-fly fishing tie in …

Winter Streaming

February 1, 2015 Comments off

Windows Media CenterWay back in ‘06 I setup a home DVR based on BeyondTV, a pretty nicely done Windows DVR app.  That was long, long ago, but frankly we had no reason to change, so we just kept on time-shifting by doing recordings through a tuner card and our ancient Comcast cable box.

But for all things there is a time and for the old DVR, that time has come.  I wanted to do streaming, and  I wanted to cut my costs with Comcast, so I set out to build a new rig to replace the old.  A few hours on trusty  and I had the right list of components:

  • MSI A78M-E35 Motherboard
  • AMD A8-5500 Trinity Quad-Core 3.2GHz FM2 65W Desktop APU with DirectX 11 Graphics
  • SILVERSTONE Black Aluminum / Steel ML04B Micro ATX Media Center / HTPC Case
  • SILVERSTONE Strider Plus ST50F-P 500W ATX PS
  • Scythe SCSK-1100 100mm Shuriken Rev. B 3 Heat Pipes CPU Cooler
  • Rosewill RHRC-11002 Windows 7 Certified MCE IR Remote Controller
  • Seagate Hybrid Drive ST1000DX001 1TB MLC/8GB 64MB Cache SATA 6.0Gb/s
  • ASUS Black Blu-ray Drive SATA Model BC-12B1ST
  • SiliconDust HDHR3-CC HDHomeRun PRIME digital tuner

Neat things … first of all these AMD combined CPU/GPU chips seem cool to me, literally and figuratively.  No graphics card needed, the CPU has one built in.  With 65W power, the whole thing draws little power.  The Scythe Shuriken cooler is a low-profile unit, fits just right in the case and is extremely quiet.  The Seagate drive … 1 TB and close to SSD speeds, for $80; what’s not to like?

Case and power supply are from Silverstone.  I wanted to get a fairly small case to fit in my TV stand and the Silverstone fits that bill.  The inside setup is tight, though, so make sure you get a PS as small as the Strider.

The thing that makes it all work is the HDHomeRun PRIME from SiliconDust.  It was with some trepidation I took my 2 old Comcast cable boxes and headed for their service center.  Expecting an interrogation, instead in 5 mins and with no hassle I had traded in the boxes for a cable card, a way to get authenticated content from your cable provider.  Back at home, plugged the HDHomeRun onto my home network, plugged the cable card into the HDHomeRun and, after a few short calls to Comcast activation, voila!  I now have 3 – count ‘em, 3! – digital TV tuners on my network.

The DVR app is Windows Media Center, which is a “free” part of Win 7 Ultimate.  This of course is what put BeyondTV out of the personal DVR business.  Still doing the setup to WMC, like making our recording rules.  And while I can watch all our old shows in WMC, the UI for searching through them frankly sucks.  One thing that was built in to BeyondTV was compression and commercial-skips.  Now with WMC I need an add on like DVRMSToolbox.

Lastly, with this new box I finally have a Blu-ray player.  First disk to get: Blade Runner 30th Anniversary Collectors Edition.  DVRs: Like any other machine, either a benefit, or a hazard …

Categories: Technology