Zapier

Yesterday I wrote about wanting a replacement to ifttt, some people on twitter told me to try Zapier. I tried it and it is exactly what I need.

It is basically an internet chewing gum, you use it to stick two things together which is what I did, making it automatically publish my newest blog posts to twitter and LinkedIn.

It checks every 5 minutes for new posts, much better than ifttt, which changed from every 20 minutes to every few hours which isn’t good. Thank you internet.

IFTTT Replacement

I use ifttt to automatically publish links of my latest blog posts on LinkedIn and twitter.

The Applets I am using used to run every 20 minutes, and if there was new content, it would publish the link. Recently I noticed a big delay in posting the links, I checked and found that most of the Applets now run every few hours instead of 20 minutes. I don’t like that.

I am searching for an ifttt replacement now. Something that would take an RSS feed and automatically publish new links to social platforms.

It turned out for better

I was having a conversation with a friend and we opened up and shared some of our darkest moments. There was a moment of silence and I broke it by saying “but you know what, it turned out for better”.

That’s when my friend said he isn’t sure if it turned out for better, or we overcame the hardships at the time. We tend to undercredit ourselves when we get through hard moments. We credit the circumstances for our survival.

It is true that circumstances have a big say in passing hard moments, but it is our perseverance that really brings us forward. So next time you pass a tough moment, credit yourself by remembering how much perseverance you put into becoming where you are today.

Facilities for disabled guests

Booking.com tried making the experience of finding accessible hotels better, unfortunately they made it worse, and I was part of this.

Facilities for disabled guests

I am planning a trip to Dortmund and noticed that they changed their “Facilities for disabled guests” filter – which allowed filtering for accessible properties on the site – to a more granular set of filters such as “Wheelchair accessible”, “Toilet with grab rails”…etc.

You can see the filters on the left

The problem with “Facilities for disabled guests” was that it didn’t mean anything. I still have to call each hotel, ask if they have wheelchair accessible rooms of the type I am looking for, and if the rooms are available for the dates I choose. After sometimes few, sometimes many calls, I would find a hotel that meets the criteria and book it. It is a tedious process, but it is the best available option that I am aware of.

More details ≠ better experience

Back in 2015 – when I was working there – I complained about how hard it is to find accessible rooms on the website. The best thing about working for Booking is that you can quickly ramp up an idea and run an experiment. That’s what we did back then. We ran a few experiments.

The experiments were no success. We thought the problem might be in the data we had. We only had this “Facilities for disabled guests” which is self reported by the hotel and subject to their interpretation of understanding what it means. That’s when I did a lot of research of what makes a hotel accessible and came up with a list of data points that we should collect from hotels. We collected them, and finally it is now live as you saw in the previous screenshot.

The problem with the new more granular filters is that they show less properties. I did the same search on the mobile website, which still has the “Facilities for disabled guests” filter. I was able to filter for more properties (26 properties) than the one on desktop (8 properties in the best case).

Mobile site
Desktop

Finding really accessible rooms

In retrospect, I think my approach back then was wrong as I didn’t travel a lot and didn’t understand the problem from both sides, the “disabled” traveler and the hotel. Now that I did my homework contacting 300+ hotels in Berlin, I realized it is not a problem of collecting more data, well, it is about information but not the way I tackled it earlier.

My hypothesis (it is always a hypothesis until the data punches you in the face) is that there is no way to make a wheelchair user find and directly book accessible rooms online unless they are their own room category just like Twin and Double. There should be Accessible Twin or Accessible Single.

Some hotels already do that on their own website (I have a few examples but I am too lazy to dig into my data to find them), and some already do this on Booking.com but they are like unicorns. It is almost impossible to find them as it is only mentioned in the room title which you can’t search for.

Bavarian Inn
Queen Room with Mobility Access – DoubleTree Amsterdam

I hope this post triggers some change for better. Booking is full smart people, and they can definitely make this better. Until then, please return the “Facilities for disabled guests” filter, because I can’t plan my trip to Dortmund.

App Store 30%

I recently read about the backlash on Apple and Google’s 30% cut on every transaction on their stores.

Fortnite game will no longer be supported on Android. Players are asked to disable the security features and install the application outside of Google play store. I wonder if others will start doing this, or if there will be a new Android store with better economics at least for games.

