Daddy, did you really need to buy an electric car?

I made a mistake: I bought an electric car. EV articles I have read on Hacker News and Reddit didn’t prepare me for a dozen EV infrastructure problems in my part of the EU. Anecdotes below explain lessons I learned the hard way.

When I see a cool new gadget, my rationality goes away. I tell myself, “Don’t buy another device that will somehow be discharged when you need it,” but to no avail. The siren call would sing, “It has USB-C!” until my wallet opens wider than the Spielberg’s “Jaws”.

This time, the siren call was a government incentive of 10,600 EUR ($12,100) for a new electric vehicle purchase. “Great,” I thought, “I need to replace my old car.” My experience of driving electric car-shares in Oxford and Berlin was great. So, I purchased a 1.5-ton gadget, with no USB-C ports included, called Hyundai Kona EV:

Why not a Tesla Model 3, you ask? Fun fact: Nikola Tesla was a naming inspiration for both Tesla cars and Nikola trucks. Tesla was an ethnic Serbian born in present-day Croatia, but you can’t officially buy a Tesla or Nikola vehicle in Croatia (where I live) or Serbia. Elon Musk tweeted his hope to open sales in the region early in 2020, but as of August 2020 that didn’t happen.

First, the good parts: as soon as I picked up my car in Zagreb, Croatia, I was impressed. EVs are so quiet that EU law requires they produce a buzzing sound when going slower than 30 km/h. Acceleration is instant; torque is strong enough, even in Eco mode, to make tires scream if I pushed the “gas” pedal too fast. There are no vibrations and no jerking when the car shifts gears. EVs use regenerative breaking, again completely silent. EV charging is currently free in Croatia, and depending on rainfall, 44% of that electricity is carbon-free. I was in love with the car.

Lessons 1-6, Slovenia

The first weekend I drove with a group of friends to a Toastmaster’s competition in Ljubljana, Slovenia, 143 km from Zagreb (83 mi). Kona EV with 64 kWh battery has a declared range of 450 km (280 mi), so even with 90% battery, I had enough for a round trip. So I thought. I soon learned the first lesson:

#1: EVs have 20% shorter range in cold weather.

It was November. But still, 450 x 90% x 0.8 = 324 km, round trip is 286 km, we were good. While driving 130 km/h on a highway (80mph, a legal limit), I noticed my range dropping significantly. The car specs sheet lied in the worst possible way: they were technically correct. High torque: true. Range of 450 km: true. But:

#2: EVs can’t deliver both performance and declared range at the same time, you need to choose one.

I had the wrong intuition that cars have a longer range on the highway than in the city. That is true for gas cars because gas cars are extremely inefficient in cities. All cylinders are running, swallowing gas when accelerating, and that kinetic energy is lost when braking. As EVs use only the energy needed and recuperate that energy when breaking, they really have a declared range when driving in the city. When driving fast, EV range shortens because air resistance is proportional to the square of speed. Gas engines are more efficient when all cylinders are firing at constant, high RPMs. As a result, gas cars have a maximum range at speeds of 89-97 km/h (55-60 mph). EVs have a maximum range at around 55 km/h (35 mph), and range falls linearly as you drive faster. For example, this is the range decrease for Tesla Model S, depending on speed and temperature:

As I slowed down, the estimated range increased. Unfortunately, part of the highway was closed for construction, and we needed to take a detour. The round trip just got longer, so I decided to park at the EV charging place. But, it was a Type 2 AC charger, meaning another lesson was coming:

#3: To charge at Type 2 AC plugs in the EU, you need to bring your cable.

Of course, I had none. Fast chargers I used before had attached cables, and I was wondering what was the point of the cable lock button on Hyundai Kona? It is there because:

#4: Lock your 230 EUR Type 2 cable if you don’t want it stolen.

Between event sessions, I was Googling “fast EV chargers in Slovenia.” Highway stops by “Petrol” had them, great. Around 11 PM, we left Ljubljana in high spirits. We arrived at the Petrol station and found a fast charger, with cables. Guess what happened next:

#5: EU fast chargers are activated via a proprietary chip card or smartphone app. Each company in each country uses a different card / app.

Of course, I only had a smartphone charging app for Croatia. Lessons were coming fast:

#5A: Petrol gas stations clerks can’t sell you a Petrol charging card, and they can’t activate an EV charging even when you want to pay for it.

“Download and register in the Petrol app,” the night clerk said. Yes, but:

#5B: Petrol Android app is 50 MB, so if a station is covered by a slow EDGE signal, you can’t download the app.

We got back to the highway, where my friend caught H+ signal and downloaded the app. At the next Petrol station, we discovered:

#5C: When you hit the “Start charging” button in the Petrol app, it redirects you to a registration form to enter payment and address.

No problem, I can fill the form, even on EDGE signal. But then:

#5D: To register in the Petrol app, needed for charging, you need a valid address in Slovenia.

It is good the EV charging station was 20 meters away from the gas station because I was cursing Petrol so loud a clerk would have had all rights to call the police. I should have read Petrol app comments beforehand:

It was past midnight when we got back on the highway. To extend the range, I slowed down to 75 km/h (46 mph). The limit was 130km/h, so a trailer truck started taking over us. Then I remembered a Tour de France strategy I saw on TV:

#6: In an emergency, you can extend the range of your EV by tailgating a  trailer truck, a strategy called aerodynamic drafting.

Don’t hold me responsible for traffic tickets or beating by an angry trucker. There I was, hidden behind a trailer truck, to save electricity while driving 90 km/h. The car showed it was using less power, and the range extended. When we entered Zagreb, there was 19 km left:

I went to a fast-charging station I could actually activate, and I fell asleep in the car.

Lessons 7-9, Croatia

I made fun of Petrol for their unfriendliness towards tourists, but at least the EV chargers at Petrol stations are working. In Croatia, you can’t always count on that. In my modest opinion, that stems from the fact that charging is free. Why is free electricity a problem, you ask? There is no commercial incentive to build and maintain charging stations. Instead, most chargers are built when the EU donates money or when the government is pressed to improve EV infrastructure. Local politicians come when a charging station is finished to deliver speeches: “This is an example of Croatia using EU funds wisely, for a green and sustainable future.” After the journalists leave, there is no economic interest in sustaining chargers in the future.

For example, this city-provided Type 2 charger has been broken for three months:

In front of the Zagreb city hall, one charging station displays an error:

While other just states it is out of order:

What I learned is:

#7: Free chargers are often unmaintained, and you are better with a commercial provider you can hold accountable.

“But, there is nothing to break on a charging station!” I thought. Boy, I was wrong. EV charging stations use internal computer for authorization, and for controlling the display and the charging protocol. Before charging starts, a car locks the cable with the mechanical pin and signals that back to the charger. When a car is unlocked, it signals a charger to drop the voltage to zero, so the mechanical pin holding cable can be released. Guess what?

#8: Some chargers are not compatible with some EVs and refuse to stop charging, resulting in the “Hotel California effect.” You can check out in the app, but you can never leave.

