Showing posts with label software. Show all posts
Showing posts with label software. Show all posts

Tuesday, February 24, 2026

The Kangaroo Problem

The test fleet had been taken to Australia the previous week
My colleagues, two cubes over, were all aflutter, I asked, "What gives?"
It was the kangaroo problem, I was told. I was rather bemused
For it seems that the autonomous vehicles were rather confused

You see, they had come across some of those long eared creatures
Beasts of burden, sporting those unmistakable features
But they were a new breed in their eyes, the term of art, unknown objects
Simply put, the recognition engine wasn't able to easily detect
Something about the gait and motion of the kangaroos they encountered
The road less traveled, in other words, had left the cars flustered

So now the data scientists were looking for more training data
In a bid to augment the intelligence of the onboard sensors
Scouring National Geographic and YouTube
  to update their detection algorithms
Loading up hours of videos of marsupials
  to finetune the classification schemes


kangaroo-bad-child-book-of-beasts-hilaire-belloc-



Why did the chicken cross the road?
 Are you blind? It was a kangaroo
Consider, if you will, when a large object starts moving towards you
It seemed to me that the nature of the calculation was rather clear
That it shouldn't matter whether it was a kangaroo or a drunken deer

That any human driver out of caution would seek to avoid collision
Evasive action was clearly called for in this kind of situation
No matter how loping its gait, I'd hope, or how eccentric its motion
Avoid impact and ask questions later, was surely the solution

In this fraught scenario of exigency
 there'd be no time for semantics
Boffins, instead, were bent on reducing things
  down to matters of semiotics
When ontologies raise their specter,
 I rather fear you might be losing the plot
Meanwhile, over their shoulders,
  I saw the visualizations, the bounding boxes
True, they spoke at some length about the determinants
 of stopping distance
At the back of my mind, I recalled the wisdom
 of buying collision insurance


the chickens of berkeley - call them free range



As to the tangible limitations of this artificial intelligence
How to teach the ghost in the machine to learn how to sense
To move beyond the basics of calculating velocity and acceleration
Plotting feasible trajectories while being mindful of sensor calibration
Lessons in obstacle avoidance, the perils of synthesized perception
A panoply of newfangled electronic equipment: cameras, radar, lidar
A catalog of known objects: car, truck, pedestrian, guardrail or barrier
Even in this hostile environment, prudence, protect the least of us
Rodent or marsupial was beside the point, let alone a desert fox
Surely a safety policy would be that you shouldn't hit the bus

The real world is highly unstructured,
  one can hardly play fast and loose
Object identity is rather academic,
 whether horse, camel, donkey or moose
On a grand tour of Mongolia,
 you might run into a herd of cashmere goats
The prime imperative of driving on the road:
  active safety foremost

The state of the art, then, of machine learning is no great panacea
Expect the unexpected, deal gracefully with chaos and disorder
What with near misses or close encounters in Peru with errant llama
Let alone the outrageous daily scenes you meet on an African street
Routine maintenance, force majeure, life is a veritable bestiary
A human marketplace replete with vibrant textures and shapes
The kangaroo problem was the tip of an iceberg of category mistakes


sundry beasts



...


Activity, aflutter, what strange creature is this?
Elliptical motion, elusive, proudly prominent proboscis
Apt to be misconstrued, roaming, bounding without effort
Near collision, operator intervention, he filed the incident report
In the aftermath, then, the root cause analysis
Prompting among the boffins an identity crisis


the rhinoceros



Kangaroo Problem, a playlist


A autonomous soundtrack for this note. Drive safely. (spotify version) ...

This entry on failure modes is part of the Toli Technology Series

...

Cultural Sensitivity in Technology is my perennial theme; everything is local and sensor calibration is paramount...

File under: , , , , , , , , , , , , ,

Writing log. Concept March 2018. December 14, 2022

Tuesday, August 12, 2025

Sensor Calibration

The problem is often couched as one of recognition
The difficulty, as it were, of sensor calibration
For if you can't measure a signal as a matter of first principle
If you can't detect accurately, you might as well be invisible

The auto-focus systems in cameras that can't detect those darker than blue
The pulse oximeters giving false hope - the all clear, to those with a darker hue
Training data, darker skin tones - unusual, light exposure
Biometrics, facial recognition, fingerprint sensors

Architectures of participation and control
Resigned to playing the tenuous outsider role
In this rigged game of life (and death) with ever changing rules
Arbitrary boundaries, when lines are drawn, borders can be cruel

For those excluded from the system, then, a matter of quiet advocacy
A liberation struggle of sorts, forever teaching others how to see
File under the banner of cultural sensitivity in technology
Sensor calibration and relief from the burden of invisibility


disassembled


Sensor Calibration, a playlist


A soundtrack for this note, fodder for sensitive souls (spotify version)

See previously Cultural Sensitivity in Technology and Empire State of Mind

File under: , , , , , , , , , , , , , , , , , ,

Writing log: September 21, 2022

Tuesday, February 27, 2024

Root Cause Analysis

Time for the post mortem, as you know, some take it seriously
The need to revisit, the urge to explain what happened previously
For an ounce of prevention is said to be worth a pound of cure
Let's get to the bottom of things and figure out the root cause

Oftentimes it's a simple mistake, a moment of inattention
Or sometimes it's really just idle exploration
One minute you wonder, what does this button do?
Then the thing happens that you can't recant
Oops, you realize you just shut down the power plant

Human fallibility tends to be the root cause

Ah right, power. It's quite fitting in this era of modernity
That one can't sing too highly of the virtues of Electricity
So essential, we almost always overlook this august substance
We only rue its wonder when confronted by its absence
And now we've lost power and everything must stop
Oops, lights out. In Ghana we call it dumsor

Power failures are prime candidates for the root cause

The next affliction, sadly, is all too common
Like ants, human beings just like to burrow
When in a mad rush to lay down some pipes, it's nigh inevitable
So busy that we never checked to see what could be an obstacle
Dig: bureaucracy got in the way, they were moving too slow
Oops, the contractor cut the critical cable with his backhoe

All too often, cable cuts tend to be the root cause

Things fall apart, they say,
   equipment sputters, machines fail
They blow hot and cold, or crack when used,
   there's wear and tear
Material scientists make a roaring trade
   as do structural engineers
That, sadly, alchemists never overcame nature's challenge
   is the lesson learned
