Bret Victor’s ‘driving principle’: necessary but not sufficient

Bret Victor’s ‘driving principle’: necessary but not sufficient

A little while ago I finally got around to watching Bret Victor’s “Inventing on Principle”. Transcript here.

The main realization that Brett is trying to get across is that the most successful and most satisfied humans are those who have devoted their life to a driving principle. An example of this is would be Richard Stallman with free software, Alan Kay with a goal to ‘amplify human reach, and bring new ways of thinking to a faltering civilization that desperately needed it’, and Elizabeth Cady Stanton with Women’s Suffrage / equal rights for all. I can see how the stress between the world’s present, imperfect implementation of these ideas and the unrealized, perfect world where the ideal is practiced would give meaning to your life’s work. With this tension, you have a purpose, to fix this divergence.

I have some issues with the talk, but first, I did take his instruction to try and find your own driving principle seriously. I’ve found that my own driving principle is a desire to reduce waste of all kinds. This is perhaps an unsurprising principle for someone who is an engineer, but I think that this desire is one reason why I am a software engineer in the first place! Thinking back into my past, one incident stands out as a perfect example. I was about 13 years old at a summer camp, and I could hear these two other campers from New Jersey around the corner from me who were finding something totally hilarious – laughing and giggling continually. I turn the corner and see the amusing thing: they were pressing the soap dispenser and watching globs of pink gooey soap drop onto the bathroom tile floor. I remember getting very angry at the waste of it all, which of course made the campers start taunting me with the waste far longer than they otherwise would have if I hadn’t come along. I had a grudge against people from New Jersey for a very long time after that, although I have gotten over it! Something about entirely frivolous waste really got me. At least other times people can justify waste of material through the need to not waste time, but in this case their enjoyment could have been gotten by doing any number of non-wasteful things at camp.

So what does this principle to reduce waste mean? Well, it’s not just for CPU cycles. In fact I am willing to burn as many  cycles as necessary to reduce larger causes of waste: waste of people’s lives, their time, their potential, the waste of nature for frivolous reasons, suffering as a cause of a waste of people’s and animals’ lives, etc. When I was traveling in India I can’t count the number of people I saw working worthless jobs or working no job at all. This would be fine if the people were not miserable doing such- in some people’s versions of utopia humans need to do no work at all, and I have no problem with that vision if there is no suffering. However India has many hundreds of millions starving and undereducated; when banks hire a guard to sit in an ATM and open the door for people, it strikes me as wasteful and morally wrong. It is clear that our priorities (and we are a truly global world now, ‘our’ refers to Western Capitalism) are badly skewed from the most beneficial and decent true path, where the lives, health, potential, and time of hundreds of millions are not written off as how the world works. Even in the developed world, you can see others coming to the same conclusions about our modern desk jockey jobs. The conclusion that these jobs are a waste of so many things, and an ideal world would be without them.

It felt good to find this out about myself, and explained some things about why I am interested in some jobs and projects over others in my own career. I would highly recommend trying this out yourself, to give yourself a guiding line to follow in your career. It has also pushed me to get a little more serious about my own inefficiencies. One thing I’ve been trying to do is reduce meat consumption, a hugely wasteful in many ways choice over vegetable alternatives. As I always say, if I was a better person I would be a vegetarian. Well, I won’t get there yet, but I’ll now promise that by the end of December I will eat meat on 3 days or less a week.


Finally, I would like to strongly disagree with some aspects of Bret’s talk. While inspiring, I found the talk way too tech-self-centered and arrogant. Bret seems to think that we can simply choose some pet peeve in the technical space and this will translate to a positive, world-changing (even if in a small way) contribution to society. He uses moral terms to describe working on these chosen principles:

My point here is that these words that I’m using: Injustice, Responsibility, Moral Wrong, these aren’t the words we normally hear in a technical field. We do hear these words associated with social causes. So things like censorship, gender discrimination, environmental destruction. We all recognize these things as moral wrongs. Most of us wouldn’t see a civil rights violation and think “Oh good, an opportunity.” I hope not.

Instead, we’ve been very fortunate to have people throughout history who recognized these social wrongs and saw it as their responsibility to address them. And so there’s this activist lifestyle where these persons dedicate themselves to fighting for a cause that they believe in. And the purpose of this talk is to tell you that this activist lifestyle is not just for social activism. As a technologist, you can recognize a wrong in the world. You can have a vision of what a better world could be. And you can dedicate yourself to fighting for a principle. Social activists typically fight by organizing but you can fight by inventing.

I find this misguided. This formulation of the problem totally avoids responsibility of the wider moral implications of creating better tools, and Bret gives no advice to make sure that following your principle does not cause unforeseen issues. At the very least there should be advisement to first, do no harm. You could see a young Oppenheimer hear this talk and decide to devote his life to “unlocking the power within physical materials for human use”, or for a contemporary software developer to follow a principle to “help machines perceive the world in all ways” and end up programming military drone cameras. Without this thoughtfulness towards the greater good of human society, there is no authority whatsoever to use the words “Injustice, Responsibility, Moral Wrong”. Anyone who thinks that these moral words are valid for Bret’s morally agnostic principles have fallen prey to the arrogance of the tech world: that whatever is beautiful and right in our world must be beautiful, proper, and needed in the wider world. So while I enjoyed the talk and found it very personally useful, I would ask Bret to think about the greater implications of such a narrow focus in your life without thinking about the surrounding context. I would encourage other software developers to make sure that they are also not falling into the software engineer’s fallacy of a beautiful technical system translating to a morally beautiful real-world result. Yet, I would still encourage others to try this exercise and spend some time watching Bret’s talk.



A great talk, this helped me discover deep-seated beliefs I hold. It can help us all direct our careers- watch his talk and perform the exercise he asks of us, to try to find your own driving principle. However, the moral weight Bret attributes to following these principles is totally unwarranted – you need to closely watch the external effects of following your own driving principle and first, do no harm. If you do this at the same time you are answering your own driving principle, however, I think you are well on your way to a rewarding life.

Leave a Reply

Your email address will not be published.