For example, Croatian Telecom chargers. The first time their cable got stuck in my car I panicked. Their app was not working, the charger was not responding to car signals, and their charging stations don’t have the stop button:

They have the contact phone, but it was Sunday afternoon. I called them, expecting three levels of menus and “we are not working on weekends” message. To my great surprise, a female voice answered after two rings. “I have a big problem with your EV charging station: I can’t get my car out because…” My explanation was stopped by “What is the serial number written on the station?” As I dictated the serial, I could hear fast typing. A few seconds later charging station stopped buzzing, display went blank for a moment, and I could unplug my car. “Wow, that was fast, thank you very much!” I said. Although they currently don’t charge for electricity, Croatian Telekom is a commercial operation. They have a direct 24/7 support line where a representative can reset any charging station in Croatia, provided the serial number. It seems that such a solution was easier than fixing charging stations or the charging app. I now just call them and say, “Can you reset the station with serial X?” If you work there, let me know, I would like to buy a box of chocolates for the team.

Unfortunately, EV charges are not the only thing broken here. Our driving culture is also broken:

#9: It is common to find a gas car parked at the EV charging spot, the practice called ICEing (internal combustion engine-ing).

One time I urgently needed to charge, and this was the charging spot:

ICEing is common around the world. Tesla implemented parking locks in China. German police are lifting cars instead of giving parking tickets. Croatian EV owners decided to stage a short protest, where they blocked access to a gas station with EVs, for five minutes:

Online reactions were not sympathetic:

I find Paul’s “they’re blocking poor people” comment particularly insightful. EV owners are currently perceived as rich geeks. There was a similar dilemma in the early 1900s: why would tax-payers money be used to make asphalted roads when only rich people can afford cars?

Lesson 10, Austria

After the New Year, my 10-year-old daughter and me were going for a skiing vacation to Austria. This time I prepared like it was D-day. For obvious reasons, I decided to skip Slovenia and charge somewhere in Austria. First charging option was a fast charger next to IKEA Graz, but that required registration with a SMATRICS, a setup fee, and a monthly subscription. The second option was a charger at our ski village, but I found out that to be a tourist trap, as they charged 230.40 EUR for 8 hours. In other words, they were selling electricity at 20x times the Austrian rate. My third option was a valid one: IONITY 50kWh chargers on a highway near Graz, no registration needed, and a full charge of 6.5 EUR. We stopped there, activated charging via an app, and went to a nearby restaurant for Schnitzel. By the time we finished a coffee, the car was fully charged. I could easily go to the wrong charging station, so the lesson was clear:

#10: Before a long EV trip, research all charging options, download necessary apps, and read negative user reviews to see if other people had a problem with charging.

While leaving Graz, I remembered that Tesla studied, but never finished, nearby Graz Polytechnic. The minor problem was that he came into conflict with a professor over the Gramme dynamo, when Tesla suggested that commutators were not necessary. The bigger problem was that he spent his nights gambling and got into gambling debt.

Lesson 11, Croatia

It was a May trip to Velebit mountain that finally convinced me buying an EV was a mistake.

My daughter, me, and a dozen other people were going for a weekend of camping. The camping site confirmed I could use one of electric sockets for motor homes. Just in case, I found two charging stations in a nearby town. Perfect.

As we arrived at the camping site, I started charging. Hyundai portable wall charger pulls a maximum of 2.8 kW, so I planned two nights of charging. I joined a barbecue and grabbed a beer. An hour later, the camp owner was searching for me.

“You plugged your EV, right?” he asked.

“Yes, it is charging fine,” I replied.

“Not anymore. The camp’s main electric fuse went off. We don’t have any electricity,” he explained. “Can you unplug it?”

He was apologetic. “Sorry for the situation, can you plug it again after 10 PM when everybody goes to sleep?”

As told, I plugged my car at 10:30 PM. Twenty minutes later, I saw the camp owner walking around with a lamp and asking people if they knew where the EV owner was.

“The main fuse again?” I asked.

“Yes,” he replied, “sorry, but you will have to charge your car somewhere else.”

That was a small private camp, and it seemed the owner had just extended electric cabling from the fuse box of his house. Electricity was used by his house, laundry room, a dozen plugs across the camp, and an electric heater for a glamping tent.

The next day, after hiking during the day, I drove 30 minutes to the Type 2 charger in Gospić. Unfortunately:

#11: AC Type 2 charger speed depends not on declared power (22 kW), but on the power of AC converter you have in your car. That makes Type 2 chargers useless for travel.

Out of AC charger declared for 22 kW, Tesla 3 can draw 11 kW, and Kona EV can draw 7.2 kW. I needed to leave my car for seven more hours, so I asked a friend to pick me up. When we got back to the camp, the joke was on me and my fancy electric car. The joke continued the following day because we needed to check out of the camp, without a car. My daughter went in one car, me to another, and our bags were stuffed in a third car. Then our gas car convoy took a detour to Gospić to drop us all off at the charging station.

As my daughter finally sat down in our car, she asked, “Daddy, did you really need to buy an electric car?”

There is a funny twist to the story. There was a charger closer to our camping site in a Nikola Tesla museum. Because, of all places, Tesla was born in the nearby village of Smiljan. I didn’t try that charger, as online comments explained it is located behind the museum fence. And the fence is closed when the museum is closed, as it was that weekend:

Lesson 12, Conclusion

Humans rationalize their mistakes, and I am not different. Buying an EV was a mistake, but I convinced myself it is not so bad. During six months, I have wasted 10+ hours on the above EV charging issues. But that is still less than 54 hours annually Americans spend stalled in traffic or 44 hours annually Brits spend searching for parking. EV charging is a hassle, but it is only a problem when going on a longer trip. In city, you deal with rush hours and parking problems every day. The final lesson I learned:

#12: Today’s cars are great, but the car infrastructure sucks. With an EV, in addition to traffic jams and parking, you will regularly have to deal with charger infrastructure.

Nikola Tesla understood that the biggest obstacle to electricity adoption was infrastructure. He invented AC that is easier to transform to high voltages and transport over large distances. 

After winning the War of the currents, Tesla aimed even higher. He wanted to use currents with specific frequencies for wireless power transfer via earth or air. Early radio receivers used this idea and had large antennas that would provide both signal and electric power wirelessly. But Tesla dreamed bigger, envisioning high-frequency transmitting towers powering electric airplanes:

Instead, we got a world where it is difficult to charge an EV even when standing next to an electrical plug. But this time dreams failed because of people, not because of technology.


UPDATE: check discussions on Hacker News, r/TrueReddit, and r/ElectricVehicles.

Screwed by Lufthansa and the German Government, Saved by PayPal

The travel and tourism sectors are suffering because of the COVID-19 pandemic, and governments are scrambling to offer subsidies to affected businesses. But, there is little talk on how companies are transferring their costs to citizens, with government approval.

In this case, the company is Lufthansa, who canceled my May flight from Croatia to Germany three weeks before the flight date. I booked the flight before the pandemic started, so I was a bit relieved. My reason for being in Berlin was valid for entry, but I was to either self-isolate for two weeks or get tested for COVID-19, both a hassle. If Lufthansa decided to cancel the flight and return the money, no problem.