Oops, the widget broke,
   a reminder that no condition is permanent

In this industrial age, hardware failures are a likely root cause

Sometimes you're just too popular,
   so crowded no one can get in or breathe
Congestion is the operative word,
   in matters of scale, a crowd changes things
Your service is the flavor of the month,
   and now you've become essential
Oops, you're completely unprepared for when you go viral

Woe is me, lack of capacity is frequently the root cause

And then we come to the bad actors,
   forever on the attack
Always probing for an opening,
   for vulnerabilities in your stack
And that's even before we consider
   the gremlins and parasites
Iconoclastic beasts with distinctive manners
   and singular appetites
Every complex ecosystem in history
   has had to deal with grifters
Oops, your hospital is held to ransom
   by a band of sneaky hackers

Always protect yourself, a lapse in security is invariably the root cause

There's more in this vein,
   mankind has never built a system without error
From the Tower of Babel to that fancy car,
   or even that blasted word processor
The raw materials of life,
   whether it's the design or the initial conception
Imposing one's will,
   it might be a flaw in the ultimate implementation

You probably have your own experience and area of expertise
Your own rules of thumb about these puzzling mysteries
Let me tell you something
   from my profession of software engineer
If you only knew,
   to defend a system in depth is an exercise in fear
How close we come to catastrophe,
   partial or complete, every day
Trust me, you really don't want to see how the sausage is made

Now one could argue about the order
   of this short list of failure modes
It is only in retrospect that one is truly able to diagnose
The human burden is to keep moving
   in the face of systemic error
To mitigate the worst,
   to build the fail-safes and systematic procedures

Spare a thought for the moron in a hurry,
   for one day it could be you
That, through omission or commision,
   will be blamed for the miscue
We haven't scratched the surface
   of how much the human factor has an impact
Fall back to folk wisdom,
   suffice to say that curiosity killed the cat

And what of the wider world,
   say failed love affairs, or even wars?
It's only human to search for simple answers
   and the root cause
Our prophets and philosophers have long emphasized
   moral suasion and the golden rule
You could do hardly do worse than social living
   and the mosquito principle

Focus on best practices, usability, and layers of protection
Try to put a process in place and make it official!
Make sure that it takes many, many big red buttons
   to launch that nuclear missile
If there's any moral to this tall tale of root cause analysis
Take heed, and wherever possible, make use of the checklists


wide load coming through


After
  • How Complex Systems Fail (Being a Short Treatise on the Nature of Failure; How Failure is Evaluated; How Failure is Attributed to Proximate Cause; and the Resulting New Understanding of Patient Safety) by Richard I. Cook
  • a quip about network outages from Sean Donelan

Root Cause, a playlist


A soundtrack for this note (spotify version)
See also: The Dining Philosophers Problem, Resilience and Adaptability, and Version Hell Revisited

This belated entry on failure modes is part of the Toli Technology Series

File under: , , , , , , , , , , , , , , , , , , ,

Writing log: April 3, 2022

Tuesday, November 30, 2021

The Dining Philosophers Problem

The dining philosophers problem is well known in computer science
Dealing with matters of access, it has analogues in our headlines
Humanity's curriculum involves many rituals and traditions
Perhaps, then, it's worth explaining the problem's formulation

The diners that are gathered here today are five in number
Imagine, if you will, your favorite group of philosophers
They are initially presented in a state of silence at the venue
Around a round table, hungry they are, for spaghetti is on the menu

The central conceit is that each philosopher must alternately think and eat
Implicit also is that they are vegetarians or vegans, for there is no meat
The rules of the social game adds the constraint of manners as the main course
That they can only dig into their spaghetti if they have both left and right forks

After a philosopher finishes eating, but before launching into thought,
They must put down both forks to make them available for others.
Forks, in this arrangement, can only be held by one philosopher at a time.
The problem's construction teaches that sharing is caring at mealtime

To add realism to the scenario, we can assume there is an unlimited supply of food
And that our philosophers can eat long past the point that would normally be good
With these core ingredients: philosophers, spaghetti, forks (but no knives)
The problem is meant to illustrate the challenges of living parallel lives

An utter conundrum, this problem when it was presented to me at university
That, while I could discern that it had applications in the study of concurrency,
The problem was going from this set of instructions to designing an architecture
Full disclosure, I damn near failed this course on algorithms and data structures

The enduring challenge, if you think about it, is how to avoid deadlock
The fear is of resource starvation such that the actors find themselves stuck
We want a world in which no philosopher will starve and continue forever
To eat and think deep thoughts; a metaphor, this immortal philosopher

The Last Philosophers

Timing is everything in the choreography of actors
Finding a strategy to manage this human infrastructure
The fundamental issue at hand, the term of art, is mutual exclusion
A stark concept, therein lies the difficulty with the algorithm

The conventional solution involves a resource hierarchy
I found it quite unfair because it clearly lacks neutrality
But it can be proven to work, if one heeds the instructions and laws
It applies an ordering to the distribution of shared resources

Another strategy that has been advanced is arbitration
This one I tried out, as I'm a firm believer in conversation
Once you designate a mediator, and open yourself up to abide by their resolution,
As the song goes, it takes behavior to get along, diplomacy can be the solution

The philosophical issues are many with middlemen, think of Caesar's tax collectors
And of the oligarchs and monopolists who insert themselves as toll collectors
Who are the designers of these systems in humanity's curriculum?
Who gets to make the rules? And who pays soul insurance premiums?

Game theory can come into play, think of the prisoner's dilemma
The shortest path to success might be to seize resources - state capture
Write the ruler's rules, and steal power like a conqueror
Rehearse a coup drill following the lead of many a dictator

I found that the problem had all the makings of a cautionary fable
Earlier, you might recall, I held my fire at that philosopher's table
Where rage, and its contemporary uses, were the bone of contention
'Twas decidedly, I'd explained, a case of normalcy prohibition

I had been thinking about this modernity of parallel lives
Where some have the great privilege of their insatiable appetites
A state of the world in which no progress is possible
We would do well to study the Mosquito Principle

equality rosewood park

See previously:

The Dining Philosophers Problem, a playlist


A soundtrack for this treatise, bookended by the great divas (spotify version)
...

Timing is everything
Observers are worried

File under: , , , , , , , , , , , , , , ,

Writing log: March 28, 2021

Saturday, April 03, 2021

Empire State of Mind