This is not possible on iOS. Today I was on YouTube app on my iPhone and it prompted me to try YouTube premium free for one month. As usual I like to check those funnels and noticed something weird. It costed 16 Euro per month after the trial even though I saw it before on the web version costing 12. I went to YouTube mobile web version and surprise surprise, it costs 12.

So Fortnite is circumventing Google, and Google can’t circumvent Apple so they are charging more, and probably Spotify have a similar dynamic with both Apple and Google since they can charge less for their music services since they both own Apple and Google music respectively.

What I like about this interesting dynamic is how it shows the strength of the big players, and that there is no single playbook for how to do things.

Fortnite will sacrifice the revenue drop from play store, because apparently they expect to make more from their fanatic users who will just do anything to download the game. And Google is charging more on iOS, expecting users to not bother and still pay.

Tweets are my own

Many people on twitter have in their bio some sort of a disclaimer such as “Tweets are my own and don’t represent my employer”. In my opinion this is totally useless.

If I say something stupid related to my employer, the audience following me won’t say oh, he doesn’t represent his employer, it is just him. People don’t care and won’t draw such a distinction.

And if it gets worse, you will be sacrificed by your employer. No hard feelings, it is the deal.

That’s why I wouldn’t waste part of my twitter bio on something that useless.

Premortem

One of the things I observed many times in different jobs is that I am skeptical of something, I raise my voice, no one listens. I talk privately to other people that were part of the same discussion, they have similar concerns to mine, but they they didn’t raise them.

One reason could be not wanting to sound the skeptic in the room, or they don’t feel comfortable speaking in a group setting, or there was this particular person (most of the time a big manager) they don’t want to speak in front of. Regardless of the reason, it is one of those cases where multiple people have concerns but wouldn’t raise them.

I was listening to the knowledge project episode with Annie Duke, a world poker champion. One of the things she mentioned about decision making is premortems. I searched it further and found this Harvard Business Review article from 2007. I normally don’t like HBR articles due to their repetitive boring pattern and lack of insights most of the time (I can write a post specifically on that), but this one is a good start on the topic.

Here are the parts I like the most:

A premortem is the hypothetical opposite of a postmortem. A postmortem in a medical setting allows health professionals and the family to learn what caused a patient’s death. Everyone benefits except, of course, the patient. A premortem in a business setting comes at the beginning of a project rather than the end, so that the project can be improved rather than autopsied.
……
A typical premortem begins after the team has been briefed on the plan. The leader starts the exercise by informing everyone that the project has failed spectacularly. Over the next few minutes those in the room independently write down every reason they can think of for the failure—especially the kinds of things they ordinarily wouldn’t mention as potential problems, for fear of being impolitic.
…..
Next the leader asks each team member, starting with the project manager, to read one reason from his or her list; everyone states a different reason until all have been recorded. After the session is over, the project manager reviews the list, looking for ways to strengthen the plan.

I didn’t know about premortems before. Sounds interesting as it provides this safe environment where different people can raise their concerns. I imagine the biggest challenge would be when to organize one? which decisions need a premortem? and how open are the people involved to facing their potential failure before a new exciting initiative they are going into? Those are questions I am yet to answer.

User Stories Template

A developer friend of mine approached me asking for a template on writing user stories. He said that he is doing this at work but the feedback he got was that his way is too technical. The internet is full of templates, so here is another one.

Questions list

  • Who is the user?
    • As a customer…
  • What is the problem you are solving for them?
    • I waste a lot of time reordering things I already ordered before.
  • Based on what do you know it is a problem (Numbers, user research, survey, or just a guess)?
    • We know this because for the past 2 months, 30% of customers reordered the same items.
  • Why is it a problem?
    • An order takes on average 5 minutes to create, we can save this time for customers leading to higher sales and customer satisfaction.
  • What’s the proposed solution?
    • We will experiment showing customers their most recent orders. Allowing them to add the items to a new shopping cart without having to type in the search bar.
  • How will you measure success?
    • We will use % of orders created from already existing ones vs those created from scratch as success metric. We expect this % to go up.

You should end up with something like this:

As a customer, I waste a lot of time reordering things I already ordered before.  We know this because for the past 2 months, 30% of customers reordered the same items. An order takes on average 5 minutes to create, we can save this time for customers leading to higher sales and customer satisfaction.