But that is not what Lufthansa decided. Their cancellation email didn’t mention refunds, but offered flight vouchers instead. As the email was a no-reply email, calling customer support was the only option. Lufthansa’s support representative agreed to issue a full refund. But they said that processing the refund can take up to six weeks, as they are overwhelmed with requests. EU consumer protection law requires refunds for an undelivered product or service to be issued within 30 days, but these are exceptional times, so I agreed. What Lufthansa didn’t agree to was stating that in writing, in a letter or email.

Six weeks came and passed without a refund. On a second call, Lufthansa’s support representative repeated the story. They are overwhelmed with requests, my refund will be processed in 2-3 weeks, no need to worry, but they will not provide that statement in writing. 

While waiting for their promise, I stumbled across an article explaining my issue as part of a bigger, EU-wide story. Lufthansa was on the verge of bankruptcy and agreed to a €9 billion bailout from the German government. In an effort to save the company, the German government told Lufthansa that they don’t need to obey EU consumer protection law, and that they don’t need to issue refunds. Lufthansa can issue vouchers for future travels instead. This situation is controversial because:

  • The German government is telling a German company they don’t need to follow EU law.
  • The German government is playing favorites with one company. Other companies don’t have such luxury during the crisis, both in getting the loan or escaping the laws.
  • German tax-payers are giving a large, risky loan to one air carrier.
  • With the voucher system, other EU citizens are effectively giving indefinite, interest-free loans to Lufthansa.

Notice that the procedure of getting a voucher from Lufthansa is much easier than getting a refund. For a voucher, click on the link in the email and fill a form. For a refund, wait on the customer support line. But I am a stubborn person, and I hate vouchers. A few times in my life, given vouchers got unused or companies put restrictions on voucher use. In this case, there is a possibility Lufthansa will go bankrupt, and then their vouchers will be as useful as toilet paper. Wait, that may come in handy in COVID-19 times!

I was not surprised when three weeks passed and there was no refund. I felt screwed by Lufthansa, the EU, and German politicians. However, there was still one overseas ace up my sleeve I could use. 

I paid for my flight via PayPal, which offers consumer protection on purchases, and I decided to activate it. I didn’t have much hope, as worldwide pandemic cancellations were not typical PayPal disputes. Additionally, I didn’t have much proof except for the cancellation email. Lufthansa didn’t provide a written reply, the flight was erased from the Lufthansa website, and I didn’t record phone conversations. 

But, as soon I made my claim, I realized there is a hidden benefit. When a PayPal claim is created, there is a deadline and a written trail. In this case, Lufthansa was given until July 13th to respond:

It seems that someone from Lufthansa replied before that, as I got my money on July 7th:


I am impressed by PayPal’s straightforward claims procedure. There was no paper forms or PDFs that I needed to sign. As an example, my friend Chris also got a Lufthansa April transatlantic flight canceled (a month before my trip). He asked Lufthansa for a refund, and to this day he still hasn’t received any of 700 EUR.

You have all the facts above, so make your conclusions. These are my modest takeaways:

  • During a crisis, EU laws get overridden by national interests.
  • During a crisis, businesses labeled a “national interest” by politicians get favorable treatment.
  • PayPal consumer protection works, even in times of crisis.
  • Creating a PayPal or credit company claim is easier than waiting on customer support lines, enforces deadlines, and has traceable communication.

To come to the beginning of this article, there are analyses of money lost by different business sectors due to COVID-19. It would be interesting to see an analysis of how much consumer money is currently locked in unused vouchers, and what percentage of them will actually get used in the future. For comparison, in normal times, just US consumers lose up to $3 billion annually in unspent gift cards. It seems that 2020 is going to be an outlier.


UPDATE: check the discussions on Hacker News and Reddit.

Breaking the Ice for Underwater Hockey

“This is for you kid,” said my uncle, “have fun!”

I was 12 and I got my first mask and fins. I loved it. I would go every day to the seaside, to the rocky pier, and dive next to rusty, oily boats. I would take a deep breath and plunge to depths eager to see what is below. And there were so many things: broken plates, coca-cola cans, and even some fish. I got better and better until I could freedive 14 meters deep to the old car tire hosting a crab who was surprised by a pimply visitor.

“This must be how being a dolphin feels like!” I thought to myself. They are air-breathing mammals, same as me, going periodically to surface to take a breath. Then they would dive under and play catch with each other.

28 years later I was killing my time drinking beer in a smoky Berlin bar. “..underwater hockey,” mentioned a girl next to me. I turned my head and joined the enthusiastic conversation about the obscure underwater sport. “If you did free diving, you should totally do it, it is great!” Sumi said. Playing underwater like dolphins? I was in.

When I came for Wednesday training, the entire team assembled to help me. I got pink fins from one person, a white hockey stick from another, and mask from the third. Alex took it as his job to train me before the practice match. We did puck pushing, passing, and turning in a small kids pool. Easy-peasy-lemon-squeezy. I couldn’t wait to get into the big pool and score some goals. It was going to be great.

We entered the big pool and divided into two teams. I was assigned to be front right, as passing partner to Alex. “Start!”, someone shouted and we all swam towards the little green puck. As I dived in, Alex was already two meters in front of me. He didn’t have the puck for long, two people from another team attacked and engaged in something like underwater tennis. I got myself into action, meaning I got somebody’s fin in my butt, and somebody’s else knee in my face. I mean, I am not sure knee and fin were not from the same person, we were all a big ball of human flesh. In the excitement of that sexy moment, I forgot that air is a necessary requirements for a long life. My brain suddenly reminded me with a gentle thought “Air! Get some air or you will die!” and adrenaline overdose. I jumped out of the water like a mating salmon and started hyperventilating. A girl dived out next to me, took three breaths, gave me a look and dived down again. “Boy, these people are hard-core,” I said to myself and dived down. When I looked around, the puck was already on a different part of the pool. I mean, I am not sure if the puck was there, but there is where I saw an amorphous ball of hands, panties, and fins so I swam in that direction. As I approached, a battle of underwater tenis was abruptly interrupted by a white-pants enemy player who decided to play for himself and separated from the crowd. I swam to block his way, but it was like chasing a torpedo. He whizzed by me and put the puck in a metal goal.

Our brave team regrouped and started talking about strategy for the next round. My strategy was not to forget to breathe. At a start signal, we rushed again to the center, and this time I was watching for my chance from the surface. When crowd around the puck got smaller I dived in and actually got to touch the puck with my stick. My joy was not long-lived, as a member of the other team started fighting for it with me. In that tug-of-war, I was pushing as hard as I could, but the opponent had the same cunning plan. My brain screamed “Air!” and I went out. By the time my heart stopped pounding, the puck was again in our goal. Seems both my team’s strategy and my personal strategy to remember to breathe were falling. In addition, a team member told me that it is not allowed to push the stick with two hands. I guess the underwater police didn’t care because I lost the puck anyway.