A memory. An open day at the Electrical Engineering department at Imperial College for accepted candidates, the professors wanted to demonstrate their new face recognition software to the group. I demurred (shyness), but they insisted that I be the volunteer.

So I sat and watched for 15 minutes as nothing worked. "Smile", asked the graduate students. "Frown", asked the professors. Same result: no detection. Others were summoned. Invisible man.

It's a minor point, but I can't forget the sheepish grins. As I told the professors and their harried students: "You probably didn't train your algorithms much with many faces like mine."

Cultural sensitivity in technology is one of my perennial themes. And it's hard work even if you acknowledge your blind spots. The anecdotal failures continue to pile up. What was true back in 1991 is much the same in 2021, software and hardware are far more sophisticated and performant but face the same blindspots (provenance of training data, applicability to real world scenarios, ethical framing etc.)

The challenge for software engineering - which is still a craft, is to move beyond curve-fitting phrenology (and Deadwood) into its industrial revolution.

Sidenote: recruiters these days are all "big data, machine learning, cloud yada yada". Buzzword fatigue is an occupational hazard.

I miss the great mass amateurization and view source ethic of early web development and yet the developer tools and frameworks these days almost feel like a golden age is within grasp.

Obligatory citations:

Incidentally, Imperial College was the venue of my worst interviewing experience (and there have been many) - the low point of which was walking past the open door as I left the interview, and walking straight into the wall. This was after having flubbed almost every question I'd been asked.

The laughs and looks exchanged by the professor and the secretary as I turned around, shuffled back muttering an apology (why?) as I rubbed my sore head and headed out the door. Even English reserve and politeness could not deal with my Buster Keaton imitation.

I was admitted to Imperial College a week later.

I occasionally regret not having gone to Imperial or Cambridge for university. Without a doubt, I would be a stronger engineer and yet I suspect the eclectic toli monger you see before you would be repressed.

Guide to Lagos 1975 005 3m 191 revolutionary  copier

Imperial Visions, a playlist


A soundtrack for this note (spotify version). I've been neglecting the Toli Technology Series for years now, albeit I occasionally make a few gnomic pronouncements on Twitter, consider this some throat clearing to prompt a reboot.

File under: , , , , , , , , , ,

Wednesday, July 01, 2020

Version Hell Revisited

A surprisingly large proportion of the issues a working software engineer deals with on a daily basis turn out to be cultural. My theory is that this is because software ultimately amounts to people problems, and that it's all about coordination costs and human factors, as I've written about previously. This is not to say that we don't deal with the hard problems, but perhaps the "soft" in software hints at the lingering craft aspect even as we try to escape from Deadwood and leap into our industrial revolution.

This is one reason that I've found that, similarly, a large proportion of the best software engineers I've encountered in my now 25 years experience have not been traditional computer scientists. The linguists, historians and even that rare anthropologist, some of whom picked up the profession on the side, or out of expedience as the web has allowed, have been the real dark matter of technology. The web with its radical simplicity, has allowed mass amateurization to prevail. Now mind you, you do need your stereotypical straight ahead just-the-facts engineers with blinkered and relentless nerdy application, and, increasingly as software becomes more professionalized, the guilds and dark factory mills have started appearing. But hold that thought for now, I have another story to tell, indeed you may call it a technology folktale.

Tower of Babel

I came across this memo written a long, long time ago, in a far faraway land, (to be truthful, it was a Friday afternoon and I was fed up). Certain names have been changed to protect the guilty, and don't assume the anachronistic references mean that it is of recent vintage. Consider it perhaps a glimpse at the way the software sausage is made and we all know the scandal of slaughterhouses although we now call them meatpacking plants in polite society.

The context is some wrangling where at least 6 teams were pointing fingers at each other about who was responsible for uploading some tools that The Company was using. The flow of data through the system had at length been established, and it was now a coordination problem more than a design and architecture problem. The problem was that different teams were responsible for different components. The email chain had been playing out for months it seemed. I was stuck in the middle making arbitrary decisions mainly by virtue of having written a core piece of the system. I kept asking and everyone kept dodging my increasingly pointed questions. And so I wrote the following:

Previously in the same vein: Version Hell


The Memo


From: Koranteng@Toli
To: A long list of interested parties
Date: Friday afternoon, a long, long time ago
Subject: Toolchain versioning Re: provide version number Re: Signing Re: [snip]

I want to tease out the various strands because I'm finding it hard to serve the competing masters here.

Let me pitch it as a folktale, it's a pandemic and we all need comforting narratives.

Master Johnson, my director, would be paraphrased as follows:

Our current process is the moral equivalent of taking a USB stick dropped by our Vendor in our parking lot, and placing that software in our august data centers to sign our Crown Jewels. Now this may be what we're reduced to, but don't blindly use any old tools we are given, let's at least make sure that we track and bless known versions of this toolchain.

There were stronger words said at the outset back when we had our deep dive on our last integration project late last year.

Master Security Team pitched in, again paraphrasing...

Well, in this sorry business, we've normally done integrations of these tools for a given year. We're already overtaxed and busy and we burn weekends to get the integration working. But once we've got it working, we've got clean hands. We don't touch it anymore unless there's an error using them. We're not happy with this but ye olde signing tools ultimately come from the Ministry of Information team. We're middlemen here and the Signing and Software Release teams are the ones that integrate these tools into The Company's IT solutions.

Master Ministry of Information Team is also in a pickle. He receives vendor builds and has to produce release builds with the help of Butler Jenkins. These blasted tools are just one piece of the overall puzzle (you should see what else is on his plate). His main requirement is to be able to reliably sign and update this software for the lifetime of The Product, a decades long quest.

His junior sister, Miss Android Team actually works closely with Messers Qualcomm, Broadcom and Intel, and gets periodic updates from Vendor Google who changes signing requirements at a pace of its own choosing, those Mountain View people move at the speed of the web.

I'll omit the other players who are also similarly overtaxed, although I should make special mention of Mistress Software Release Team who actually owns the official release process and is always playing catch up integrating with Information and with Signing and other things I'm not even aware of.

Tower of Babel

Meanwhile I'm sitting like Ananse the Spider tending to my farm in the land of Signing and perhaps you can see the roots of my dilemma:

Each build could have a new version of the dismal signing tools.

Per Master Johnson, I can't blindly just sign with any old version of the Signing tools I am presented with. That man signs off on my annual review, so I cross him at my peril.