We will experiment showing customers their most recent orders. Allowing them to add the items to a new shopping cart without having to type in the search bar. We will use % of orders created from already existing ones vs those created from scratch as success metric. We expect this % to go up.

Random Thoughts

It has been a while since I wrote something. This is normally a good trigger for a random thoughts post.

As much as I like writing, and really love what Fred Wilson has been doing blogging daily for the past 10 years, I am recently questioning my ability to follow the same path. It is a hard to build habit. It has enormous benefits that I talked about earlier, but I don’t have the persistence to keep doing it daily. I also observed that there is a negative correlation between the number of posts I published, and how much is going on in life. I write more when I am at a sweet spot of interesting conversations, and free time. Which I am currently not at.

There is also the same negative correlation between how much I write and how much Arabic content I am exposed to. I recently unmuted everyone I muted on twitter, which included all my friends and one of my sisters (I muted anyone posting content I don’t like and would keep me in touch with what’s happening in Egypt). This made me exposed to a lot of Arabic content, which resulted in whenever I want to write, I expressed my thoughts as an Arabic tweetstorm.

I am always torn between writing in Arabic or English. In Arabic I know I can reach bigger audience, because not many people write on the same topics I do, and I think I have the ability to write what’s to the point. However, English has better long term benefits like improving my English, and career opportunities by people approaching me because they read something I wrote.

Work is so interesting these days. I never thought developer tooling can get this interesting. We launched new features on our platforms that allow our developers to operate at scale (I hope I have the time to publish some of this on the Zalando blog). We also screwed up a couple of times especially with changing stuff without communicating before. I discovered that some features you need to announce before releasing because it leads to confusion even if it provides better experience. And now it is getting more interesting as we are analyzing the tech stacks and thinking how easy it would be for a team to move to the Kubernetes infrastructure provided by my team. When you have a lot of data you can do lots of interesting stuff. Unfortunately this part of the post is a bit vague because I am afraid to break confidentiality, but the takeaway is it is getting more interesting for me. And BTW, I am hiring a product manager to join my team, come join me or refer someone you know.

I started learning German. After 20 months in Germany I finally signed up for my first German class. It is level A1.1 and I am a bit bored. I already know most of what’s being taught. A second problem I have in general with all language learning techniques I tried so far (Audio courses, Duelingo, Babbel, Rosetta stone, and classes) is the lack of gratification that would motivate me to continue learning the language. You have to invest a lot upfront before you are able to hold a meaningful conversation with someone, which leads to losing motivation in the middle and making language learning  tedious. I am saying this and I am the extroverted butterfly who talks to every random person on the street. I can imagine it is far worse for people dealing with social anxiety. I don’t know the solution, but I think my next step will be a private tutor.

A random thoughts post can’t be without talking about books. I finished “The Subtle Art of Not Giving a Fuck”. I liked it. It was an easy read, and follows a stoic approach to life, which is quite similar to my and my father’s approach to life. It got boring a bit in the middle, and the author tried being deep at the end, but it didn’t have the desired impact on me. I couldn’t relate to death the way from the way he wrote about it. Overall it is a good light read.

I am currently switching between “The upside of stress” and “Skin in the Game”.

The upside of stress is by the same author of “The willpower instinct”. The book is about an interesting point of view towards stress. A more positive one. However, it can be summarized in 50 pages instead of the 200+. The book is full of personal anecdotes, and studies that seem far from having the argued impact. With psychology having a reproducability crisis, I wonder how much of it stays true over time.

Skin in the game is the second book I read by Nassim Talib after Antifragile. Nassim has this interesting way of stating the obvious in a convoluted way that makes it sounds too deep. I like reading him because he is a contrarian and normally has different ways to explain the same thing (Fat Tony, Greek mythology, history, modern day events…etc).

I am swamped these days between work, German, and my sister who is visiting me in Berlin.  I like it.

Ekshef Postmortem

We don’t have that many startup postmortems coming from the middle east. Here is one.

Backstory

We started Ekshef in 2011 fresh out of college. I started it with other four co-founders. Our goal was to build an online booking service for doctors similar to what’s currently Vezeeta. The main motive for me was to solve the problem of finding and booking doctors, since I spent countless hours of my life in doctors’ clinics, and in my parents’ car while waiting for my turn.

