Showing posts with label bureaucracy. Show all posts
Showing posts with label bureaucracy. Show all posts

Friday, June 7, 2013

Bureaucracy and object-oriented programming

Today, as I had to grapple with certain aspects of real-life bureaucracy I was struck by the similarities between bureaucracy and object-oriented programming. I did a search, and found this:

Five (good) lessons the government teaches us about object-oriented programming.

I suppose there are some concepts in there that are outdated (in some communities) - for instance, I have the impression that in Python, the encapsulation concept isn't thought of as that central (cf. the 'consenting adults' paradigm). But still, the article makes good points, I think.

I think the main difference between oo programming and bureaucracy, or rather, why these concepts work so well in one case and not so well in the other, is that humans when working together as in a bureaucracy is not remotely like a logical machine. One cannot trust the output from one 'object'. The processing times are much larger. And the instantiation overhead is way too expensive in bureaucracies - people have to learn to cope with new regulations, departments, and so on.

I wonder if this can be extended somehow.. is it possible to make a model of real-life bureaucratic processing based on other programming paradigms, like a procedural programming one? If I have time at some point, I'll try to think about this more.