Computers and Cars and Complexity

Ran writes,

“I think computers and the internet are going down. And I won’t change my mind until I see new computers and new ways of connecting them that are simpler and more resilient than the ones we have now. […] These innovations are possible in theory, but I don’t expect them. I expect cars and computers to become less and less reliable, and slowly withdraw to the wealthiest areas”

Ran, it seems to me that you look at our world that is dominated by energy-wasting, polluting, oppressive manufacturing corporations, and imagine that it’s all going down in a cascading collapse as the conditions that support them start to degrade. Just as you can’t prove that it will, I can’t prove there are other more likely scenarios… I am personally afraid of the eco-fascists, companies that are able to operate under different constraints – low resource usage, low energy, low pollution, high violence. Corporations are resilient too.

But there are still other ways things may go. Do you ever hang out with Makers? Hobbyists, tinkerers, artists, ham radio enthusiasts, people who actually ship things? That urge is there all over the world, and it’s irrepressible. People make bikes, computers, radios, and cars in their garages. If the assembly-line factories go down, people will be making things on a smaller scale. Yes, the incredible stream of cheap plastic crap will slow down and stop, but people will be making things that matter to them: kitchen knives, bicycles, solar cells, communication gear.

Have you ever heard of Minix? The kernel is about 6,000 lines of code; the rest of the system is not much bigger. It’s a full POSIX operating system (like Linux) with a complete Internet protocol stack – that means it can do pretty much anything your desktop computer can do. It’s modular and easy to understand, and concise enough to even type into a terminal from a paper book if you had to do that. And it’s not the only simple operating system out there. These days people write Internet-capable operating systems as a hobby. (FreeDos, Haiku, ReactOS)

As for resilient communication systems, the Internet is just too useful to let go of, I think… it’s going to be around for a while in some form. Anyone remember Fidonet? These things are still doing Internet mail in Africa and the USSR. One reason is that they are simple and can work on the crappy telecommunications infrastructure there. But another is that because they are simple, they are hard for the “authorities” to stamp out.

And yeah, cars and computers and fiber-optic cables are currently based on our industrial system, and that’s very brittle. But people aren’t brittle. And all that stuff can be made in garages – look at hobbyist computers, and kit cars. Every major city in the world has people who can make and repair things. Why don’t they build simpler things now? The system is tilted against them. In the case of cars, it’s because of the regulatory system. In the case of computers, I think it’s the economies of scale in chip making.

When the constraints change and the system starts breaking down – the tinkerers are going spring up in the cracks.

You imagine that only the wealthiest areas will have advanced technology. I imagine that advanced technology is everywhere – in the poor areas too – and that people use that technology to make the lives that they want.

Refactoring Civilization

Mayan ruin in Tikal, with jungle

I recently read Clay Shirky’s eloquent article The Collapse of Complex Business Models. Shirky summarizes Joseph Tainter’s The Collapse of Complex Societies, relating societies to businesses.

According to Tainter, Jared Diamond, Ran Prieur, and many dystopian science fiction writers, when societies shed complexity, it happens in a catastrophic fashion. As part of the science fiction book The Caryatids, set in 2060, Bruce Sterling tosses off the fact that to reduce its complexity, China killed off 500 million people – mainly its old and infirm. Other writers imagine chaos, war, and burning cities.

Software programs have many of the problems Shirky mentions in his post:

In such systems, there is no way to make things a little bit simpler – the whole edifice becomes a huge, interlocking system not readily amenable to change. Tainter doesn’t regard the sudden de-coherence of these societies as either a tragedy or a mistake—”[U]nder a situation of declining marginal returns collapse may be the most appropriate response”, to use his pitiless phrase. Furthermore, even when moderate adjustments could be made, they tend to be resisted, because any simplification discomfits elites. When the value of complexity turns negative, a society plagued by an inability to react remains as complex as ever, right up to the moment where it becomes suddenly and dramatically simpler, which is to say right up to the moment of collapse. Collapse is simply the last remaining method of simplification.

