Showing posts with label advocacy. Show all posts
Showing posts with label advocacy. Show all posts

Tuesday, May 23, 2023

The Lobby

It's one thing to avert the eye and go for benign neglect
It's another when the chairman of the board is affected
I recall that when Saddam Hussein invaded Kuwait
A furious response was simply not up for debate

With Kuwaiti elites, whether oligarchs or royal family, over a barrel
These major stockholders, the world over, were in mortal peril
Forget matters of sovereignty, it didn't need to be said
That it wouldn't be good for business, let alone US interests

Even today, western media, who would not normally exercise restraint about strangers
Suddenly become coy and sensitive about their coverage, and hew to their better angels
As India became a new epicenter, they initially started showing makeshift crematoriums
And the telegenic, albeit burning, funeral pyres; the utter collapse and dysfunction

But the tone quickly changed, even as things were getting worse
The reality is that Indians hold the power of the purse
It really comes down, in these things, to who pays the piper
Who has the loudest voice when it comes to the diaspora

For when, say, Google's CEO's close and extended family is affected,
You'd best believe there'll be outrage, and an almighty scramble
Suddenly those who would never otherwise spare a thought
Are seen to be urging solidarity for this catastrophe

And so I've been thinking about the power of the lobby
I wonder who, in extremis, would ever be coming for me
I have long studied the successful ones even if I disapprove of their sleaze
The Israeli, the Saudi and those others; smooth operators, well versed at advocacy

For when my countrymen were stranded in Libya, Lebanon, or what have you
Or even those unfortunate souls who were being trained by Nicolae Ceaușescu
When calamity struck, the lesson they quickly learned was rather sobering
Namely that not a scintilla of help was on the way, no one was coming

In the past, to hold a Ghana passport was to be a down-on-your-luck kind of person
Radioactive really, the kind of thing that attracts the worst sort of attention
The immigration agent would break out a broad smile as you made your arrival
Your ovaries or gonads, foreseeing their inspection, would start to shrivel

We always wished for a different passport, Liechtenstein, or, say, Luxembourg
Let's be frank here, of a Luxembourgian held for hostage, I have never heard
But it stands to reason, there is something quite apt, even if it's inequitable
To read a headline: "White contractors airlifted to safety before local Black people"

There is a great sorting hat at work, perhaps the gods have always played favorites
But it is rather tiresome for those of us who have to content ourselves with miseries
"The fellow with the fufu usually moves over to the man with the soup,
Never the other way around", goes that saying, and well known Nigerian truth

And so as I write my own stories, I realize that I too need a posse
That I need to build bridges, and help those on the lower rungs than me
In this liminal life in the glue layer, making connections is what matters
The head nod of appreciation, building up the lobby for my fellow travelers


ghana must go mission

The Loud Minority, a playlist


A soundtrack for this note, meditating on a lobby (spotify version)
...

Timing is everything
Observers are worried

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

Writing log: May 14, 2021

Wednesday, June 17, 2020

Dear Mr Surgeon General Re: Meatpacking Plants

Dear Mr Surgeon General,

I note with interest that China's second wave of Covid-19 seems to have been kicked off by superspreading events in meat packing plants and markets. Frankly, I am tired of maintaining my Coronavirus Superspreading Events Timeline. Can we just acknowledge that this is a global disgrace?

Mr Surgeon General, couldn't you just declare that it is a matter of national, nay global, urgency, that we address the intolerable situation in meat packing plants? That a root-and-branch, and systematic reimagining of the meat packing industry and the entire food processing pipeline is in order?

A public declaration from the Surgeon General would carry a lot of weight. Your predecessor wouldn't have hesitated - I know, he's The Wife's classmate, and I take her at her word.

roast

I know that Doctor Birx is a water carrier so I wouldn't expect an intensely political animal like her to weigh in, perhaps she's a distant relative of the Vicar of Bray - just speculating based on her sartorial choices. Similarly, kindly Doctor Fauci might be wavering, but he already has his hands full with The Grand Reopening of Texas, not to mention that I've already written 23 stanzas imploring him to do something. No luck with him, he's acting as if he doesn't already have the Presidential Medal of Freedom and has to pander, for whatever reason.

No, this is your call, Mr Surgeon General.

