Friday, March 17, 2006

Minutiae

A surprisingly large part of a software engineer's life is spent dealing with the little things. Much as I like to write about grand designs and architectural issues or people, processes and communities, all too often, the devil is in the details and I get lost chasing technological quirks. Herewith a sample of just the past week's minutiae, perhaps fodder for historians of science or anthropologists.

Boolean Identity Crisis


I was going over some code in my pet XForms processor implementation and wondering what was going wrong - incidentally IBM has written (at least) 6 forms processors in the past 4 years along with contributing to the Mozilla XForms effort but we won't get into that - I'll save that for a business school case study or something.

After an hour or so of head-scratching this was what I found. In XML Schema Datatypes, the lexical space of boolean values includes not only "true" and "false" but also "0" and "1". I assume the inclusion of 0 and 1 in the specification comes from the legacy of the C language and presumably that makes sense. But I ask, was that a wise decision? The designers of the specification chose a binary representation in a textual format.

The forms processor is written in Java. It turns out that in the Java language, the lexical space of boolean values is case-insensitive "true" and "false". So if you have a mapping layer that goes from schema datatype to Java you have to add special case code to deal with 0 and 1. Presumably also in the other direction, you have to make sure that you don't output "True" instead of "true". I had been linking to a library that hadn't bothered to implement this more robust logic and ran into this boundary condition. Oh well, I thought, I'll have to add an adapter around this library or rip it out and roll my own - an assignment for the weekend.

I vaguely remember Sam Ruby mentionning that this was one cause of interoperability issues between SOAP implementations and it stands to reason: we've codified an identity crisis.

Structured Data Footnotes


Jon Udell is a careful man whose
blog works differently from the rest of the InfoWorld blogs. The content is well-formed XML, and it follows certain self-imposed rules.
This discipline enables him to work miracles and regularly come up with lots of cool applications. But in the wider world, getting people to author structured data is an often intractable problem. XML is often structurally invalid; as an example the Google Reader team have reported that 15% of feeds on the web are not well formed and that is before considering the feeds' semantic validity.

Thus I was tickled by this footnote he wrote when playing with microformats.
The difference? I ran the page through HTML Tidy to get well-formed XML 2...

2   It wasn't entirely automatic, unfortunately, I had to wrestle with character encoding issues too.
Ladies and Gentlemen, I give you The Gruesome Twosome of Computer Science: Structured Data and Character Encoding. We call them footnotes.

Highlights, Lowlights


It started with an offhand comment, a report that one couldn't set the background color on text in the rich text editor in Mozilla Firefox. Every other command on the editing palette worked. You thought, "15 minutes tops, I'll take it".

So you look up the list of command identifiers in Internet Explorer and notice that the execCommand method has an attribute named BackColor which
Sets or retrieves the background color of the current selection.
You head back to the Midas spec for Mozilla and see that for the backcolor entry
This command will set the background color of the document.
Hmm... Your first thought had been that it was a case-sensitivity problem, "backcolor" rather than "BackColor", but the documentation notes that case doesn't matter. So the problem is rather what you highlighted, in Mozilla, backcolor applies to the document and not to the current selection. This means that you have to use a different identifier to achieve the same effect in Mozilla. You promptly notice one called hilitecolor
This command will set the hilite color of the selection or at the insertion point. It only works with useCSS enabled.
Okay, someone decided to not use the same command as Internet Explorer, fair enough, you've seen worse. As you change the code, you say, it's Mozilla and CSS is enabled by default so all I have to do is switch to using hilitecolor.

Of course that doesn't work. You then tell yourself that you'll just enable CSS with the useCSS attribute (you had looked more closely at the code and noticed that CSS styling had been deliberately turned off for some obscure reason).

Hmm, that didn't work...

So you go back to the spec and you notice a styleWithCSS attribute. Interesting... You try that instead of useCSS. Of course, you happen to be testing using a version of Firefox (1.04) that doesn't support that attribute so there's an exception. Presumably this attribute was introduced in Firefox 1.5 or something. Still it's a good thing that you are using an older version for testing otherwise this would have been another bug (feature doesn't work in Firefox 1.0 etc).

You bang around for a while and go back to the original Midas demo which seems to work correctly if you have the "use CSS" checkbox checked.

You view the source of the demo to figure out what could possibly be making it work and you notice that they are setting the useCSS property to false when the checkbox is checked. Huh? They set useCSS to false in order to enable CSS!

So you go back and look more closely at the documentation. First you notice that the useCSS property is deprecated. Hmm... the plot thickens. Then you read this
useCSS - value: true/false

Note: This command has been replaced with styleWithCSS. It takes the same values as styleWithCSS, but the meaning of true and false are inversed.
Up is down in other words. It's like Alice in Wonderland or something. Do note that there is no word on what version the replacement occurred. Nor indeed is there any footnote on why true and false are "inversed".

Anyway you've finally figured it out, you make the change to enable CSS styling only when applying the hilitecolor attribute, add some future-proofing to use the styleWithCSS attribute in case the deprecated useCSS attribute is removed in later browsers, submit the patches and 3 hours of your life have passed. It was frustrating but there's an object lesson somewhere. If you are building a robust cross-browser rich text editing application, you have some code that has to go through this rigmarole.

I have a confession. I recounted the above tale because I feel guilty: I could have prevented all this four years ago.

Internet Explorer was the first browser to introduce rich text editing. It was not pretty since they didn't want it to be as good as Microsoft Word, but it worked reasonably. IBM later contributed resources to Mozilla to beef up its rich text editing. Indeed four years ago, I was asked to review the resulting Midas spec by my colleagues who had been working on that functionality. The spec looked serviceable, pointing mostly to the Microsoft documentation since they wisely chose to follow the de-facto standard. I reported a few bugs with the intial implementation and we built a rich text editor around it. It's widely used on the web these days.

I obviously was a bad reviewer because I certainly didn't notice that there was a change in the semantics of the backcolor attribute from "current selection" to "document" nor indeed that a new attribute, hilitecolor, had been introduced in Mozilla. There is absolutely no reason for these discrepancies. Nor do I want to go down the forensic trail that explains why you can't have a background color on text if you don't style with CSS. That's a rathole of its own.

So what do we have here? A de-facto standard was implemented but someone took the liberty to change one aspect of it for whatever reason - semantic purity or something. I suspect I won't be the last developer to waste an afternoon on this or indeed the last user to be cursing about why I can't add a background colour to a piece of text. I hope that Opera and Safari, if and when they have their rich text editing implementation in place, will do a wholesale copying of Internet Explorer's behaviour. I don't want to be chasing these lowlights again. I often see criticism of Microsoft's inconsistent approach to standards but everyone can be as guilty as them on occasion.

Which Side Are You On?


Stefan Tilkov recently asked what's wrong with Javascript? The answer of course is nothing really, it's a fine language as evidenced by looking around current thinking on the language. Indeed Brendan Eich's biggest admitted gotcha about the language is automatic semi-colon insertion. Thus there is no reason it can't be used in environments outside the browers in which it is most widely deployed as glue - I've played with Rhino on the server-side without any problem.