In the third round, I didn’t get to any action, but at least I got some air.

Then, our team got a “penalty shot”. My team member would start in the back and I would be in the front. We assembled at the bottom of the pool and started. The puck was suddenly next to me, finally my chance! I took it, swam by the opposing player and went unstoppably towards their goal. Wow, can’t believe it, I am going to score. Then I noticed everybody stayed in the first half of the pool. I swam to the surface and Alex told me “You are not supposed to take the puck away when there is a penalty kick, we were just supposed to protect the sides pg the penalty kicker.” Andy Warhol once said, “In the future, everyone will be famous for 15 minutes.” It seems my future was not going to happen that day, and I will have to swallow much more chlorinated water before I become good with these underwater battles.

The game continued at the same pace for 20 more minutes. A lot of feeding frenzy scenes with human bodies all over each other like Berghain dark room at 4 am. Diving down, fighting for a puck, remembering to get air. Rinse, repeat. I got a better feeling for a strategy of the game, which is not surprising considering where I started. One time I even succeeded to intercept the torpedo with white pants, yay!

After half an hour the game ended. I thanked everybody for lending me their equipment and went for a long hot-shower meditation. My heart was still fast and chlorinated water was running from my nose. As I arrived home I dropped tiredly to my bed. With a smile on my face. Maybe my underwater play was more that of a sea cow than a dolphin, but still, it was a great, great experience that I want to repeat.


Computers Have Had Emotions for Quite Some Time

A common assumption is that computers can’t have emotions. But there is a strong philosophical argument that AI systems have had emotions for many decades now.

Before making an argument, we need to define “emotion”. That definition shouldn’t require consciousness self-awareness (reddit was fast to correct this) or physical manifestation.

Self-awareness can’t be a requirement for the presence of emotions because that would contradict current research findings that even simple animals have emotions. Experiments on honeybees in 2011 show that agitated honeybees display an increased expectation of bad outcomes, similar to the emotional state displayed by vertebrates. Research published in Science in 2014 concluded that crayfish show anxiety-like behavior controlled by serotonin. However, we wouldn’t consider honeybees or crayfish to be self-aware. But you don’t have to look to the animal world. When you are sleeping, you are not self-aware, yet when a bad nightmare wakes you up, would you say you didn’t experience emotions?

Physical manifestation in any form (facial expression, gesture, voice, sweating, heart rate, etc.), can’t be a requirement for the presence of emotions because it would imply that people with complete paralysis (e.g. Stephen Hawking) don’t experience emotions. And, as before, we have the sleep problem: you experience emotions in your dreams, even when your body doesn’t show it.

This is a bit of a problem. As self-awareness is not a requirement, we can’t simply ask the subject if they experience emotions. As a physical manifestation is not a requirement, we can’t simply observe the subject. So, how do we determine if one is capable of emotional response?

As a starting point, let’s look at evolution:

The evolutionary purpose of emotions in animals and humans is to direct behavior toward specific, simple, innate needs: food, sex, shelter, teamwork, raising offspring, etc.

Emotional subsystems in living creatures do that by constantly analyzing their current model of the world. Generally wanted behavior produces positive emotions (happiness, love, etc.) while generally unwanted behavior produces negative emotions (fear, sadness, etc.).

Emotions are simple and sometimes irrational, so evolution enabled intelligence to partially suppress emotions. When we sense that lovely smell of freshly baked goods, we feel a craving to eat them, but we can suppress the urge because we know they are not healthy for us.

Based on that, we can provide a more general definition of “emotion” for any intelligent agent:

Emotion is an output of an irrational, built-in, fast subsystem that constantly evaluates the agent’s world model and directs the agent’s focus toward desired behavior.

Take a look at a classic diagram of a model-based, utility-based agent (from Artificial Intelligence: A Modern Approach textbook), and you will find something similar:

Do you notice it? In the middle of the diagram stands this funny little artifact:

Even professional philosophers in the realm of AI have overlooked this. Many presume AI systems are rational problem solvers that calculate an optimal plan for achieving a goal. Utility-based agents are nothing like that. Utility function is always simple, ignores a lot of model details, and is often wrong. It is an irrational component of the system.

But why would anybody put such a silly thing in code? Because introducing “happiness” to an AI system solves the computational explosion problem. The real world, and even many mathematical problems, has many more possible outcomes than particles in the universe. A nonoptimal solution is better than no solution at all. And paradoxically, utility-based agents make more efficient use of computational resources, so they produce better solutions.

To understand this, let’s examine two famous AI systems from the 1990s that used utility functions to play a simple game.

The first one is Deep Blue, a computer specifically designed to crunch chess data. It was a big black box with 30 processors and 480 special-purpose chess chips, and it was capable of evaluating 200 million chess positions per second. But even that is not enough to play perfect chess, as the shannon number states that the lower bound of possible situations in a chess game is 10120. To overcome this, engineers could have limited search to only N future chess moves. But there was a better approach: Deep Blue could plan longer into the future if it could discard unpromising combinations.

Human chess players had known for a long time an incorrect but fast way to do that. Count the number of chess pieces on the board and multiply by the value of each piece. Most chess books say that your pawn is worth one point and the queen is worth nine points. Deep Blue had such a utility function, which enabled it to go many moves deeper. With the help of this utility function, Deep Blue defeated Garry Kasparov in 1997.

It is important to note two things:

  1. A utility function is irrational. Kids play chess by counting numbers of pieces; grandmasters do not. In the chess game of the century, 13-year-old Bobby Fischer defeated a top chess master by sacrificing the queen. He was executing a strategy, not counting pieces.
  2. A utility function needs to be irrational. If it were rational, it would calculate every possible move, which would make it slow and therefore defeat its purpose. Instead, it needs to be simple and very fast, so it can be calculating in every nanosecond.

This chess experiment proved that utility-based agents that use “intuition” to achieve solutions vastly outperform perfectly rational AI systems.

But it gets even better.

At the same time that IBM was pouring money in Deep Blue, two programmers started developing a downloadable chess program you could run on any PC. Deep Fritz ran on retail hardware, so it was able to analyze only 8 million positions per second—so it was 25 times slower than Deep Blue. But the developers realized they could beat the game with a better utility function. After all, that is how humans play: they are slower but have stronger intuition.

In 1995 the Deep Blue prototype lost to Deep Fritz, which was running on a 90MhZ Pentium. How is it possible that the 25-times-slower computer won? It had better utility function that made the program “happy” with better moves. Or should we say it had better “emotional intelligence”?

This shows the power of emotion. The immediacy of the real world requires that you sometimes stop thinking and just go with your gut feeling, programmed into you by billions of years of evolution. Not only is there a conflict between emotions and rationality, but different emotions also play tug-of-war with each other. For example, a hungry animal will overcome its fear and take risks to get food.