Per Mistress Software Release Team, I have a frozen API in place which doesn't specify the toolchain version. In any case, there is a long chain between Android, Information, Software Release to Signing, and the lead time to change things is measured in the cost of "Projects". We are booked for months, nay years ahead and agility is a problem here at The Company - The Company's initiatives on agility and the cloud native adoption notwithstanding.

Anyway my solution, as it is, is that I will support "blessed" versions of the toolchain. All that is left is for someone to upload these versions.

Now I'm stuck in the middle of all this, and so far it has been yours truly that is arbitrarily uploading versions of the toolchain based on what I've seen coming through in our test environment. I actually don't know what is a significant version and I don't really want to be in this loop. Further I am making decisions above my pay grade without any domain knowledge of these dismal signing tools.

The details matter and someone needs to own this and solve my riddle.

Again
  • Who is it that uploads the "blessed" versions of the toolchain to Signing?
  • More fundamentally, who decides what is a blessed version of the toolchain?
I'll end by invoking my friend Sam Ruby's Postulate
The accuracy of metadata is inversely proportional to the square of the distance between the data and the metadata.

I am clearly furthest from the data, so somebody closer needs to make the call. Perhaps I'm reading from the wrong playbook, but I'm merely trying to add value here.

Koranteng
--
Chief Toli Monger
The Company

[snip distressing long chain of emails going back 5 months of people passing the buck]

Tower of Babel

Postscript


I'd like to think that my late Friday email did have the clarifying effect I intended with its visions of Ruby's Postulate and The Tower of Babel. There were certainly calls for action, and immediate action at that. I learned that I had underestimated the extent of the dysfunction at The Company. There were actually at least 8 other teams that I might have added to my folktale, and they each had their own sorry origin story. The list of people inside The Company who I learned had read my missive was impressive and growing.

There were ruffled feathers however. People who should have dealt with the underlying organizational and communication issue were upset that I had revealed it so starkly. Lots of meetings were called. Action items were issued and so forth. I was advised to let others handle things at this stage. I was also reminded of John Kenneth Galbraith writing in The Great Crash of 1929.

... the rite of the meeting which is called not to do business but to do no business...

One of the oldest, most important - and unhappily, one of the least understood - rites in American life.

Men meet together for many reasons in the course of business. They need to instruct or persuade each other. They must agree on a course of action. They find thinking in public more productive or less painful than thinking in private. But there are at least as many reasons for meetings to transact no business. Meetings are held because men seek companionship or, at a minimum, wish to escape the tedium of solitary duties. They yearn for prestige which accrues to the man who presides over meetings, and this leads them to convoke assemblages over which they can preside.

Finally there is the meeting which is called not because there is business to be done, but because it is necessary to create the impression that business is being done. Such meetings are more than a substitute for action. They are widely regarded as action.

Everyone remembers the story of The Emperor's New Clothes, I should note however that Hans Christian Andersen didn't write the sequel about what happened to that little boy and his family six months later when The Authorities could finally deal with them.

Slightly related, the Gambian proverb goes "Words are like bullets, once you release them you can't call them back.

It is said that a prophet is never recognized in his own country and the verdict was still out on if I was to become The Company's John the Baptist. I won't tempt fate and leave it to the historians to make that determination. In closing, I'll again turn to Belloc

It is always a relief to believe what is pleasant, but it is more important to believe what is true.

— Hilaire Belloc

Office Tales


I'd previously pointed to this juxtaposition, a survival guide to life in any workplace

Office life, office politics, the organization man, managing humans, the bad child's book of beasts


Soundtrack for this note



File under: , , , , , , , , , , , , , , , , , , , ,

Sunday, April 26, 2020

The Secret Life of Presentation Pete

I had a golden encounter this covidious afternoon. To wit, I was out in the front yard mowing the lawn with my hand reel mower - I roll that way. I was wearing the face mask The Wife had sewn for me out of my old Hanes undershirts. Mowing was going fine...

Sidenote: I was wearing my Presentation Pete t-shirt from my old Lotus Freelance days that I had found in the box in the garage that we were going to donate to Goodwill, but that, in our covidious era, I decided actually sparked joy. I wore the shirt proudly.

Here's Presentation Pete in his glory

Presentation Pete - Leaping Pete

Here's the t-shirt. Some of my old Lotus folks will remember. This was the kickoff to the Coltrane Release where Lotus went all out to embrace the "World Wide Web". We would implement "Publish to Web" well before Powerpoint got around to it.

Presentation Pete kicks of Lotus's Graphical Products Group 1997 effort

Digression upon a digression: I have a draft of a short story somewhere titled The Secret Life of Presentation Pete. The idea has been percolating for nigh 13 years now - a high concept joint about the inner life of stock photograph characters or something.

Arrgh, it deserved neglect, let's tweet instead.

The Secret Life of Presentation Pete

I wasn't there at his conception - I believe Joanne Meirovitz might have been the mother, however, Presentation Pete had a very inauspicious debut. The scandalous toli would be chronicled by Cringely in an aside in InfoWorld (June 1 1992). Our Bob titled it "Lotus Unenlightened". Call it a youthful indiscretion.

The Adventures of Presentation Pete - Lotus Unenlightend - Cringely Infoworld June 1992

As the story goes,

"Lotus CEO Jim Manzi et al will soon make a public apology for racist images printed on a Freelance demo disk called The Adventures of Presentation Pete. The animated demo was built on an African Safari theme complete with images of white hunters and black tribesmen."

Something along these lines perhaps?

Lions attack the modern traveller

Here's the detail that gets me:

"An African American employee in the Freelance group was offended by the racist image but waited to complain until the disks were already shipping. Lotus will eat 750,000 leftover copies"
The Adventures of Presentation Pete - Lotus Unenlightend - Cringely Infoworld June 1992 (2)

I believe I know who that African American employee was, although I can't remember the name - even as he gave me much shrewd career advice - there weren't many of us darker than blue at Lotus back then (or even now in software). I loved that he waited before pouncing. I still admire the nerve.

I can only imagine the contents of the safari themed disk of The Adventures of Presentation Pete that had to be pulped. I would pay good money for a bootleg of that disk. Surely one of those 750,000 leftover copies still exists? I demand especially to see those African tribesmen.