We joined Flat6Labs cycle 0 (the very first cycle).  And after some ups and downs, we stopped working on Ekshef in 2013/2014. By the time of this writing, all the founders (with the exception of one) are outside of Egypt, and most of the people we worked with during that time are also currently outside of Egypt.

Since I have been getting some inquiries on what happened, and why it didn’t work. I decided to answer this once and for all. Before you proceed please note that this is my perspective, and other involved stakeholders might have different opinions.

Wrong Problem

We wasted a lot of time trying to solve the wrong problem. We thought if we solve the appointments problem for patients everyone would be happy. We realized that doctors don’t give a shit about organizing their appointments. In fact, some doctors even like having their clinics busy and full, because it is an indicator for many Egyptian customers of how popular – which means good – is this doctor.

We later realized the biggest pain for patients is actually finding out the good doctors. I still believe this is the main pain point in Egypt. People still ask their mom, their neighbor, or their friends for doctor recommendations. When we realized this we started building a social recommendations engine. The idea was you login to Ekshef using your Facebook account, then you would have two options 1) Recommend a doctor to your FB friends. 2) Ask for doctor recommendations. Back then, Facebook APIs allowed pulling all of the users’ friends (hello Cambridge Analytica). We were one of the beneficiaries of this feature and were using the social graph to help users recommend doctors to each other. This feature had moderate success, we could’ve optimized it more but we ran out of funding and lost hope before managing to get there.

Inexperience

We were naive and fresh out of college. We had a great technical team that could build anything. This led us to build a crazy search engine that would allow you to search for doctors with any way. Location, specialty, price, opening hours, you name it. To make it more crazy, I wasn’t satisfied by most of the services that provide Arabic search, including Vezeeta. Omar El Mohandes, who was working with us at the time and currently working at Amazon based in London implemented the Soundex search algorithm for Arabic. This algorithm allows you to search for any Arabic word without having to worry about the different versions the word. احمد = أحمد. Not only this, Omar did some improvements to make it detect typos. Yes, typos in Arabic names were still getting you the right doctor on Ekshef. Just like Google.

Another side of inexperience was dealing with those outside the company. We believed a lot of people that were lying to us. We had to no experience how to raise funds, and even our investors were inexperienced as much as we were with how the model should work. The general push was towards fund raising, but the company wasn’t really funding ready. The fund raising was based on totally unrealistic financial models that make no sense for a pre-market fit, pre-revenue company. We didn’t know it, our investors didn’t know it, and the people we were trying to raise funds from didn’t know it. It was like a group of blind people trying to identify the elephant in the room.

Wrong timing

When we started in 2011, internet and smartphone adoption wasn’t at the same level it is at now. Doctor assistants didn’t have smartphones. They didn’t know how to use a computer or the internet. Facebook and twitter weren’t as popular. People were downloading a game such as subway surfer by sending a 5 EGP message to get a link to the game on Google play store. And amidst all this, we were naively thinking the uneducated doctors assistants will use our system to organize appointments.

Add to this the political instability, and the fact that none of us had to stay and work in Egypt. We all decided one after another that it is not worth it, and everyone left to join a company abroad (Google, Amazon, Booking…etc).

Final Remarks

Ekshef experience shaped me in many ways. I have countless stories from these days. I met many great people that put their trust in me and helped me a lot. I have made good friends and was surrounded by some of the smartest people I know. I also had my flaws. I apologize for anyone I hurt or screwed up with. And I hope they forgive me.

As for my opinion on starting a startup in Egypt. I am extremely bearish on Egypt and don’t see it as a fertile ground for anything meaningful to come out of it.

There is a lot of inefficiency that makes any optimization problem impossible. There are basics that don’t exist such as logistics and payments infrastructure. There is an unavoidable brain drain that makes scaling an engineering organization super hard. And last but not least, building a successful company is a decade worth of effort with low probability of success, and with the current currency situation the economics don’t work compared to having a stable dollar/euro paying job abroad.

I hear you saying but look at Instabug and Wuzzuf. Those are exceptions to the rule. We are yet to find their final outcome. Even with the successes they have, they are at risk of losing everything and going back to zero. And still, those are exceptions in a country that’s failing by any objective measures.

I hope I am wrong.