Dewey’s “Pattern of Inquiry”: money shot

From John Dewey’s Logic: The The­ory of Inquiry, by way of John J. McDermott’s The Phi­los­o­phy of John Dewey: The Struc­ture of Expe­ri­ence, this sum­mary of Dewey’s own chap­ter on the nature of inquiry.

In par­tic­u­lar, this strikes me as some­thing that bears on many dis­cus­sions I’ve had about machine learn­ing and mod­ern sta­tis­tics. And it reminds me of a cul­tural prob­lem I’ve been wrestling with among genetic pro­gram­ming researchers and oper­a­tions research peo­ple for some time. And would be use­ful in explain­ing the ped­a­gogy and prac­tice of engi­neer­ing “crafts­man­ship”, and more specif­i­cally that of soft­ware development.

Oh, and com­plex sys­tems research and emer­gence, too. That’s in there, somehow.

So you can see why I might think it’s impor­tant to understand.

I can’t quite put my fin­ger on it, but some­thing in here—perhaps obfus­cated by what today we might per­ceive as a dif­fi­cult style, but which is an attempt to con­vey very spe­cific con­cepts in a way that tries to avoid misunderstanding—is vital to many threads in mod­ern life. In par­tic­u­lar, some­thing deeply impor­tant hap­pens down in the last para­graph, where I’ve high­lighted it.

I would love to have a cor­re­spon­dent who could dis­cuss this pro­duc­tively. Per­haps one might be found to read the orig­i­nal Dewey, or even the few sur­round­ing pages extracted in McDermott’s sum­mary, and tell me just what it is I’m respond­ing to?

…Inquiry is the directed or con­trolled trans­for­ma­tion of an inde­ter­mi­nate sit­u­a­tion into a deter­mi­nately uni­fied one. The tran­si­tion is achieved by means of oper­a­tions of two kinds which are in func­tional cor­re­spon­dence with each other. One kind of oper­a­tions deals with ideational or con­cep­tual subject-​​matter. This subject-​​matter stands for pos­si­ble ways and ends of res­o­lu­tion. It antic­i­pates a solu­tion, and is marked off from fancy because, or, in so far as, it becomes oper­a­tive in insti­ga­tion and direc­tion of new obser­va­tions yield­ing new fac­tual mate­r­ial. The other kind of oper­a­tions is made up of activ­i­ties involv­ing the tech­niques and organs of obser­va­tion. Since these oper­a­tions are exis­ten­tial they mod­ify the prior exis­ten­tial sit­u­a­tion, bring into high relief con­di­tions pre­vi­ously obscure, and rel­e­gate to the back­ground other aspects that were at the out­set con­spic­u­ous. The ground and cri­te­rion of the exe­cu­tion of this work of empha­sis, selec­tion and arrange­ment is to delimit the prob­lem in such a way that exis­ten­tial mate­r­ial may be pro­vided with which to test the ideas that rep­re­sent pos­si­ble modes of solu­tion. Sym­bols, defin­ing terms and propo­si­tions, are nec­es­sar­ily required in order to retain and carry for­ward both ideational and exis­ten­tial subject-​​matters in order that they may serve their proper func­tions in the con­trol of inquiry. Oth­er­wise the prob­lem is taken to be closed and inquiry ceases.