(via John Robb)

But there are other ways out of this mess. Software developers have a technique called refactoring that is often used to combat complexity.

Left unchecked, each modification of a program moves it toward more complexity. But good programmers keep cleaning house – every so often, you need to go in and purposefully reorganize, eliminate cruft, and simplify. Refactoring reduces complexity of software without adding anything new. Often it feels good, since achieving a new level of understanding lets you do the same task in a much simpler way – or a new perspective lets you combine several similar things into one simpler piece of code. And sometimes it’s painful – understanding a mess of complicated spaghetti code is hard, and finding new solutions is often even harder. But without it, you end up with a big ball of mud that will collapse eventually.

Turning a working program that uses the “big ball of mud” design pattern into a something that’s simple, supple, and easy to change – well, that’s an art. It’s especially hard when there’s a lot of money running through your software, like the program I work on at Grameen Foundation, Mifos.

Though Shirky doesn’t say it, business as a whole does have a way of reducing complexity without systemic collapse – via disruptive innovation. Disruptive innovation, as detailed in Clayton Christensen’s book Innovator’s Dilemma is actually a non-violent process. Companies may go out of business, but no one loses their life.

The problem with complex societies is that the collapse of civilizations has been violent. We need ways to simplify without causing violence, or starvation, or mass suffering. One way is via business model changes – Paul Hawken, Amory Lovins, and Hunter Lovins say in their book Natural Capitalism that ecological companies will win out over those that aren’t ecological. Another is via other movements, such as the huge do-it-yourself movement (popularized by Make magazine and Cory Doctorow‘s book Makers). When you can print out or machine complex industrial parts in your garage, and sequence genes and make transistors at home, you don’t need huge factories anymore. That’s refactoring industries.

So how do you avoid war, famine, and chaos? One way is to reduce population. Curiously, a really great way to do that is educate girls and women, and raise peoples’ standard of living – in other words, eliminate poverty. When people are not poor, they have fewer kids. Fewer kids means fewer people consuming fewer resources. So eliminating poverty is one way of refactoring society. The sooner we can do that, the less risk of a whole-society crash we will have.

Another might be another idea from Bruce Sterling’s Caryatids, the rise of global civil societies, organizations that take care of people the way governments do now. Another is Paul Romer’s Charter Cities, a 21st century version of the Hanseatic League – where nations team up to create new city-states that can reimagine the social contract for people in their supply region.

These are all innovations. That’s what I think Ran and many “pro-crash” writers miss (such as the Archdruid)- it is possible to innovate our way out of trouble, if we can see the complexity and reduce it fast enough. Our economy isn’t based on energy anymore – it’s based on information. And with economies based on information, you can change all three sides of the cost-time-quality triangle, not just two sides.

I get angry when I see us being mediocre – accepting war, violence, starvation, oppression, ecological devastation.

As with big-ball-of-mud software, we have to think big – if we don’t think big, people will add complexity faster than we can take it away. So that’s why I’m interested in greatness – how to get teams of people, and teams of teams, and even larger groups, thinking big, and acting effectively at that scale. We need to ship big, great innovations. We need to think big to refactor our civilization, to reduce its complexity in a non-violent way.

Be awesome!

Mifos documentation sprint: help us create a user manual in one day!

You can help us end poverty by participating in the Mifos manual sprint tomorrow, Friday 2 April. As Adam Monsen posted, at my work, Grameen Foundation, we’re going to do a “high-tech barn-raising” and assemble a user manual for our Mifos Open Source banking software tomorrow. We’re using a collaborative editing tool called FLOSSmanuals, which enables a group of people to create a collaboratively-updateable HTML and PDF manual quickly. It’s based on wiki software, so many people can add and update the document at the same time.

The manual is mostly written already- but we had to export it to Microsoft Word to do some radical, sweeping edits. What this sprint is about is getting it back into FLOSSmanuals, with links, formatting, and screenshots intact, and then do a proofreading pass.