Oh I know, "We are still weighing the evidence", "The facts are still in dispute", "Our decision making will be guided by the best available science", "The enforcement of OSHA and FDA regulations is the province of a different department" etc.

Platitudinous laments.

How many more superspreading events in these kinds of places are we going to tolerate? The ongoing cost of inaction is being measured in blood and sin. I read that the strategy in Texas where I live and elsewhere in the USA was just to make sure we had the testing capacity to deal with these potential hotspots. Well, here's a suggestion: how about ensuring that they are not hotspots to begin with? Whether in Beijing, in South Dakota or in Tennessee? Why are the farms hotspots in the first place? Why are the hostels where our essential workers sleep hotspots? Why are the food processing and distribution plants hotspots? Why are the markets where we buy these essential goods hotspots?

Sensational Fruity Delights

I've heard that folks at the CDC have been sending out emails with links pointing to my layman's timeline for the past couple of weeks. I couldn't quite believe it when I heard it, yet, when I went to check, the clickstream, served up by Google Analytics, bears out that troubling anecdote. What kind of dysfunction is this? Don't they have a timeline internally at the CDC? What have they been doing since January? Or is that all those epidemiologists feel so disempowered and muzzled by Mike Pence, or whoever it is who has decided that your boss, Mister Trump, can't be made to look bad or get bad news? Is it that they need external validation to force the issue on their internal bureaucratic struggles? There is either incompetence or dysfunction at work, or perhaps both, which makes for the worst case scenario. This is a matter of considerable distress to me.

Relying on conveniently-timed leaks, and outside pressure, is no way to run the response to a global pandemic. No, I hope to be proved wrong, but we should not expect anything substantive from the CDC, it is sad to say. In any case, now Atlanta is burning, and so the CDC staffers there might be a touch preoccupied with other matters, and probably have their work cut out simply getting to work, or picking something up from Wendys. I don't envy them. Still, waiting for the CDC at this point is like Waiting for Godot in Khayelitsha.

No this in on you, Mr Surgeon General.

Waiting for Godot - Khayelitsha, South Africa

The economic interests of Tyson, Smithfield and the Big Meat Packing, Big Agribusines Industrial Complex matter for nought in this public health matter, campaign contributions and late night phone calls to the White House notwithstanding. Your boss's invocation of the Defense Production Act to keep these deathtraps open was a tell.

What exactly is the purpose of that ceremonial uniform you wear?

Oh, tell a lie, I did like your early invocation at the outset of the emergency of the fact that you were a walking, breathing risk factor - that your very DNA and concomittant underlying conditions, place you in the high risk category. I heard the urgency and your empathy then, and gave you virtual plaudits: I clicked several like buttons, truth be told. But you have been curiously silent since - almost an erasure even, in this sorry business. I would have thought the occasional savaging was just an occupational hazard, that you'd bounce back. For essential workers, OSHA regulations are a matter of life and death - mostly death.

Wikipedia has you down as "the leading spokesperson on matters of public health in the federal government of the United States". My ears have been wide open hoping for something, anything, from you. This disastrous spectacle has gone on too long.

It's a cheap shot but I'm going to go there, let me try the brother card. I'm an African in America so I may miss some of the nuance of the African American vernacular but I'm going to try. I'm 18 months older than you, so perhaps you should at least give me a listen. Hear me out, real talk now, Mister Surgeon General. Perhaps you're a visual person, so I'll give an illustration of what I mean:

At this point subsequent horrific events are still reversible - kodjo crobsen

That's from my man Kodjo Crobsen who made it his business to be the cultural intepreter during Ghana's lost decades, during our worst crises. If you read his book, Power to the People, Reflections on Retrogressive Politics, you'll see this angel periodically appear, as if a Greek chorus, amidst the poems and cartoons that mark the milestones of his history of our country's times. Conscious decisions could have been made at so many crucial junctures, but they weren't. There were so many men of integrity who had it in their power to act so that our society could be spared the worst. They failed to act, and we all paid the price, even those of us who managed to survive. We lost so much and remain the walking wounded decades later.

Anyway, perhaps you respond better to words, let me try again:
At this point, subsequent horrific events are still reversible

