57

Why can't programmers be more like ants? Or a lesson in stigmergy (2015)

Sites down, but do ants have standups every day just to tell the team what they are doing? Are they forced to attend scrum ceremonies? Do they have a scrum master insisting they set an arbitrary "sprint goal" every two weeks that everyone, including the scrum master, is going to forget about but management will frown at when they realize we didn't work towards? Oh, I'd love to be able to produce like an ant.

4 days agoSketchySeaBeast

Do ant colonies have a scrum master who have no clue how realistic goals are or not but decide to set them anyway? Do ant colonies avoid listening to those with actual knowledge and skillsets that goes against their unrealistic expectations?

4 days agoktallett

Yeah, we can't leverage stigmergy because there are actors outside of the code always shifting priorities and applying pressure to system that, in this article's reckoning, should grow in an obvious and natural fashion.

4 days agoSketchySeaBeast

The ants know what to do and we don't.

4 days agorobertlagrant

I'm personally attracted to this way of thinking. I did write a post about it many years ago, probably triggered by this article:

https://ole-laursen.blogspot.com/2016/01/stimergy.html

Part of the mindset is that when you see a co-worker end up in the wrong place with some new code, you ask yourself, can I do something to our code base to lower the probability of it happening again?

4 days agoolau

> Why Can't Programmers Be More Like Ants?

Because ants dont have business units. Most of us, programmers, are slaves to the business and we have to do what they want from us, not what we want or think is optimal to do. And the requirements can change often. How fast those changes would be notified by others in decentralized "ants approach"? Would the business survive with this approach?

4 days agopatrulek

Changing business requirements are akin to the food that ants find in optimal time. I think leveraging distributed intelligence to solve business problems is strictly better, despite what rock star CEOs in thrall to the cult of their own genius would have you believe.

I think the reason this system doesn't work is not that engineers don't want to solve business problems. It is instead that most organizations are pulled in conflicting directions by the need to solve simultaneously their business's ostensible problem, while also satisfying the wealth/power/prestige goals of certain individuals. In times like these, you can't just let the engineer colony wiggle towards an optimal solution.

Lest you think this take too conventional...It might be worth considering whether a jump in abstraction level might anyway converge to the same ant -like approach. The engineers are more like the legs of an ant, centrally controlled by its nervous system. The ant is the organization, and at that abstraction level it still does find an optimal path towards higher level goals, in the service of which the PM or the CEO is as much as ant. I don't really believe this, but I think some people sincerely do and it's certainly worth considering

3 days agoigor47

Probably related to a common desire to be creative and operate with a degree of autonomy.

4 days agoMrLeap

This pretty much. Ants are basically powerless on their own

4 days agonetdevphoenix

Because we are humans and do not work like ants.

"Why can't an orange be more like apples?" - The title is very stupid clickbait and the reason why people are clicking on it.

4 days agolingonland

Because that entails giving up your own autonomy?

4 days agoVampiero

No it doesn't. It might involve giving up some of your individuality, but I don't think that's true either.

4 days agojebarker

“I’d like to study ants,” I said.

He laughed and laughed, as the window blue was turning darker and darker. Finally he regained his composure, sat upright, and asked me seriously:

“Why ants?”

“Ants never fail. Computer networks, I don’t care which one, TYMNET ARPANET INFONET CYBERNET CYPHERNET MICRONET MIDINETTE TELENET they fail regularly, several times a day, somewhere they fail. And the big computers too, you can’t rely on them, sooner or later, they go south and they leave you high and dry, if we’re really going to teleconference on this thing it should never fail. The only thing that never fail are insects.”

“I said, why ants?”

“Look at an ant. Talk about microminiaturization of the ant! Even with the best chips from Silicon Gulch do you know how big a computer would have to be to do all the things an ant does? Tons! Tons! And the ant does all that in its little head and when it finds a twig it has one program: ‘If you recognize something which is long, made of wood, and hard, pick it up and put it on top of the ant-hill.’ Now that I call a program. And if the ant can’t do it by itself, another one will come and help, and another, until they do it. And you can step on them it won’t stop the ultimate result, and a crazy Frenchman named Remi Chauvin who is a genius explained to me how he would put twigs in tall glasses to see what the ants will do and he digs cliffs for them, yet they always manage to complete their program. A computer scientist who doesn’t understand ants is a man who doesn’t know what reliability means.”

“So you would build the computer equivalent of the ant, in hardware?”

“Right, and it would be so cheap, it would have its own little memory and it would have its own little programs, and it would go around looking for places to apply itself, and it would be disposable, disposable computers by the millions, crawling around and keeping their society going no matter what, so we humans can always find one when we need it and make it do something useful, make it work for us.”

— The Network Revolution: Confessions of a Computer Scientist, Jacques Vallee (1982) <https://books.google.com/books?id=6f8VqnZaPQwC&pg=PA206>

3 days agoteddyh

> "Ants never fail."

https://en.wikipedia.org/wiki/Ant_mill

3 days agodpflug

Computer networks do have packet life which I guess would be a fix for this, but don’t quote me I’m not a network engineer.

3 days agoBitterCritter

Perhaps something like this can be used in AI based development teams.

After all, as it says, ants are not very intelligent themselves yet manage to do amazing things due to stigmergy.

6 days agojerojero

Because humans are not interchangeable economic units.

The position that all humans are just interchangeable resources where you can have 80 lbs of human resources or 180 lbs of human resources, like a coal or oil, is ultimately a nihilistic view that strips us all of all humanity.

if you, capitalist, want developers as interchangeable economic units, you can use LLMs

4 days agoslt2021

This isn't what the article proposes. The article is about top-down organization/planning versus individual programmers having the autonomy to figure out the next right thing to work on based on indicators left by prior work, e.g. emails, todo items, issues. If anything I'd say this gives individual programmers more autonomy and influence over the direction the software takes. I think this makes a lot of sense.

4 days agojebarker

We are already living and working like ants in a colony. Human corporation is not much different from ant colony. Ants have queen, humans have CEO. Ants have spec: worker/warrior/support, humans have work specialization: sales/developer/support/etc.

the same pattern emerges at the state/country/economy level: taxpayers/military/elites: a human only exists to work, pay taxes and pay bills

the ultimate emergent goal is total subjugation of a human economic unit to the needs of a colony

4 days agoslt2021

This is a very pessimistic view of the world. In return for contributing to the needs of the colony you benefit from all the colony has to offer.

4 days agojebarker

You mostly benefit from some of what the colony has to offer, there is a difference.

3 days agoworthless-trash

Good point

3 days agojebarker

The problem is that the business doesn't trust programmers to build the software in the direction they want. Which is honestly a valid concern, I'd spend way more time than they'd want refactoring and optimizing the code to be cleaner and more extensible, and that gets in the way of piling up the features.

3 days agoSketchySeaBeast

more? i think in the mindlessness of my work i'd beat any ant.

4 days agotrhway

Me too well except for leaf cutter ants. I just can’t compete with those guys.

4 days agochasd00

Can't access the site. Did one of you get offended at the title and then give the server a tight hug?

4 days agoxeckr

Archive link available below.

4 days agonalinidash

More like monks maybe.

2 days agoMikhail_Edoshin

Because ants have the biggest brain–to-body-mass ratio in the animal world. If programmers had brains as big like that, they wouldn't be able to come to this world naturally, consequently programming-motherfucker.com wouldn't have real meaning and that would be a very sad world.

3 days agoiLemming

[flagged]

4 days agoamelius

I'm a manager, and I approve of this message.