One fun­da­men­tally impor­tant phase of the trans­for­ma­tion of the sit­u­a­tion which con­sti­tutes inquiry is cen­tral in the treat­ment of judge­ment and its func­tions. The trans­for­ma­tion is exis­ten­tial and hence tem­po­ral. The pre-​​cognitive unset­tled sit­u­a­tion can be set­tled only by mod­i­fi­ca­tion of its con­stituents. Exper­i­men­tal oper­a­tions change exist­ing con­di­tions. Rea­son­ing, as such, can pro­vide means for effect­ing the change of con­di­tions but by itself can­not effect it. Only exe­cu­tion of exis­ten­tial oper­a­tions directed by an idea in which rati­o­ci­na­tion ter­mi­nates can bring about the re-​​ordering of envi­ron­ing con­di­tions required to pro­duce a set­tled and uni­fied sit­u­a­tion. Since this prin­ci­ple also applies to the mean­ings that are elab­o­rated in sci­ence, the exper­i­men­tal pro­duc­tion and re-​​arrangement of phys­i­cal con­di­tions involved in nat­ural sci­ence is fur­ther evi­dence of the unity of the pat­tern of inquiry. The tem­po­ral qual­ity of inquiry means, then, some­thing quite other than that the process of inquiry takes time. It means that the objec­tive subject-​​matter of inquiry under­goes tem­po­ral modification.

Ter­mi­no­log­i­cal. Were it not that knowl­edge is related to inquiry as a prod­uct to the oper­a­tions by which it is pro­duced, no dis­tinc­tions requir­ing spe­cial dif­fer­en­ti­at­ing des­ig­na­tions would exist. Mate­r­ial would merely be a mat­ter of knowl­edge or of igno­rance and error; that would be all that could be said. The con­tent of any given propo­si­tion would have the val­ues “true” and “false” as final and exclu­sive attrib­utes. But if knowl­edge is related to inquiry as its war­rantably assert­ible prod­uct, and if inquiry is pro­gres­sive and tem­po­ral, then the mate­r­ial inquired into reveals dis­tinc­tive prop­er­ties which need to be des­ig­nated by dis­tinc­tive names. As under­go­ing inquiry, the mate­r­ial has a dif­fer­ent log­i­cal import from that which it has as the out­come of inquiry. In its first capac­ity and sta­tus, it will be called by the gen­eral name subject-​​matter. When it is nec­es­sary to refer to subject-​​matter in the con­text of either obser­va­tion or ideation, the name con­tent will be used, and, par­tic­u­larly on account of its rep­re­sen­ta­tive char­ac­ter, con­tent of propositions.

The name objects will be reserved for subject-​​matter so far as it has been pro­duced and ordered in set­tled form by means of inquiry; pro­lep­ti­cally, objects are the objec­tives of inquiry. The appar­ent ambi­gu­ity of using “objects” for this pur­pose (since the word is reg­u­larly applied to things that are observed or thought of) is only appar­ent. For things exist as objects for us only as they have been pre­vi­ously deter­mined as out­comes of inquiries. When used in car­ry­ing on new inquiries in new prob­lem­atic sit­u­a­tions, they are known as objects in virtue of prior inquiries which war­rant their assert­ibil­ity. In the new sit­u­a­tion, they are means of attain­ing knowl­edge of some­thing else. In the strict sense, they are part of the con­tents of inquiry as the word con­tent was defined above. But ret­ro­spec­tively (that is, as prod­ucts of prior deter­mi­na­tion in inquiry) they are objects.

[Lat­ter empha­sis is mine.]

Citibank “SEC line item” double-​​books authorized charges on compromised accounts?

We have a Citi Mas­ter­Card that was one of the (appar­ently) hun­dreds of thou­sands whose secu­rity was com­pro­mised in the recent Heart­land Secu­rity Breach.

I’d heard the news about the breach, but the first sign I had that we were involved was when I tried to use the card for an online pur­chase. No email, no phone call, noth­ing from Citi regard­ing the prob­lem. When the trans­ac­tion failed three or four times I knew it wasn’t the ven­dor website’s fault, so I checked my Citi account online. There I saw a bright red warn­ing that my account had been shut down because of risk of compromise.

When I called (this was back on Feb­ru­ary 20th or so, I think) to com­plain about the lack of notice, the cus­tomer ser­vice rep­re­sen­ta­tive explained that Citi had no time or resources to notify all the card­hold­ers, espe­cially given the scale of the pos­si­ble breach, but had rather acted to place all the pos­si­bly com­pro­mised accounts on hold as soon as they could. I was told they had issued new cards with new account num­bers, at no charge to any of us, and that the new card would be here shortly.