You know as well as I do that the reality show Actor-in-Chief in America's B-movie put you up, you along with Ben Carson, because you're straight out of central casting. Unlike Uncle Ben, who is indeed a surgeon, your current position is solely devoted to public health. That should count for something. Like all of us, you've been watching the spectable of the George Floyd protests - now 16 days and counting as I started this note. This will be unfortunate fodder for my coronavirus superspreading event timeline come early July since a crowd is anathema to social distancing and, in many places, the righteous protestors are not wearing masks and, crucially, they are chanting cries of outrage, the choral catastrophe as it were.. The wages of depraved indifference are punitive damages, made doubly worse in this instance by a covidious collateral damage.

My point is how can you breathe?

The Donald doesn't like hearing the calm entreaties of Tedros Adhanom, the Director-General of the World Health Organization (WHO) to "test, test, test". Being calmly advised by an Ethiopian reeks of the aversion he, and they, had to the professorial Mr Barack Obama, it's a visceral reaction, plain and simple. He is already threatening to withdraw and defund the WHO in the middle of a pandemic. Even mild-mannered and apolitical Bill Gates was moved to act to mitigate the damage. The WHO is a creation of the CDC, for God's sake. What kind of cognitive dissonance is this? Heck your boss set The ADP (Attack Dog Pompeo) on him and the WHO. When the former head of the CIA turns his attention to you, well, you don't have to be Salvador Allende to know how these things might end. Ergo, the WHO is going to tread very gingerly going forward as Fox News and worse will be trained on it to jump on any messaging missteps.

No, Mr Surgeon General. This is under your control, these things are entirely in your domain. The Donald's dismal debacle is happening under your watch, as are the accompanying deaths. You know as well as I do that, when he is looking for scapegoats to divert attention for his dereliction of duty, that you will be the first to go, optics be damned. What is the point of your office if you can't speak to the nation's health? You have the bully pulpit. What is it for if you decline to use it? For it is your choice, Mr Surgeon General. It is your decision alone how you use it.

How many outbreaks do I and so many others need to point you to?

Sure it is a political decision, and we know as well as you who pays your bills, and at whose pleasure you serve. At this point though, our covidious predicament is akin to a species event, and we're fiddling while Rome is burning.

No one is coming to protect our essential workers, no one in authority is at all interested.

Appealing to Mister Trump's better angel is like Charlie Brown lining up to kick Lucy's football; today is not the day he finally becomes presidential. That day is never coming. Robert Redfield, your pal, the director of the Centers for Disease Control and Prevention defines the phrase regulatory capture. With a straight face, he will start his Congressional testimony with "I guess I anticipated that the private sector would have engaged...". That guy will keep anticipating that meat packing plants and nursing homes will engage themselves out of this pandemic. It's Wolf Hall, bring out the bodies.

It's on you Mr Surgeon General. The buck stops with you. The most catastrophic public health response in history is happening on your watch. You should be leading the global effort and setting an example. Don't let it be German outrage that sets the worldwide example. America First was your boss's slogan.

It's a shell game, all remnants of a shame culture are vestigial in this country. The fix is in. This is a public health emergency, and the powers that be have decided on the pursuit of herd immunity. I'll keep saying it until I am proved wrong, and will gladly eat crow.

America's real herd immunity is to shame

Mister Surgeon General, I beseech you. Prove me wrong. Stand up and be counted.

Timing is everything
Observers are worried
Observers are very worried.

Yours truly,


Koranteng
Chief Toli Monger

Dear Mr Surgeon General, a playlist

A soundtrack for this open letter (spotify version)

  • Tennesee by Arrested Development
    This would have been your jam, Mr Surgeon General, back at university. I have golden memories of just getting down with the guys when the song came on. We didn't need the girlfriends around, we just got down when the drums dropped, and they dropped hard. Sidenote: Prince waited until it topped the charts before launching into negotiations about the uncleared sample from Alphabet Street.
    The Lord allowed me to drink some more
    He said what I am searching for are
    The answers to all which are in front of me
    The ultimate truth started to get blurry
    For some strange reason it had to be
    It was all a dream about Tennessee
    See also: Every Single Worker Has Covid at a Farm in Tennesee on Eve of Harvest
  • C.R.E.A.M. by Wu-Tang Clan
    Cash Rules Everything Around Me
    C.R.E.A.M.
    Get the money
    Dollar, dollar bill, y'all
    The phantom thread of greed lies at the heart of the matter.
  • Alphabet Street by Prince
    Another memory, it was Easter break in 1988. It was perhaps 3am at night and I'd just come home on the night bus from a night in a South London club. Derek B had been in the crowd that night and I was still buzzing with excitement. Jools Holland's show was on, and the Alphabet St video was given its British premiere. The reaction from Jools and the audience on the screen was priceless - they were as flabbergasted as was I at the musical inventivess of those 3 minutes. I know people say that the song's focus on "going down" meant that it was the most overt paen to carnal matters to play on commercial radio. I preferred the reading that it was a funky and infectious satire of USA for Africa. In this light, think of your acronym soup, Mr Surgeon General: CDC, WHO, FEMA, FDA, OSHA and all the others I'm urging you to wrangle together. As the Minneapolis genius sang
    We're going down, down, down,
    If that's the only way
    To make this cruel, cruel world
    Hear what we've got to say
    Put the right letters together
    And make a better day

    Yeah, yeah, yeah,
    Better days
