Being in the (art) world / decrypting for david 3

The White House


It’s summer, a year later.

David Ireland’s house at the corner of 20th and Capp is now painted a uniform white. The faded battleship gray exterior is replaced, seemingly overnight, by a white primer. A promise of future color.

The transformation begins in January. First, the house is swathed in scaffolding and standard-issue lead paint abatement black gauze. There is a bustle of activity, crews of men in white painter’s coveralls, prepping the exterior surface, then climbing over the scaffolding with compressed air paint sprayers.

The black gauze comes off mid-March.


The shockingly white exterior surface is revealed. Longtime neighborhood residents wonder: how does it stay so white? We puzzle it over, at the community meetings, or drinking wine in backyards under the bougainvilleas at sunset. Why isn’t this a magnet for tagging, a new playscape for the graffiti artists of the Mission District?

But the surface stays white. The occasional tag is quickly covered, so much so that the faded old image of this house, burned into my mind’s eye over the previous years, starts to give way. Replaced by a gleaming white object, the outlines of the edges so well-defined, the exterior surfaces revealed as astonishingly well ornamented and detailed: lines carved into fresh memory the same way the exterior wood embellishments were carved by an accomplished accordion maker more than a century ago.


Every Tuesday and Friday morning before eight, I sweep the detritus on the sidewalks and gathered in the tree wells of Capp street to the curb so that city workers driving massive street sweeping vehicles can dispose of the trash elsewhere. Working my way up to twentieth street from nineteenth, the flotsam mounts: dead leaves. Newspapers, door hangers inviting residents to purchase wireless plans, vote for parks, have indian food and pizza delivered. Feces. A sock. Whole beds, discarded furniture. Used condoms, and nearby a disturbing number of used qtips indicating some kind of novel use by sex workers.

And at the end of the block: white. Perpetually white, even in the midst of the routine Capp street grime.


Immediately next door to 500 Capp, there is also a massive amount of activity. The two-family house with fire damage is being re-built. The permits for 506 and 508 Capp street indicate the same architects and contractors as the on-going work on 500 Capp street. Seems likely, without going into too much detail, that the owners of these properties are the same.

This house is also swathed in scaffolding, with a crew of people, and a new seismic-safe foundation. There is a new roof, visible from the street, and a lovely array of skylights.

And across the street, kitty-corner along Capp between 20th and 21st street, a glorious old property at 505 Capp street is getting a complete restoration, also including an earthquake retrofit with another crew of painters and roofers and drivers of utility trucks. This newly-swank structure winks across Capp street, towards the corner.


The Anti-Archive

500 Capp Street Foundation

Template-fu, Zen Linking

Welcome, weary traveller.

Please, enter the dojo. Have some tea. Sit, and listen to me expound on the state of linking today.

There are a number of new techniques for linking in C+11. Some are not widely known. Some require long nights, on cold drafty mountain tops to fully master.

The new forms:

1. Extern Template

When you want white. Nothing. A truly private implementation, with only the API exported. Use extern template on class specializations to tell the compiler to not implicitly instantiate any symbols when the class is used by user code. For template functions as well.

Smartly done on forward-declarations, after the main class has been defined, making them post-declarations.  Pretty much anything goes: the syntax is the same as the syntax for explicit instantiations. Precisely because the two are a matched pair: with the power to prohibit instantiations comes the responsibility to explicitly instantiate them in some form. Wax on, wax off.

With C++11, extern template is portable. GNU C++ users have used it widely since 2002.

2. -fvisibility=hidden

And why it’s different from extern template. There seems to be a lot of confusion out there, about this. And let’s face it, the syntax is atrocious! Absolutely abominable.

GNU extensions, apply as attribute on namespaces.

3. constexpr


4. Namespace association. Tarsier-style.

But I will not bore you, weary traveller. Sit and enjoy your beverage. There will be plenty of time to talk about new techniques and methods later, after you have rested from your voyage.