an obession with first principles

Reflecting Lately

Posted: Friday Jan 28th | Author: JohnO | Filed under: Anthropology, Philosophising, Sociology | View Comments

I have been doing a lot of reflection lately. And I am realizing just how destructive and poisonous our American culture has become. The culture has an expectation of never-ending positive returns, utopia. The refusal to be present in ugly times and ugly places. The refusal to cry that certain things labelled as beautiful are horrifically ugly.

There really doesn’t seem to be a single individual that I have seen who is capable of standing against with a vision and rhetoric to combat it. Because to do exactly that is not pragmatic. We believe in a fatalistic society. And there are dogmas which we will never cross. Never mind that those three combined traits exclude one another. Paradox exists. It is in people.

Let us all be entertained while the world burns. A grim note to be sure. But very few people I have actually met that want to change. They want to do things. They want to make things. They may even want to change the way things are done. But no one wants to change themselves. I hear they exist. I’d love to meet them.

It is a sad day in my mind. I don’t think what the people in Egypt did today could actually happen here. Walmart would have a sale and the mob would be pacified.

Models of Knowing

Posted: Wednesday Jan 12th | Author: JohnO | Filed under: Dialogue, Epistemology | View Comments

Over at Maxistentialism Max writes about the epistemological problem of observations, and our own models of the world. He doesn’t have comments, so I decided to respond here (Hi, Max). How do you know if what you believe about what you observe is actually true? We build up models of the world and map data onto them. Only when enough data (and we are conscious of it) doesn’t match are we free to redraw our model of the world we observe.

I claim that the only escape from this epistemological trap is science

I think he takes it as a blow to his claim that Stephen Hawking doesn’t think this is accomplishable. I don’t think it is either (Max, take a read of Personal Knowledge by Michael Polanyi, a chemist and philosopher who also doesn’t think it is possible). But what I find really funny is that St. Augustine in the 4th century pretty much came to the same conclusions regarding epistemology (I’d recommend St. Augustine’s Theory of Epistemology by Bubacz – you’re likely to only be able to find that in a good library.)

Hypocrisy Defined

Posted: Monday Jan 10th | Author: JohnO | Filed under: In the News | View Comments

That’s what we’re meant to believe, anyway. But we know it is not true. This culture, this habit, of eliminationist rhetoric is not happening in a vacuum. It’s happening in a culture of widely-available guns (thanks to conservative policies), of underfunded and unavailable medical care, especially mental health care (thanks to conservative policies), of a widespread belief that government is the enemy of the people (thanks to conservative rhetoric), and of millions of increasingly desperate people (thanks to an economy totally fucked by conservative governance).

The shooting in Tucson was not an anomaly. It was an inevitability.

And as long as we continue to play this foolish game of “both sides are just as bad,” and rely on trusty old ablism to dismiss Jared Lee Loughner as a crackpot—dutifully ignoring that people with mental illness are more likely to be victims of violence than perpetrators; carefully pretending that the existence of people with mental illness who are potentially dangerous somehow absolves us of responsibility for violent rhetoric, as opposed to serving to underline precisely why it’s irresponsible—it will be inevitable again.

Let’s get this straight: This shit doesn’t happen in a void. It happens in a culture rife with violent political rhetoric, and it’s time for conservatives to pull up their goddamn bootstraps and get to work doing the hard business of self-reflection.

This is one problem the invisible hand of the market can’t fix for them—unless, perhaps, it’s holding a mirror.
emphasis mine. Let’s Get This Straight

It is irrelevant to say that conservative policies are “wrong” or “right” – only that their policies and ideology were entirely in affect in this situation and thus they cannot blame any other policy. I think the article linked to above captures it perfectly.

Brothers Karamazov

Posted: Saturday Jan 8th | Author: JohnO | Filed under: History, Philosophising | View Comments