[Update]
Dear Mr Surgeon General, two comments from a reader named Anonymous (prolific writer this Anonymous fellow) suggest that perhaps you're a movie person and that I add two movie scenes to my advocacy - great additions to the playlist by the way.
  • The meatpacking scene in Rocky is probably the most iconic scene that sears that meat packing institution in the mind. Straight from the rough and tumble streets of Philadelphia. Also it's a lot more family friendly than the abattoir or slaughterhouse scene in The Long Good Friday. That gothic horror of the underbelly of London that Bob Hoskins prowled.

    Gonna Fly Now (Theme from Rocky) by Bill Conti is the most inspirational music we know.

    I prefer that miraculous first Rocky movie to the sequel Rocky II because even though he lost the fight, at least made the valiant effort and tried. I'm rooting for you Mr Surgeon General, I want you to be shouting Adrienne at the end.
  • Killer of Sheep, Charles Burnett's amazing movie never saw the widespread release it deserved. It's a masterpiece in short, a look at the life of essential workers who work at meat packing plants in Los Angeles.

    This Bitter Earth by Dinah Washington
    Dinah Washington should be part of any playlist. Her voice is the sound of wist.

Mr Surgeon General,

I know the nation's mental health is your current focus but my mental health can't handle the situation in meatpacking plants and the entire food processing pipeline.

Covidious priorities?

Bill of Particulars

And so forth, Dear Mr Surgeon General...

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

Sunday, March 19, 2006

The REST Elevator Pitch

The Pitch


I somewhat share Ryan Tomayko's concern for a shorter hand language for describing REST (Representational State Transfer), but I believe that the REST elevator pitch is pretty succinct already. It packs a lot of insight into the web architectural style of which dissertations have been written. The language used in technical debates is always important and rather than devolving into the fuzziness of "highs and lows", I'll suggest here that, as a matter of advocacy, one should stick to the elevator pitch.

To recap, the REST elevator pitch is:
  • Identification Of Resources
  • Manipulation Of Resources Through Representations
  • Self-Descriptive Messages
  • Hypermedia As The Engine Of Application State
In its most common application, the pitch will lead you to the HUHXtable Quartet (HTTP / URI / HTML / XML) if we handwave away the additional content types that the web style enables you to negotiate. It is quite clear that applications of all kinds have been built on these fundamentals for both human and machine interaction.

The thing is that each plank of the pitch brings its own benefits, benefits that perhaps can accrue independently. Still you get the most bang for the buck at the internet scale by the principled combination of all of them.

In my advocacy I tend to start with resource identification as the most important plank. The reason for this is that everybody can understand the value of identification. My grandmother understands the value of a bookmark to my photos. Heck we are even seeing the social benefits of ostensibly selfish bookmarking. The importance of resource identification cannot be understated and it leads us to the primacy of the URI.

The second plank, manipulation of resources through representations, is the bread and butter of HTTP, where we have an evolving set of standard formats of hypermedia exchanged using a small set of verbs.

Unpacking the HTTP proposition leads us to the four horsemen of the web: GET / POST / PUT / DELETE

Of course you can do very well if you pick up only 2 of those verbs, GET and POST. The good Reverend HTTP is a pretty tolerant fellow and won't begrudge those that don't believe in the rule of four, although in admittedly imperfect analogies, there's CRUD (Create / Retrieve / Update / Delete) in the database world and, as far as this layered internet goes there's TCP / IP / Datalink / Physical Layer (with say Ethernet or "Wi-Fi" 802.11b/a/g)