Scratch that. Here's my artist's rendition of the African safari themed disk of The Adventures of Presentation Pete that had to be pulped. A quarter century later, I still have a copy of Freelance on my laptop.

Presentation Pete - safari pete

Digression: was it a floppy disk or a cd-rom? Freelance's PRZ file format was quite famous for being more efficient than Powerpoint's PPT format and could fit on floppies.

I now understand why there was so much trepidation 6 years later when I brought up the issues I observed when integrating clip art in the Coltrane release. Lotus had been primed for Cultural Sensitivity in Technology

I first met Presentation Pete in his prime when I joined Lotus in 1995. As noted, he had already led a storied life by that young age. He was a natty dresser

Presentation Pete - Natty Dresser Pete

Presentation Pete was passionate about office life. The title in the Freelance clip art chooser read "Hardworking Pete"

Presentation Pete - Hardworking Pete

Still, office life could sometimes be overwhelming for Presentation Pete. Cue the clip art title "Scared Pete":

Presentation Pete - Scared Pete (Office Life)

Presentation Pete was a renaissance man.

Presentation Pete - Renaissance Man Pete

In his Christmas and Santa personas, Presentation Pete was full of zest. He was a fair referee also

Presentation Pete - Santa and Referee Pete

In short, Presentation Pete was a man for all seasons

Presentation Pete - Man for all Seasons Pete

Pete's co-workers loved him. I think one of them, his office wife perhaps, was modeled on Ruth Seltzer who hired me at Lotus. Or perhaps it was her sister. Whatcha think @iustinianus ?

Presentation Pete - Pete's co-workers

Presentation Pete was all about collaboration and groupware, what we now call social software.

Presentation Pete - Collaboration Pete

Pete was a pioneer of remote screen show. You say Zoom, I say Presentation Pete

Presentation Pete - Presenting Remotely

I learned heady lessons about work-life balance under Presentation Pete's tutelage

Presentation Pete - Work Life Balance Pete

The four years we spent together collaborating were the best years of my professional life.

Pete's job was offshored to India once IBM ceded the office suite market to Microsoft circa 1999. Lotus would stagger on as a brand for another decade but the thrill was gone. The remnants of a still-profitable Lotus were finally sold off by IBM in December 2018.

Presentation Pete - Information Superhighway Pete

I helped train Presentation Pete's replacements in India before switching to work on software for the ill-fated Network Computer. Lotus eSuite, remember that? For you young ones, a precursor to Google Suite.

Presentation Pete - Really Remote Presentation Pete

Surfer Pete was one cool cat. Presentation Pete had more than 9 lives.

Presentation Pete 15 - Surfer Pete

Presentation Pete was a man in full, his legend proved to be iconic in software history. Presentation Pete Lives.

Presentation Pete - Leaping Pete

Adapted from some covidious toli

Next in Part II: A Golden Encounter

Previously: The Mosquito Principle

File under: , , , , , , , , , , , , , , , ,

Wednesday, November 18, 2015

Trouble Ticket

A tech support guy (last name: Bundy) sent me an email that started with "Hi Orangutang, Are you able to reboot..."

The Trouble Ticket

Arrgh, broken office phone
Let's file a service request
You prefer the old designation:
A trouble ticket
Ah: musical notification
Open the unread mail
"Hi Orangutang,
Are you able to reboot... ?"
!!?

Oh, hell no.

Memories of childhood taunts
Visions of lynch mobs
His last name: Bundy!
You briefly saw red
At this monkey business
Clicked that Reply button
Far harder than it deserved
The sinews loosened
Keyboard avenger:

Believe me Sir,
I would never have opened
A service request
Had I not tried
Rebooting.
I am curious however
About your rendering
Of my name (below)
Am I to assume
Slips of the Freudian sort? ...

Stop

That furious reply
A firing offense
For you, right after that guy
Don't click Send
Take a deep breath
And a moment to reflect:

"Words are like bullets. When you release them, you can't call them back"
The boy who cried wolf, they didn't cut him any slack
You might well be criticized for a hair trigger tendency
Or unjustly fired for writing the word niggardly

Stew

Then
Just a few minutes later
Chimes sound again
The inbox darkens
Message quoted below
"My spell checker
fouled up your name!
Sorry about that!"
Great catch, I'll say
The mood lightens

Phew

That's clearly better
Don't hold back the nervous laughter
For indeed, would you really rather
Prefer Freud to an errant spell-checker?
Better the benefit of the doubt
Than yet another racial bout

So. Like your three year old daughter has began to say
In that amusing and delightful way
With that high-pitched, nasally voice
It's really the obvious choice:
"Awkward".

You remember incidentally
That you once wrote
That self-same case study
In that note
Titled Cultural Sensitivity in Technology
About this curious artifact of software modernity:
The occasional regret
of auto-correct

You are truly your father's son
You never, ever, jump the gun
"Remember: anger and the African man."
Pragmatism born of painful experience
There's even continuing historical evidence
That lesson of the United States of America
Always defuse tense moods with quiet laughter
And, above all, maintain that calm, level-headed posture

Still, it's really a curious situation
How one responds to real, and potential, provocation
The option is denied of righteous indignation
The fallback civility, a source of frustration.
Your tribe's peculiar daily dilemma:
Better neutered than six feet under.
Or, perhaps, with a little less drama,
In the twilight of this, the age of Obama:
The poorhouse, or staring at ceilinged glass.
Best not to prompt a human resource activity
To be followed undoubtedly with notoriety.
You're a Harvard man, don't be so crass
You don't want to be like that famous professor
A cause célèbre, but branded by some as the aggressor
And even requiring a presidential beer summit.
After all, it's merely a trouble ticket.

Your strategy for the incident report
Never mention it, simply avoid the court.
So. Delete your impertinent second sentence
That premature act of literary vengeance.
But keep the Sir designation
Your passive aggressive intimation
Or, should I say, capitalized rejoinder.
Also, delete the offensive text,
That implied reminder.
You don't want to hear later:
"He's not a team player".

This treacherous modern world to which you belong
The bewilderment in determining right from wrong
But do look him straight in the eye
If, and when, he deigns to come by.
The two of you might well have a laugh one of these days
Replace the veil, return to your mild-mannered ways

The reverse of the coin termed white privilege
That undercurrent, or rather subtext, of repressed rage
It's ugly, and surprisingly close to the surface
Even for you, there's a hint of coiled menace
You think of yourself as above the fray, literally mid-Atlantic
Yet for a moment there, you were about to get very frantic.