“Remember, young man, unceasingly,” Father Paissy began, without preface, “that the science of this world, which has become a great power, has, especially in the last century, analyzed everything divine handed down to us in the holy books. After this cruel analysis the learned of this world have nothing left of all that was sacred of old. But they have only analyzed the parts and overlooked the whole, and indeed their blindness is marvelous. Yet the whole still stands steadfast before their eyes, and the gates of hell shall not prevail against it. Has it not lasted nineteen centuries, is it not still a living, a moving power in the individual soul and in the masses of people? It is still as strong and living even in the the souls of atheists, who have destroyed everything! For even those who have renounced Christianity and attack it, in their inmost being still follow the Christian ideal, for hitherto neither their subtlety nor the ardor of their hearts has been able to create a higher ideal of man and of virtue than the ideal given by Christ of old. When it has been attempted, the result has been only grotesque. Remember this especially, young man, since you are being sent into the world by your departing elder. Maybe, remembering this great day, you will not forget my words, uttered from the heart for your guidance, seeing you are young, and the temptations of the world are great and beyond your strength to endure. Well, now go, my orphan.”
Fyodor Dostoyevsky

Versioning and Releasing

Posted: Thursday Jan 6th | Author: JohnO | Filed under: Leadership, Management, Programming | View Comments

OK, I wrote about this a while ago. I still see lots of people wondering about just how to do this. The local Boston django group has about four people who submitted ideas around project management and deployment.

In the abstract you really need three things: 1) a distributed version control system (I prefer git), 2) a database migration system (in the rails world, rake, in the django world south, in the php world you can use manual sql files for both up/down migrations with a simple DB table keeping track – it is essentially what rake and south do, only without an ORM), and 3) a system that gets you onto all of your servers to run the necessary commands/scripts (again, in the rails world capistrano, in the django world fabric, in the php world make some shell scripts).

I have found it easiest to create feature branches in git for new features. Having your main production server running off of master. To write new features you just create a branch off master. If these features need qa, or user acceptance testing, you can create a point release branch to push to those servers only the features which you need at any time (or if it is not that busy, just push the feature branch).

(Aside: I always work in a local branch. So if I am working on master features. I create a master_local. If I am working on feature_a which is a remote branch, I create feature_a_local. This enables you to rebase upstream changes from master/feature_a without messing up the distributed history. It also prevents the useless commits from when pull causes a merge.)

I am against a release branch. I am fine with QA/user acceptance testing branches. This is the difference. If the QA branch gets messed up – fine, create another one. If the branch for the client’s preview gets messed up – create another one. (If you’re squashing your commits it makes it even easier to keep track of things). But once something is ready for release you just don’t want to touch it. Only things you are absolutely positively sure of get on master. Nothing else. That is an easy rule to enforce. Master is production. You mess with master you’re in trouble. With point release branches you get the endless wondering of “wait, which version is production, and which is QA, and which is the clients?”. It is fine that a QA or client branch get messed up because someone merged to the wrong point branch. But when you have master checked out and you type `git merge` you better be doing the right thing. It is a lot harder to confuse `master` with `` vs ``.

Some people worry about reverting. With git it is easy to revert. If you are pushing lots of things you should be squashing your releases down to one commit (that is, when you merge your feature branch into master, squash it first). So if your release goes poorly you can migrate off whatever you need (or don’t), and then git checkout the patch before the release.

Some people worry about atomicity. Git is built from a filesystem perspective so there is no lag time where any files are out of version with one another. In any case, once you’re making DB changes in addition to your code pushes – any atomicity (in milliseconds) is ruined since the DB takes seconds (in the case of large indexes, perhaps even minutes) to get up to date. If you’re worried about atomicity stop the webserver gracefully. If you’re worried about down-time – you shouldn’t be. If you gracefully take apache down, and seconds later bring it back up it is unlikely any user will ever notice. If you’re worried about it – release when your system is least in use. (In the case of rails and django you have to stop the webserver when releasing to ensure that your updated source files get re-compiled.)