On the other hand, if you want to be a good citizen in the town of Deadwood and indeed if you want to survive in the wild west of the web, you shouldn't abuse HTTP. HTTP abuse leads to user confusion, headaches for systems designers and a tragedy of the commons. I consider HTTP a deliberately minimalist compromise, laissez-faire distributed computing if you will.

In social settings making your intentions known can help smooth interactions. We may start with small talk but we eventually manage to discern where others stand - well most of the time at least. We all operate with imperfect information but being straightforward is often a great policy. I'm sure there's some game theory or behavioural economics that can point to the value of transparency. Perhaps it is trite in light of Machiavelli and Sun-Tzu to believe that disclosure is the best policy but at least in markets transparency tends to be the font of aggregated wisdom. On the internet scale, this translates into the notion of giving visibility to intermediaries. Arguing again by analogy, the internet is an agreement, a network of networks. You can do whatever you want on your network but to interoperate with others, a small set of primitives, the TCP/IP standards in this case, have been agreed upon. I would suggest that the web style is similarly such an overlay system. REST is an architectural style which by principled design, is optimized to lower coordination costs.

Acknowledging the benefits of idempotency, of doing things safely, will lead one to making sure the use of GET is safe. Idempotency is not just about safety however; in clearly signaling your intentions, it is also about replayability. Thus idempotency is not just about the GET method. That is the wider argument for also using that oft-neglected duo, PUT and DELETE. Tunneling everything through POST (and the completely aberrant case GET) may be convenient but it adds unnecessary opacity and unpredictability about one's application. Unpredictability in the world leads to invasions and worse I might add. The use of those four core HTTP verbs helps intermediaries understand and participate more fully in the ecosystem.

The last two planks of the REST elevator pitch, self-descriptive messages, and especially that last one, hypermedia as the engine of application state, are attempts at addressing the issues of state, caching and evolving systems amongst other things.

Now of course in the preceding paragraphs, I've handwaved away entire dissertations that have been written about architectural styles and systems design, tomes written with language more precise and concepts more subtle than I've outlined. Good samples and running code are often also a determining factor in which style or application is adopted thus the view source imperative is also one of the reasons that web has caught on so quickly.

The Hard Problems


I've recently been thinking about defining the hardest problems I've encountered in software engineering, my cursory top 10 list:
  • State
  • Caching
  • Latency
  • Concurrency
  • Search
  • Metadata
  • Persistence
  • The Holy Grail Of Extensibility
  • Structured data
  • Character encoding
Now I'm not a database person so I handwaved away all of those data peoples' worries in one word: persistence. Of course I should probably add a few more issues and indeed you probably have your own notions. Indeed I settled just two days ago on those last two, structured data and character encoding, when I characterized them as being the gruesome twosome of computer science. Perhaps also there's the issue of discovery and bootstrapping of a system but that could be considered implementation details. There are those who mention security and reliability as other hard problems and they certainly are. Still I'll also handwave those away not as technological issues but as transaction costs; the economic benefits of ubiquity and leverage are key here. It seems that humans are quite prepared to tolerate gremlins and parasites in their systems (social, biological and technological) in moderation of course.

What is interesting is that almost all of these issues are important even if you aren't dealing with distributed computing. On the internet, which is all about distributed computing however, these are crucial problems. Now addressing these problems is a pretty tall order I must admit, but it seems to me that the web style has concrete answers to almost all of these constraints. Furthermore REST also offers a couple of those very valuable system characteristics: resilience and adaptability, almost as externalities.

Search for example seems to be addressed by valuing the importance of resource identification, the URI, that leads to PageRank and other algorithms. If you start with a viewpoint that URIs are cheap, and if you model your resources appropriately, you can deal with concurrency quite reasonably. State, caching and latency are all to do with performance which is always a bear. To that I'd argue that the commerce that is taking place daily on the internet seems to be a good indication that things are acceptable even if they could be improved. Metadata is the eternal headache of course but HTTP will give you headers and soul to help a little.