While you wait for your replacement phone
You'll navel-gaze and write a short poem
Choosing a typically idiosyncratic meter
And rhyming scheme, that occasionally peters
Out
And turns to, let's call it, doggerel.
But, hey, that's alright because well:

The resolution to this new trouble ticket:
Incident closed: operator error
A case of an errant spell checker.

"Just because a lizard nods its head, doesn't mean it's happy"
You smile at your rejected naming choice: Mister Bundy

Soundtrack for this note

Also: reboot a phone?

masks from Maame

Steps to reproduce
- Clean install of Mozilla Thunderbird (English)
- Compose an email with the name of the chief toli monger in the body
- Check Spelling
Result: Orangutang is suggested as a replacement
Workaround: add said name to the user dictionary
Proposed fix: add said name to the standard dictionary

File under: , , , , , , , , , , , , , , , ,

Tuesday, February 02, 2010

Black Sheep

Every feel unwanted? Ever feel like a pariah? What if your country starts disappearing from the global zeitgeist? When, I wonder, did Ghana start to fade from view? All right, let's get concrete here. Try this on your iPod Touch or iPhone (I was given a first generation iPod touch - now running iPhone OS 3.1.2 - a while back as a kind of consolation prize when my job seemed in doubt - but I shouldn't digress about the pathologies of corporate America). Anyway, where was I? Yes, take your i-something, open the Contacts App, create a new contact and add a new address. Alternatively just try to edit an existing address. Now try to change the country field to Ghana. Note, if you will, the result: Ghana is not in the list of countries. Search under "Africa (Western)" and you'll see nary a trace of Ghana. Heck, look through the entire list of countries and realize that we didn't make the cut. Ghana is not a country in the eyes of Apple.

ipod touch country list bug: Ghana must go

I came across this issue over Christmas when I was home and trying to enter new addresses in this, my conflicted glorified organizer thingimijig. It's just a bug of course, and presumably if I complain loudly enough or write up a bug report against Apple, it will get fixed. Whoever wrote the Contacts app is certainly not trying to whitewash Ghana from history. They just don't have many Ghanaians using iPhones, nor indeed testing the feature hence the omission slipped through the cracks, embarrassing as it may be. Moreover I've been on the other side of the fence, producing software that at times has been seized upon for subtle local insensitivity. I've even written in the past about the cultural difficulties that any piece of technology can elicit so I won't be calling for boycotts or apologia.

But wait, there's more. It seems that Ghana has been disappearing left, right and center from dropdowns and country selection boxes all over the web. I keep coming across this kind of ethnic cleansing in my browsing. Who decided that Ghana must go? It is one thing to be a literal exiled soul, a man of many countries but no home, but it's adding insult to injury to be cast into virtual exile. What gives? Why are form widgets all of a sudden slimming down and discarding Ghana? Why are even these fleeting elements of identity, that pleasing sight of Ghana nestled in between Germany and Gibraltar, being denied me and my countrymen. For example, in the past week I've been trying to buy gift subscriptions to some magazines for my uncles (Economist, Newsweek, New Yorker) and noticed that the online payment processors that these websites use simply don't feature Ghana in the list... go take a look: Gabon, Gambia, Georgia, Germany, Gibraltar. Where did Ghana go?

new yorker country list bug

newsweek country list bug

economist country list bug

I opened an investigation into this onset of web deportations but, first, let me tell a story...

My routine, ever since 1998, has been to spend my Christmas vacation in Ghana. As a fairly dutiful engineer son this means that 24 hours or so of my vacation is spent on tech support. I either bring new computers or coax the parental unit's setup into shape. They've tended to use Windows as their operating system so, as a matter of course, I would install or renew the subscription to Norton anti-virus or some software firewall or other, paying penance to the insecurity of the Microsoft ecosystem. Since 2005 however, I have been unable to renew the subscription with Symantec from Ghana. It's the usual thing, any credit card transaction from a Ghanaian or Nigerian IP address would fail silently with only a cryptic error message. I had a US billing address and yet my transaction would keep getting denied.

After repeated instances of this, I eventually worked out that the payment processor that Symantec uses had declared Ghana a nation non grata. Thus for the past 5 years, I would renew the subscription when I returned to the United States, or by using the corporate VPN (back when I was actually foolish enough to take a work computer with me on vacation) in effect pretending to be in the USA. Sidenote: the other alternative that most Ghanaians take is to simply install bootleg software or some open source or more wallet-friendly package (virtually no one actually pays Microsoft or other vendors for their wares).

Containers: cybercafe

Ghanaians have great difficulty using credit cards, PayPal, Google Checkout and the like. If we take ecommerce as one component of modern global citizenship then we are illegal aliens of sorts, and our participation is marginal at best. While remittances are a major part of our economy, we continue to pay a heavy price in all our financial transactions. Banks, wire transfer and check cashing joints salivate at the profits they make on our backs and yet the kind of routine monetary transactions that any idiot with a credit card can do in the West is a pipe dream.