From what I understand, Jotspot, which incidentally I consider a cunning plan to showcase the Dojo toolkit, uses Javascript as the scripting language on both the server and client. All power to them. Of course with Javascript from the same document executing in both environments, you can get very confused. The answer to one of Jotspot's most frequently asked questions, "Why isn't my Javascript function being called?" is that "your code is not running where you think it is" ergo, you're expecting that the current code you're looking at is server-side rather than client-side, or vice-versa. This is especially true since the object model is likely to be different, the browser DOM is a deliberately constrained environment whereas on the server side you'd want to allow your plugins to do more.

Thus there is a little impedance with using Javascript everywhere. Perhaps it's less confusing to use a different language and syntax for server side code - a tag library in jsp, or embedded java, php, asp or whatever. Or maybe clever syntax coloring in your editor or IDE would do the trick to remind you of the context. Needless to say, you have to decide what side you're on...

I've been working on a project in which the others on my team are seasoned PHP gurus and are occasionally petrified of Javascript - the reason of course being the continued brittleness of the browser platform. When I started work, this bias showed and their initial recommendation was to do as much as possible in PHP on the server-side. They recognize however that that we are living in an age of interactivity so we need that shine that comes with moving intelligence to the client. Still when you start doing data-binding and automatic JSON serialization of PHP objects, you get constructs on the browser client that you wouldn't normally use if you were a client-side person. As someone who's very comfortable with both client and server side code (perhaps more comfortable with Java than PHP), I keep running into such peculiarities all the time. Of late I find myself prototyping code in client side Javascript even if it will eventually morph into server side code. Perhaps I need to get more into Python or that Ruby bandwagon. Still you tend to develop a split personality when you develop for the web.

The Null Hypothesis


I got the note: "you can't append a column if you click on a cell in the last column of a table in Internet Explorer".

Huh? I attempted to reproduce the bug and, sure enough, that was the case. Vaguely at the back of my mind I recalled from painful experience in K-station that there were special APIs in the HTML DOM for dealing with tables. Thus I searched the codebase for insertRow and insertCell. Hmmm those functions were nowhere to be found. How were they doing the column insertion, I wondered? My guess was that this was either some innerHTML tricks or simple standard DOM manipulation. Thus I had to dig through the code and eventually encountered the Node.insertBefore conundrum.

Now insertBefore is a method on the Node interface that is part of DOM level 1 specification. Every browser claims at least DOM level 1 support.

It turns out that in certain versions of Internet Explorer the second parameter to the insertBefore call can't be null, you get an Invalid Argument exception. Mozilla handles this condition as one would expect in their Javascript binding; Internet Explorer chokes. [Obscenity]. There was too much code to change to use the HTML-specific methods so I just hacked special case code that ensures that I don't pass a null to Internet Explorer - 3 hours of my life perhaps.