Discovery is addressed by URI as identification, the notion of hypermedia (either link headers or references in the media) and perhaps the current best practices of introspection resources. Persistence and structured data, I'll argue, are being addressed, warts and all, by the relational database, the seemingly-unstoppable spread of XML and, I believe, the current ascendancy of feeds. On this last subject, the wiring of the web, I am cautiously optimistic that the Atom store dream could be an answer; i.e. the combination of feed format (say Atom/RSS) and a wire protocol - which perhaps the Atom Publishing Protocol or similar could be. On the question of extensibility, last year I started a response that I felt was needed due to Dion Hincliffe's unbelievable assertion that "extensibility was the Achilles heel of REST". It always takes me a year to respond to minor footnotes but if there's one thing I'll do in the next few months, I'll be sure to write about REST and the Holy Grail of Extensibility.

But anyway, that is getting ahead of myself. I've been told to save my musings for "the book" or to stick to writing the running code that will "show, rather than tell" yet I keep falling for this web as conversational engine. Still there are undoubted social benefits of these exchanges and perhaps conversations like these are another virtue and externality of the web style. In any case, consider this my long winded response, Ryan: in matters of technology adoption and systems design, let's stick to the elevator pitch.

Further reading:

The Sequel


[Update - March 27, 2006] It seems as if everyone is getting into shaping the pitch and the language has been quite interesting.
  • Danny Ayers remarked that we should go back to the source and points at Tim Berners-Lee's pitch from last year
    Web architecture 101
    • Things are denoted by URIs.
    • Use them to denote things.
    • Serve useful information at them.
    • Dereference them.
    That indeed is about as brief a pitch as some executives will be able to handle and it covers the essentials.
  • Tim Bray's pitch is fairly pithy too, and for the last plank he uses
    You expect to ship a lot of URIs around in the bodies of requests and responses, and use them in operations that feel like link following.
    Now that's quite a mouthful in a presentation but it works fine in an elevator. I think "dereference them" is more terse and captures much of the same insight.

    As an engineer who is interested in precision in language, I tend to prefer Roy Fielding's formulation of "hypermedia as engine of application state". It's short and alludes to both the implementation and the area of focus of the web style. But your mileage may vary and I think it depends on the audience. We should be interested in a pitch that works because the advocacy struggle isn't over even if some are already thinking about the future issues. In this light, it was good to see Joe Gregorio again emphasizing the Show me the code route he embarked on last year. That View Source Imperative is the secret ingredient as far as adoption goes.
Note that everyone seems to conform to the Rule of Four as far as bullet points in the pitch go. Interestingly enough, Roy Fielding used to go with a five point pitch until he merged what were his previously separate definitions of "resource" and "URI" into the phrase "Identification Of Resources". I've proposed my own four point plan as a model for ArRESTed Development or The Low End Theory.

I concur of course with the endorsement of the formulation of REST - the web style and not just because I seem to have juice (of the google flavour) on that front having internalized that phrase long ago in my interventions, but because it gives us a tag, REST, combined with a catchphrase. As we know, every movie needs a tag line. Especially in Deadwood: "6 million ways to die, choose one". That is the B-movie of distributed computing. We want to move beyond grindhouse pulp fiction and get some of those glamourous, golden Hollywood trophies. And if that fails there's always the Gospel of REST.

The Elevator Soundtrack

  • Outkast - Elevators (Me & You)
    The chorus of this laidback piece of Atlanta folklore could well be a stand-in for the inclusiveness of the web style and its architecture of participation.
    Me and You
    Your Momma and Your Cousin Too
    Rollin' Down The Strip On Vogues
    Comin' Up Slammin' Cadillac Doors
  • [Update] A hat tip to the good doctor, Ernie Prabhakar, who points to a real life Huxtable Quartet. When I first started using HUHXtable, I was thinking of the Cosby Show and of comfy sweaters, thus it's great to hear that the Slide Huxtable Quartet is itself a tribute to that show and to the "Play It Again, Russell" episode in which Cliff's father, trombonist Russell "Slide" Huxtable (Earl Hyman) hosts a jam session. REST has even got a house band.
  • Miles Davis - Ascenseur Pour L'Echafaud
    I've always loved Miles Davis's cool soundtrack to one of the great film noirs which saw a great print released last year. It's atmospheric and gets the job done - and with verve. I am always upset that ascenseur is translated as lift rather than elevator which is more heady to my ears. I'll conclude by suggesting that the web style will save you from heading up the Elevator to the Gallows.


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