Well, we got the new card, and we acti­vated it and set up online access.

Inter­est­ing thing we dis­cover, which (aside from the gen­eral lack of cov­er­age of the Heart­land fiasco in the press and blo­gos­phere) is why I’m both­er­ing to write this: a strange charge we didn’t rec­og­nize, with code TOTAL SEC BALANCE TRANSFR-ITEMIZED. The amount charged ($99) was the same as the new charges that had accrued on the old account before the trans­fer, but “99” is one of those num­bers that makes you won­der about inten­tional design. In any case, this clearly implied we had either been double-​​charged, or charged an extra and unau­tho­rized $99 fee.

So I got back on the phone and called cus­tomer ser­vice just now, and spoke with Jim. He explained to me that TOTAL SEC BALANCE TRANSFR-ITEMIZED was a “sys­tem mes­sage”, which rep­re­sented (as it seemed) the sum of items booked to the old closed account just before the new one was set up. He explained it was an “account­ing quirk in their sys­tem”, and that it would dis­ap­pear at the begin­ning of the next billing cycle. Mer­chants had autho­rized $99 worth of charges right before the account was closed and bal­ances were trans­ferred, and the mys­te­ri­ous line item indi­cated the tran­si­tion from “autho­riza­tion” to actual charge. Jim explained that gen­er­ally this tran­si­tion removes the autho­riza­tion charge from the billing sys­tem, but because the account changed in the interim period, the charge accrued on the new account but the autho­riza­tion couldn’t be removed from the old one (or some­thing like that). He pointed out (very help­fully) that if my card had been mis­placed or stolen, the same dynam­ics would have kicked in there, too, and the same sort of trans­ac­tions would have happened.

This got me think­ing. It may be ephemeral, a “quirk of the sys­tem”, but nonethe­less on the books and until the autho­riza­tion is cleared I owe an extra $99 to Citi. It’s mere coin­ci­dence of tim­ing that our account came to $99. But it seems highly likely (given the several-​​days typ­i­cal delay between autho­riza­tion and charge in many mer­chants’ trans­ac­tions) that any reg­u­lar card­holder might have one or more trans­ac­tions span­ning a period like this.

So here we have hun­dreds of thou­sands, or mil­lions of credit card accounts, all com­pro­mised and all syn­chro­nously being trans­ferred to new accounts. What frac­tion of those had inter­rupted trans­ac­tions span­ning the syn­chro­nized trans­fer, result­ing in these TOTAL SEC BALANCE TRANSFR-ITEMIZED “sys­tem messages”?

The num­bers are hard for me to even esti­mate with the infor­ma­tion I have on hand (though Jim did allow it was “really a lot” of cards). Seems big.

The thing I have to won­der about is: just at this cru­cial junc­ture in the finan­cial cri­sis, when the com­pany is under the clos­est scrutiny in decades and the stock is suf­fer­ing from mas­sive loss of investor faith, Citi has double-​​booked a siz­able Accounts Receiv­able sum.

And prob­a­bly not just Citi.…

Something more focused on planning, experience and practice

Still try­ing to put my fin­ger on some­thing both­er­ing me. Very sub­jec­tive, no doubt ill-​​considered… but still there and not quite stated clearly enough.

This is some­thing about busi­ness, project man­age­ment, plan­ning and imple­men­ta­tion: About how a cer­tain class of man­ager views the spec­i­fi­ca­tion of goals, the sense that goals met cre­ate busi­ness value, and how those peo­ple deal with the real peo­ple whose work it is to con­nect the two ide­al­iza­tions (goal, value) to one another by apply­ing their expe­ri­ence, insight, and abil­ity to com­mu­ni­cate.

In my expe­ri­ence, soft­ware devel­op­ers are appro­pri­ate to the task; “com­puter pro­gram­mers” can­not as a rule reli­ably deliver value from their work.