We’d love to have help! Meet us on IRC on #mifos or ask on the Mifos Developer mailing list if you want to help. You don’t need to be a programmer or know the Mifos software – all you need to know is some basic text editing skills and some basic HTML.

Will your tribe change the world?

We all form tribes – people we associate with, co-workers, friends, family. Great tribes change the world for the better. Most tribes don’t, though. David Logan’s TEDx talk summarizes a hierarchy of different kinds of tribes, and asks, “How can we form more tribes that do great things?” “What are the characteristics of those tribes?”

The talk that left me asking – what makes those tribes different? How can I form one? Or, how can I move my tribe in the “great” direction?

(Via Steve Miranda’s blog Re-educate.)

Boot Camp 2

Just finished my second Boot Camp at Grameen Foundation. This time most of the participants were from the software development team I lead at the Mifos Initiative.

sea and sky painting

The training was fun and hard, we learned a lot, the work product was great, and we created an amazing amount of art, some of which you can see in the Grameen Foundation Boot Camp 2 Flickr photoset. The decisions have been fast and furious since then. I am starting to see that this is usual after achieving shared vision and getting immersive training in good self-care and decision-making skills.

For me, this Boot Camp was even better than the first one we did. That’s because it was my software development team that first supported me introducing the Core Protocols to Grameen Foundation, and none of this would have happened without them. They didn’t get to go to the first Boot Camp we held due to scheduling problems, so doing this training with them felt really good.

I was also able to let go a little more and learn more deeply. And I am learning things about myself that I am having a hard time coming to terms with. In the Tao Te Ching, it says,

In the practice of the Tao,
every day something is dropped.

It doesn’t say there how painful it is to drop things. Michele McCarthy said to me after one difficult interaction, “Oh, you want to heal people. That’s nice. Work isn’t about healing people, though.”

I know when I need to stop trying to do that – but so far I haven’t stopped in time. At least, I haven’t stopped in time to prevent damage or chaos or both. It’s conscious incompetence. In a way, Michele was saying, “It’s good, you can see it now, you’re growing.” But living with the mess – and knowing I’ll be creating more messes before I have control over this behavior – brings up anger, fear, and sadness. The BootCamp manual says, “While the ideas seem simple enough,
it can be very hard to personally carry them out.” Damn straight.

Live In Greatness

I haven’t posted here lately because I’ve been busy at work and also building a new website, Live In Greatness. Right now the main content is the Core Protocols in a web-accessible form. Over time I hope it will become a source of lots of information on how to create great teams. If you have ideas to improve the site, I’d love to hear them – will you use Perfection Game protocol to let me know?

Resolution Avoidance

A few days after Boot Camp we were all asking ourselves, “Why doesn’t work feel like Boot Camp every day?” The rush of energy, the uncomfortable and exhilarating feeling of personal growth, the constant flow of hard realizations about oneself, ones’ team members, and ones’ team, the way everything is new again. We missed it.

A few weeks after Boot Camp, I’m now asking myself, “What will happen to me if work continues to be like Boot Camp every day from now on…?” I’m at my growth edge. So are my team mates. The pace of work, decisions, and revelations are almost too fast, and only increasing. I’m not sure if I can keep learning such hard things about myself and my team mates. Conflict arises.

But learning these things and facing the conflict has made me and my team mates much more effective. We’re delivering results. We trust each other.

Why does so much creative destruction happen after Boot Camp? I think one reason is because Boot Camp makes you much less willing to tolerate pain and mediocrity. It sounds banal, but that has profound implications. Like drinking from the spring of the Hippocrene, it changes you. Since I’ve tasted what it’s like being on a truly great team, I can’t go back.

After that, the path narrows. Along the road to greatness, I don’t want to take the offramps: meetings where people don’t make decisions, situations where people conceal or distort information, being with people who regularly don’t keep commitments.

