Power Drill Versus Python 3.9

I wrote this Complaint on Wednesday:

Consider the power drill. I learned how to use one when I was a child. I have one today that I occasionally bring out for home repair projects. It works just the way it did when I was 8 years old, and I expect nothing to change. There is something nice about tools that function the way they worked the last time you pulled them out of the basement.

Consider programming a web app. Two years ago, I created a web app that I will refer to as Buchanan2. This week I wanted to create a new web app, called Buchanan3. I thought, if I’m lucky, I can use Buchanan2 code as a scaffold upon which to build Buchanan3 in a matter of hours.

To build Buchanan2, I used ToolA and ToolB and Python-based coding. When I opened up ToolA, I got a message that Old ToolA would be deleting next month, so I better upgrade to New ToolA. Ok. I upgraded, hoping it wouldn’t break Buchanan2. Then I opened up ToolB, and it was worse in the sense that more had changed. Also, Buchanan2 had been build using Old Python. New ToolA will not tolerate Old Python. I must figure out how to upgrade to New Python. I fear that Buchanan2 will break if I make all these changes.

While navigating all the changes and upgrades, I fight to stay on the free tier of ToolB, since I already pay for ToolA.

I spent hours searching through documentation. Maybe I could have worked faster. The flesh rebels against this labyrinth, as you would flee a room when the fire alarm sounds. Suddenly, I was on Twitter, and then I was in the kitchen getting snacks.

These situations make me very frustrated, but not hopeless. I have faith that if I bang my head against the desk enough times, and read one more message board reply, that Buchanan3 will work. It has to work. It will work, eventually. I hate New Python, and New ToolB, and anyone who would force me to learn new things all over again. Yet, in this fashion, I somehow got Buchanan2 to work, years ago.

I will keep at it, as a reluctant irritable self-taught programmer.

Today is Sunday. Since writing that, I have progressed and I feel much better. One thing that helped was getting on the lowest paid tier of Tool B and writing an email directly to the creator of Tool B. He wrote back quickly and helped me see my user error. If I’m lucky, Buchanan3 will be working within 2 weeks.

This situation reminds of research by David Deming and Kadeem Noray of Harvard. They find that recent STEM graduates make more money than their peers who picked softer subjects to study in college. Demin and Noray suggest that technical skills become obsolete in a matter of years and thus the wage premium for studying STEM in college declines over the first decade of working life.

My experience is just one anecdote, but there is no way that my college education a decade ago could have exactly prepared me for New Python, New ToolA and New ToolB. Those tools didn’t exist back then.

Charter Cities and Genetic Algorithms

My dear friend Mark Lutter has had me all riled up about charter cities for a few years now. I link to a new podcast from USFQ’s Aula Magna magazine on the subject that gives a very short introduction to the topic. After recording the podcast I returned to preping a class on genetic algorithms and got all riled up because I saw a connection between the two I hadn’t seen (clearly) before. Charter cities can be real life genetic algorithms for institutional innnovation.

Genetic algorithms are a form of machine learning that searches for solutions to problems by trying out a variety of solutions. As the name implies they are based on the evolutionary algorithm of diversity-selection-amplification to adapt solutions. In a genetic algorithm a population of of possible solutions to an optimization problem is instantiated and solutions with high fitness and reproduce (using cross over, mutation, and other genetic operators) to create new populations of solutions. over enough iterations genetic algorithms are goods ways to search for solutions whe the solution space is complex and poorly defined, which is probably what institutional space looks like.

Now imagine a country that is designed as a genetic algorithm and charter cities within the country as posible institutional solutions. The constitution of the central government is the overall framework of the genetic algorithm and the diversity of institutional arrangments at local government levels (i.e. different charters) are posible solutions.

Viewing charter cities in this light, the interesting question now turns to the rules of the central government and not necesarily to the rules implemented by the charters themselves.

A few of the questions that have begun to bother me follow. What country level rules lead to convergence, or at least continual adaptation to better institutional arrangments at the local level? What should the constriants be imposed on the charters for better, faster convergence and learning? Zoning and housing restrictions would be a clear impediment to convergence as they limit foot voting. If we view charter cities (and fiscal federalism) as an experiment to search for solutions to institutional arrangements for governance, can we use the criteria used by IRB boards as the minimum set of requirements that informa the central government constitution/framework where this experiment takes place?