Issue #0

A Quest For A Better World

This is the presentation I gave at the third App Builders Conference in Lugano, Switzerland, April 17th, 2018.

After having explored personal growth in “Being a Developer at 40”, and professional change in “The Developer Guide To Migrate Accross Galaxies”, I will delve into the third installment of my manifesto for software developers, hoping for us to tackle the larger problems of our modern society with passion, hope and, yes, some dark humor, too.

Introduction

Back in 2016 I took the stage in Zurich and I looked at the past. I looked at my career, at Clippy, at the programming languages that I used, at the managers I had to endure, but most importantly I thought about all the colleagues I had through the years, some of which were in that room that day.

Last year I spoke in Lausanne, and I reflected on the present. The technology change, the craziness around us, the broken debugging tools, and all the little things that make our developer life a chore and a joy.

This year, however, I will project myself to the future. And because past, present and future are all intertwined, in 2016 I could not avoid talking about 2036, and in 2017 I could not stop talking about the past.

We all know that talking about the future of our profession is most often an exercise in abstraction and failure; however, in the current context of protest and mutation, it is simply a pragmatic exercise of enumeration and connection.

1. On The State Of Things

I woke up last Saturday learning that missiles are once again killing innocents somewhere, and that once again they will be just considered a “collateral damage.”

In the meantime, the CEO of the biggest social network, one so big that it even had a blockbuster movie made for it, is appearing wide-eyed in front of congressmen in Washington, because his force of good has been used to make somebody the president of some country and that, if one believed the polls before the election, it should not have happened.

Politicians have clearly lost all touch with reality and try to compensate their technical incompetence and ignorance with absolutely absurd decisions, without any sense, as Ancilla van de Leest says, and rightly so.

I also read that people are dying all over the planet because of totally and absolutely reversible causes, but they do not make the news because the war is going on.

That black americans cannot drive safely in their own country without being pulled over without reason.

That companies now have a position called the “Chief Conscience Officer” (CCO.) It’s a thing.

That Mike Monteiro is asking for Jack Dorsey to be fired as CEO of Twitter, and rightly so.

That Aral Balkan keeps warning us about Surveillance Capitalism, and rightly so.

That the people in Flint, Michigan, still do not have drinking water without lead in their pipes.

That presidents all over the planet become defacto lifetime dictators, being voted once and again and again and again, never leaving power ever again, and becoming drunk kings drowning in their own corruption, crying for “witch hunts” and silencing opposition.

That women are paid less, harassed, raped, bullied, molested, killed, and forbidden by males to decide over their own uterus, over their own body.

That corporations are using all they know about us to manipulate us, our thoughts, our future.

Meanwhile, in our industry we keep teaching how to reverse linked lists to students, instead of instead teaching them to solve the outstanding inclusion issue that our profession suffers from.

That we are building a future of Uber drivers driving each other, of podcast hosts hosting each other, of selfies with celebrities that nobody knows.

We reached the point in which we do not believe anymore when things just work. Not even MacBooks are reliable these days.

What kind of world have we created? And yes, I say we, because we are the makers of this world. Did we want to create this?

What is this uneasy feeling we have in the back of our hearts and our minds, continuously? We know that the next gizmo or programming language will only bring trouble and more issues. We roll our eyes when a coworker touts a new framework. We sigh in frustration when we have to reboot our computers for the upteenth time to be able to do our jobs, because some layer in the seemingly infinite abstraction layer of our software stack has decided to become comfortably numb.

You most probably have heard by now that we are entering a new “cold war.” But this one has been happening in computer screens for a while now. There are hordes of programmers like us disrupting the power grid and the hospitals of other countries. There are programmers like us writing software that drives missiles and Tomahawks and planes to kill people on the other side of the planet. There are programmers like us driving counterespionage strikes against other countries because the only logic we know is “tit for tat.” There are programmers making apps and websites supporting government propaganda, or supporting corporations trying to manipulate elections and to keep the statu quo from ever changing.

We are those programmers. We are shaping the state of things.

And yes, to answer my retorical question above, this is the world we always wanted to build. We wanted this. Since always.

2. On Hypocrisy