Note that in both higher-order animals and advanced AI systems, the fixed part of a utility function is augmented with utility calculation based on experience. For example, a fixed part of human taste perception is a love of sugars and a strong dislike for rotten eggs. But if one gets sick after eating a bowl of gummy bears, the association “gummy bears cause sickness” is stored and retrieved in the future, as a disgusting taste. The author of this article is painfully aware of that association, after a particular gummy bear incident from his childhood.

To summarize the main points:

  • Emotions are fast subsystems that evaluate the agent’s current model of the world and constantly provide positive or negative feedback, directing action.
  • Because emotional subsystems need to provide immediate feedback, they need to be computationally fast. As a consequence, they are irrational.
  • Emotions are still rational on a statistical level, as they condense “knowledge” that has worked many times in the past.
  • In the case of animals, utility functions are crafted by evolution. In the case of AI agents, they are crafted by us. In both cases, a utility function can rapidly look up past experience to guide actions.
  • Real-world agents don’t have only one emotion but a myriad of them, the interplay of which directs agents into satisfying solutions.

In conclusion, an AI agent is emotional if it has a utility function that (a) is separate from the main computational part that contains the world model and (b) constantly monitors its world model and provides positive or negative feedback.

Utility-based agents that play chess satisfy those criteria, so I consider them emotional—although in a very primitive way.

Obviously, this is not the same as human emotions, which are much more intricate. But the principle is the same. The fact that honeybees and crayfish have very simple emotional subsystems doesn’t change the fact that they experience emotions. And if we consider honeybees and crayfish emotional, then we should do the same with complex utility-based agents.

This may feel implausible. But we need to ask ourselves, is that because the above arguments are wrong? Or, maybe, because the utility function in our brain is a little out of date?



Zeljko Svedic is a Berlin-based tech philosopher. If you liked this piece of modern philosophy, you will probably like Singularity and the Anthropocentric Bias and Car Sharing and the Death of Parking.

Wanted: Collaborative Writer in Berlin

“The advantage of collaborative writing is that you end up with something for which you will not be personally blamed.”—Scott Adams

This is a unique job, for unique writers. The client is a well-off individual, the owner of a boring software company. To compensate for that, he writes long, in-depth articles for his blog, Vice Motherboard or scripts for his YouTube channel. The problem is that he writes slowly, has little time, and has another 50+ ideas for unfinished articles. This is where you come in.

Your job will be to meet the client in Prenzlauer Berg, Berlin, and collaboratively work on new writing projects. The client will provide you with an idea, the reasoning behind an article, and an outline of a text. Your creative neurons will then do the magic of converting the rough idea into a popular article that will be loved and shared by geeks worldwide. This is not ghostwriting; you are going to be co-author on the piece. The salary starts from 260 EUR per thousand words.

Sounds interesting? However, there are some requirements you need to fulfill:

  • You need to be a better writer than the client. “Better” is a subjective term, but the number of readers and shares is not. Be prepared to show your best work and their impact.
  • You need to be on the geeky/science/philosophy side. If you noticed, all the articles above are non-fiction, and deep into geek culture.
  • You need to be funnier than the client. That is not going to be hard.
  • Native or near-native English writing skills.

And to recap, the benefits are:

  • 20 hours per week (half-time position).
  • Location in Prenzlauer Berg, Berlin.
  • Working on a variety of interesting tech and science topics.
  • Competitive salary, starting from 260 EUR per thousand words.

Are you ready to change the world with your writing? Apply here.


MasterCard Serbia asked ladies to share FB photos of, among other things, their credit card

Credit card companies should know all about phishing, right? McCann should know all about marketing, right? Combine the two in Serbia and you will get a marketing campaign that just went viral, although for the wrong reasons.

Mastercard Serbia organised a prize contest “Always with you” that asks female customers to share contents of their purse on Facebook. If you read the text carefully, it is not required to photo your card. However, the example photo clearly shows the credit card details of a fictive customer:

Lured by prizes, many customers posted photos of their private stuff. And some copied Mastercard promo — their credit card, with full details, is visible in the photo:

This is the first phishing campaign that I know that was organised by credit company itself!

The funny thing that is that nobody in Mastercard, McCann agency or legal team noticed the problem. There is a lengthy legal document explaining the conditions of the prize contest:

That document is signed by Mastercard Europe SA and McCann Ltd Belgrade, so it seems it has passed multiple levels of corporate approval. And Mastercard didn’t seem to notice the problem until six days later when a serbian security blogger wrote about it.

In my modest opinion, the lesson of this story is to be careful how you hire. I am biased because I run an employee assessment company, but smiling people with lovely résumés can still be bozos. And when you have incompetent people in the company, it doesn’t matter what formal company procedures you have in place.


P.S. As user edent from HN noticed, photo sharing of credit cards is nothing uncommon for Twitter:

P.P.S. As of today (May 18), entire “Always with you” campaign is deleted from Facebook.


10 years of experience selling IaaS or PaaS

Today, a friend sent me a funny Google job posting. Here is the highlight:

10 years of sales experience? Amazon EC2 (IaaS) only came out of beta in Oct 2008, Google App Engine (PaaS) only had a limited release in Apr 2008. Now is Feb 2017, so even if you got started selling EC2 or App Engine from the very first day, you would only have 8 years of experience.

I know you are Google, but it is a bit too high of a bar. You still haven’t invented the time machine.


Car Sharing and the Death of Parking

Article was originally created for Vice Motherboard, which holds distribution rights till Sep 2018.

Rise of parking spaces in Los Angeles

Sometimes the future arrives humbly in our everyday life, until one day we realize its implications. Carsharing is like that—I was ignoring it until I noticed car2go popping around Berlin:


I had tried ZipCar (USA) and Co-wheels (UK) before, but this was different. ZipCars and Co-wheels cars needed to be booked for a few hours and then returned to the same spot. Car2go allowed me to book a car by the minute and leave the car anywhere in the city zone. When I reach my destination, I can park the car anywhere, sometimes using smart parking, to the enormous joy of the parking-seeking SUV owner behind me. When going somewhere in the city, driving back and forth takes less than an hour, so for the rest of the evening, that car2go can be used by other users.

One alternative to carsharing is ridesharing (Uber, Lyft, or similar), but ridesharing is more expensive (you need to pay for a driver) and I will argue that it is just an intermediate step until we have self-driving cars.

Both carsharing and ridesharing solve the biggest problems of cars in the city: utilization. The average private car spends 95 percent of its time parked somewhere, where it waits faithfully for you to finish with your work, shopping, or a great social time that will make you too intoxicated to operate it.

A death of parking

In comparison, a shared car with 50 percent usage has 10 times better utilization and needs parking only half the time. But, that doesn’t mean that the ideal carsharing city will need half the parking spaces. Surprisingly, carsharing would reduce the number of parking spaces a city needs by more than 10 times.

Let’s calculate for total carsharing (all private cars replaced with shared cars) with 10x better utilization:

Private carShared car (10x)
Used5%10 x 5%
= 50%
Number of cars in the cityNN / 10
Parking places neededN x 95%(N / 10) x 50%
= N x 5%
Parking reduction(N x 95%) / (N x 5%)
= 19x