This is some­thing about ped­a­gogy, grad­u­ate train­ing, the Acad­emy and spe­cial­iza­tion: About how grant appli­ca­tions are writ­ten years before monies are acquired; how “real” aca­d­e­mic projects are spelled out in grant appli­ca­tions as if fore­sight were per­fect and explo­ration was ratio­nal, while the work is done by sub­sti­tutable and inex­pe­ri­enced stu­dents and young fac­ulty; how “home­work” projects and eval­u­a­tions are treated as if indi­vid­ual peo­ple can learn in a vac­uum of read­ing and self-​​direction and wordy lec­ture, as if text­books were help­ful with­out con­ver­sa­tion; as if the cost, util­ity, qual­ity and dura­tion of schol­ar­ship were all per­fectly fun­gi­ble with one another, per­fectly liq­uid… sub­ject to insignif­i­cant exchange costs not wor­thy of note.

In my expe­ri­ence, stu­dents learn when they work col­lec­tively on a shared goal, sup­port­ing one another, and in the process learn by dis­cov­er­ing and shar­ing their nonover­lap­ping skills: when they “cheat”. “Stars” who can­not explain their work, who can­not col­lab­o­rate, who dis­dain “cheat­ing” (by the stan­dards of most mod­ern Honor Pledges and tenure review com­mit­tees) by sit­ting qui­etly by them­selves and doing what their mas­sive insight has revealed is the path to what you (mere peo­ple) need… these folks can­not as a rule reli­ably deliver value from their work.

This is some­thing about the the­ory and prac­tice of arti­fi­cial intel­li­gence, oper­a­tions research, machine learn­ing, and meta­heuris­tics: About the unwill­ing­ness or inabil­ity to treat tech­niques pre­scrip­tively except as a form of self-​​promotion of one’s own research or per­sonal bias; about the strangely per­sis­tent short­fall in com­mu­ni­cat­ing the util­ity of those thou­sand vari­ant meth­ods from lin­ear pro­gram­ming to fic­ti­tious play to genetic pro­gram­ming or graph­i­cal model learn­ing, any one of which might poten­tially answer ques­tions, iden­tify pat­terns, and help peo­ple invent soft­ware or phys­i­cal engi­neer­ing designs; about a cul­ture of “prac­ti­tion­ers” who can­not be both­ered to learn enough the­ory to explain why their approach is suf­fi­cient for their par­tic­u­lar tasks, and a sep­a­rate cul­ture of “the­o­rists” who can­not be both­ered to learn enough of best prac­tice to explain why their approach is nec­es­sary for any task.

In my expe­ri­ence, the aver­age time an algo­rithm is expected to run may be of inter­est, but as far as my par­tic­u­lar prob­lem is con­cerned it has no bear­ing until I have run it for a while to see some results, see how it’s going, suss out what “kind” of prob­lem this spe­cific instance is—to see what value comes from “how long” it will take to run, as opposed to see­ing any answer at all. I do work, I cre­ate stuff, to bet­ter under­stand the path from ide­al­ized goal to real­ized value. Things like speed, accu­racy, ease of use and under­stand­abil­ity, these are things I try to mea­sure, not assume before­hand for some com­bi­na­tion of prob­lem and approach, and I want infor­ma­tion with which to update my assess­ments as quickly and accu­rately as pos­si­ble. Because for some strange rea­son I am unable to tell before­hand how dif­fi­cult an inter­est­ing instance of a prob­lem will be, even with the most famil­iar approach.

I have a great deal of both prac­ti­cal expe­ri­ence and the­o­ret­i­cal back­ing in these mat­ters, and all that has hap­pened for me (your mileage may vary) is that I am more uncer­tain about my prej­u­dices, and yours, all the time.