A couple of years ago I stopped using Google. I remember that my friend Maximiliano Firtman called me a “tech vegan”. This was in 2013, around 5 years ago. I slowed down using Facebook and Instagram starting in 2014. This year I started slowing down in my use of Twitter.

In the meatime, I have also decided never to rent a car using Uber, or an holiday spot with AirBnB, and I evangelize around me to raise awareness about the issues they generate. I do not want to support systems that are actively undermining the life of workers, of communities, of citizens. I refuse to live in a world where my driver does not have enough to live and send their kids to school and have food and a roof to sleep. I refuse to be hosted in locations whose landlords refuse to rent them to locals, shortening the offer and raising the prices, while at the same time buying properties just to be available through online platforms.

In the same vein, I stopped buying e-books from Amazon; I do the inverse of what most people do. I check the book reviews on Amazon and then I go to the website of the author or the publisher itself, so that I can get a DRM-free book in EPUB format, that I can read in any reader, without being locked into the system of a company that is undermining the value of the work of writers like me. Many authors and publishers sell their books directly; this is the virtual equivalent of a next-door grocery store.

I want people to hire me as a developer instead of somebody else on the the other side of the planet. Of course I do. Similarly, I want the owner of my next door grocery store to thrive. I want everybody to be able to find a home to rent at a reasonable price. I want my local bookstore owner to be able to pay salaries to their employees, so that they can all pay the rent, and maybe even enjoy two weeks of holidays somewhere else under the sun.

Is that too much to ask?

We are drowned in this race to the bottom, being told that we need more productivity, that in the 24 hours of our day we must do 1h30 of gym, work 12 hours, commute 2 hours, eat healthy, get the kids from school, enjoy being stuck in jams, listen to audiobooks and podcasts, read 6 books a year, learn a new programming language, attend conferences and local user groups, put our kids to bed, spend time with our significant other, pursue our dreams, and sleep at least 8 hours.

Also, in the meantime I discovered DuckDuckGo, and actually it offers great search results, and as a result I have not used Google in over 3 years now. And I rediscovered Firefox, the browser that nobody uses anymore, and it actually works great and it has fantastic developer tools and it syncs great between iOS, Android, Windows, Mac and Linux, and that is exactly what I needed.

I also wrote most of my books in Vim, but that you knew already.

In general, I have to say that I became a big fan of the terminal. I do as much as I can with it. It sounds incredible, isn’t it? Writing the future of technology using what arguably is the oldest available interface in the world of computing: the command line.

Why am I doing this? Why is it that I chose such an old medium to express the ideas of the future? Why am I choosing those tools instead of the next shiny gizmo?

The reason is honesty. After 20 years of using every single version of Windows since 3.1 to 10, and every single version of macOS since Jaguar to High Sierra, I have to admit that I grew tired of the broken promises. I grew tired of the crashes, the UI changes, the inherent instability.

The command line soothes me. I feel safer, living a simple life. It is like living in a farm, growing your own food, and being able to exchange those vegetables and those eggs with other like-minded farmers.

Now, let me be clear on this point: command line apps crash as often as their GUI counterparts. But they do not pretend not to. They have absolutely no marketing around them. They just do one or two things, they do it quite good, and they get out of the way fast. They launch in nanoseconds, they are ready to use as soon as you boot your machine, and they disappear into oblivion fast. And they even eat less battery and CPU power than their GUI counterparts.

Paraphrasing the Agile Manifesto authors, I came to value more honesty over hipocrisy. I am tired of hipocrite tools, promising things they can never deliver. I am tired of software not working, full of security bugs, full of spyware and broken promises.

I do not want no more broken promises. I do not want no more spying on me. I do not want poor people in my communities. I do not want Silicon Valley spreading its shit on us anymore.

The interesting thing is that, for some reason, many people pay attention to my technology choices. I am an unspoken influencer. And guess what, you are too, unspoken influencers of your own surroundings. You have the power to change things.

That is why I know that in the next few days some of you will think about these words, you are going to remember them, and you are going to click the “download” button in some website to download some “unconventional” tool, and you will discover that in our great world of software, we can break free from vendors and their broken promises.

And I mean, all vendors. Yes, including Apple.

3. On Helping Each Other