And I will add one more tip for client caching. Users ought to cache this content aggressively. As a developer it is your job to deliver the new application code to them. You will want to add a version to the querystring to all the CSS and JS that you send out in your application. So when you make a change to a statically served file, you change the version on that querystring (in a settings file) so that no user has this cached.

All in all I really don’t see the huge headache in this area. I hope that we (Active Frequency) can put together a presentation on the specifics of our django deployment process (fabric, south, git/mercurial). (We also use virtualenv to sandbox our pypi and django version dependencies.)

Modern Method

Posted: Wednesday Jan 5th | Author: JohnO | Filed under: Historical Method, In the News, Philosophising | View Comments

Despite what conservative fundamentalists and liberal fundamentalists have said in the past about the high theological stakes of historical research, the central concern of modern scholarship is not history. The issue turns not on the historicistic intellectual program that animated modern scholarship in the nineteenth and first half of the twentieth centuries but rather on the cultural character of modern criticism as an institutional outgrowth of the progressive German Enlightenment
Legaspi at The Bible and Interpretation

Michael hits upon something so central I cannot express how many conservative friends I have seen step right into it. The idea that the only way of talking, or knowing what we’re talking about is the historical-critical approach to biblical studies. And because of that we must fight the (according to them) so-called experts who deny what we profess. We must come up with alternate explanations on which to base, even prove, our faith.

(Tangentially, as a programmer this reminds me of Joel Spolsky’s Fire and Motion article in which he states that large companies continue to come out with *Shiny* *New* and *Better* versions of things that already worked as cover fire in order to get smaller companies to waste time implementing things they don’t have to. In this case, some of the faithful are entirely distracted by another task which they ought not to be bothered with.)

What actually happened is the wool is being pulled over the Church’s eyes:

As the eighteenth-century roots of modern scholarship show, the real point of separation between modern biblical criticism and the confessional modes it was designed to replace is not an intellectual evaluation of what history says the Bible is but a political and cultural orientation toward the question of what the Bible is for.

His argument continues that the inability of the Catholic, and Protestant (he doesn’t mention Orthodox, but we might as well) churches to retain a shared hermeneutic and central meaning for the Bible allowed the Bible to be spoken of by another, the enlightenment scholar. And many of these scholars were involved with the Church directly, indirectly, or clergy. All this brings us down to our present day.

Modern biblical criticism is not a rival to the kind of religious faith once invested in confessional Bibles; it is a successor to it.

Factually, I must agree with this assessment. On the ground, however, I must disagree. Especially within conservative circles, the modern critical method is glanced long-side, waiting for the moment it betrays them. Within the more liberal theologically, a theistic viewpoint is either presumed or left behind – but the approach to a solution of society’s ills is to be found within a modern critical method (whether it be liberation, gender issues, or sexual issues). I can say this from first-hand experience being in a program recently. There is very little confessional biblical study (and if there is, I haven’t seen it be very interesting. Most people just talk at one another than actually dialogue [see the problem in the Anglican Communion]). And this growing divide leads to an inevitable question for society:

The question today is not ‘What is the real cultural valence of the Bible I grew up with?’ but rather, after the decline of Christendom and the long, slow deconversion of elite culture in the West, “Why have a Bible at all?”

To this question theologians no doubt have differing answers. Historical critics, I fear, have no answer at all. As Max Weber said in his lecture on science as a vocation “academic prophecies can only ever produce fanatical sects, but never a genuine community.”

When I have to answer this question I return first to the early traditions of the Church. I cannot support the modernist hermeneutic. The Church, always and everywhere, has remained solid in her hermeneutic based on allegorical interpretation of Scripture, apostolic tradition, the self-checking of the Church in her teaching (which is a fantastic apparatus in such a diverse body) and the experience of her members in life and religion. The modernist approach (as I have argued before) cannot impart value as the teachings of the Church have done from the beginning:

If Weber is right, then the social ambition of the modern critical project has largely failed: Wissenschaft cannot sustain a genuine community because, unlike traditional religious belief, it cannot decide what is ultimately worthwhile for us to know