On aver­age, doing some­thing small, imme­di­ately, is bet­ter than talk­ing a long time about the many things you could do, about poten­tial­i­ties and lim­its and aver­age behav­ior. And per­haps bet­ter than doing “just any­thing” is con­sid­er­ing the small set of sim­ple incre­men­tal improve­ments, select­ing the one that seems it will pro­vide the most value for that scale of effort, and try­ing it.

In too many domains we con­flate ratio­nal­ity with rigor, and treat the straight­est path between them as a recipe for suc­cess. But isn’t “ratio­nal­ity” an inten­tion­ally bounded thought process? a strat­egy of fully dis­miss­ing alter­na­tives as greed­ily and thor­oughly as possible?

But I don’t want to spend my time with rig­or­ous peo­ple. They’re fuck­ing annoy­ing, when you get right down to it. When I’m actu­ally try­ing to solve a prob­lem, I would pre­fer to col­lab­o­rate with ten expe­ri­enced peo­ple (some “the­o­rists”, some “prac­ti­tion­ers”) who can speak quickly, approx­i­mately, and explore oh so many alter­na­tives. I want peo­ple who can use sim­ple, stu­pid, non-​​optimal tools all of us poor fools can under­stand… but who in using those tools dis­cover many paths by which we might col­lec­tively trace our way—any god­damned way as long as we arrive—from our imme­di­ate goal to our desired value.

Because value trumps method.

And value (as I’ve said) is some­thing that may not be ratio­nally pre­dictable. Value comes along the way, it emerges. Value in so many cases is con­tin­gent on mul­ti­ple scales of expe­ri­ence, long and short term, on con­stantly revised and dis­carded mod­els, on alter­na­tive hypothe­ses eas­ily exchanged. Achiev­ing value depends on my tools, my incli­na­tion, my habit. On what I’ve done so far.

And all these change from per­son to per­son, from prob­lem to prob­lem. From moment to moment. In my expe­ri­ence, on a shorter scale than any—any—problem-​​solving method, whether it’s a busi­ness project, a the­sis or grant, a sin­gle “sim­ple” appli­ca­tion of heuris­tic to instance.

Some­thing deep is miss­ing out there.

Can I blame Herb Simon?

I’m work­ing on a pre­sen­ta­tion and a chap­ter for the forth­com­ing GPTP Work­shop, and try­ing to cap­ture some­thing that’s both­ered me for… well, as long as I’ve been writ­ing com­puter sim­u­la­tions and doing algo­rith­mic search and opti­miza­tion, which is (jesus) like 34 of my life. And moreso recently, when I went back to grad­u­ate school in Indus­trial & Oper­a­tions Engi­neer­ing, and was exposed to a suite of cul­tural norms I had only expe­ri­enced indi­rectly when I was a biologist.

And I’m not sure how best to put my fin­ger on it or sum it up, so let me just dump a lit­tle pile here to fes­ter while I try to think more: A core myth of “mod­ern” com­puter sci­ence and applied mathematics—a foun­da­tional one it seems—is that algo­rithms are autonomous and atomic.

And yes, this prob­a­bly seems like a “yeah, so?” real­iza­tion. But I sit here work­ing on the Nudge sys­tem and design­ing it to be used inter­ac­tively in exploratory set­tings (unlike, as far as I know, any other GP sys­tem). And I found myself rolling my eyes (again) at the sense­less folderol a com­puter sci­ence grad­u­ate was say­ing about soft­ware devel­op­ment the other day at lunch, about how any­thing that “answers the ques­tion as fast as pos­si­ble” is the best pro­gram­ming solu­tion, QED. And so on.

I can’t think of a sin­gle exam­ple of a search, opti­miza­tion, machine learn­ing, neural net train­ing, agent-​​based sim­u­la­tion, AMPL opti­miza­tion or other pro­gram­ming project and “run”, in a 25 year span, where I didn’t watch what was hap­pen­ing, see a prob­lem, stop the “run”, make changes, and re-​​start it. Not one. I’ve fid­dled with training/​test data break­downs, seen symp­toms of bugs and model defi­cien­cies and sta­tis­ti­cal anom­alies that lead me to inter­vene, or seen slow­ness (or over-​​eagerness) to con­verge that led me to improve my code, or seen tran­sient pat­terns that were more use­ful or inter­est­ing than the “real” pro­gram paid atten­tion to.