Last year I started offering coaching sessions over Skype. I feel honored and humbled by those who actually trusted me, a complete stranger, to listen to their issues. We have met for an hour and a half, over Skype, and we talked. They told me their issues, they told me their anguishes, their fears. I tried to give some perspective, some opinion, some ideas. I do not know if my recommendations worked or not, if they feel better or not. I hope.

I wanted to thank those people who have asked me for help. Yes, I want to thank you, because through you I have learnt how to deal with my own issues, how to cope with my own hysterical thoughts, and how to calm them down. I have learnt to listen, or at least I started to understand how listening works. You have made me a better person. You know who you are.

And in average, seriously, the state of our profession is quite depressing. Most of the people who contacted me are around 30 years old, and they have deep unanswered questions: “What do I do with my life? I have been writing iOS apps for 5 years,” they tell me, “and I do not know what to do next.” I also get a lot of “I am burning out at my work, I do not know how to talk to my boss, I feel I’m nobody in my company…” “My company is doing well and I am making lots of money, but I know that they are doing shady business and I feel uneasy about it.” “I feel like my job has absolutely no sense, and would like to open a hotdog shop in an island in Polynesia before global warming drowns it.”

There used to be a life crisis moment at 40, remember? Well, I can say that, according to my observations and witnessing the stories of the people who asked me for help, the crisis now happens at 30.

Thirty years old and in crisis.

Can you imagine that? Well, of course you can, because the average age in this room is, precisely, 30 years old.

Even here in Switzerland, one of the countries touted as the happiest in the world, we have people committing suicide and, sadly, among them, many talented software developers, some of which I had the immense privilege of being friends or working with.

They just decided to leave.

They decided to end their lives.

Why?

Why are we building this world? Is this the world we have built? Is this our reality? Why is it that we have to keep coping up with harassed groups of human beings? Women and other genders than men who cannot be paid at the same level of their male counterparts? Black developers actively pushed away from the industry? An industry made of white men between 25 and 35 years old who could not give less of a shit about accessibility and inclusion?

4. On Responsibility

Bill Gates built an empire and made himself the richest man on Earth around a single, simple idea:

The EULA. The “End User License Agreement” in which it is clearly explained that you cannot sue the company if you use Windows to run your weapon system or your nuclear plant. Actually, as a consumer you do not get much leverage at all, but we accepted it all in order to be a part of the new world order built by the failed hippies of the Bay Area who ended up working in technology companies.

We wanted the shiny toys. We wanted to be a part of. We were suffering a strong case of FOMA and we accepted someone becoming billionaire without any accountability.

Without. Any. Accountability.

But the times are changing, and the good old EULA looks terribly misplaced today.

Hence Open Source appeared, and in the past 15 years it grew in popularity to the point where big surveillance systems such as Android are 100% open source. Of course you cannot expect your pull request to be merged anytime soon, because open source only means cheap workers to these companies, protected with a very vertical and established decision system shaped as a pyramid.

This is exactly what happened back in the 70’s in those communist experiments, hippies living together and taking huge amounts of LSD. They all ended up being very conservative, with women taking care of kids and having charismatic leaders at the top of those experiments.

The hippie movement was not a change; it was a shift. The underlying problem of society, that of the distribution of power, did not disappear.

Quoting Mike Monteiro, I wholeheartedly agree with his idea of regulating the software and design industries. Yes, I stand for the idea that we need to hold corporations responsible for the disasters going on in the planet. Twitter and Facebook have to be more active in blocking hate speech. Microsoft has to be more active in actually making sure that Windows is not used in life-support systems or nuclear plants (guess what: it is.)

On the other hand, it is tantamount for politicians to be accountable and proficient in technology issues. The time in which politicians and journalists laughed and bragged about their misconceptions and lack of knowledge of technology and technical issues is gone. We need MBA degrees to include technology as a subject (guess what, it is not part of the curricula.) We must make universities accountable for the lack of technical education of lawyers, doctors, sociologists, mechanical engineers, and even dentists. And, at the same time, we must make computer science students learn about ethics and philosophy.

We need both fields, computer science and liberal arts to intertwine and become one.

Because, as a matter of fact, Computer Science is the new Liberal Arts.

Maybe Apple is in the intersection of both; I just hope that they will use their position with responsibility, that is all.