Life comes into vivid focus. I’ve started to see that my life is full of what Jim McCarthy calls “resolution avoidance” – keeping conflict at a low simmer, and not directly addressing it because I’m afraid of what might happen. I am often afraid of facing or naming conflict. But tolerating mediocrity means I insist on it, that I will be surrounded by it.

Booted teams don’t tolerate mediocrity. Being great means facing problems and resolving them.


Private Currencies

Slums are the future. If you need more evidence that real innovation is coming out of poor countries, check out the new electronic currency systems. Also called mobile payment systems, John Robb gives a quick nod to these new private currencies in a recent post. (Robb left out at least one other new system, Zain Zap from Kenya.)

I had heard about these over the last several years, but I just thought they were kind of weird, and didn’t pay much attention. Until our customers started asking us to integrate our Mifos open source banking software with them, that is. It’s not on the web anywhere yet, but now we’re doing a project to integrate M-PESA with Mifos at the microfinance institution KEEF in the hot zone of mobile money, Nairobi, Kenya.

My initial reaction dismissing these systems as just weird, by the way, proves that we need to get into the field to really understand what customers want.

Why do poor people like mobile money systems so much? Unlike standard banks, there’s no ID necessary – you have a phone, you have a bank account. There’s no going to the bank, either, and that is a big benefit in poor countries. Hauling your ass halfway across a dusty city to visit a physical branch can take hours, not good when you have kids to take care of and work to do. And there’s no hassle or discrimination from commercial bank employees – because there are often no humans involved, you’re just sending a text message to a robot.

It’s convenient to get cash too – just to go the corner store, text the woman at the counter some mobile money from your phone, and she gives you cash.

Now, this currency is really just “airtime minutes” – but since it’s easily transferable from one phone to another, and easily convertible into cash… it’s money.

And microfinance institutions (MFIs) love it too – if they can get their best clients using mobile money to make micro-loan payments, the clients don’t have to waste time at meetings, and the MFI can have more clients per loan officer – increasing profitability, letting them serve more people, so they can end poverty faster.

It’s the poor innovating to help each other. Working on this from the USA, I’m the bottleneck – I just have to figure out how I can get out of the way and let it happen.

Scaling startups

TechCrunch reviews the Kauffman Foundation’s ideas about making entrepreneurs and scaling startups. Very interesting:

“One of the findings of Kauffman research is that of the appx. 600,000
businesses that are started every year, less than a fraction of 1%
become high-growth “scale” businesses. These new firms, especially the
“scale” firms, have added all of the net incremental jobs to U.S.
economy since 1980 (about 40 million), and probably account for about
1/3 of GDP growth since then. So the key to boosting economic growth
is to increase the number of successful high-growth startups. After
all, the growth rate of our economy is nothing more than the
aggregation of the growth of our firms.

That is why Kauffman (which has a $2 billion endowment) is investing
heavily in an ambitious new program called Kauffman Labs. This aims
to dramatically increase the ability of small businesses to become big
businesses. The Labs program is built around a novel idea: that highly
motivated individuals with “scalable ideas” can be recruited to be
entrepreneurs and to be made successful, by surrounding them with a
network of other experienced entrepreneurs; sources of money; and
mentors. The goal is to educate entrepreneurs and surround them with a
powerful network.”

As I mentioned in my last post on scaling microfinance institutions, we’re coming to pretty much the same conclusions at the Grameen Foundation’s Technology for Microfinance division. To really make a significant impact on poverty, we need social businesses that can scale, and scale quickly.

(More on Kauffman Labs)


Coincidentally apropos to my last post on Lean Startups, today Jim writes:

Majority Rule or Boss Decides: both are ineffective on a team. Dissenters will actively or passively resist, it can’t be helped. Things have to be unanimous.

On average teams unanimity is a recipe for disaster. But with a shared vision, Booted teams can use Decider and Resolution protocols in small groups to make high-quality decisions quickly, and correct for new information when necessary. This has been my experience at with the Core so far at Grameen Foundation.