Well, OK: Maybe I’m not a very good pro­gram­mer. This is a thing I would agree with.

I note that I haven’t writ­ten a paper or even an email with­out revi­sion. I haven’t had an earnest con­ver­sa­tion on a tech­ni­cal topic with­out some minor argu­ment and restate­ment and analy­sis. I haven’t will­ingly pro­grammed in maybe a decade with­out unit tests and a dynamic notion of “require­ments” and “goals”. And I haven’t been in a sem­i­nar with­out ques­tion­ing the direc­tion of the research, ask­ing about tan­gents and par­al­lel tracks and the roads untraveled.

It’s what peo­ple do.

Yet in AI research, and in not just the lit­tle byway that’s genetic pro­gram­ming but also that broader world of com­puter sci­ence and oper­a­tions research and machine learn­ing and dat­a­min­ing and so on, peo­ple still act as if analy­sis, mod­el­ing, design and pro­gram­ming were some­thing utterly, dis­tantly sep­a­rate from exe­cu­tion of code. As if there were a “right” algo­rithm in a gen­eral case, as if faster was always bet­ter, as if it is not the job of an engi­neer to know any­thing about domain, or to adapt in any way to “externalities”.

As if you could spec­ify a prob­lem up front, spell out every­thing in a nice three-​​ring binder, and “hand” this spec­i­fi­ca­tion to some plug-​​compatible mech­a­nis­tic “solver” or “pro­gram­mer” that was opti­mally fast and prov­ably con­ver­gent and cor­rect in the limit, and the lights would flash and the bell would go “ding” and a lit­tle punch card would poke out at you like the pert tongue of Athena her­self with the answer.

This is a prob­lem for me.

Quite lit­er­ally, since I gladly walked away from my last Ph.D. pro­gram (which was an excel­lent one in its field) for essen­tially this core dif­fer­ence. There’s some­thing wrong, and I increas­ingly believe dan­ger­ous, about… well, some­thing I can’t quite name. Call it “hubris” or “cow­boy cul­ture” or “objec­tivism” if you really want to get nasty. That suite of traits that includes finan­cial engineering’s unques­tion­ing reliance on stu­pid “sim­pli­fy­ing” assump­tions; and com­puter science’s inter­est in algo­rith­mic com­plex­ity at the expense of find­ing answers to ques­tions; and almost all of oper­a­tions research, where “be wise, lin­earize” is a mantra; and my own tech­ni­cal spe­cialty of meta­heuris­tics, where even today peo­ple hand me charts labeled “aver­age per­for­mance vs. time” no mat­ter how many times I reject their papers and yell at them in print because I have never cared about aver­age per­for­mance.

There’s a stink of mind:body dual­ity in there. A kind of biased religio-​​mathematization that imag­ines there is a best, an ideal, a way of delim­it­ing a ide­al­ized set of prob­lems that is bet­ter and more tractable and more ele­gant than any sin­gle instance.

Than the real world, for example.

And increas­ingly, I think Herb Simon is the antichrist because of it.

When I’m design­ing a genetic pro­gram­ming sys­tem, or a mul­ti­a­gent sim­u­la­tion, or a soft­ware devel­op­ment (not com­puter sci­ence) project, or a meet­ing or a story for that mat­ter, I’m not look­ing for autonomy.