Computers are so ingrained in our society, that our programs shape behavior, they shape policies, they shape the taxes that we will have to pay, they shape the education of the next generation, and the colors of the next Autumn-Winter 2019 collection. Everything is shaped by software. Our world runs in software.

As software engineers, we are today the most important driving force in the planet. We have a huge responsibility, and this responsibility is much, much bigger than choosing between npm or gulp or Carthage or Cocoapods. Our responsibility is to make ethical choices.

Yet, as most of you know, there is absolutely no “Ethics” chapter in common Computer Science curricula. It is then, our responsibility to learn about it, just like you would a new programming language, and then live by it.

5. On Money

I regularly get some funny looks from otherwise nice people when I mention that I do not do Bitcoin.

I actually do not even do stocks. I do not have anything about that. I do not aim to be insanely rich. And apparently we are more and more every day thiking like this on in this planet. I am happy I can make a living, I live a very good life. I am healthy and I have food in my plate every day.

People are all like, what, don’t you wanna have a Lamborghini? Oh man I would buy that house overlooking Lake Lugano! Don’t you want to attend parties in Monte Carlo?

The answer is no. Seriously, I do not want that. And I do know that as soon as some of those people get insanely rich, they are going to actively try to destroy communities, they will actively work to undermine ecology, all because they want more.

More, more, more.

I want people to live a decent life. All people. Not just a few. And do not get me started about charities, because that is also a big part of what is going wrong in the world. I volunteered as a webmaster for a human rights NGO in Geneva for a few years, and what I saw was disgusting. The amounts of money spent in lobbying and travel and dinners and theft by the NGOs of the world is staggering. Now everybody is talking about the sex abuse scandals in those organisations, but seriously we should all take a closer look and realise that charity is not a solution.

If you want to make a difference, you do not need to join a charity and go to some place in Africa or Latin America to help. You can start in your neighborhood, buying from the local stores; instead of starting a company, starting a cooperative; going to the fresh food market; buying only what you need; recycling all that you waste; being a voluntary firefighter; contributing a pull request instead of writing a bug; writing a book or publishing a podcast calling to action and denouncing injustice; writing to your elected officials and joining protests outside your parlament; un-voting those officials after their term was over, and removing them from power if they become dictators.

Remember this: every penny that you have, is a penny that somebody else does not have. The idea is that we can all eat, not just the rich. The idea is that we can all go to school, not just the rich. The idea is that we can all find a job, not just the rich. The idea is that we can all live a decent life with good healthcare and maybe even enjoy a nice holiday with our family every year, not just the rich. The idea is that we all live in peace, not just the rich.

And guess what? The global GDP of the planet is enough for every human being to live a decent life. Each one of us can have enough food, water, education, healthcare, and peace, and in a world built out of software, it is our duty to make this happen.

Instead, we are doing exactly the opposite. Stop this bullshit of increasing stakeholder value. Stop this bullshit of working 60h per week. Stop this bullshit of stock options and IPOs. Stop this bullshit of cryptocurrencies. Stop this bullshit of running towards money. Open your eyes and learn to help each other, I beg you.

By helping a single human being you are helping the whole of mankind at the same time.

6. On Our Real Customers

I was talking about all these things to Hernún, one of my best friends, and he told me something interesting. He’s a software developer, by the way, he works with PHP, WordPress, and PhpStorm.

He told me this interesting anecdote; a company contacted him, a software agency, to make an automated management system for some software development task, and he listened to his customer telling him how this product would help them get rid of developers in the future, and then asked my friend how much did he think building this project would take.

At that point my friend politely refused the project, asking this simple question:

Why would I work in a project that will ultimately help you get rid of me or others like me?

Who are we writing code for? Who are our customers? Why do we write software? For whom? On behalf of whom?

The truth is, we software developers we are not making the world a better place. At all. Because we write software for “increasing stakeholder value” instead of writing software for society as a whole.

Our software increases income and social inequality.

Our software helps governments to spy on us.

Our software kills people.

Our software is used to manipulate elections.

Our software segregates social groups.

I have written software for government agencies. I have worked for big, big, big multinational companies emptying the resources of the third world. I have made systems that have actually left people without a job after they were put into production.