Ideally, if shared cars are used 10x more, we need 10x fewer of them to power the city. But since they also spend less time parked, we need 19x fewer parking spaces!

But there is a miscalculation in the above math.

It is questionable whether 50 percent carsharing utilization can be achieved because of rush hours and the suburban commute.

Rush hours mean that most people want to use cars during peak times. Let’s suppose that all people need cars in a three hour peak and that the average non-rush commute lasts for 30 minutes (I will explain later why I’m using a non-rush commute). Then we can only have 6x fewer shared cars to replace private cars, not 10x.

But an even larger problem is the suburban commute—from suburbia to the city in the morning, and the other way round in the afternoon. The first commuter in the morning leaves a shared car in the wrong place—in the city. This is not such a big problem in Berlin, because people live and work in all neighborhoods of the city. But it is a big problem for American cities because of their typical suburban sprawl. Every morning, the number of shared cars in your cul-de-sac should match the number of morning commuters. Maybe that is one reason ZipCar in the US allows one-way trips only with designated cars and only in Boston, LA, and Denver.

Self-driving cars come to the rescue. They could drive you to the city and then come back to pick up the next commuter. This halves the efficiency, but is still better than leaving cars idly parked. As the original 10x utilization was probably too optimistic, let’s recalculate using 6x and 3x:

Shared car (6x)Shared car (3x)Shared self-driving car (3x)
Used6 x 5%
= 30%
3 x 5%
= 15%
3 x 5%
= 15% x 2 = 30%
Number of cars in the cityN / 6N / 3N / 3
Parking places needed(N / 6) x 70%
= N x 11.7%
(N / 3) x 85%
= N x 28.3%
(N / 3) x 70%
= N x 23.3%
Parking reduction(N x 95%) / (N x 11.7%)
= 8.1x
(N x 95%) / (N x 28.3%)
= 3.4x
(N x 95%) / (N x 23.3%)
= 4.07x

If everybody commutes from suburbia to the city and utilization is only 3x, the city gets to have 3.4x fewer parking lots, not bad! With self-driving cars, cities can reclaim even more street space. When they are not needed, an army of self-driving cars can drive themselves to multilevel garages or off-city parking.

It gets better. If you have ever bought a private car, you probably did a largest common denominator calculation—what is the longest trip you will need the car for? Because there are two times in a year when you go camping, you commute to your work in a large sedan or SUV. Alone. When picking a shared car, you use the lowest common denominator—the smallest car that will get you to your destination. And two smart cars fit in a single parking space.

This is a eureka moment for carsharing and self-driving cars. Most people I talk with think the cities of the future will be similar to today, except that you will own an electric self-driving car. In my modest opinion, that is similar to people of the 19th century imagining faster horses.

But wait, there is more

The annihilation of parking lots is just one of the benefits of carsharing:

  • Currently, if you use a private car to travel to a destination, you also need to use it to return from a destination. Carsharing cooperates with other modes of transport. Go somewhere with a foldable bicycle, and if it starts to rain, no problem. Book the closest shared car and put the bicycle in the trunk. Go to a bar with a shared car, get tipsy, and book a Lyft ride back home.
  • Fewer parked cars means you spend less time looking for parking. Research shows that on average, 30 percent of the cars in congested downtown traffic are cruising for parking.
  • You need to walk from your location to the location where you parked a private car. In an ideal carsharing city, you just walk out and take the first shared car available outside.
  • Because people are driving smaller shared cars, there is less pollution.
  • If you need a van, a truck, or a limousine, you just find and book one using a smartphone.
  • Insurance and servicing is handled by the carsharing company, not you. Because they have a huge fleet, they get volume pricing.
  • When your car breaks, you don’t need a replacement car. Every carshare you see is your “replacement” car.
  • With less need for parking space, through streets can ditch side parking and add two extra traffic lanes.

Not everything about carsharing is perfect. Sometimes the shared car I got wasn’t quite clean—somebody had transported a dog on a passenger seat. But, when I think about it, I didn’t clean my previous private car for months and sometimes it looked like I was transporting pigs with diarrhea, so maybe I shouldn’t complain.

How does the future look now?

Berlin is quite competitive, so we get a small glimpse of the future. Car2go, owned by Daimler AG, originally offered only smart cars. Car2go’s biggest competitor is DriveNow, owned by BMW and Sixt, which offers Minis and BMWs, like this electric i3:

bmw_drive_now_2Car2go decided to pimp up its rides, so now you can book a Merc:

webimage-22d13769-4db3-401c-b0311ca8e315c6f8Citroen also decided to join the party. The company offers a fleet of mostly electric C-Zeros with Multicity:

multicity_citroen_c-zero_berlin_flVolkswagen got angry that Mercedes and BMW were eating all the cake, so it purchased a 60 percent stake of Greenwheels:

greenwheels_deWhile Sixt is partnering with BMW, Hertz has its own Hertz On Demand, although it is obvious from its website that Hertz is still in rent-a-car mindset and doesn’t understand how the new thing works.

But why stop at cars? Other vehicles have the same problem; you only use them 5 percent of the time. eMio offers the same sharing concept for electric scooters:

12819449_1667878436800179_1815803174772161990_oDon’t laugh at the idea of shared scooters. This is a cultural thing—while in the US, the ideal transportation vehicle is a sedan and in Europe a compact car, two billion people in Asia consider scooters a family transport solution. Look at this nice family in Vietnam:

26220518712_cb51aeaecd_zAnd eMio is not the only one. Just last month, Coup launched a fleet of 200 beautifully designed, Gogoro electric shared scooters to Berlin:

gogoro-burnoutBoth Coup and eMio have an unusual charging solution: their teams go around the city and swap empty batteries for full ones.

Other carsharing companies have “socially automated” refueling. For example, in car2go you don’t ever have to refuel, but they give you 10 free minutes if you fill up a car with less than a quarter of a tank of gas.

Prices are already reasonable. In my experience, car2go smart is half the price of Uber in Berlin (which is not the real Uber, to be honest). But it can go lower with better utilization and economies of scale.

Finally, tourists can rent a NextBike bicycle from 1€ per 30 min.

As you can see, the situation is quite complicated here, and I know what some entrepreneurial readers are thinking. But hold your breath, as there is already an app that displays all of the above on the same map:


Death of traffic jams (and birth of queues)

More radical changes will happen when shared cars become a majority in the city.

Total carsharing can eliminate the traffic jams of rush hour—but that doesn’t mean you
won’t have to wait.

Why does a traffic jam happen, anyway? All people jump into their private cars at once and decide to drive along a similar route. Main routes have limited throughput, so you end up queueing on junctions and on the highway. The queue just makes things worse, as it lowers car throughput. It is an expensive system in which you line up in a running car, waiting for your turn. In total carsharing, that can’t happen. Since there are 3x or 6x fewer cars available, there is no way that everybody can just jump in a car and go. Now you don’t wait on a highway, you wait for your turn to get a shared car. I would argue argue that this is better because:

  • You are going to wait in your home or office (for a car to become available), not on the highway.
  • There is less chance of some route “jamming” and reducing car throughput.