Now this doesn't amaze me really, thinking back on it, this is probably the reason that somewhere in the bowels of every Javascript library that deals with dynamically adding a new option to a select control, you'll find code like the following:
function appendOptionElement(select, newoption){ if(is_ie) // test for internet explorer somehow   select.add(newoption); else   select.add(newoption, null); }
The browser is a fragile place and hopefully the frameworks that are being developed will shield you somewhat from such issues, but it is telling that you can't rely on core DOM functionality. Even if these quirks are fixed in Internet Explorer 7, this patched-up code will have to hang around for another 5 years before users will no longer use older versions of the browser. We're in a world of pain in the browser world.

Nulls however are problematic throughout computer science. The arguments around them may sound like angel and pinhead discussions but they are fair questions. What indeed is null? What is zero for that matter? For centuries and throughout the Dark Ages of the West, there was no concept of zero, it took Arabic Algebra to spread that notion. Why should one expect that programmers would have internalized the null concept? Reasonable people can and do differ on how to treat null.

Just now, reading through the latest Dr Dobbs journal, I noticed the following in an article about Consuming .NET Web Services in Oracle JDeveloper
The ATL Server SOAP handler generates an xsi:nil="1" attribute when the element's value is null, or when the array is null or zero-size. Unfortunately, Apache SOAP fails to deserialize UDTs whose fields contain the xsi:nil="1" attribute and expects zero-size arrays to be represented as XSD arrays with the dimension parameter set to zero.
The author then proceeds to outline a variety of workarounds. Now I happen to not be a fan of the SOAP style of programming (in the past I've called it Crusty Old Architecture pronounced SOA with a silent P) but as a developer, I feel the pain. The article is a catalog of kludges and likely mapping errors that have to be worked around - the word "unfortunately" is used entirely too often.

I started my career doing graphical programming thus I perked up when Raymond Chen recently outlined the consequences of invalidating the null window and his anecdote is worth quoting at length.
If however you end up passing NULL as the window handle to the InvalidateRect function, this is treated as a special case for compatibility with early versions of Windows: It invalidates all the windows on the desktop and repaints them.

Even more strangely, passing NULL as the first parameter to ValidateRect has the same behavior of invalidating all the windows. (Yes, it's the "Validate" function, yet it invalidates.) This wacko behavior exists for the same compatibility reason. Yet another example of how programs rely on bugs or undocumented behavior, in this case, the peculiar way a NULL parameter was treated by very early versions of Windows due to lax parameter validation. Changing nearly anything in the window manager raises a strong probability that there will be many programs that were relying on the old behavior, perhaps entirely by accident, and breaking those programs means an angry phone call from a major corporation because their factory control software stopped working.
The null hypothesis strikes again.

Camel Humps


Even when you get past these details, you get into matters of syntax - a longstanding pet topic of mine. Consider the separators that people use for readability. Some people like to use Hungarian notation, others prefer hyphens... well I've already written a hyphenated parable so I'll skip that aspect. Anyway, assume for some insane reason that it makes sense for your spec to have an attribute named "windowTop". There'll undoubtedly be people who will write it "window-top", "window.top" or with some other variant of case, "WindowTop"? If you're dealing with XML where case matters, things will fail. You say potato, I say pubDate anyone?

I've been playing with a product that is essentially a wiki and it turns out that by convention, camel case (or should I write it as CamelCase) is significant in the wiki world as denoting a "WikiWord". I even had to spend half an hour writing glossary entries for these concepts since in our system, user names and page names had to be in that format.

You can imagine however the kinds of issues that arise when you have an html editor that allows you to enter HTML and Javascript along with php code and a specialized wiki syntax - since for some reason, it was decided not to use angle brackets in this product. The most complicated piece of code is going to be the parser. As currently implemented, the parser is a mass (or should I say, a morass) of regular expressions and all kinds of things I'll never understand. There's even special case code in there to handle nested comments in Javascript. What was never forseen however was that you'd have to deal with user-entered script code. What would happen if camel case is used for variables inside of said script? Well it wasn't pretty when the wiki engine jumped in and treated script as wiki words, let's just say that someone had to come up with a solution.

There's this concept known as McCabe Cyclomatic Complexity which is basically an application of graph theory to software and is often used to pinpoint potential problems. The basic insight is that if there are too many decisions or paths through your code, it will be buggier, harder to maintain and test. A good guideline is that anything with complexity greater than 15 in this scheme is ripe for refactoring. Luckily I have access to some tools that can generate reports and provide some numbers to validate that nagging sense that a piece of code is getting harder to understand. What worries me is that I keep running into code that laughs at such guidelines - after the latest change the parser code just hit 41 (to give some context, values between 21 and 50 indicate "a complex, high risk program" and with the 50 barrier looming, we are verging towards that notable status of the "untestable program - very high risk"). I'm sure it didn't start out this way and that the steady accretions have been solutions to real problems. Still, technical arteriosclerosis continues its inexorable spread...

Ruby on Rails and the Zend framework for PHP are founded on favouring convention. We had this code that automatically created the schema for what amounted to a database table. We never actually told users that this was what was going on. Of course once a wider audience started to play with the product, we had to fix the bugs that arose to enforce the convention so that databases would be named as the code expected. A classic case of leaky abstractions I suppose. You can guess the complexity the additional error checking added.

Moving up a level, you get politics - the most aberrant of which have been the feed wars of the past few years perhaps best summarized hilariously by Shelley Powers. Truly, Jesus wept.

Bill de Hóra in an aside wisely noted that
Programmers would rather squabble about minutiae - it seems this transcends community or language choice.
But even when you move beyond whiplash and abrasive personalities, who would have thought that the Atom working group would have spent so much time on the concept of dates. When I saw dissertation-length essays on the various types of dates that might be used in publishing systems, I was content to continue lurking in that community. The thing however is that these details do matter and they are best dealt with up front. The aggregate waste of programmer effort in pursuit of minutiae might keep the profession in business but it surely isn't sustainable.

The East Australian Singularity


I'll conclude by noting that acts of God (or in this case, his flawed proxies: politicians) can come into the picture. Thus I read the following this week: Eastern Australia: Java applications impacted by the change to daylight savings time dates
The running of the Commonwealth Games in Australia in March and April 2006 has resulted in an extension to daylight savings time in the eastern states of Australia, which includes New South Wales, Victoria, South Australia, Australian Capital Territory and Tasmania.

Rather than the clocks being put back an hour at 03:00 on Sunday 26 March 2006, they will now be adjusted at 03:00 on Sunday 2 April 2006. The IBM Software Development Kit (SDK) or Java Runtime Environment (JRE) is not currently aware of the one-time change to the daylight savings time extension. An interim fix is required for your application to have the same time as your operating system.

This change applies to all of the Java environments, irrespective of their setup, whether they are set up to use the operating system time zone information, or the user.timezone custom property that can be set for the SDK or JRE.
I assume television schedules were behind this change to the time/space continuum since the Commonwealth games have just begun. Or perhaps the politicians were concerned about athletes missing their events or something. Still imagine if you're the Java programmer who has suffered through the badly defined date apis in Java 1.0 a decade ago, adapted to the improvements in succeeding versions and finally, finally gotten a robust application deployed. Then your manager walks in and tells you about the East Australian Singularity. You're going to have to rework everything since bank transactions might be messed up and there are likely to be blinking clocks etc. We live in a global village so you have to worry about what happens if some mission-critical application that you rely on is being run in Eastern Australia. You can't even have the special case restricted to that country, it's only a sub-region that is affected. At such times I'd prefer being the poor Eastern Australian sheep or lamb, their lot is much easier.

What a way to make a living, if it isn't one thing it's the other. And then there's version hell. Lord help me.

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

Thursday, March 09, 2006

Voices Inside

Part 4 of the Things Fall Apart series - in which we head to the library...

There is no African writer more loved, or indeed more influential, than Chinua Achebe. Wole Soyinka, Nadine Gordimer and J.M. Coetzee were the ones who won the Nobel Prizes (they were all preceded by Naguib Mahfouz of course) and, along with him and a few others, form the canon of the continent's literature (an arbitrary list). Yet, if there is such a thing as conventional wisdom on the African street, Papa Achebe is the people's champion and those others are in the ivory tower. I may admire Soyinka's virtuosity and the sharpness of his intellect (and especially the dramas) but Achebe has my heart. It's not about complexity or even readability - Achebe's narratives are sometimes as layered as the others, it's rather a more direct and emotional affinity with the reader. To apply a musical analogy to the Achebe-Soyinka dichotomy, our man Chinua is Count Basie to Wole's Duke Ellington, the Donny Hathaway to their Stevie Wonder. Or on the comedic front, he's Richard Pryor to Soyinka's Bill Cosby... Well, insert your own heroes if you will, you get the idea: we love them in different ways.

Things Fall Apart remains his most popular novel and has the aura of inevitability that that comes with being the one book about Africa that everyone recommends. There's also the orthodoxy of being assigned reading for many African school children. I tend to prefer A Man of the People or Anthills of the Savannah as I find these later novels more nuanced. Still, like many, I return to Things Fall Apart time and again.

Things Fall Apart


Re-reading it recently, one appreciates the craft with which Achebe constructed his classic tale. It remains one of the most miraculous first novels, a story that possesses great emotional weight. It is specific yet universal, steeped in Igbo traditions but instantly recognizable to all who encounter it. What interests me are the messages that people have taken away from the novel hence I won't rehearse the plot here. The structure though is worth commenting on since it fits the classical heroic frame. There are three parts, in the first, the hero (or anti-hero) depending on your viewpoint is introduced at home and the seeds are sown for conflict, then there is Exile and we end with The Return and the climatic confrontation.

The shocks, as they come, simmer. In the back of your mind you vaguely expected them - the novel after all is called things fall apart. You are greeted in the epigraph with W.B. Yeats' poem, The Second Coming, and the line
Things Fall Apart; The Centre Cannot Hold
Still you can't brace yourself enough for them and this is due to the skill of a great writer. You are drawn into the world, almost lulled by the complexities of the traditions depicted. I wonder if it's the descriptions of daily life, the minutiae of rural life, that disarm you. It's much like reading African Cultural Values except it's rendered as virtuoso storytelling rather than a dry philosophy textbook. To be sure, the world depicted is not idyllic, the difficulties are much like Billie Holiday sang, it's not the "pastoral scenes of the gallant South". The shocks are described as a matter of fact but are not dwelled on - perhaps this is why they leave such an impression. As a reader, you want the author to focus on the calamity to help you internalize it. Achebe doesn't give you that satisfaction. True, he will come back to the act later on and will demonstrate its effect - if obliquely, but the point is that life goes on, a rich life force keeps on moving despite everything. The novel is a sly commentary on attitudes and idées fixes about Africa - notions which tend to dwell on the undoubted unraveling that does occur at the expense of the individual stories.

hutton-mills purple huts 1998


What I had long remembered about Things Fall Apart was the encounter with Europe, the ongoing struggle with the increasingly assertive and proselytizing missionaries backed by a faraway administration. The clash with colonialism and all its trappings: power imbalances, divide-and-conquer, and other tropes. In short, in my memory the novel was a fictionalized counterpart to Adu-Boahen's African Perspectives on Colonialism. This is actually a mistaken impression; that aspect is only a small part of the novel and resonates so memorably only because the novel closes very powerfully - Achebe is a strong finisher. The main thrust and the bulk of the novel is drawing out the African's perspective on things - and what a perspective. Colonialism may weigh heavily but it is treated as a footnote.

The narrative is about the sometimes bewildering encounters of tradition and modernity. There are details about the way conflicts arise and are resolved between clans and towns, hints about the struggle with the elements, the capricious weather that often leads to food insecurity, the crops that demand perpetual care. The belief system is laid out as is the occasionally faulty biology as exemplified in the way some societies deal with twins. The choice of language is crucial here in highlighting the descriptions. Achebe's authorial voice is simple, deliberate, and slightly stiff, as if passing through a translation phase. The language points to a culture of rich intensity. Things Fall Apart reads like a fable and perhaps this is where the story draws its universal appeal.

A constant risk in writing about Africa is the overuse of metaphor, or casting a wide net. Achebe, like all writers, wrote primarily for himself but also as a reaction to what he read. His first novel is a subversive commentary about metaphorical excess and cultural projections. Paradoxically the novel itself is often seen as a metaphor. The allusive style of writing contributes to the universality of the message. In this way though, it falls in the realm of philosophy something that I think is its only failing.

I will always marvel at the sting of the story's end. The rapidity of the collapse of the proverbial center is accompanied with sardonic asides - note well the satirizing of noblesse oblige. The colonial administrators entirely miss the story and speak at cross purposes. They haven't heard any of the voices that were so ably articulated.

Now of course African literature has moved on in the past half century and even around the time he wrote it, there were many other strands. Others were more playful with language; some dealt with urbanization and the lure of the city. To be sure Achebe is influential but so are many others and African voices continue to emerge. In many African countries there isn't much of an internal audience of readers but good writing does find a way out and one reason is the precedent of the response to Things Fall Apart.

Chinua Achebe's great achievement is to portray a textured Africa - one that is not an undifferentiated mass as seen from the outside. Those villagers in the distance have the same concerns as everyone and are at once mediating modernity and picking and choosing what elements to absorb. He writes from the inside and highlights the ongoing inner dialogues. These days the external forces may be slightly different but they remain mostly unseen: globalization, that thing called the market, or even, dare I say, terrorism. Achebe's response is not to dwell on them but rather to change the perspective. The lesson of Things Fall Apart is to complicate everyone's picture of Africa. Needless to say, I love his brand of complication.

things fall apart


I'll suggest here a musical counterpart to Things Fall Apart: Donny Hathaway's 1970 album Everything is Everything. It too was a quite miraculous debut and influential in its own way. If Hathaway didn't get quite get the pervasive cultural impact of Marvin Gaye and Stevie Wonder, he was in the middle of things, the consummate musician's musician, a wonderful singer and a great and talented composer.

The title song, Voices Inside (Everything is Everything), features one of the most exuberant grooves in the canon. It cuts to the chase, to the essence and the bass. Rendered live in four movements, it ends with one of the most quoted bass solos ever by Willie Weeks. You don't need many lyrics when the music is this strong and infectious. All you need to sing is a minimalist "I Hear Voices / I See People" and let the feeling that you evoke speak for itself.

Donny Hathaway - Everything Is Everything


It is a complete and cohesive album satisfying from beginning to end. Donny Hathaway's artistry is one that emerged fully formed and the proof is that assured manner in which he ends the album - he too knows how to close and the B-side of the album must rank in the pantheon. As a sidenote, I miss the way in which musicians could play with sequencing and moods in the LP format something that has been lost in the move from LP to CD and now to the song-at-a-time present. Consider this four song punch.

First there is direct social commentary in the driving blues of Tryin' Times which covers riots, wars, the "confusion all over the land" and "a whole lot of things that's wrong going down". It's a simple yet poignant lament of "man's inhumanity to man".

Thank You Master (For My Soul) takes you to church a place where a lot of soul music gets its emotional depth. It is memorable not least for the vocal performance but also for the pure gospel celebration of life.

After church, we head back to The Ghetto. Now the ghetto is obviously not a pleasant place, by definition it is where things are falling apart - the school of hard knocks. Still the artistry of the urban griot soundtrack that Donny Hathaway and others produced in the seventies was in humanizing the ghetto's inhabitants and making those voices inside heard. We hear the children crying, the hearty laughter and the disputes. Still instead of being overbearingly dark and scary, you get the sense of an entire world inside. The affirmative twist is in the parenthetical asides, those floating voices. They may sound cacophonous but they are vibrant and as richly textured as any.

The album ends with him making Nina Simone and Irvine Weldon's anthem his own, taking it to church, lacing the song with organ instead of his customary Fender-Rhodes. The title of the song reflects the changing of perspective, the acknowledgment of all of the individualized talent, it is a title that Chinua Achebe would surely nod his head to in approval, the title of course: To Be Young, Gifted And Black.

Next in part 5: Heart of Darkness

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

Sunday, March 05, 2006

Africa, 1966

Part 3 of the Things Fall Apart series... I've been sidelined for the past few days by a flu - my body perhaps taking too literally the theme of this series, hence I'll extend my admittedly arbitrary week schedule, reorder things and take a brief detour to ponder some photos. Hopefully you won't detect fevered intensity in this and later writings.

Today is Ghana's 49th Independence Day, an occasion to look back in history in order to look forward. I've been thinking however not about the halcycon days of 1957, the celebrations, the happy shrugging-off of the colonial mantle, but rather about the year 1966, prompted by finally being able to obtain a copy of Africa Report magazine from that year. I scanned and uploaded a few of the photos along with some of the articles therein. Why 1966? I was asked. It was a significant year for Ghana but more generally, 40 years ago was "when West Africa lost its innocence", as a good friend put it. The military coups in Ghana and Nigeria were a major reason for this assessment; Ghana being the first country in sub-saharan Africa to gain independence and Nigeria being the largest on the continent and casting a large shadow. Thus there is a sense of wistfulness about the path of the continent, promise gone wrong barely a decade after the initial excitement and optimism of independence. To add more context for the Nigerian case, 50 years ago, 1956, was when oil was discovered in the Niger River Delta - perhaps a clue to part of the reason for the subsequent unravelling but that is getting ahead of ourselves.

Ghana without Nkrumah


The image is at once iconic and, if you consider what happened months later, ironic. It features the President-for-Life, Kwame Nkrumah posing surrounded by army officers some of whom would shortly overthrow him. Is the fact that they are looking over his shoulder a foreshadowing of the long arm of the military in African affairs? Should one read ominous portents as the magazine's editors undoubtedly intended with its selection? The president looks confident in white with his ceremonial whip in hand, as well he should. At that point he was in full bloom, the one-party state enshrined in the constitution, titles and honorifics proliferating - Osagyefo, he appears secure in his power, surrounded by the obsequious and the sycophants. Everyone is smiling. One wonders who that woman behind him is (the one on the right) and where she ranks in the hierarchy. And those black shades!

Still there is another reading of the image, and it comes down to ego and insecurity that translated itself into government policy. Thus Nkrumah's regime imprisoned leaders of the political opposition, legislated their parties out of existence, and sent away the best and brightest or any who were inclined to question. Thus Kofi Annan and many other bright young Ghanaians were gifts to the rest of the world, sent out to the United Nations instead of causing trouble back at home. For Nkrumah and the CPP apparachiks who surrounded him, cronyism was a mundane fact of life; it was the simple exercise of power embodied in the direct manner of minister-without-portfolio Krobo Edusei a larger-than-life power broker and fixer. As a sidenote, the president-for-life moniker is not hyperbole, it was a little noted executive instrument in the law books discovered after the coup. The logic being that once the state is the party and the party's will is embodied in the leader then, well you get the idea...

Now I suppose I shouldn't besmirch the legacy of a great man and erstwhile icon of pan-Africanism, black pride and the rest of it. It was said that the impact of seeing his triumphal trip to the United States and the image of John F. Kennedy holding up an umbrella to welcome him and feting him as he came to address the United Nations was to break a psychological barrier. Those countries that were perhaps hesitant about demanding independence could no longer wait. Sekou Touré of Guinea was one who succumbed to the irresistible glamour of it all. But still it is hard to bear the diversions into scientific socialism, the dissipation of the pan-African idea into overblown rhetoric, the sheer waste in other words... In Ghana, the popular overthrow of a regime that had started with much promise was perhaps a metaphor for the continent as a whole.

For those inclined for further reading, the feature articles in the issue may shed a little light
These articles are obviously products of their time, let's start with the title of the first: Winter of Discontent. When was the last time there was a winter in West Africa? But that is nothing new, metaphorical excess is the rule in writing about Africa. Heart of Darkness ruled the roost long before Things Fall Apart came along.

Markovitz posited that Nkrumah's choices for Ghana ranged from "Chinese communalization to Moshavism or laissez-faire capitalism". When was the last time you heard about Moshavism? 1966, we must then remember, was the height of the Cold War; the great elephants, East and West, fighting for world dominance and using the rest of the world as their battlegrounds. It is hard to believe the mindset and rhetoric of that era but perhaps our own era has its own tropes. As it was, regardless of the choices made by governments in Africa, in many countries the military stepped in. Some of the coups were inspired internally, some were indeed popular but in others, either the CIA, the socialists - the USSR vying for influence, or the former imperial powers (France, England, Belgium) weighed heavily. In Nigeria, the military as an institution decided that it would hold the reigns of power. In Ghana, the NLC was rather wanting to return to civilian rule but the precedent had been set and later in the 1970s and beyond, those who did step in were less benign.

Major General Emmanuel Kotoka


The enduring image of the year in Ghana is the sight of the political prisoners freed after the coup standing outside Ussher Fort being greeted by their families and friends. Some of the prisoners had been essentially starved to death or at best fed gari laced with sand - a quite macabre policy if you consider the already low nutritional value of gari. Well less said on that. I measure greatness based on what one does with power and on the whole African leaders have been poor in their exercise of power.

Ussher Fort freed prisoners 1966


What of the rest of Africa in 1966? Here perhaps the covers of the issues of the magazine might shed some light.

Africa Report covers 1966


Politically, personality cults and strongmen abound (from Mobutu to Jomo Kenyatta with Eyadema looming in the background). Hastings Banda became president of Malawi in 1966 and 5 years later declares himself President-for-Life following other precedents. The Rhodesia question is still unresolved. The Biafra civil war is just a year away...

A young Alfred Adu Boahen completes Topics in West African History, perhaps the most influential history textbook on Africa and one that revealed the undoubted depth of African scholarship and accessiblitity. It featured prescient analysis of colonial rule and beyond. On his road to becoming the most influential scholar on Africa, he was busy writing the follow-up West Africa since 1800.

West Africa since 1800


Culturally, African literature, music and art in general is blossoming although there is a bittersweet tinge and here I'll simply note what was on the minds of the greats: 1966 is like a crossroads and a good point to take stock of Africa as a whole. Looking forward, independence was gained but many countries didn't start their post-colonial journeys on the right footing. Lots of things could go right and in many ways, there was a lot of promise on the horizon, but you could also see traces of the problems of the next few decades. There has been progress forty years on but sometimes I wonder if we are still at the same place.

Soundtrack for this note


Funkdadelic - Standing on the Verge of Getting It On

Riding High in 1961


Nkrumah and JFK


Circa 1965


Kwame Nkrumah circa 1965


Next in part 4: Chinua Achebe weighs in on the Voices Inside Things Fall Apart.

See also: The Busia Papers for another perspective.

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

Thursday, March 02, 2006

Identity Theft

It was a minor footnote last summer, but for any Ghanaian who read reports of the capture of those alleged to be behind the July 21st bombings in London (the second wave that failed), there was a sentence that struck ungodly fear. It was that sinking feeling that disaster had hit home. I'll recount the episode in the spirit of Four Women by Nina Simone, as a stripped-down tale.

Part 2 of the Things Fall Apart series...

Four Men

32 years old, Wednesday born
Bright as hell, sky's the limit
Family's establishment back home
Immigrant life: London,
God save the Queen.
Dirty Pretty Thing
Ceaseless hustle:
Day job, night jobs,
Live in bedsits,
Sleep in shifts.
A tough life,
Invisible to all
Hostel life: hostile life.
Anomie, angst, stress
Exhausted, mental breakdown
Check yourself in
Hospital: Asylum Down
Sleep. Finally. Sleep.
Medicine, try to get better
Wake up one day
They say you're a bomber
No! Not true!
Your name is stranger

Deputy Inspector General of Police
Big title, Big Man in Ghana
Exemplary career, promotion looms:
Big smile, Big plans, Big politics
A Big Man might get bigger
They say your son is missing
London, dropped out of sight
Fragile thing, you miss him
Head to London, unpaid leave
Search everywhere, he's lost.
No one knows, clean disappeared
Shadow world. Immigrants.
Weeks pass, must head home
Job calls, next IGP
Worried, daily calls. Then:
Hear it on the radio
Read it in the papers
They say it's your son
Headline: Bomber. Al Qaeda.
Impossible. A father knows.
Can't be true.
Your name is concerned

32 years old, Wednesday born
Sky's the limit
Family's establishment back home
Diaspora: Boston, Tea Party
Big Blue technology
You write toli
Long, winding pieces
Everything and nothing
Prognosticator, opinions galore
Worry about this world
Cry wolf: queasiness
You see train-wrecks everywhere
Eritrean Mujaheedeen?
You sigh: prescience, You called it
Two days later: new developments
Read a name, recognition.
One of the bombers
The Name. Twi interpreter.
A countryman. Country! Man!
32 years old. Wednesday born.
Shock, horror, depression
Your name is crushed

You lived with him
You stole his name
NHS card, easy prey
Signed up for nihilism
Secrets. Compartmentalized.
Saw the carnage
Waited
Two weeks later: your turn
Rucksack, carry the bomb
Spotted? Too risky?
Call it off
Drop the backpack in the park
Run. Hide. Lay low.
They broke up the plot
Caught you, damn.
Stand in court
"No speak English"
Keep up the pretense:
Ask for an interpreter
Stick to the story, the name
Don't say nothing
They trained you well
Your name is cursed

empty-shell

State of Shock

It was a man's worst nightmare. It was a father's worst nightmare. It was a country's worst nightmare. It appeared that the thing named terrorism, or should one capitalize it - Terrorism, that damned thing, had been wrought by a native son.

The July bombings in London were deeply shocking and troubling even as such acts go. They had additional resonance for Ghanaians, even those who weren't Londoners. The city has long been a destination of choice for us, indeed in our slang it is fondly called Babylon, reflecting a long, shared history. The great shopping street in Osu, Accra is called Oxford Street. Many of us have relatives there and we took it personally. In the aftermath of July 7th, it was no surprise to learn that Ghanaians were amongst the many casualties. That made sense, we are part-and-parcel of the London brew. From the students to the businessmen, from the minicab drivers, nurses, lawyers, doctors, street cleaners, ticket collectors, journalists, from the rich to the poor, we are all Londoners. We were all in mourning.

And then we heard that a Ghanaian may have been responsible - "charged over an unexploded device found at Little Wormwood Scrubs park in West London".

Thus our grief turned into incredulity. Yet there was also apprehension. In a global village, anything is plausible. Al Qaeda switching up the ethnic profile of their foot-soldiers would be smart. We instinctively know that no society is immune to such things and indeed, given the right conditioning, anyone can be radicalized. We had even glimpsed those frayed edges in our own society. Take those youngsters with the Bin Laden t-shirts on the streets, heck I'd even written about how distressed it had made me. Geoffrey Hiller managed to capture that image in his remarkable photo essay and that was just one man's West African road trip. Of course there were other indicators notably that hush-hush story about the security services in Ghana breaking up a group in Kumasi attempting to recruit for jihad... Well, hush-hush.

But still, but still...

We are a proud people but also conflicted. Our disbelief turned into shame (which is still one of the strongest impulses in our society) but also, and significantly, into cold calculation. We have enough problems in our society that we can't afford the stain of terrorism. We could all see it happening, the stigma that attaches itself to a community when a disastrous label is flung at it. We are experienced in negative branding from the economic to the racial and worse. We know all about profiling; the curse of low expectations and insouciant sidelining is our daily bread. Still it is another step to imagine travel as a Palestinian, Libyan, Saudi, Egyptian, Chechen or any of those other peoples have traveled in past decades (or years for some). Our reaction was a little hypocritical and verging on the narcissistic, but then we are only human; who wants to be collateral damage?

contemplating

Resolution

As you might expect, the Ghanaian community in London rallied and investigated the issue. A father headed to London to redouble his search for his missing son (or to secure a lawyer if necessary). Everybody pitched in and we crossed our fingers. It took a couple of weeks but they eventually found the man in hospital. He had been living the anonymous immigrant life in a hostel outside London and had "fallen ill". The English police were informed, but being quite happy that they had the right bomber in custody, were not concerned about correcting the public record. Indeed despite the Ghanaian embassy's prompts for a public exoneration of man and country, the only thing that has been said is that "an official statement will be issued in due course".

No one knows the identity of this man who performed the identity theft. The best we know from the accounts in the Ghanaian community is that this is someone who lived in the same building as an acquaintance of the Ghanaian at a certain point. Thus the connection was tenuous, opportunistic and the most awful serendipity. He had been living under this assumed name for over a year, even leasing property in that name.

The second wave of London bombers, the July 21st group, are believed to be a cell from the Horn of Africa, from Eritrea, Somalia and Tanzania. The first wave was comprised of locals Brits albeit of Pakistani and Jamaican descent, still: Brits to the core. The mystery remains as to the ethnicity of that man I call cursed. The cover story that one of them released was that they were simply copycats - they "never intended to cause any harm". [Obscenity]. Of course, more likely is that it is just luck that their bombs didn't go off as planned - the bombmaker had a bad day, made a bad batch. Regardless, there will be no mitigating circumstances, they will never see a day of freedom.

The accounts in the Ghanaian press, which are the only ones that concerned themselves about this story, are curiously deficient. Our journalists aren't intrepid, persistent or imaginative. It was enough for them to get confirmation that the bomber was not that particular Ghanaian. They didn't ask follow-on questions about the wider story. For example the Twi interpreter would have been able to definitively say if indeed the bomber was Ghanaian. The acquaintance would have been able to describe the man etc. But beyond that, there has been almost no follow-up reporting about the July 21st bombings in the press (English or Ghanaian) and much could be shaken loose from the strands on display here. Even if they confined themselves to the narrow Ghanaian angle, there is much left unsaid and what has been said is elliptical at best. In many ways, the reports raise more questions than they answer: the missing passport, the "health problems" and so on. Suffice to say that the story being told in the Ghanaian community is different from the official accounts. But perhaps enough scrutiny has been brought to bear on a man, his family and a country. We had dodged a bullet of infamy and wanted to return to the normalcy of our relative anonymity.

I, on the other hand, suffer from the journalistic impulse and want to know about the back story. I want to vocalize the story of what might be the ultimate identity theft, the worst case scenario. Who are these people after all? I want to outline the life in those hostels, that lonely life on the fringe. I understand how easy it is to fall through the cracks, to drop out of sight, from brother, from father and from friends. I have known the bright immigrants, Master's degrees and all, falling into these ruts, preferring to hustle, to juggle menial jobs, and refusing to return until they "make it" somehow, someday. I have seen the double and triple lives Ghanaians in London can lead. I have seen the mental breakdowns and worse; it is no fun picking up those pieces. True, it is not just stagnation, there are also many triumphs. Regardless, these stories are worth telling.

I am interested also in capturing the essence of that very pragmatic and practical response we had for a few weeks last summer: an almost hypocritical yet instinctive turn to self-preservation. Why is it better to know that the bomber was not Ghanaian? Does it lessen our grief? And why Schadenfreude instead of solidarity for Somalis or Eritreans? How much better will we be treated at airports? We are harassed and worse already, tarred with the same brush - Africans, the people darker than blue as the song goes. Our playgrounds are in that school of hard knocks. Why that lingering sense of relief? For that matter, is our house in order and can we hold our heads high about our current situation? More to the point, it was somebody's son after all. For all I know, the bomber, like the man whose identity he stole, or indeed like myself, was also Ghanaian, 32 years old and Wednesday born.

It all goes to show that our grip is tenuous and we can become unhanded in a single moment. A simple case of identity theft perhaps, a temporary inconvenience and fright, or, to return to the theme of this series, a sideshow lending weight to the notion that

"Things fall apart; The center cannot hold."
SUV meets bookshop in Porter Square

The Hustle, a playlist


A soundtrack for this note... I always have music in mind as I write and these songs were today's motivation. The first two feature metronomic beats and dancefloor agitation, the last two a pause for mournful reflection.

K Baka: River women

Next in part 3: Africa, 1966

See also: Of No Fixed Abode and Ode to Betty Brown for more on the July London bombings.

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

Wednesday, March 01, 2006

Things Fall Apart

Join me if you will for a short series - variations on a theme: Things Fall Apart.

It's about a state of mind and a culture. So far there have been musings on literature, from Chinua Achebe's novel to Joseph Conrad, Yeats, Evelyn Waugh and others. There's been music, poetry, history, coups, affairs, politics, strange bedfellows, technology, identity theft, terrorism, nostalgia, hard-boiled noir, lighthearted farce and boycotts. Looking ahead perhaps we'll deal with food, movies, cartoons, photography or more sedate topics. The starting place, as ever, is Africa, yet I find myself somewhere in the middle of the Atlantic, writing a cultural history of our times. I hope some of it might be up your alley. In any case welcome. (see series index)

1. School of Hard Knocks


It was June, we were at the History department at Berkeley. The Girlfriend was filling out paperwork in anticipation of the next year's Great Move West and pondering the academic life teaching history (Africa! Science!). Tabitha was filling us in on the department, campus life, class sizes and how the program was structured. Truth be told there was a lot of trepidation and the small talk wasn't coming easily. Then I looked around seeking comfort from the surrounding books and, my goodness, noticed the magazines. I was so excited to find myself in an office that had a copy of Africa Report magazine from 1966. It was the issue written after the coup that overthrew Kwame Nkrumah in Ghana, something I had been searching for for the last 6 years. Duly effusive after my find, I really started to chat her up; Africa was on my mind and the questions poured forth. We warmed to each other in short order.

berkeley gates


Eventually I asked about the background of the students who come to study African history at the university.

What has changed, she said, is that these days the average student would have read Things Fall Apart by Chinua Achebe whereas previously it would have been Joseph Conrad's Heart of Darkness (or say Joyce Cary's Mr Johnson if they had a British background).

It seemed to me that a little milestone had been reached with her anecdotal testimony of Achebe winning out over Conrad in the memorability sweepstakes. Our man Achebe must surely be smiling at the response to his first novel written almost 50 years ago. Indeed it is apt that sub-Saharan Africa is also verging on 50 years of a post-colonial experience (in my native Ghana, preparations are underway for next year's 50th independence day celebrations).

The school of hard knocks that was Africa's colonial experience, and indeed the image of Africa itself, is now being perceived through the words of an African. The headline leaped out to me:
Things Fall Apart Beats Heart of Darkness
This is bittersweet news and progress of a sort. Beyond the purely literary however, the question remains:
Should Africans be content with Things Fall Apart? And if so, is the message of Brand Africa simply a celebration of the hard knock life?
As a participant in the ongoing narrative, I almost never pause to ponder the storyline. When I do manage to reflect on it, I get little comfort from the muddled headlines. Heads down and at a remove, I seek instead a sense of normalcy and to contribute to the occasional bite-sized triumph. After all, who knows which of the current grand plots will be tomorrow's conventional wisdom? Finally also, I wonder who is writing today's script and where they stand on the matter. I hope my exploration will provide one perspective.

sweet-candy

The sign reads "Sweet! From Candy to Condos". The old candy factory in East Cambridge is being "repurposed" into luxury condominiums.

The Things Fall Apart Series

Cultural observations and social interplay

Things Fall Apart

  • School of Hard Knocks
    Reading a new headline for Africa.
  • Identity Theft
    "Wake up one day / They say you're a bomber"
    The perils of a fragile center.
  • Africa, 1966
    Looking back at a pivotal year in African history in order to look forward.
  • Voices Inside (Things Fall Apart)
    Changing the perspective. An appreciation of Chinua Achebe's take on Things Fall Apart, with a Donny Hathaway connection thrown in for good measure.
  • Heart of Darkness
    "This Congo is a region of the mind."
    Burnt-out cases journey down the river: Joseph Conrad's tale and its influence on the literature and iconography of Africa - from Graham Greene to Evelyn Waugh, through Abdulrazak Gurnah, Francis Ford Coppola and more.
  • Frisson de Folksonomie
    "I have a crush. There, I finally said it. I feel better already... I can no longer stand this conflicted life..."
    "Affairs" in social bookmarking, literature and music.
  • Angola
    "When two elephants fight it is the grass that suffers" — Angolan proverb.
    A dossier, or rather a B-movie, featuring Jonas Savimbi, Ronald Reagan and other special guests.
  • Huhudious (or Silly Season)
    Illustrating The B-movie Theory
  • Ode to Betty Brown
    Yes, that was Betty Brown, self-effacing even in her obituary.
  • Structural Adjustments
    The trade deficit of unanswered questions
  • June 4th
    The Coup Drill. Stand up and be counted.
  • Herd Immunity
    The phantom thread of greed lies at the heart of the matter
  • Open House
    A full frontal stare
  • The Bad Seed
    Suborn was his favorite verb
  • Internal Exile
    They made the best of things

Social Living

Social Living is the best

The Comfort Suite

I need relief

The Rough Beast

Who is writing the script?

Fallen Angels

Doctor Simbo

Soul Insurance

  1. Ananse and the Chief's Scribe
  2. Enter the Claims Adjuster
  3. An Audience with the Linguist
  4. Pity the Mink
  5. Short Sale
  6. Excessive Liabilities
  7. Premiums Due
  8. Soul Insurance, a playlist
  9. Indemnity Provisions
  10. Full Circle
  11. Enforcement Actions
  12. The Die is Cast

South Africa, 1994

The Bulsa Way

The Boycott Day Trinity

And the Lord said unto them: Boycott!

Things Fall Apart - the photo essay

Things Fall Apart - The Playlists



tag cloud: Things Fall Apart


Koranteng globe portrait


Things Fall Apart collage


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

Monday, February 27, 2006

Comfort Food and Rare Groove

I was recently re-reading Food Culture in Sub-Saharan Africa by Fran Osseo-Asare - a book I've been meaning to review since it came out last year. Briefly, it's nothing less than a comprehensive overview of the culture and history of food in Africa. It covers the continent, dipping into all the regional flavours. There's lots of historical insight about the types of ingredients used, the crops, animals, fisheries etc. It's one of those books you can open at any page and find lots of to chew on (pun intended, tongue in cheek etc). Most culinary books concentrate on recipes but this goes beyond that into the cultural and social significance of food (from who prepares it, traditions surrounding it, special meals etc). Anyway I'll return to it at length shortly, shall we say that it deserves a fuller digestion. I'm rather concerned in this note with rare groove.

Food Culture in Sub-Saharan Africa


As normally occurs when matters literary and gastronomical coincide, my salivary glands began to do their thing after barely 5 minutes of reading. Much like that recent article on street food in Ghana, my immediate reaction was to think of smells, sounds and kitchens. Oh the smells! As my mouth started watering, my mind started wandering and I was thinking about Auntie Becky's roadside kelewele (fried ripe plantains) in North Labone which is the first place I head to when I land in Accra. Auntie Becky has been cooking outside a house for thirty odd years and has a devoted and international following. Indeed she married the owner of the house which is one way of romancing I suppose - Like Water For Chocolate as they say. The marriage got her the hookup to household gas replacing the previous charcoal fires... In any case, my lunch companions were 20 minutes away thus to distract the incipient hunger pangs, I dipped into my musical library and compiled the following menu of comfort food and rare groove. Hope you enjoy it.

A Hungry Playlist (Listen here)


Chef's Specials


  • Common - The Food
  • Herbie Hancock - Cooking Session
  • Stephanie Mills - Ain't No Cookin'
  • Amadou & Mariam - Sénégal Fast Food
  • Omar - Confection (ft Mica Paris)
    (see also Tasty Morsel for bite-sized portions)
  • Horace Silver - Cookin' At The Continental
  • Charles Wright - Cooking Session
  • Goodie Mob - Soul Food
  • Miles Davis - Steamin'
    (Note: album sized, you may substitute Miles Davis - Cookin' if you prefer)

Snacks

  • Charlie Parker - Salt Peanuts
  • James Brown - Mother Popcorn

food

Main Course


  • Charles Mingus - Eat That Chicken
  • Anthony Hamilton - Cornbread, Fish & Collard Greens
  • Kruder & Dorfmeister - Lamb, Trans Fatty Acid
  • Booker T & The MG's - My Sweet Potato
  • Jimmy Smith - Pork Chop
  • Musical Youth - Pass The Dutchie
  • Cannonball Adderley - Afro-Spanish Omlet
  • Dwele - Flapjacks
  • Freddie Hubbard - Cold Turkey
  • Kenny Burrell - Chitlins Con Carne
  • Lee Morgan - Cornbread
  • Roy Hargrove - Greens At The Chicken Shack
  • James Brown - The Chicken
  • Soul Runners - Grits 'N' Corn Bread
  • Miles Davis - Fishermen, Strawberry and Devil Crab
  • King Curtis - Memphis Soul Stew
  • Ohio Players - Jive Turkey
  • Jimmy Smith - Back At The Chicken Shack
  • Prince - Starfish and Coffee
  • Main Source - Live at the Barbeque
  • MC Serch ft Chubb Rock, Nas - Back To The Grill
  • Ella Fitzgerald & Louis Armstrong - Crab Man
  • Meshell NdegeOcello - Oysters
  • Rufus Thomas - Funky Hot Grits
  • The Meters - Chicken Strut
fish

Dessert

  • Sade - Cherry Pie
  • Dexter Gordon - Cheese Cake
  • Herbie Hancock - Watermelon Man
  • Mtume - Juicy Fruit
  • Duke Ellington - Arabesque Cookie
    (from the Nutcracker Suite no less)
  • Charlie Parker - Scrapple From the Apple
  • Charles Mingus - Song With Orange
  • Dave Bruebeck - Tangerine
  • Hugh Masekela - Strawberries
  • The Time - Ice Cream Castles
  • Billie Holiday - Strange Fruit
    (also available Cassandra Wilson or Nina Simone style)
  • Wendy & Lisa - Fruit At the Bottom
  • Erykah Badu - Appletree
  • The Brothers Johnson - Strawberry Letter 23
  • Prince - Raspberry Beret
  • Amel Larrieux - Berries and Cream
cake goodness

Secret Ingredients


  • Loose Ends - A Little Spice
  • Lizz Wright - Salt
  • Booker T & The MG's - Green Onions
  • The Time - Chili Sauce
  • Lou Donaldson - Nice 'N' Greasy
  • Marlena Shaw - Spice of Life
  • D'Angelo - Chicken Grease
  • Count Basie - Honeysuckle Rose
  • Booker T & The MG's - Soul Dressing

Sweets

  • D'Angelo - Brown Sugar
  • Cassandra Wilson - Tupelo Honey
  • Kool & The Gang - Chocolate Butter Milk
  • Cameo - Candy
  • Nina Simone - I Want A Little Sugar In My Bowl
  • Jill Scott - Honey Molasses
  • Johnny Hammond - Los Conquistadores Chocolates
  • Bob Marley - Guava Jelly
  • Lo-Key - Sweet On You
  • A Tribe Called Quest - Butter
  • Parliament - Chocolate City
  • Beres Hammond - Sugar You Want
  • Ohio Players - Sweet Sticky Thing
kebabs

Beverages


  • Fela Kuti - Water No Get Enemy
  • Jimmy Mcgriff - Blue Juice
  • E.T. Mensah & The Tempos - Tea Samba
  • The Roots - Water
  • Thelonious Monk - Tea For Two
  • Kelis - Suga Honey Iced Tea
  • Duke Ellington - Chocolate Shake
  • The Manhattan Project - Old Wine, New Bottles
  • Duke Ellington - Sugar Rum Cherry
  • UB40 - Red Red Wine
  • Tha Alkaholiks - Only When I'm Drunk
  • Tony Rich Project - Red Wine
  • Snoop Doggy Dogg - Gin and Juice
  • Busta Rhymes - Pass The Courvoisier
  • Bennie Maupin - Water Torture
  • Lester Young And Oscar Peterson - Tea For Two

Supplements

  • Baby Cham - Vitamin S (Fiesta Riddim)
  • Booker T & The MG's - 'Mo Onions
drinks

Liner Notes

  • Do not listen to this playlist on an empty stomach or you may have a case of jazz-funk Water Torture ala Bennie Maupin.
  • On matters of etiquette, feel free to use your hands when partaking of toli comfort food, remember though that it is best to use only one hand unless it's chicken or ribs of course. The only other advice you'll need is Musical Youth's, namely "Pass The Dutchie 'Pon The Left Hand Side".
  • Surpisingly there isn't much else on food culture and, no, Charles Mingus' The Shoes of the Fisherman's Wife doesn't count. Neither does Scratch's hilarious 3 Barstools Away, might I add.
  • From the evidence of this playlist, it is clear that the chicken came before the egg. The earthy music I tend to listen to tends to celebrate our hens more than their eggs, other than the one Afro-Spanish omelette, the chickens rule the roost. (I discarded Disjam's Softboiled for being imprecise. The Time's The Bird, The Roots' Duck Down and Bob Marley's Three Little Birds were disqualified for the same imprecision).
  • Prince's Starfish and Coffee comes with "Maple Syrup And Jam, A Butterscotch Cloud, A Tangerine, A Side Order Of Ham", he is a special one. His Sticky Wicked collaboration with Chaka Khan and Miles Davis is only available on the adult menu as is R Kelly's Chocolate Factory, positive id is required. Oscar Peterson's The Honeydripper is discounted for reasons of messiness.
  • Of course I've noted before that eating people is wrong thus with a track like Miles Davis's Fishermen, Strawberry and Devil Crab, you don't get the fishermen. Sorry, but I believe in truth in advertising. I omitted The Coup's Fat Cats, Bigger Fish out of similar cultural sensitivity.
  • Surprisingly for a playlist heavy on soul food, there aren't too many stews, gumbo or fish on the menu and unfortunately we're out of soup in the toli kitchen; as Troop would have it "I'm Not Soupped". You might also ask, where's the beef, goat or black sheep? The answer is that my musical collection isn't that extensive.
  • The artist historically most concerned with food is strangely unrepresented in this food playlist. Jill Scott punctuates almost every song with lyrics about grits, collard greens and the like yet it's only Honey Molasses that I'm highlighting. However her Family Reunion song about barbecues deserves an honorary mention as does Joy and Pain by Maze featuring Frankie Beverly which comes with most backyard grills.
  • Memphis's finest band Booker T and the MG.s contribute the most tracks to the menu and no wonder, they live in a melting pot.
  • An update: as pointed out in the comments, I completely missed a meal and it is rather Louis Jordan and his Tympany 5 that take the cake. Well that's what happens if you have Five Guys Named Moe, I suppose.

Yesterday, after lunch of course, I listened to this almost 6 hour multi-course meal and it all fits together remarkably well, a balanced diet of soul, jazz and funk (metaphor overload: "a cornucopia of extra-sensory nuggets"). It put me in an anticipatory mood for dinner which I wolfed down voraciously - gusto was written all over my face. There's a lot of humour in all the music since food culture is mostly celebatory - the funniest track being Mingus' Eat that Chicken - what a chorus. I've been told that my musical obsession is far out, or as Eric Dolphy would have put it, I'm Out to Lunch but bear with me and, above all, enjoy your meal. As always menu suggestions are welcome.

See also: "We Eat First With Our Eyes" her take on Ghanaian Cuisine. In my case, I eat first with my ears.

food


Comfort Food and Rare Groove, a playlist

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