For what? For whom?

Ask yourself those questions. Then answer them.

We are not merely software developers. We are society developers. With each line of code, we shape our world.

7. On Technology As A Force For Good

My dear friend Adam Jones, one of the most brilliant software developers I have ever met, told me this the other day:

Technology’s biggest problems are society’s biggest problems. The endless need for growth and more money. All else follows.

We have built the future that we wanted. Yet, as it turns out, the world now goes so fast that it is possible for a single generation, like mine, to vividly remember black & white TVs, long play disks, cassettes, CDs, Zip drives, iPods and AirPods. We went from watching Star Trek characters communicate with a handheld computer to actually have a handheld computer in our pockets for over a decade now. Over a decade, can you believe it?

This means two things:

  • Overload. Too much is going on. A lot.
  • Also, the real possibility to change things and to witness that change in our lifetime.

Do you see what I mean? This is a realization: this is the first time in the history of Mankind in which we can witness the changes that we bring to society as a whole in a few years, months or even days. And I do not mean at the level of your neighborhood or city, but at the level of a species, at the level of a planet.

We have a REPL (Read, Evaluate & Print Loop) in our hands, one that has the size of a planet.

And with it we can actively change the world in so many, deep, ways, that you will be able see the effects of those changes as your kids will grow. You will see them thinking differently; not just using different gadgets, but actually building a different world. Their value system will shift. Their perception of power will be transformed. Their priorities won’t be yours.

Maybe the Age of Aquarius is finally here? Maybe we can stop thinking of the Agile Manifesto and simply start caring about our colleagues at work? Maybe we can start to use the advances in technology to actually work less, to spend more time with our families, to make more art, instead of increasing shareholder value? Could we maybe stop increasing and concentrating quotas of power in small groups of privileged yet completely unethical individuals? Can we maybe acknowledge the dynamics of power, so that we break them, instead of empowering them? Instead of building democracies like Ponzi Schemes where the top has it all and the bottom gets to vote and should feel happy about it, could we start building network democracies, where people can actually bring down those elected officials before their term without them claiming “witch hunts” and while the press empties our minds and fills them with hatred?

We must build a world in which every worker can send their kids to school. A world where AI is used so that we can all live a bit better, not fearing that we are all going to die or to be homeless or hopeless or workless. Where everybody can find a place to rent, without anyone driving the prices up. Where software is not made to spy on us. Where we take the sane choice of growing our own food, consuming local, removing power from intermediates and feeding all the planet with sustainable food.

We, software developers, we have the power to change the world but so far we have been unworthy of that power. We have served the interests of big capital. We are building systems that are making this world a worse place. We are not helping.

It is time to change. It is time for Google & Facebook employees to leave the company in masse, and to join cooperatives working for the greater good. It is time for you to stop using Uber, AirBnB and similar companies. It is time to stop using Chrome (and to stop making websites that only work on one browser or another, for the sake of our integrity it’s 2018 people!) Do not accept jobs where you are going to be asked to spy on people. Do not accept jobs where you are going to be asked to destroy the social tissue of a community.

It is time to change.

There is people on the other side of Visual Studio Code and Xcode and AppCode and whatnot. People. People who eat, who die, who cry, who learn, who laugh, who teach, who suffer. Dealing with the daily struggle of bringing food to the table. The unbearable lightness of being. The uncomfortable truth of the tears of their kids. The unfulfilled need for a hug. The never happening moment of a smile. The breakpoint never being hit.

A better world is one where we all care for each other. Continuously, unashamedly, purposedly, passionately.

So stop at that breakpoint. Now. Think about that new world. Then write it. Test it. Deploy it. With empathy.

This talk is dedicated to the memory of my friend Bertrand.

Thank you so much for your attention.

Special thanks to Hernún, Adam Jones, Beatrice Sigrist Charbonnier, Jonathan Rothwell, and to the Twitter users still making it worthwhile.

The slides are available here courtesy of Gitpitch.

Cover photo by Lena Bell on Unsplash.

Adrian Kosmaczewski

Adrian Kosmaczewski is a cloud & mobile app consultant and developer. He is a published writer, trainer and speaker. He holds a Master's degree from the University of Liverpool.