But waiting for shared cars opens two completely new scenarios:

  1. “Shared” carsharing. Imagine that you open a carsharing app of the future and request a car. The app puts you in a waiting queue and says that the estimated waiting time for the next car is 30 minutes. But someone from the same street is going to the same part of town. The app offers to cut your waiting time to 15 minutes if you both share the same car. Since you don’t know the person, the app offers to increase security by enabling a video camera inside the car (it is there anyway, to check whether you left the car clean). You accept the pooled ride, but decline the camera option, as the other person’s profile is rated 4.5 stars. Your car is available in 15 minutes.
  2. “Premium” shared cars. Let’s say you are in a hurry and don’t want to use a carsharing company that tries to maximize car usage. You use a more expensive carsharing company that promises to have a car available in five minutes or the cost of ride is on them. You pay a premium to get somewhere faster. It’s a nice system, although I guess in some posh downtowns everybody will try to use the premium shared cars, in which case you are back to square one. Then you need a “super-premium” car share. Another option is existing car sharing companies adding surge pricing, but Uber showed that paying 4x more for basically the same service didn’t go well with the customers.

Rebirth of the parking space

If all that space becomes available, cities can reclaim it for public use. This is especially true in Europe, where cities were never designed for cars—to make room for them, something had to be given away. Year by year, streets have been made narrower by side parking, parks have been converted to parking, and new buildings have been constructed with large parking lots next to them. If the majority of the transportation burden falls to shared cars, buildings will just need a “valet” parking area in the front. The valet will not be a real person—but your smartphone.

That could dramatically change suburban landscapes, where every business has it own large parking area. But even the dense city grid can be changed. For example, although Barcelona is known as a well-planned city, most streets today are taken by cars. People got excited a few weeks ago when a plan for “superblocks” was announced. The idea is to designate one-third of the streets as through roads, and two-thirds as pedestrian-friendly zones. The problem is that the second phase of the plan calls for elimination of parking in the pedestrian-friendly zone, by building off-street garages for every superblock. That is an enormous capital project for the city. With carsharing, the solution becomes easier:

  • Make every second street a through street. Eliminate side parking in through streets to add two additional lanes of throughput.
  • Make other streets half dead-end streets (used for parking of car shares), half pedestrian-only zones.

See the illustration below:


This solution builds on the existing infrastructure (no new garages are needed), and you get a mini city square in place of every fourth intersection. Side parking places are reduced 4x, which is achievable with carsharing. The longest walking distance to an available car is one block.

Think what all that change would mean for Los Angeles, for example. It currently has 200 square miles covered with parking lots, 1.4x more than the total land taken up by streets and freeways.

All that transformation would be powered by the simple idea:

The purpose of cars is to be driven, not parked.

The heroes of the future

Some people had seen the future long time ago.

Zipcar, Flexcar, and City Car Club were all started in 2000. But they missed the convenience of a smartphone.

In 2007, Steve Jobs announced the iPhone and, a few years later, ridesharing companies started popping up in San Francisco: Uber in 2009, Sidecar in 2011, and Lyft in 2012.

In 2010, car2go went public in Austin, Texas.

All those services were convenient and cheap, and big companies started paying attention.

In 2014, Sergey Brin said this of Google’s self-driving car: “So with self-driving cars, you don’t really need much in the way of parking, because you don’t need one car per person. They just come and get you when you need them.”

In 2016, Elon Musk unveiled his master plan, which states: “You will also be able to add your car to the Tesla shared fleet just by tapping a button on the Tesla phone app and have it generate income for you while you’re at work or on vacation.”

In 2015, even GM said: “We’ve come to the conclusion that our industry within the context of today’s traditional vehicles and today’s traditional business model is not sustainable in its current form.”

Brave words from an old school car maker! I would also consider innovative people at GM, Daimler, BMW, Ford, and VW to be heroes, although they mask really well under the grey suits.

But every story of heroes also has a story of…

The villains

Change management 101: When there is a big change, no matter how good, there is going to be someone opposing it. In this case, it seems that one of the villains are the people we elected to work in our interest.

The private car is not a fair competitor. Parking is subsidized by both the politicians and the average people. People want “free” parking, but do you really think that 16.8 m2 of valuable land in the city is “free”? It is not just taxpayers’ money. When you go to a McDonald’s, a parking fee is hidden in the burger price because the owner needed to purchase land for a parking lot. When you purchase a condo, the price is higher because the building developer needed to build underground parking.

The book The High Cost of Free Parking estimates that the total cost of “free” parking in the U.S. is 1-4% of the GNP. (I also highly recommend that you listen to the Parking is Hell episode of the Freakonomics podcast.)  The economic price of monthly parking in big cities goes from $438 in Boston, to $719 in Rome, to a staggering $1084 in London.

What puzzles economists is simple math to politicians. Giving affordable parking to people gets them votes. My hometown of Zagreb has some great populists in power. As a city center resident, you can leave your piece of metal next to the parliament for the price of $15. Per month. For years I complained about the price of parking, but then I realized that maybe I should shut up.

If the price of parking were subject to market forces, math would be simple. Shared cars would spend less time parked and you would share the price of parking with other carsharing users. With private cars, it would be your sole responsibility to pay $500 per month for parking.

But a mayor who introduces an economic price of parking would soon be impeached. So maybe the real villain of this story is not the politician, but you, dear voter?


It seems that the future of urban transport is electric, self-driving shared cars. But that electric future requires new cars with great batteries, while self-driving cars are five years out. Both are going to be more expensive.

However, carsharing is already everywhere. There are rideshares like Uber and Lyft. You can convert your existing private car to a shared car with an electronics kit, such as the $99 Getaround Connect. With new legislation in the cities, which promotes the sharing of cars and doesn’t subsidize parking, we can have more liveable cities and better urban transport now, without large capital investments.

But for that, we need a change in mentality. If you agree with that, spread the word.


UPDATE: check discussions on Hacker News and Reddit.

Why App Stores Need Progressive Pricing


In this ever-changing world, one thing stays stubbornly the same: app store pricing.

The mother of all app stores, Apple App Store, came in July 2008 with a flat commission: 70 percent to the developer, 30 percent to Apple. Android Market (now Google Play) was introduced two months later, with the same cut: 70/30. Windows Store was four years late to the party, so Microsoft decided to set bait. Developers started with a 70/30 cut, but then were upgraded to an 80/20 cut after they had reached $25,000 in sales.

In eight years, Apple experimented with dubious design choices, the Microsoft board decided that Ballmer should stop dancing, but app store pricing didn’t change. Yes, Apple introduced an 85/15 cut, but only for subscriptions, and only after the first year. On the other side, Microsoft ditched its initial discount in 2015 and went with the standard 70/30. Which begs the question:

Is 70/30 some magic ratio or just an arbitrary convention?