The basis of my inter­est in genetic pro­gram­ming (and machine learn­ing and sta­tis­tics more gen­er­ally) is how it aids peo­ple. The C pro­gram­ming lan­guage, as far as I’m con­cerned, is not auto­mat­i­cally “faster” than Python, because I count the time it takes to think and write and debug and under­stand a C pro­gram and a Python pro­gram. If the same algo­rithm will take ten times longer to code in C than Python, and may hide secret bugs behind stu­pid pointer errors or strange type han­dling, and which blocks my abil­ity to use test-​​driven devel­op­ment and emer­gent soft­ware design… that’s worse, not better.

And that same short­com­ing is true, I real­ize, about the way aca­d­e­mics approach non­lin­ear pro­gram­ming and bioin­for­mat­ics and swarm-​​based com­put­ing and stuff, too. Papers are writ­ten, projects under­taken, grant monies spent, and grad­u­ates pooped out into the work­place as if peo­ple who haven’t even met me could deter­mine what I wanted in a given situation.

They piss me off like the worst mar­keters do, in other words. [Iron­i­cally, the most beloved of my aca­d­e­mic friends never watch TV, and the most beloved of my mar­ket­ing friends never pay atten­tion to the math.…]

Here: No mat­ter what your pro­fes­sor tells you, peo­ple still have to ana­lyze and model a prob­lem; spend time typ­ing C or Python or AMPL code some­where; debug semi­colons or mem­ory man­age­ment or matrix def­i­n­i­tions or recur­sion stacks; spend hours star­ing at results try­ing to con­coct rules from their intu­itions for accept­abil­ity (or risk re-​​running their exper­i­ments ten­fold with dif­fer­ent para­me­ters in an attempt to “get bet­ter results”).

I count the con­ver­sa­tions, the lab meet­ings, the code review and unit test writ­ing, the peer review and the con­fer­ences and the late nights spent work­ing wait­ing to see—like Kekule—the dev­ils dance in a cir­cle before we under­stand benzene’s struc­ture. I count how hard it is to talk about some­thing, how long it takes to see a way of solv­ing a prob­lem, how hard it is to under­stand what you have in the end, to tell whether you’re “done” or not. And how hard it is to do it again, to re-​​use what you’ve learned. I count that as wall-​​clock time, as my own mea­sure of “net com­pu­ta­tional complexity”.

I sup­pose my men­tal model is much more a kind of heuris­tic con­ver­sa­tion, a part­ner­ship between math­e­mat­ics, man and machine. Where soft­ware and math­e­mat­ics are a sim­ply ways of fram­ing spe­cial parts of a conversation.

Value does not auto­mat­i­cally come with speed, or even with rigor. I do not value rigor in my con­ver­sa­tions; I find it cloy­ing. I pre­fer explo­ration (of ideas and errors) and exploita­tion (of good ideas and cliches) in bal­ance, not just one or the other.

Why do you think I blame Herb? Hint: prag­ma­tism. And if not Herb, who should I blame?

update: Part of why I want to blame Herb Simon comes from con­ver­sa­tions with Michael Cohen, some years ago. See, for exam­ple, his “Read­ing Dewey: Reflec­tions on the Study of Rou­tine” in Orga­ni­za­tion Stud­ies (2007) vol 28 pg 773.

The overdue library books I really wish I had taken time to read before today

, , , , and finally Amer­i­can Mag­a­zine Jour­nal­ists, 1741–1850 (Dic­tio­nary of Lit­er­ary Biog­ra­phy) Vol­ume 73, which pisses me off because it’s so god­damned expen­sive. Gale Research (now dis­play­ing your name in the sky­line near my house), you are increas­ingly becom­ing an obstacle.

[He said, wav­ing a fist at the sky, not real­iz­ing that Gale Research might well be a dif­fer­ent ani­mal from the Thom­son Reuters sign he was indi­cat­ing. And also fail­ing to con­nect in any way his dis­ap­point­ment in find­ing how expen­sive the Dic­tio­nary of Lit­er­ary Biog­ra­phy actu­ally is to his fail­ure in read­ing the one he had been host­ing in his own home for sev­eral weeks.]