Sitemap
Jim McDonald

Jim McDonald

Battle Concepts

3 min readDec 18, 2015

Perhaps a better name is battling concepts? This idea is foggy and in it’s infancy but here is the seed.

I read this article by Kevin Simler

And it got me thinking about what the visualization of the Gentoo code was actually showing. The concept of “Gentoo” is the shadow in this visualization. We cannot actually see the concept but we can kind-of see it’s outline. It is like the story of looking at an elephant with touch. The difference is the elephant is morphing and changing. For a while it might have a trunk but then someone thought a snout would be more appropriate or that both the ears should have smaller trunks instead of one trunk in the center because both smell and hearing are senses. Not only is the concept changing and morphing but, as in the elephant metaphor, it is being guided and molded by the code shepherds.

Point Number One : It is hard to visualize complicated morphing concepts.

If you look at something simple, that is not changing, but has chaotic tenancies, like the logistic map, we can’t even really visualize that.

You can play and play with this simple and unchanging mathematical function and after ages still not really have a handle on how it behaves. When you add in the ridiculous complexity of a changing function, even if the function changes in a predictable and reasonable way, you can imagine getting lost in the details.

The fact that we can not just “smell” patterns in the growth and movement of software over time but we can mold it and push it in directions that keep it alive and growing in a way that is valuable to us is actually pretty impressive.

Get Jim McDonald’s stories in your inbox

Join Medium for free to get updates from this writer.

Point Number Two: Software is an idea with nice concrete descriptions but there are lots of ideas out there that are not described.

Now to be clear I hate that the best way we have to explicitly describe a complicated thing like software is a bunch of text files but there you have it, we have a way to describe (very explicitly) a complicated thing like software. That gives software a leg up on most other ideas.

Dawkins talks about memes or concepts or ideas battling it out in the substrate of minds and DNA.

Just like we eat, shit, and die in the substrate of our 3d world ideas eat, shit, and die in the ether of mind share. Sometimes ideas have to make do stuck in DNA, that is hard and slow to change. Take the idea of distributed decentralized collaborative decision making systems. In DNA it looks like this.

But in human minds it looks like bitcoin.

We haven’t even really internalized that this is a concept, ideas fighting it out in the ether. My friends think I’m crazy when I attempt to describe this. Let alone make some attempt to visualize concepts battling it out in a vicious Darwinian struggle. And far from that we don’t make any effort to shepherd these ideas to grow and live like Kevin the idea gardener was so diligently doing. Kevin is even attempting to become a better gardener by looking at his successes and failures!

If you actually got to this point in this article you must be commended (or you are generally accepted in the world of crazy) so I feel I should reward you with some bit of earthly wisdom tied to this concept so that it might grow and survive.

The organizations in which I work and earn a living have an enormous number of business processes and ways of operating that are completely undocumented, adapting but are essential to the success (in financial term) of the organization. Holding the thought that these processes and ways of operating are undescribed concepts that could be articulated in text files, shepherded and grown for explicit values, rather than letting them battle it out on their own can provide enormous economic benefit. I’ve seen and experienced it. Modelling these morphing domain concepts it something we software people are good at.

(rereading that last paragraph I am somewhat underwhelmed by the reward but them’s the breaks!)

--

--