Let’s examine that. From a developer’s perspective, the app stores provide the following benefits:

  • Payment processing. For developers, it eliminates the pain of connecting to credit card systems and merchant accounts. For users, it reduces payment friction, making them buy more.
  • Hosting. App stores do reliable hosting, even when there is a surge of traffic. No more updating servers, or waking up in the night because of a hacker intrusion or a DDoS attack.
  • Quality review. Before publishing, apps need to pass an acceptance review. Developers often hate this procedure, but a marketplace without viruses or broken apps makes a user experience better. Satisfied users buy more.
  • Marketing. It is hard to reach users. App stores promise that if you have a high-quality app, it will go up in the rankings and maybe end up in the featured section.
  • Platform access. Apple, Google, and Microsoft invested hugely in creating a platform and devices on which you can run your apps. Maybe a part of their 30 percent cut is a fee to access their platforms?

Reasons to use app stores are quite compelling, and all platforms are moving in that direction.

But, the value of listed benefits changes significantly with the perceived user value of the app. This dynamic is not intuitive, so let’s use two imaginary developers as an example:

FlappyElephant app is a simple, casual game, made by one developer in his spare time. It costs $1.AcmeShop app is a complex editing tool for photographers and illustrators. Made by a team of 200 people, it costs $100.

These developers’ views on the above app store benefits are quite different:

Payment processing
FlappyElephant: Great, I get charged only 30 cents on the dollar! Other payment collectors charge up to 75 cents per transaction. And there is no way a customer would otherwise take out a credit card for a $1 indie game.AcmeShop: $30 per transaction!? Our Stripe-powered webshop costs us $3.2 per transaction (2.9% + 30¢), 9.4x less!
FlappyElephant: After I deploy, I don’t have to worry about it. It can scale and customers will get the update automatically.AcmeShop: We already have our own servers; the app store is just one more place where we need to deploy.
Quality review
FlappyElephant: Annoying, but at least they let me know it breaks on tablets.AcmeShop: Every release is delayed for two days. On iOS, ratings are reseted after every release.
FlappyElephant: I can’t believe so many people are finding my small app. Otherwise I would be roasted; AdWords is $1 per click and nobody searches Google for “flappy elephant”.AcmeShop: People buy our $100 app because they have known us for 10 years, not because they noticed us while scrolling a list with 50 other apps.
Platform access
FlappyElephant: If there were no smartphones, there would be no FlappyElephant!AcmeShop: If there were no tools like ours, creative professionals wouldn’t use the platform!

Two app developers, two very different stories. While FlappyElephant’s developers would pay even 50 percent, AcmeShop’s developers consider everything above 10 percent to be a ripoff.

There is a way to satisfy both parties: progressive pricing. The commission should fall as the price of the app increases, which can be implemented in many ways.

For example, this funky-looking formula:

Commission = 22 / (9 x Price + 90) + 7 / 90

Has a nice property of commissions for $1, $10 and $100 being round numbers:


Price can be either actual transaction price, or, arguably more fair, cumulative user spend per app. In the case of latter, after user purchases 10 times a $10 monthly subscription, cumulative user spend is $100 and the developer is given a 10% commission. Again, this is just one of progressive pricing options.

I think that makes perfect sense. I purchase many $1 apps impulsively, thanks to the app stores. But I never purchase anything above $20 without going to the Internet and researching all the alternative options. I buy an expensive app because I trust the developer, and then the app store just makes it more expensive. Not just 30 percent. App stores make it 42 percent more expensive (30/70=42.8%).

Of course, big developers like AcmeShop are not stupid. They have found a way to have their cake and eat it too. The solution is simple:

  1. Make your apps free.
  2. In order to use the app, users need a separate “cloud” account.
  3. The free account doesn’t offer much.
  4. The free app unlocks content or features that can be purchased in the “cloud.”

One by one, big developers have started implementing exactly that strategy.

For example, the Amazon Kindle iOS app doesn’t allow book purchasing:


Kindle’s Android app is even more blunt; it circumvents Play Store with a built-in browser (!):


Microsoft Office mobile is free for devices smaller than 10.1 inches, but larger devices need a separate Office 365 subscription:


Spotify has a slightly different system. It offers in-app purchases, but they are more expensive than purchasing a subscription on their website. Spotify even sends an email to users warning that they made a stupid decision:


Practically every music subscription service has been circumventing app store payments since 2011.

So, congratulations, dear app store product manager. You just shot yourself in the foot. You were greedy for 30 percent and now you are getting zero percent. And users of your app store are annoyed that purchasing something requires switching to a browser. But what can you do? If you kick Kindle, Office, and Spotify off your app store, then nobody will care about your platform. So maybe big developers are right—maybe you should pay them to publish great software on your store? Like when Microsoft was paying selected developers up to $100,000 to port their apps to Windows Phone.

Mobile app stores have a problem with big developers avoiding payment systems, but desktop app stores have an even bigger problem: they are avoided altogether.

This year, the co-founder of Epic Games wrote a long rant about UWP and Windows 10 Store, asking for Microsoft’s guarantee (among other things) that:

“…users, developers, and publishers will always be free to engage in direct commerce with each other, without Microsoft forcing everyone into its formative in-app commerce monopoly and taking a 30% cut.”

But the Windows 10 Store is good compared to the Mac App Store, which is a joke. It is only useful for downloading Apple apps—in which case Apple pays a commission to itself. Even top-grossing featured apps are leaving, and switching to manual installation. Compare that experience to that of a mobile app store install:

MacOS manual installiOS
  1. Google for a developer webpage.
  2. Find and download a Mac version.
  3. Mount the downloaded DMG (double-click).
  4. Open the mounted drive. It contains two files: an app and a shortcut to the application folder.
  5. If you clicked the app, you just made a mistake! That is just going to run the app from the mounted drive.
  6. Instead, drag and drop the app to the application folder (there is usually an arrow so you don’t get confused about what to drag where).
  7. Eject the mounted drive (using the right-click menu).
  8. Delete the DMG.
  9. When starting the app for the first time, authorize it using a security dialog.
  1. Find an app in the app store.
  2. Tap the “Get” button.

Mounting drives? Dragging and dropping to a system folder? What is this, an 80s Mac with a floppy drive?!

And, in case a Mac app doesn’t have an automatic updater, for every upgrade you have to repeat the exact same procedure.

On Windows, manual installation is a few steps simpler, and you often get a nice malware as a reward for your effort. Like the PCs of my extended family. One of them has so much malware it would be the envy of the Kaspersky Lab researchers.

Why are Mac and Windows still in the Stone Age of app distribution?

Back to the original question. I argue that a 70/30 cut is an arbitrary ratio trying to be one-size-fits-all. It fails at that because the value proposition is completely different for developers of low-price versus high-price products. And app stores fail to profit on high-price apps, because that high price is listed somewhere else.

So, we are now in a triple loss-loss-loss situation:

  • Users have a bad experience because purchasing or installing an app is convoluted.
  • Developers have to create workarounds that create user friction.
  • App store owners make zero money on high-price products.

And it is all because of tech politics.

I will end with that conclusion, as I need to go and mount/unmount some drives.


UPDATE: Check the discussion on Reddit.