The major reason of course is that a large amount of 419 scams, advance-fee schemes and outright frauds seem to emanate from our virtual lands. Payment processors tend to filter with a broad brush and their geolocation heuristics often tar almost all IP ranges from Ghana. The same story goes with spam filtering and some ISPs are known to ban entire countries arbitrarily as mitigation measure (I've seen this applied to countries like Russia, China, Korea). I have lots of Nigerian friends and their emails are often consigned to the spam folder even in GMail whose spam filtering capabilities seem to be the most discriminating. I can recall a member of the security services in Ghana quipping that two thirds of the 419 scams in the world could be stopped if police could simply round up everybody at Busy Internet and other internet cafes in Accra at the right hour. Thankfully that broad brush hasn't been applied - think of the rule of law, false positives, and Minority Report a priori censorship. Still, the actions of an unruly minority are making life difficult for us all.

Busy Internet

What is most galling now is that even our Nigerian brethren in e-criminality are on the list of countries in the above 4 cases. We have the workings of a different bug. With tongue firmly in cheek, I would say that Ghana is uniquely blacklisted. If you live in America, you expect that you won't see North Korea, Iran, Cuba or the like in your commercial browsing since sanctions and embargos pertain. Why would Ghana be in such august company?

One hypothesis, for the websites at least, is that the bug is at the level of the payment processor: Entrust, or Visa, MasterCard etc. Or perhaps our unreliable postal system is at fault. Another alternative is simply that there is a canned type of widget that is being used around the web. I know how these things work: most programmers cut and paste code when they are developing their sites, I know I do that often enough. A cursory inspection shows that the Condé Nast sites are using the jQuery toolkit, a potential source of the bug, but it could be any of the other popular toolkits, Dojo, YUI, Scriptaculous etc. These are pre-canned form widgets and one can envision that a popular tutorial site or user interface toolkit has the bug and has been widely copied.

But, what about the bug in Apple's iPhone Contacts app, one wonders? That seems like an outlier unless it too was written as a web app using much the same widgets. Does anyone have any theories on the matter?

I won't get into how Orbitz and Expedia have now followed the lead of Travelocity in removing Accra from the list of places you can book travel to - this, even though major airlines like Delta, KLM and British Airways fly there. I know that my small country doesn't warrant much attention, I know my place. But this is different, all I want to do is enter some addresses in my organizer or send my uncles some magazines. Magazines that are ostensibly a dying business won't even let me send my hard earned money to them. Someone help me, I feel like a black sheep.

File under: , , , , , , , , , , , , , , ,

Friday, December 04, 2009

66 Ways to Franco

It was the kind of thing that you found yourself doing in the middle of the night, musing on an idle question born of two of your concerns: musical obsession and software anthropology. Counting the ways to Franco was an excursion into the realm of metadata, matters of syntax, and a contemplation of the hive mind of the web. The initial insomniac impulse was to create a playlist; your search, however, found a surprising 38 variants of the name in your library and you couldn't locate the song that had triggered your nocturnal foraging.

You remembered that at the beginning of the year you only had a couple of his albums in your collection but the music blogs of this world wide web had sprang to life and you'd steadily filled the gaps while reading them. In this golden age of music distribution, all one needs is a vague memory and an internet connection to fulfill one's aural titillation. Let's see, a cursory glance shows that the mp3 collection now stands at 25,494 songs, 186 GB, or 99 days of non-stop music - probably a third of which was acquired over the past year. Now you do still spend a lot on your musical vices, but you can imagine that it is highly unlikely that $8,500 (at iTunes or Amazon pricing) would have left your insubstantial wallet during this Great Recession. No, your collection grew by osmosis. Moving on...

Your count was akin to last year's discussion about the bewildering number of ways people mangle song and artist names. That led to the sight of those Top 100 ways to write Guns N' Roses – Knockin' on Heaven's Door. What a strange glimpse of the musical Tower of Babel we now have. Take a lexical curio like Guns N' Roses (call it typographical eccentricity), add a few apostrophes and you'll realize that the children of Mr Special Character and Mrs Structured Data are blessed ones. This is the minutiae that software people - and that unwashed sub-clan, the database denizens, have to deal with on a regular basis. Whole businesses have been founded on making sense of such messy data. Information retrieval is the general term of art, and metadata, well, metadata is the data about data. It's one of the hard problems in your line of work.

So what do we have then? Through a set of historical accidents over the past decade - notably the piecemeal standardization of ID tags in the mp3 file format, the mp3 file format itself, the rapid adoption of internet led by the web, improvements in storage technologies, the development of new portable music players and the decentralized mass digitization and distribution of music, we can behold the glorious results of a democratic exercise of mass data entry. During this time, millions of ordinary people took to their computers and ripped their cd collections. Millions more downloaded and shared this great social bounty. True, the more prudent laggards waited until there was commercial affirmation and legally sanctioned avenues for their digital music. Throughout, however, this mountain of music had to be labeled.

The inevitable curators came along fairly early on in this process - the online databases, GraceNote and then Freedb, to help automate things and identify the cd once you loaded it on the computer. Their altruism however didn't stem the tide of data entry (someone after all had to have entered it once and we all know how that goes). Offerings like MusicBrainz have emerged in recent years as repositories of high quality music metadata, ostensibly on a mission to bring accuracy and fingerprinting to digital music. The commercial services too now loom large as major distribution points, but they too license their listings from some of these databases, and it shows: errors everywhere. More puzzling is that the record companies haven't been of much help, they too don't pay attention to the details of the names of the artists they supposedly promote, nor indeed the titles of the songs. They, like iTunes and Amazon stores, aren't perfect at information hygiene. You see typos and plain wrong labeling of music. You don't have to take the word of an opinioniated metadata curmudgeon, the proof is in the existence of a vibrant ecosystem of tag editing software, free and even commercial. Imagine that, people pay for a product to help them label their music.

Given that even the big boys don't label their music accurately, it has been a true free-for-all and that's not even taking into account the trend of the past couple of years of digitizing (and sharing) all the lost vinyl. I'll only note that the amount of African music that is being rediscovered is frankly startling. The labour of love of those who find and clean dusty grooves, scan album covers, digitize and share their musical memories is a true surplus for society.

It turns out that all these musical curators and aggregators have only been partially successful. It really is a problem with the human factor. When you have humans doing data entry you'll have errors. When you have on order of millions doing data entry, you'll have large numbers of errors. These glitches appeal to me, truth be told. People label things to remember them and the patterns they use are worthy artifacts. The variants, I'll suggest, are emblematic of both folk memory and the mass creation of semi-structured data. If I could, I'd write an ode to the mp3 tag. In the meantime, I set about to count the ways to Franco.

Last.fm was my weapon of choice - a music recommendation system with attitude. For one, they have been gathering data from all and sundry for years now - they call it audio scrobbling. They gather data about what people listen to, crunch away, and make contextual recommendations. They deal with huge amounts of data and the attendant complexity. One early strategy to work around the inadequacies of ID tags in mp3s was to simply escape from their confines and allow users to tag artists, songs and albums on the website and watch the free-form folksonomie emerge. Web-savvy as they are they organized these musical objects each with its url and wiki page. People like to discuss songs, albums and artists. Few algorithms can handle the notion that Orchestra Baobab recorded two albums in 1975 under the Orchestre Bawobab moniker. You need a human intervention to account for this kind of peculiarity. And so they did. It's a simple application of collective wisdom: watch what users do and organize around it. They can even offer radio stations based on tags. At a certain point also, they tried a fingerprinting technique that would process their users' libraries to allow them to normalize the metadata associated with a piece of music. Taking this further, they can simply ask and allow people to correct spellings or suggest alternatives for artists that performed under different incarnations. Once a critical mass is reached you can automatically apply this feedback to tend to this garden of metadata. This is the business of web scale identifiers.

Franco


And so we come to Franco. Not the fascist Spanish dictator, whose despicable legacy is still paradoxically a touchstone for some American neocons. No. For most Africans, Franco is all you need to say to signify great, pulsing guitar-driven music, rumba, soukous, social commentary and old time good fun. All these are the elements of Franco. It's all the same good, liquid music and great memories of excursions on the dancefloor, a long career spanning four decades. It's been twenty years since François Luambo Makiadi passed away, time enough to count.

And so I counted:

There are at least 66 ways to get to Franco.

I must admit looking at the list gave me pause. How do people remember a musician? How do we remember a piece of music? Only about 9,000 users of last fm seem to listen to Franco and yet here we find world class variety. He appears in 66 different guises to the world if you exclude the 3 obvious mistaggings and misspellings. The labelers in a pool of 1.5 million Guns N' Roses listeners could only mangle that band's spelling 56 ways. What was so special about Franco, I wondered, as I looked at the list? The obvious answer is that much of his music is not available commercially in digital form. Instead, a lot of his listeners are typing up the records and cassettes.

Capitalization concerns surface immediately. Some people like ALL CAPS, others are lower case freaks. That is par for the course in a world where search engines basically ignore case. (Sidenote: looking at the top search trends of the year, it appears that users use lower case in search engines, few bother these days with "Britney Spears" when "britney spears" will do. In this age of mobile phones, it seems that the shift key is being used less). Sidenote: we won't digress onto Camel Case discussions at this stage.

Most people think of Franco as synonymous with the band he founded: OK Jazz. But how do people deal with the abbreviation? How does one spell OK? Is it rather "Ok" or "O.K."? Opinions are varied. The OK Jazz band was so named because they began as the house band in the OK Bar in Leopoldville (now Kinshasa). It should be simple then: Franco & OK Jazz say - assuming you go with no dots.

Matter of punctuation however open up a can of worms; we stray onto typographical concerns, with pronounced eccentricity in the choice of separators. For delimiters, we see dots, semi-colons, slashes, commas and hyphens.

People have different conventions for conjunctions: it's a case of ampersands (&) for the many and fully spelled out for the few.

We have the language issue, the band was named in French so we'd expect "et", but some labelers are English-speakers hence we get a few instances of "and", "with" and "featuring" showing up. Incidentally the folks in the forums at MusicBrainz will regale you with tales about the epic wars over the conventions for dealing with the word "featuring". Briefly, some people spell it out, others contract to "feat" or "feat." - with the punctuation, or even further to "ft.". Suffice to say that it was much like the egg-cracking debate in Gulliver's Travels.

Lest you think that punctuation doesn't matter, let me interject the following anecdote. Tony! Toni! Toné! were named as such in their debut album, "Who?". In later albums, they were called Tony Toni Toné - with the exclamation points removed. Which is the more accurate name for the band I ask? Could you spin a story from the missing exclamation points? Well I'll engage in mindless speculation on this typographical mystery - stay with me. It's obvious: they changed record label and lost the rights to their name (much like The Jackson 5 had to become The Jacksons when they left Motown). They were shrewd in their negotiations and the price they paid was the removal of the exclamation points. The transformation was from 3 ejaculations (those 3 exclamation marks) to a sedate sentence, perhaps indicating a newfound maturity. Truth be told, the music was better without the exclamation histrionics yet it clearly is the same band. For what it's worth, Last fm and Amazon all normalize the name without the exclamation point. Anyway, I won't pursue this tall tale further. Back to Franco and OK Jazz...

The OK Jazz band was an orchestra with a shifting cast - in Congo and much of Africa after the second world war, there was a great flowering of such orchestras as proving grounds and incubators - so you have some renderings going with Orchestre OK Jazz. Again native language comes into play, for the English it's orchestra instead of the French orchestre.

Then there are the nicknames and honorifics. Simply put, Africans love titles. OK Jazz acquired the "Tout Puissant" prefix (almighty, literally all powerful). Franco acquired the appellation, "Grand Maître" (Grandmaster). Add in the grammatical concerns and you expand the choices; is it "le tout puissant" or "son tout puissant", ergo is it "the almighty" or "his almighty"? Le Grand Maître Franco & le T.P.O.K. Jazz perhaps? Franco Luambo Makiadi & OK Jazz? Sometimes also, Franco's full name is spelled out as if to underlie the vastness of his catalog. And when doing this, the name order varies.

At its most extravagant you'd get something like Le Grand Maitre Franco Luambo Makiadi & Le Tout Puissant Orchestre OK Jazz.

Even then, would you contract to TPOK Jazz? Or T.P. OK Jazz? Or T.P. O.K. Jazz? The plot thickens.

With such a long career, there was inevitably a shifting of focus; on some albums it was the band that was the lead, on others it was Franco who took the spotlight, and at other times other members took center stage (Sam Mangwana, Vicky, Taby Ley Rochereau and so forth). The names varied accordingly. It was all Franco, and it was all good, if you don't mind my saying. Trust me, pick almost anything he recorded and you'll be a happy camper.

But to get to my point. The music I'd been looking for at the midnight hour was the following album:

Franco et le T.P. OK Jazz sing for Mobutu


Over his career, there were a number of occasions where Franco had to pay obeisance to his patron, that murderous dictatorial rogue, Mobutu, kleptocrat without equal. The music on those few albums were not the best that he produced in his illustrious career. True, the tracks were danceable but they weren't ecstatic as usual. Some have even detected elements of irony in some of the songs - subversive dog-whistles that undercut the dictator's purpose and propaganda. I imagine some Africanist historian writing the definitive study of this phenomenon, perhaps something titled Musical Resistance in Dictatorial Times in 20th Century Congo: Rumba as Social Subversion. Interestingly enough, as you can see, the word Franco doesn't appear on the billing of the album, it is just plain old Luambo Makiadi. Twenty five years after its release, I couldn't find Candidat Na Biso Mobutu when I searched my iTunes and Winamp libraries for Franco's music, and it figures: he didn't need the dictator's bloodstains attached to his musical name. Franco was a smart man, he knew all about branding. He is sorely missed.

File under: , , , , , , , , , , , , ,