<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom"><title>My blog</title><link href="https://blog.luap.info/" rel="alternate"></link><link href="https://blog.luap.info/feeds.xml" rel="self"></link><id>https://blog.luap.info/</id><updated>2025-08-16T23:00:00+02:00</updated><entry><title>Top 50 at Ironman in 3 years of training</title><link href="https://blog.luap.info/top-50-at-ironman-in-3-years-of-training.html" rel="alternate"></link><published>2025-08-16T23:00:00+02:00</published><updated>2025-08-16T23:00:00+02:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2025-08-16:/top-50-at-ironman-in-3-years-of-training.html</id><summary type="html">&lt;p&gt;July 2021 I needed a new sports challenge after years practicing strength training. I wanted a sport that is polyvalent and that I can do by myself. So I choose triathlon, it is cardio based, and has 3 sports and you train wherever you want when you want.&lt;/p&gt;
&lt;p&gt;Before I …&lt;/p&gt;</summary><content type="html">&lt;p&gt;July 2021 I needed a new sports challenge after years practicing strength training. I wanted a sport that is polyvalent and that I can do by myself. So I choose triathlon, it is cardio based, and has 3 sports and you train wherever you want when you want.&lt;/p&gt;
&lt;p&gt;Before I start, I need to say that I did 1 year of running 10 years ago, I was training about one and half day a week and was pretty strong (I did 35'24 at a 10k). So yeah I have pretty good genetics regarding cardio. But I didnt do any endurance training for 10 years and I was restarting from scratch. The goal is not to say that everyone can do what I've done, but more to describe all the decisions I have taken and what are the weeks you need to have to do that kind of things&lt;/p&gt;
&lt;p&gt;My first running session I didnt manage to run more than 40 minutes and I had to walk for sometimes. My body was a machine, I was full of muscles, but I was heavy and I had no cardio. My knees were hurting.&lt;/p&gt;
&lt;p&gt;When I set myself an objective I always follow the same strategy. I want the objective to be long term (you cant be competitive if you give yourself a short timerange), I want the objective to be very difficult to achieve (people experts of the field need to tell you this is impossible, and I also need to beleive there is max 50% of change I will make it), and I want the goal to be at the edge of pro level and best amateurs.&lt;/p&gt;
&lt;p&gt;So I choose to do 9h at an Ironman. This is very very far from a pro level, average pro can do 8h and the best pro can do 7h30, but this is still competitive, usually 9h at an ironman will make you qualify for the world championship.&lt;/p&gt;
&lt;p&gt;Ironman is a triathlon with 3.9km (2.4mile) of swimming then 180km (112mile) of cycling and 42km (26 mile) of running. (In reality the distances vary from ironman to ironman, so these distances are not really respected). The terrain also varies, sometimes you swim in a lake, sometimes in the sea, sometimes in the ocean, sometimes in canal, sometimes it is cold, sometimes it is hot. All these factors will influence the time the same athlete will need to complete the swim. Same things with bike, sometimes it is super flat, sometimes it is flat with 2 loops of the same circuits, sometimes it is hilly, sometimes it is a moutain stage. And finally the same is true for running: warm, hot, hilly, flat.&lt;/p&gt;
&lt;p&gt;I choose to do the Nice Ironman, I'm french, my parents live in Nice, and I like when it there are some mountain on the bike. My time of 9h in Nice is impossible, Nice has 2300m of positive elevation gain, if you compare the time of best pros between a mostly flat ironman and nice it is about 30minutes more. (Lange 2023 (Nice) : 8:10, Lange (2024) Kona : 7:35). So my objective would be 9h30 at Nice full ironman in 3 years (2024). 9h30 will rank you 22th, 21th, 21th, 10th in the last years.&lt;/p&gt;
&lt;h2&gt;Training strategy&lt;/h2&gt;
&lt;p&gt;There are 5 sports in an ironman, the swim, the bike, the run, the nutrition and the transition (In reality transition is only a thing in short distance triathlon so I didnt prepare it at all). Nutrition is a super important part, you can neglect eating and drinking when you do sport for 9h&lt;/p&gt;
&lt;p&gt;In general I also didnt want to do another triathlon before my ironman. Many people say it is suicide to go to an ironman without having done a triahtlon prior, but I don't see a point for it, you dont have to live something to be prepared for it, of course it is better, but you need to prepare also for peeing on the bike ? for drinking salt walter ? for running after 180km bike leg ? &lt;/p&gt;
&lt;p&gt;Mentally I like when I have maximum pressure to perform, and training for 3 years and then poping at an ironman without real world experience is something that helped me mentally during all the preparation. It prevent me to really know my level, and telling me I have another chance. I just wanted to perform on that day and let my body and mind no there is no other day to perform, so no triathlon before (My coach was not fan of it at all but well)&lt;/p&gt;
&lt;p&gt;My overall plan was:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;First year : build general fitness, just do running, and cycling to make my body adapt to a high level of training, stress and organize my life to work around it. I don't care about following a program or anything, just do the hours&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Two next years: take a coach to give me a program and follow it to each details&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Last 2 months: memorize the bike course to gain as much time in the dowhnill and pace my effort well on each uphill &lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I averaged 16h of sport per week in the last 2 years. 10h on the bike, 4h on the run and 2h swimming.&lt;/p&gt;
&lt;p&gt;The general methodology of ironman training is you have to do a lot of volume at low intensity and when you do high intensity you should not kill yourself, because it is very likely that there is another session in less than 12h and the worst thing that can happen to you is an injury. Then sleep a lot, eat a lot and repeat, this is very stupid&lt;/p&gt;
&lt;h3&gt;Bike&lt;/h3&gt;
&lt;p&gt;The first year of my training I was doing too much intensity, I was tired all the time, I was injured very often. I didnt know how to train for bike, and it seems like bike training is pretty siimple:&lt;/p&gt;
&lt;p&gt;Do a lot of low intensity ride, do a little bit of intensity each week. Repeat&lt;/p&gt;
&lt;p&gt;I was doing 10h of bike per week: 2 x 1h30 + 2x2h + 1x3h &lt;/p&gt;
&lt;p&gt;The core of the cardio training will be on the bike, it creates less constraint on the body than running&lt;/p&gt;
&lt;p&gt;Most of training was done on low cadence, because thats my natural cadence (about 60rpm). 90% of my bike training was done on the home trainer, for several reasons:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Mentally the home trainer is much harder than an outdoor bike ride. Building your mental is very important to not crumble under pression in the race day&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;It is harder physically as there is no rest never, if you stop pedaling the bike stop, so your muscles learn to output a constant force for long duration of time&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;It is much more practicall to do, no need to prepare, no impact of weather forecast etc&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Zone 2, is low intensity, it is an intensity that you can maintain without effort for several hours, you can discuss at that pace, you can breathe with your noose. You can find that pace with your cardiac freqency , but in my opinion it is important to learn all your intensities with your feelings, so do not look at your watch every minute&lt;/p&gt;
&lt;p&gt;Monday : 1h30 zone 2&lt;/p&gt;
&lt;p&gt;Tuesday : 1h30 zone 2&lt;/p&gt;
&lt;p&gt;Thursday: 1h30 zone 2 + about 30minute at high intensity&lt;/p&gt;
&lt;p&gt;Saturday: 2h zone 2&lt;/p&gt;
&lt;p&gt;Sunday: 2h zone 2 + 1h tempo&lt;/p&gt;
&lt;p&gt;30min high intensity is something like 4 x 5min at 110% FTP to small interval variation: 3x8x3" at 140% ftp. I dont think what you do really matters, you need to a do a little bit of every kind of intervals between 30" to 5', I followed thorougly what my coach gave me but it didnt feel like it was rocket science&lt;/p&gt;
&lt;p&gt;1h tempo is more like 3x15min at 90% ftp or 10-15-20min at 80-85-90% ftp&lt;/p&gt;
&lt;p&gt;I felt like my cadence was limiting me so I also forced myself to do some training at high cadence, until 110rpm (It took about 3 months, from not being able to sustain more than 75rpm to be able to sustain 110rpm during one hour). I've read a lot of things about cadence, I believe what is important to master all kind of cadence and then let the natural flow goes on race day&lt;/p&gt;
&lt;p&gt;At the end of the prepa I did do a few very long ride, one 200km, and also 3 times the 170km course. But I dont think I did more than 7 times a longer than 4h session&lt;/p&gt;
&lt;p&gt;There is a lot of downhills on the Nice track, so I went there and tried to memorize the track to be able to go the fastest as possible (I wanted to have the best time of the last descent over everyone)&lt;/p&gt;
&lt;p&gt;I also started to do a lot of the sessions in the aerodynamic position in the last 6 months&lt;/p&gt;
&lt;h3&gt;Run&lt;/h3&gt;
&lt;p&gt;Run training is same pretty easy: a bit of cardio training and bit of intensity&lt;/p&gt;
&lt;p&gt;I believe I'm naturally gifted for the run so I didnt try to do too much training&lt;/p&gt;
&lt;p&gt;I did 4 session of 1h more or less and extended the distance of one run at the end of the prepa&lt;/p&gt;
&lt;p&gt;Tuesday: 1h high intensity&lt;/p&gt;
&lt;p&gt;Wednesday: 1h zone 2&lt;/p&gt;
&lt;p&gt;Saturday: 1h tempo after the zone 2 bike&lt;/p&gt;
&lt;p&gt;Sunday: 1h zone 2&lt;/p&gt;
&lt;p&gt;For tempo and high intensity it is the same thing than for the bike&lt;/p&gt;
&lt;p&gt;I increased the run duration at the end of the prepa. the sunday run was 1h15, then 1h30, then a few times 1h50 but same thing that the bike. I did 3 sessions at more than 1h40 in the whole prepa&lt;/p&gt;
&lt;h3&gt;Swim&lt;/h3&gt;
&lt;p&gt;Swim is more complex, it is the only sport that involves techniques.&lt;/p&gt;
&lt;p&gt;I initially thought swimming could be my strenght but after training for a few sessions, I hated it, was bad at it, didnt improve much and forced me wake up very early to swim in a swimming pool that is not crowded, so I more or less gave up on the swimming.&lt;/p&gt;
&lt;p&gt;I did 2 sessions per week. It was mostly endurance swiming, just swimming during 1h each. I have very low flexibility (I cant lift my arm above my head) and I have low flotability (If I fill my lungs with air and put myself in a swiming pool I sink at the bottom of the pool). So I'm clearly not gifted for this sport despite having a strong back. Actually muscles are almost useless for enduring swimming.&lt;/p&gt;
&lt;p&gt;I spend 1 year only swimming with TWO pull buoy to become more flexible in my shoulders. After 1 year I managed to lift my arms above my head (I also did some stretching 2 times a week)&lt;/p&gt;
&lt;p&gt;Then I followed a more complex swimming training that my coach was giving me, swiming with hand paddles, kick board, I bought 4 pairs of goggles (and I finally bought custom made ones), backstrokes, breaststrokes etc. I followed everything but never manager to really improve my pace, my best time for a 100m is 1:35, so a very shitty time.&lt;/p&gt;
&lt;p&gt;I knew that my race expected time of 1h would be impossible to achieve&lt;/p&gt;
&lt;h3&gt;Nutrition&lt;/h3&gt;
&lt;p&gt;For the nutrition my plan was clear. A lot of pro say that the maximum you can eat the best you will perform. So I fixed my goal to 100g of carbs per hour.&lt;/p&gt;
&lt;p&gt;I searched for food that I could eat in high quantity and that I my body could digest. I first tested Mars bars but I couldnt eat as much as I wanted after 2 hours. So I settled on Harribo dragibus. On each of my bike ride I would eat 100g of carbs of Dragibus per hour. My body was able to eat that for 5 hours and then it started to become a problem, so I would just reduce the quantity a little bit on the last hour&lt;/p&gt;
&lt;p&gt;&lt;img alt="harribo" src="https://blog.luap.info/static/ironman/boite.jpg"&gt; &lt;/p&gt;
&lt;p&gt;The second parameter is what you eat off training. My strategy was to eat the maximum as I could all the time, and try to eat a lot of fat, so eating 4 times per day and sleeping 8 hours per night&lt;/p&gt;
&lt;h2&gt;Race day&lt;/h2&gt;
&lt;p&gt;I didnt do anything special the weeks before the race, I didnt reduce much the training volume, the week of the ironman I did 5h of bike, 3h of running and the week before 6h of running and 14h of bike.&lt;/p&gt;
&lt;p&gt;I ate more sugar than usual the day before the race, but thats about it.&lt;/p&gt;
&lt;p&gt;I slept well the night before, ate some rice and then went to the departure&lt;/p&gt;
&lt;p&gt;I was stressed of two things: &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;I was afraid to have a puncture on the bike&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;I was afraid they would cancel the swim&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;So I was tubeless on the bike, so I inflated my tires the morning of the race and that was good. On my bike, I had 3 bottles of water of 800ml + 650g of dragibus. My bike is a Cervelo P5 with a full rear disk&lt;/p&gt;
&lt;p&gt;&lt;img alt="Cervelo p5" src="https://blog.luap.info/static/ironman/cervelo.jpg"&gt; &lt;/p&gt;
&lt;h3&gt;Swim&lt;/h3&gt;
&lt;p&gt;My tri suit is the Van Rysel trisuit, I didnt want to swim with a combinaison so I swim with only the tri suit, I was afraid to overheat. My goal was to do 1h10, so I started almost 20minutes after the first triathletes. The swim was painfull I never swam for more than 1h or such a long distance, I drank several time sea water, the sea was super agitated and cold, I never swam in open water before. So I felt like it would never end.&lt;/p&gt;
&lt;p&gt;I finished in 1:11:20, (1:48/100m) time that I'm happy with, and I dont think I could have done better, I leave the water in 723th position of 2048&lt;/p&gt;
&lt;p&gt;My first transition is without any structure, I had to brulure in shoulder and I had to put some lotion. I didnt have to remove my combinaison I have the 298 time, 3 minutes longer than the fastest, clearly a failure, but I loose a lot of time&lt;/p&gt;
&lt;h3&gt;Bike&lt;/h3&gt;
&lt;p&gt;Then the bike, My objective was 5h20. My estimate in watt was 240 watts on the flat, and 270-280watt on the uphills. I'm 1m77 and 76kg&lt;/p&gt;
&lt;p&gt;I thought I would have an advantage on the beginning of bike because I would just pass everyone and then would benefit from drafting, but in truth it was a shitshow, there were people everywhere, we would sometimes be 4 or 5 abreast. And there is only 9 kilometers of flat (243watt average, 40.5kmh), then it going up and there were people everywhere I had to shout to get people to let me go through. A lot of people didnt know to pace themselves on the first uphill&lt;/p&gt;
&lt;p&gt;After 27.8km I was already 241th, after 48km I was 175th. Then there was some downhill, some people would be so slow and be in the middle of the road, I had to pass them from their right. &lt;/p&gt;
&lt;p&gt;Then it was the biggest dowmhill, 18km a 5% (900m d+ 271watt). Then some rolling roads (40km at 142 watt 35kmh) I starting getting a cramp at 140km, but managed to continue without much issue. I did the last uphill at 272watt average (for 25minutes) I caught the last pro women at the beginning of the downhill. &lt;/p&gt;
&lt;p&gt;I didn't manage to do the best time of the downhill, only did second, also lost my reparation kit on a speed bump. (compared to a guy that finished with the same time as me for the bike, I did 4min30 less than him and hold for 30 more watts)&lt;/p&gt;
&lt;p&gt;I managed to do 258 watt average on the last 20km of the bike and did 248 watt average on the whole course and cadence 80rpm&lt;/p&gt;
&lt;p&gt;I did the 27th time of the bike, 16minutes after the 2nd time, I let my bike down in 51th position (Only one pro women ahead of me, lucy charles) finished 5h11 (32.8kmh average). 9 minutes less than the objective. I didnt had the chance to ride behind someone, so no gain from drafting as nobody was at my speed the entire course&lt;/p&gt;
&lt;p&gt;&lt;img alt="bike chart" src="https://blog.luap.info/static/ironman/bike.jpg"&gt; &lt;/p&gt;
&lt;p&gt;My T2 is the 124th time, 1min 30 more than the first. I failed my transition, I forgot to pee in the downhill. I peed once after 2h of the bike and so I had to stop during the T2 to pee&lt;/p&gt;
&lt;h3&gt;Run&lt;/h3&gt;
&lt;p&gt;Then the run, my objective was sub 3h ( the run course is only 41.5km). My plan was to do 4:15 until the 25th km and then accelerate. I had amazing legs at the beginning, I was running at a 4:05 pace and was wondering how it could be so easy, I thought my watch was broken, but after 5km I saw that the pace was right, so I decreased to 4:15. the first 2h went very well I did 2h at 4:16 and then I blow up.&lt;/p&gt;
&lt;p&gt;I was a bit overheating on the run, it was hot during that day, and I know that after long effort my body struggle to thermoregulate itself. I still tried to ingest as much water as possible, and to cool down and it more or less worked&lt;/p&gt;
&lt;p&gt;I had cramps everywhere on both my legs, on my arms, I couldnt lower my temperature anymore. The last 10km was done at 4:56 pace and finished the "marathon" with a 3:03 time (4:27per kilo average) , 28th time, 30 minutes after the first guy&lt;/p&gt;
&lt;p&gt;&lt;img alt="bike chart" src="https://blog.luap.info/static/ironman/running.jpg"&gt; &lt;/p&gt;
&lt;p&gt;Final time is 9:36, 32th &lt;/p&gt;
&lt;p&gt;I did everything I could on race day, I was on track to do 9h30 and failed in the last hour even though my body had it inside it. That's frustrating.&lt;/p&gt;
&lt;h2&gt;What could I have done better&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;I Fucked up my two transitions, the second one made me loose 1minute, I should have peed in the last downhill. The first one I spent two minutes just puting cream on my feet to avoid blisters (which I didnt finally got, so it was maybe wortfull but still lost 2 minutes)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;I didnt do strength training during my prepa. I have neglected strength training, but I feel like I should have made a few session to strengthen my weak parts (I was often feeling tired in the abductor muscles for example)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;I had cramps at the end of the run, on one side I feel bad about it, because it made me loose 5 or 6 minutes, but on the other hand I have no idea what could have prevented it, and I still gave everything I had on the race day. I drank enough during the race, I didnt overheat not overeat or undereat. I probably lost too much salt and didnt ingest any. We will never know but that one made me loose at least 10minutes&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;I think I could have pushed more power on the climbs, I finish at 250watt average and 250watt on the last legs, I could have put 10 more watts on the uphills, and maybe gain 1min, but I was never able to come close to these number during training, so how to know ?&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;I could have been lighter, I was super fit but I could have lost more upper body muscles, but I chose not to, maybe a few minutes wasted&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;But what is the most disapointing is the swim, I loose about 15min on people around me, I would have been 14th just being a better swimmer. But well I was serious at the traning sessions, just I hated it and never made progress&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Next&lt;/h2&gt;
&lt;p&gt;After the race I was disapointed and wanted to retry the race next year and decrease my time by 20minutes. But I got injured shortly after and loose a few months of training, also I didnt really have the motivation to do one again and carrying theses sacrifices in my life. So I decided to switch objectives.&lt;/p&gt;
&lt;p&gt;Now time for my next two objectives, achieve in the next 18 months :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Sub 2h30 in a marathon&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Top 50 world in HYROX PRO ( probably need to do sub 55min)&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content><category term="life"></category></entry><entry><title>The reality of dating apps</title><link href="https://blog.luap.info/the-reality-of-dating-apps.html" rel="alternate"></link><published>2025-01-10T23:00:00+01:00</published><updated>2025-01-10T23:00:00+01:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2025-01-10:/the-reality-of-dating-apps.html</id><summary type="html">&lt;p&gt;I have been working inside a dating app for a few months and there are a lot of interesting things.&lt;/p&gt;
&lt;p&gt;This article is going to be without any structure as there are many things to say.&lt;/p&gt;
&lt;p&gt;I will mostly ignore homosexual interactions. Not because they don't exist, just because it …&lt;/p&gt;</summary><content type="html">&lt;p&gt;I have been working inside a dating app for a few months and there are a lot of interesting things.&lt;/p&gt;
&lt;p&gt;This article is going to be without any structure as there are many things to say.&lt;/p&gt;
&lt;p&gt;I will mostly ignore homosexual interactions. Not because they don't exist, just because it works very differently than heterosexual ones. The likelihood to like and exchange inside homosexual groups is much higher than in heterosexual ones. Which makes creating a dating app for homosexuals something almost without product challenges (other challenges yes, but not product).&lt;/p&gt;
&lt;h2&gt;User Ranking&lt;/h2&gt;
&lt;p&gt;There was a lot of discussion about ELO score and whether or not ELO is used at Tinder. Well, I don't think it is used at Tinder as it is not necessary; you don't need something complex to rank people, you can just look at the like-to-pass ratio on a profile. If 100 people see the profile of a user, how many like them? It is actually pretty reliable; a very fine ranking that the ELO score could provide doesn't bring anything more than this basic ratio. But this score, at least for women, is not a good representation of how attractive guys will find girls in real life. I often joke that the ratio of a girl is proportional to the amount of skin you see in her pictures (which is not actually true; it is the best strategy as a girl to increase ratio, to show more skin, but the best-ranked girls are not always full of skin).&lt;/p&gt;
&lt;p&gt;This ratio is quite different for men and women. Here is the distribution below: the median for men is 5% and for women is 38%.&lt;/p&gt;
&lt;p&gt;Men
&lt;img alt="ratio users" src="https://blog.luap.info/static/dating/distribution_ratio_men.png"&gt; &lt;/p&gt;
&lt;p&gt;Women
&lt;img alt="ratio users" src="https://blog.luap.info/static/dating/distribution_ratio_women.png"&gt; &lt;/p&gt;
&lt;p&gt;The other thing that interests you is the like ratio, or the openness, among 100 profiles that the user sees, how many of them does he like? (The median for men is 26% and for women is 4%.)&lt;/p&gt;
&lt;p&gt;Men 
&lt;img alt="ratio users" src="https://blog.luap.info/static/dating/like_ratio_men.png"&gt; &lt;/p&gt;
&lt;p&gt;Women 
&lt;img alt="ratio users" src="https://blog.luap.info/static/dating/like_ratio_women.png"&gt; &lt;/p&gt;
&lt;p&gt;One interesting thing about like ratio:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;The like ratio of a girl is almost independent of the profiles she sees. For example, if a girl has a like ratio of 5% and you remove 50% of the profiles, even if you remove only the profiles she will not like, her like ratio will still be 5% (you can do that by removing very unattractive people for a guy that is very attractive, for example). It is funny to observe, but it seems like a girl has internal reasoning on a dating app, and they know they can only like x% of profiles whatever she sees (of course, it doesn't work if you show only ugly people).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;What that means is that the decision to like a guy is dependent on the profiles you have seen before. So if you are a guy and you want to get liked by hotter girls, then don't be around hotter guys (in general, and this one is my personal opinion, but I think physical appearance is a criteria much more important for men than women).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Like ratio and ratio have some correlation for girls; the most attractive have the lowest like ratio, but this is no rule either. There is also some correlation for men but lower. For men, this is usually difficult to make reliable stats because ratios are super unstable; one more like can change a lot of things, and that really depends on which girl sees your profile.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Men Like ratio (y) vs ratio (x)&lt;/p&gt;
&lt;p&gt;&lt;img alt="ratio users" src="https://blog.luap.info/static/dating/men_ratio_vs_like_ratio.jpg"&gt; &lt;/p&gt;
&lt;p&gt;Women Like ratio (y) vs ratio (x)&lt;/p&gt;
&lt;p&gt;&lt;img alt="ratio users" src="https://blog.luap.info/static/dating/women_like_ratio_vs_ratio.jpg"&gt; &lt;/p&gt;
&lt;h2&gt;User behavior&lt;/h2&gt;
&lt;p&gt;Match to talk was 35% in our case but was easy to move in one way or another. People were not speaking for very long conversations in general, they were happy to start a chat, but never really cared to continue it. Which always makes me say, that people registered on these apps are not really here for dating, but more for entertainment purposes.&lt;/p&gt;
&lt;p&gt;Having a profile (Other information than pictures) doesn't impact the app experience (Even being one of the most requested features), most guys don't open the profiles of a girl, and girls open much more often but more for discarding a user than for looking for more information, so your like ratio will reduce if you have a profile. It makes starting a conversation easier, but people would have talked to each other anyway so.&lt;/p&gt;
&lt;p&gt;But I believe people in general like to fill out a profile so it is important to have one for their experience (more than for the opposite user's experience).&lt;/p&gt;
&lt;p&gt;Looks of users are more important to young girls than for older girls, older girls check the profile as much as they like, twice more than young girls.&lt;/p&gt;
&lt;p&gt;Some young guys also have a ratio of more than 70, which doesn't exist for older (more than 25 years old) guys. Which makes more or less sense, we expect younger girls trying to be like the norm and all finding the exact same guy attractive.&lt;/p&gt;
&lt;p&gt;Girls scroll about 2 times more than guys. (Fortunately). First, the like ratio of girls is 4%. So to be able to like 4 guys they have to see 100 users. And for a guy, it is 18 users. It also means the experience on a dating app for a girl is completely different than the one for guys. A girl spends a lot of time just searching for guys she will like, and guys spend a lot of time hoping a girl will like them back.&lt;/p&gt;
&lt;p&gt;Dating fatigue is bullshit, of course, there was a big increase of users on dating apps during COVID, but I guess the market penetration of dating apps is at close to 100% in developed countries and as the population is not growing then there are not more users on these apps. (Yes there is a chunk of users that don't want to be on a dating app, but everyone knows the concept, and all people that are willing to be on that kind of app, are already on it). MATCH group actually has a stable number of users and revenue (well it varies by a few percent each year but overall it is the same).&lt;/p&gt;
&lt;h2&gt;Feed algorithm and attention sharing&lt;/h2&gt;
&lt;p&gt;Recommendation of profiles that you may like is a solved technical challenge at Tinder level and at mostly any dating app today. The tech is based on your like/pass history (very similar to what TikTok does actually), and compute similar users from that, take a look at TinVec (There are other more recent versions after that but they follow the same logic). Recommendation of matches is therefore also a solved problem as you can compute the likelihood to like but also the likelihood to like back, and then you have the most probable match. But the algorithm is not everything.&lt;/p&gt;
&lt;p&gt;An app that just recommends people as soon as it is comfortable knowing your taste is unlikely to work well.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;These algorithms need your like/pass history, so you need to have some activity on the app before the algorithm being accurate&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;We can know which users you will like, but we can't know all the profiles you will like&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;People don't want to see only users that they like, girls actually adapt their behavior if they see too many guys that they like.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;There is also a second cold start problem, as long as you didn't receive a few likes you can't get recommended.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;You could base your algo on what people tell you they like, but in truth people don't know so that will not be a very solid recommendation engine, and that would actually not work better than a randomized algorithm (randomized algorithm with a few rules works very well actually)&lt;/p&gt;
&lt;p&gt;The key to produce the best feed algorithm (if you target retention) is personalization more than recommendation. Of course seeing users that you really like every once in a while will increase your retention. But what really increases retention is understanding what each user wants. And we all want things different. Some people will want to see only a few people that they like a lot, some people will want to see a lot of users. Some people will want to see people that are far from them, some close, some can't stand seeing people they don't like, some can't stand seeing people they only like. Some want to receive a lot of likes, some want to receive a few likes. I believe it is possible to get almost 100% retention for any user on a dating app by creating a custom feed algorithm for each user (This is not technically possible of course but you get the point, the gold rule doesn't exist, because we all fundamentally search for different things)&lt;/p&gt;
&lt;p&gt;The feed algorithm is the only thing that will impact the retention of users on your app. Everything else almost doesn't matter.&lt;/p&gt;
&lt;p&gt;When you design a feed algorithm the major issue is attention sharing. You can't show one user more without showing other users less. For girls, this is not so much an issue; all girls will receive enough attention from guys, and so to satisfy that the algorithm is pretty simple:&lt;/p&gt;
&lt;p&gt;Reserve about 20% of feed space for guys she will be okay to like on a good day, reserve 10% of feed space to guys that are hot according to society. With that, you have made the maximum you can do so that girls send the maximum of likes (a girl sending likes is your objective as a feed algorithm builder). You have then 70% of feed space left to do everything else. In the first 20%, you have to ensure that guys are somewhat active, that a proportion of them will like them back, and are not too geographically far from where the user is, because at the end of the day what matters for retention is that the guys and the girls talk to each other.&lt;/p&gt;
&lt;p&gt;On the 70% left, there are a bunch of guys to push.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Guys that are not ranked yet (users that were not shown to a lot of people yet)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Guys that just signed up (You want them to have a peak of attention received when they just join the app, as the first 12 hours experience is proportional to the d30 retention)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Guys that are used to receiving likes and didn't receive any in the last 24-48 hours&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Guys that paid&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Random guys to not always push the same kind of guys to a girl&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Guys that the girls think she wants to see but she will never like&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Ugly guys (we didn't do it ourselves, but I've had discussions with other app feed builders that said that in some contexts pushing ugly guys will increase girl likelihood a few profiles after)&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For guys, the algorithm is a bit different:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;20% of feed space, you need to show in priority new girls, so that they receive likes very quickly after the end of the onboarding (they are used to receiving a lot of likes, so you have to show them they get liked; they don't need to receive a thousand likes, but 100 likes is a good point). You also need to get a ranking of them; you will have it after about 40 reactions received (so pretty quickly)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Then very importantly, if you are one of the first likes of a girl on the app (if a guy is one of the first 4 likes of a girl on the app, he needs to see the girl in his feed very quickly so that the girls get a match as soon as possible)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Then all the other feed space can be used for whatever you want. Show at least one girl that the guy will really like once in a while. But other than that, you can do whatever you want; it will not really impact the experience. It will mostly impact what the kind of girl the guy thinks he can match with on the app. So if you want guys to think you have only hot girls, show only hot girls, etc.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Retention&lt;/h2&gt;
&lt;p&gt;Retention is the metric you look at when you analyze the performance of a consumer app. What share of users stay on the app 1 day after the install, 7 days, 30 days? The industry more or less has the same figures if you exclude apps that target only one set of users (Rayya for the upper class, Grindr, BLK all have superior retention), but in general, you look at 50-60% d1 retention, 30-35% d7 retention, and 15-25% d30 retention.&lt;/p&gt;
&lt;p&gt;What impacts retention?&lt;/p&gt;
&lt;p&gt;For girls, it is the number of likes sent; the number of likes received has no impact on retention, maybe a little bit but less than 1%. The number of likes sent has a huge impact; a user that liked no profile in her 100 first scrolls has a d30 of 12%, and 19% for girls that like 10 profiles and 16% for girls that liked 5 profiles. The d1 retention is almost 100% correlated to a girl sending 5 likes to active guys in the first 24 hours (the real thing is to get a match, but it is easy to get a match when a girl sends 5 likes). So to have the perfect d1 retention for girls, the only thing you should focus on is to get them to send 5 likes. And you have about 100 scrolls to do so.&lt;/p&gt;
&lt;p&gt;For guys, the number of likes sent has no impact; the number of likes received doesn't either have a real impact. We have never found a rule for guys to increase retention (to decrease it, just make them have a very bad first 24 hours experience). Limiting the number of users a guy can see also doesn't have an impact on retention. Notifications received have a meaningful positive impact. No likes received also have a negative impact. But really, what to look for to increase guys' retention is very unclear to me. The only thing that really has a positive impact is a guy exchanging messages with a girl, but this is not really something you can control as some guys just don't want to talk, and as guys have very low ratios, it is not always possible to find girls to match them with. Likes received have a positive impact, but it is very light, which is a good thing from a monetization standpoint (you can make guys pay and not show them to anyone; they will keep paying, just a bit less than if they received likes. Not that I endorse this policy, but this is just the reality). Excluding girls that don't match at all criteria of guys usually has a positive impact, but not for all criteria. In general, profile recommendations don't work very well for guys, but filtering works better (but not always either; for example, if a guy says he doesn't like girls who are leftist, then taking it into account will increase retention, but if he says he doesn't like girls that are rightist, then taking it into account will reduce retention, and for girls, this is the contrary actually).&lt;/p&gt;
&lt;p&gt;I suspect that user activity on a dating app is also super correlated to user activity on another dating app. Meaning most users are usually signed up on several apps at the same time, and when they check one app just after, they will check their other apps. Which makes retention more or less uniform across all dating apps.&lt;/p&gt;
&lt;p&gt;Most things have negligible impact on retention, displaying the distance on the feed, showing profiles that are geographically far or close, showing more beautiful users, respecting users' criteria, no glitches on the app, ability to filter users, showing unread icons, loading speed of the feed, ...&lt;/p&gt;
&lt;p&gt;Retention in itself can mean several things, there are 4 kinds of retention you can look at:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;the investor retention, it is the one they see on their market analysis tool, or the metric you see on the Apple Store or Play Store, it is per app install.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;the per-user global retention, it starts when the user creates their account, it is not the same as the investor retention because you get a big proportion of users that create several accounts, or finish the onboarding, do some activity, delete their account, and recreate their account.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;the per-user after finishing onboarding retention, you exclude the conversation of the onboarding and the things that can happen during it. This is the retention you need to look for changes made inside the app.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;the retention after a new release, this retention is not helpful because you can't compare users that are at different stages of usage of your app. Making a change to a user that is onboarded for 4 days will not have the same impact as for the user that is onboarded for 15 days. So this retention is not really usable.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;But Tinder/Bumble dont look at these product metrics much, they look at retention of paying users, free users don't matter&lt;/p&gt;
&lt;p&gt;Retention of men vs attractiveness (for women there is no impact).&lt;/p&gt;
&lt;p&gt;&lt;img alt="ratio users" src="https://blog.luap.info/static/dating/attractiveness_guys_vs_retention.png"&gt; &lt;/p&gt;
&lt;h2&gt;User composition&lt;/h2&gt;
&lt;p&gt;In our case we had even acquisition in terms of male/female, but the retention of girls is lower than that of men, so you end up with 66% men and 34% women. You could say this is an issue to have more men than women, but in reality a dating app with 50/50 can't work well.&lt;/p&gt;
&lt;p&gt;30% of our new users were users that had already registered in the app in the past.&lt;/p&gt;
&lt;p&gt;65% of girls are looking for something serious vs 50% of men.&lt;/p&gt;
&lt;p&gt;&lt;img alt="where users look for" src="https://blog.luap.info/static/dating/look_for.png"&gt; &lt;/p&gt;
&lt;p&gt;What users are looking for really depends on the age of the users. The younger, the less serious (which makes sense).&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;users&lt;/th&gt;
&lt;th&gt;sex&lt;/th&gt;
&lt;th&gt;date&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;men 30-35&lt;/td&gt;
&lt;td&gt;15%&lt;/td&gt;
&lt;td&gt;18%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;women 30-35&lt;/td&gt;
&lt;td&gt;1%&lt;/td&gt;
&lt;td&gt;14%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;men &amp;lt;25&lt;/td&gt;
&lt;td&gt;32%&lt;/td&gt;
&lt;td&gt;17%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;women &amp;lt;25&lt;/td&gt;
&lt;td&gt;6%&lt;/td&gt;
&lt;td&gt;25%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Whats interesting is that the more attractive the guys were ranked by girls the more they were looking for something not serious&lt;/p&gt;
&lt;p&gt;&lt;img alt="" src="https://blog.luap.info/static/dating/attractivity_vs_sex_men.jpg"&gt;&lt;/p&gt;
&lt;p&gt;And no correlation for women:&lt;/p&gt;
&lt;p&gt;&lt;img alt="" src="https://blog.luap.info/static/dating/attractivity_vs_sex_women.jpg"&gt;&lt;/p&gt;
&lt;p&gt;Among girls : 10% where lesbian, 84% were hetero and 12 % were interested in both genders&lt;/p&gt;
&lt;p&gt;Among guys: 7% homo, 92% hetero and almost none were interested in both genders&lt;/p&gt;
&lt;h2&gt;Monetization&lt;/h2&gt;
&lt;p&gt;During my time, we never implemented monetization inside the app, but we had people requesting it. I think monetization in a dating app has nothing to do with what existed 10 years ago. Today, this is the norm, and guys expect to pay to have access to likes, which I think is a good thing. There is no reason why we shouldn't pay for a service that helps us date other people, especially knowing how difficult it is to acquire and retain users on such an app.&lt;/p&gt;
&lt;p&gt;Things have changed in such a way that I don't think monetization has a negative impact on retention too much. First, it has no impact on girls' retention as they will not pay, so you have to make the app non-paying for them, and retention is only more or less proportional to them sending a few likes per week. You have plenty of feed space to show them guys that they don't like as long as you show them guys they like every now and then.&lt;/p&gt;
&lt;p&gt;As for guys, they really are used to not receiving a lot of likes; whether you pay or not, that doesn't change much.&lt;/p&gt;
&lt;p&gt;Tinder has similar retention numbers to Hinge whereas on Hinge you don't have to pay to use the app and on Tinder you need to. Hinge has 1.5 million paying users when Tinder has 10 million (with a much bigger user base). Hinge is growing 40% year over year. I think dating apps are one of the best businesses in the world as long as you are good at marketing. What works on the product side is known by everyone, and you just need to replicate it, only Bumble is not able to do it, no surprise if you spend a few minutes on their app (Don't know who runs their product in the last 4 years but they should be fired). All dating apps that exist and work are just Tinder as a product PLUS a small marketing difference. Hinge is Tinder + "Oh we are nice we are really going to help you find love", Bumble is Tinder + "Oh we are empowering girls", BLK is Tinder + "Oh we are only for black", Grindr is Tinder + "Oh we are only for gay", Happn is Tinder + "Oh you are going to match with people close to you". The "+" is only a marketing message and doesn't influence the product experience. At the end it is just a like/match/talk with different CTA colors.&lt;/p&gt;
&lt;p&gt;iOS users have more money and spend more money. So you would have to prioritize them. It is obvious Tinder/Hinge does it. Just sign up as an iOS user on those apps and then log in on an Android phone, the difference is big.&lt;/p&gt;
&lt;h2&gt;Fake users/ bots/ verification&lt;/h2&gt;
&lt;p&gt;Moderation is a complex topic. First, you don't want some people that will negatively impact the experience of your users. So you don't want girls advertising their OnlyFans. If you don't detect them they will like and match every guy, and the only likes of most guys will be these girls and guys will think they are only bots on your app and won't want to pay. You also don't want guys scamming girls for money, because girls won't trust your app, and without girls, guys get less likes and pay less. So in general, as an owner of a dating app, you don't want obvious fake users/bots.&lt;/p&gt;
&lt;p&gt;But what about subtle fake users? You have plenty of fake users that use the picture of someone else (usually a pretty person) and will use the app as they would. The major difference is their like ratio will be higher, so they will basically help you in your mission to give more likes to guys and more matches to girls. I don't know what Tinder does about them, I think they keep them active. We blocked all of them and didn't really see a negative impact on retention. But they are difficult to catch, they talk to users like normal people, they behave very similarly. They are usually ugly guys OR girls (yes, also girls) either trying to see what life is like as hot people or just people feeling alone that want to talk to other people (it was very visible because we had a feature where we requested verification for some profiles, and it requires sending a video of your face, and fake users would very often do it with their face, which was different from the ones on the pictures of their profile).&lt;/p&gt;
&lt;p&gt;What techniques are being used to detect these users: Well, if you believe you can trick us, good luck. All the things we have at our disposal: IP (belonging to VPN), device ID, picture uploaded (with similarity search), user in-app behavior detection, age range preference deviation, GPS coordinates not moving. Also, Tinder/Hinge has phone number as a mandatory step (I don't think it is useless honestly but it is being used for the other feature to hide people you know, and that may help to create a graph of connections but I don't know if this is legal). There is also face detection that is now pretty advanced and can detect the face of celebrities, people on social media. If you manage to sign up with a fake account on a dating app, then this is because they know you are fake but they don't care to have fake users. The best I have seen is people using VPN to be located in the right country + fake position + emulator (to have different device ID) but they were more or less using the same picture so that was easy to spot. The most advanced bots were to promote OnlyFans or Telegram.&lt;/p&gt;
&lt;p&gt;Verification is not mandatory on most dating apps, I don't think this is an important topic. We initially had a lot of criticisms for having too many fake profiles on the app, and it was completely wrong, we never had fake profiles, we just had too many pretty girls and guys would think they are fake. Today we don't have any people complaining of fake profiles etc., so I guess people trust the apps nowadays. The verify your profile thing has no interest for me unless you are Match Group and you share phone numbers between different apps (device ID on iOS are stable per app ID). Bots are much dumber than we think, there is no race to fight all mechanisms.&lt;/p&gt;
&lt;p&gt;In our case, we almost had 0 fake users, of course, you can find one sometimes, but in general, we were able to block all of them, but for that, you need to have manual review every day, manual review is done after auto approval/verification. To me, it is worth the investment because you increase the quality of profiles and reduce frustration.&lt;/p&gt;
&lt;h2&gt;Onboarding&lt;/h2&gt;
&lt;p&gt;There were not a lot of learnings in the onboarding. The only drop was on filling out your picture of your profile. For any other screen on the onboarding, when we give more info to the user, or ask for more information there was never a drop, we could add as many screens as we wanted and never impacted the onboarding conversion. But users were not willing to spend time on a screen, for example, if you would put a way to send information with voice, nobody would use it, if you put a free text input nobody would use it, if the free text input is mandatory most users would write the bare minimum but will not drop.&lt;/p&gt;
&lt;p&gt;Conversion was 90% and whatever we added as an additional step this didn't change. The median time was 13 minutes a little bit for men than women.&lt;/p&gt;
&lt;p&gt;People were willing to answer any kind of question that we would ask them. That would make these apps the apps that know the user the best. Fortunately (or unfortunately) this information is of no use for dating apps as the only important things are your picture and all other things almost don't matter. But this may feel user good about the app if it is able to show you that it knows you well, but it is more for the user that gives the information than for others to be able to find more interesting matches.&lt;/p&gt;
&lt;h2&gt;User interview&lt;/h2&gt;
&lt;p&gt;Most people are not educated enough to go through a user interview, you wouldn't be able to get their mind about the app, about what to change, about what interests them. They would just say, yes I like the app, yes I don't like the app, I do that, I don't do that. You would need to be a pro at user interviews to really get interesting feedback. (Well maybe this is the norm in B2C but at the end of the day user interviews were of no help).&lt;/p&gt;
&lt;p&gt;The only people that would really want to go through user interviews would be people that thought they knew how to create a dating app that works, and would tell you, "why don't you do that?", "I'm sure that will work", "Here is an idea for you, it is a game changer". Never helps.&lt;/p&gt;
&lt;h2&gt;First session&lt;/h2&gt;
&lt;p&gt;For girls, the first session (the following 2 hours after the onboarding) is almost the only important thing in the life of the user. If you fail at it the user is lost. If a girl doesn't get a match in under 24 hours, which in our case was equivalent to them sending 5 likes, then the user is lost.&lt;/p&gt;
&lt;p&gt;For guys, it is much less the case. It is not a problem if a guy sees no one he likes, or if he doesn't receive likes or if he doesn't see a lot of profiles. Almost nothing matters, I think that the only thing that matters is that the guy feels like the app has some potential (whatever that means for him). When we had bugs this had a much bigger negative impact on guys' retention than girls like x2 or x3 compared to girls. We had a time where we would show only a handful of profiles on the first session of guys, and show them an "end of feed" screen, and this vs show an endless feed didn't have any impact on anything.&lt;/p&gt;
&lt;p&gt;On Tinder or Bumble, for example, you can't get a match in the first 24 hours if you don't pay. They both boost new profiles so that they receive likes just after their onboarding, but just can't see the likes. Which I think is a good thing as anyway not receiving likes on the first day will not have an impact on your retention, so you get used guys to paying to have access to likes without having retention decrease.&lt;/p&gt;
&lt;h2&gt;Tech challenges&lt;/h2&gt;
&lt;p&gt;A dating app requires a lot of requests per user per day compared to any other B2C apps. Any action of the user has one HTTP request (like, pass, see profile, send message, list conversations, etc.) so you quickly get a lot of traffic even if you don't have a lot of users. In itself, it is not particularly hard to handle as the requests are always super simple and most of the time just a wrapper around a database call. The only exception being the feed.&lt;/p&gt;
&lt;p&gt;The feed is probably the only tech challenge. First, it is very difficult to index because when you compute your feed, you compute it differently for each user. So you basically have to do full table scans every time you want to render a feed for users (which is quite often, we did a feed request every 10 profiles in our case). Second, you probably are going to use embeddings to represent your users, but embedding in addition with filtering doesn't work well. &lt;a href="https://medium.com/tinder/geosharded-recommendations-part-1-sharding-approach-d5d54e0ec77a"&gt;Tinder has a famous post where they explained they clustered users depending on their geography&lt;/a&gt;. This is not impossible to do, but this is not obvious tech.&lt;/p&gt;
&lt;p&gt;The second tech challenge is user recommendation. Same thing that YouTube/Facebook/TikTok has, so you have some ML algorithm that needs to be created and works in almost real-time. The app can largely work without that at the beginning and add it later as it is not a game changer compared to a rule-based approach. But for example, if you want to push users, then you would need to have that in place.&lt;/p&gt;
&lt;h2&gt;Product Analytics&lt;/h2&gt;
&lt;p&gt;I don't think this is possible to do product analytics in a dating app by using off-the-shelf product analytics tools alone like Mixpanel, Amplitude. They are too limited to measure what you want to do, share of users that send 10 likes in 1h after onboarding =&amp;gt; not possible, share of users that remove their account and recreate it =&amp;gt; not possible, how users that sent less than 3 likes under 1h after their onboarding behave =&amp;gt; not possible, exclude users that deleted under 1h =&amp;gt; not possible. You will need at least to combine Amplitude/Mixpanel with backend events containing computed data. Also, these software are super expensive and price per monthly active users so you should be extra cautious before sending one event to a user asynchronously, you will quickly need to pay for 3 or 4 times the number of monthly active users that you really have.&lt;/p&gt;
&lt;p&gt;Except that, it is crucial to do product analytics, because as we have seen before this is pretty hard to do user interviews, and also again what people say is usually very far from what they do.&lt;/p&gt;
&lt;h2&gt;Bootstrapping the user base&lt;/h2&gt;
&lt;p&gt;We didn't struggle too much at the beginning, we just removed the geolocation of users in the feed, so initially, you could meet anyone in the world, then when there were enough users in one country, then you could meet any user in your own country, and then we had enough users throughout the country then we implemented more restrictive geolocation filtering, but we never let users choose it. I think it is harder to have a good retention when you let users choose. Even Tinder, Hinge, Bumble don't really respect all the time the distance you gave them.&lt;/p&gt;
&lt;p&gt;People will complain that there are no users around them, but at the end of the day, there was not a big jump in retention when we implemented closer geolocation, the complaints decreased though. Complaints don't always translate to improvement in app figures, even if a lot of users complain about it. But don't read me wrong, it does have an impact on retention, but you still need a few weeks of use to bootstrap your feed in a specific location.&lt;/p&gt;
&lt;p&gt;It is the same thing with the match, the match works great when you have a big enough user base, before that you can release the match and let users talk to each other, users will have some interaction it is better than none. Then the game is a marketing game, you can buy your first users (do marketing campaigns, ads, pay influencers, etc.) it is not too expensive either.&lt;/p&gt;
&lt;h2&gt;Perceived attractiveness&lt;/h2&gt;
&lt;p&gt;Perceived attractiveness is one of the few big problems of dating apps. To summarize, perceived attractiveness of guys is lower than their real attractiveness in real life. And perceived attractiveness of girls is higher than in real life. And it all comes down to your ability to have good pictures. And actually on a dating app as a user level it only comes down to the quality of your pictures.&lt;/p&gt;
&lt;p&gt;To me, if you are a guy on a dating app and your pictures are not taken by a professional photographer then you are losing your time, and if you are paying you are also throwing your money.&lt;/p&gt;
&lt;p&gt;The issue with this difference of perceived attractiveness from dating apps/real life is that girls will internally build a feeling that they can have any guy (even if they rationally know this is wrong). And will not accept to like at their level, which is a problem as they will be dissatisfied with their matches. For guys at the contrary they will receive less attention on a dating app than they receive in real life and will conclude that dating apps don't work. While the truth is just that their pictures suck.&lt;/p&gt;
&lt;p&gt;One thing that has been suggested to standardize looks is to use video, and especially video on the go. But it doesn't work, we tried to make it work a lot, but at the end of the day, girls they don't feel pretty all the time. And also a lot of them don't accept how they look and will only accept a video where they have filters. So by forcing everyone to use videos, then you basically prevent girls that look pretty in pictures from signing up. Guys were much more willing to do a video, about double than women. The only videos that work are videos that you have on your phone, but they are usually taken in the exact right conditions to look good so they don't at all help to standardize looks.&lt;/p&gt;
&lt;h2&gt;Conversation starter&lt;/h2&gt;
&lt;p&gt;We usually think that starting a conversation on a dating app is difficult. But this is not the case for everyone, there are plenty of people that just start with hello how are you, and the conversation like that and they don't care. Very often you can have a conversation like that: Hello how are you? - I'm good and you? - I'm good too what are you doing today? I'm chilling on my sofa - Oh great - Yes I like watching Netflix.&lt;/p&gt;
&lt;p&gt;Every attempt to improve conversation starting will not be beneficial, some people will complain because they just want to talk to the user.&lt;/p&gt;
&lt;p&gt;Finding common topics, or helping users talk to each other will actually really improve the fact that users will talk to each other, but this won't fix all the issues we see. At the end the predictor of two people meeting with each other is not a match or that the conversation started well. It is just the fact that the two really wanted to meet each other. Better conversation starters probably increase retention a little but don't increase better conversations and I don't think it translates into people meeting with each other.&lt;/p&gt;
&lt;h2&gt;Profile pictures&lt;/h2&gt;
&lt;p&gt;This is the only thing that matters for a guy on a dating app, we had guys going to 0.03 ratio to 0.2 ratio just by changing their picture.&lt;/p&gt;
&lt;p&gt;Displayed location had a significant impact, your job position too, height, the rest has no impact, people don't check other things than that before liking or passing a profile.&lt;/p&gt;
&lt;p&gt;One thing that is difficult to believe for guys, but really is true, is that it is not because the picture of girls looks sexy that she is looking for sex. There is actually ZERO correlation with girls looking for something serious and how sexy their pictures are. I know that for guys this is impossible to believe, but this is true.&lt;/p&gt;
&lt;p&gt;For girls even more than for guys, picture is really all that matters, the more sexy you are in your picture the better your ratio will be. But I wouldn't say this is critical for a girl to have sexy pictures. Because at the end whatever her picture there will be enough guys that like her (so not critical but important).&lt;/p&gt;
&lt;p&gt;For guys this is the only thing that matters, really nothing else does. Most guys' pictures are horrible, and one big pain that we had is how to make the guys look good, most guys look better in real life than his dating profile (and this is the opposite for girls).&lt;/p&gt;
&lt;p&gt;I don't think there is a big correlation between liking the pictures of guys and liking him in person. I think there is a strong correlation for men liking a girl in a picture and liking her in person because guys are more interested in physical appearance though. If you are not convinced of that you can look at this &lt;a href="https://www.youtube.com/watch?v=MQEszef9ev0"&gt;Youtube video&lt;/a&gt; and especially this image&lt;/p&gt;
&lt;p&gt;&lt;img alt="jubilee" src="https://blog.luap.info/static/dating/jubilee.jpg"&gt;&lt;/p&gt;
&lt;p&gt;The "Group ranking" is the guys ordered by number of likes on their profile pictures. The Women #1 ranking is the guys ordered by number of times being the most preferred after spending a little bit of time with them. So this is not the exact same ranking methodology (89 likes for 50 girls in the first method) but it still speaks. The final result is not correlated with the pictures feeling results.&lt;/p&gt;
&lt;h2&gt;Do users know what they look for?&lt;/h2&gt;
&lt;p&gt;No, at rare exceptions. We tried everything in that area, asking them in free text format, in voice format, in a conversational format, in multiple choice format, in multiple choice + free text, by checking patterns in their like history. The truth is people don't know what they like and look for in a partner.&lt;/p&gt;
&lt;p&gt;Which makes sense, how many of us can really say "Oh I don't like when a guy/girl is X" and then falling in love with someone that actually IS X? That's why relying on what users think they look for is not a good strategy in terms of product. Most people will contradict themselves when describing what they look for. Also, we also analyzed per user, what they said they were looking for and what they did like after that, and it was not corresponding. Girls would say, red flag if a guy has shirtless pictures and then liking profiles where guys were shirtless. Same thing for having tattoos, wearing eyeglasses, etc.&lt;/p&gt;
&lt;p&gt;Girls specifically also for most of them just say the same things that are completely irrelevant. If you really asked girls "what kind of guy are you looking for?" and asked for a free text answer they would answer "I want a guy that makes me laugh, that is kind to others, that takes care of him and is faithful." In 70% of cases there were their answer, which yes is true, but if you think about it, saying that is not going to help anyone find you a relevant person.&lt;/p&gt;
&lt;p&gt;What we tried to do at the end is only getting a few "no go/requirement" preferences. Which I think is the way to go, and have only like a maximum of 2 or 3 choices allowed. But we never managed to make a framework that is really able to get that information from users.&lt;/p&gt;
&lt;h2&gt;AB testing&lt;/h2&gt;
&lt;p&gt;AB testing is important because it is almost impossible to know beforehand what people will like or dislike, sometimes small things have a big impact, and sometimes big things have a small impact. And usually, the most given feedback has no impact on retention. Most of the time we did what a lot of users asked, this didn't have any impact on retention.&lt;/p&gt;
&lt;p&gt;It is difficult to AB test the algorithms of the feed because the change usually has an impact on the user that gets a specific variant but also users that he likes that are on any variant. Other than that, you can gain 10 points of retention just with AB testing and finding the best things that work.&lt;/p&gt;
&lt;p&gt;It is actually pretty easy to create a dating app that works in terms of retention if you use extensive AB testing.&lt;/p&gt;
&lt;h2&gt;Notification&lt;/h2&gt;
&lt;p&gt;If you send a notification to a guy that a girl has liked him, if he logs in and sees nobody, the user will have a higher retention than if you didn't send him a notification.&lt;/p&gt;
&lt;p&gt;Notification of likes received by men or women had a huge impact on retention, about 4 points.&lt;/p&gt;
&lt;p&gt;Notification open rate was close to 80%, except for non-contextual notifications which were closer to 30%.&lt;/p&gt;
&lt;p&gt;Sending notifications to make users come back to the app works but is not a game changer; you can make jokes, push people to open the app, offer them something, as in the end, it slightly improves people opening the app. Transactional notifications (Someone liked you, you matched, you received a message) on the other hand have a major impact on retention.&lt;/p&gt;
&lt;p&gt;Users that didn't activate notifications didn't have bad retention; it was just a bit lower. But they still logged into the app. This was still a big portion of users (about 30% didn't allow notification permission). You can request permission at the beginning or the end of the onboarding; it doesn't change much how many users will accept them (I find it really weird to go on a dating app and not authorize notifications, but well ...)&lt;/p&gt;
&lt;h2&gt;Fun data&lt;/h2&gt;
&lt;p&gt;Non-binary doesn't exist; we had like 0.1% of users registering that said they were not a man and not a woman.&lt;/p&gt;
&lt;p&gt;There are more girls that don't want children than men: 20% of girls didn't want children and 16% of guys.&lt;/p&gt;
&lt;p&gt;10% of users that delete their account recreate it in the following 3 days, and it was 17% in the following month.&lt;/p&gt;
&lt;p&gt;75% of girls want someone taller than them.&lt;/p&gt;
&lt;p&gt;65% of young people wouldn't date someone that is too politically extreme.&lt;/p&gt;
&lt;p&gt;Showing who likes you didn't have any impact on retention, but we weren't "locking" likes, so that's maybe the reason why.&lt;/p&gt;
&lt;p&gt;Users with iOS are more attractive, have better retention, and are younger than users on Android. I strongly believe Tinder and co. boost users that have iOS vs Android.&lt;/p&gt;
&lt;p&gt;The ratio peaks in the first 24 hours and then degrades, for men and women, because at the beginning you are highly exposed to people that have been on the app for a long time, which are usually people that like more.&lt;/p&gt;
&lt;p&gt;1% of guys received 10% of the likes, 3% of the guys received 20% of the likes, 10% of the guys received 40% of the likes, and 20% of the guys received 55% of the likes.&lt;/p&gt;
&lt;p&gt;More than 50% of men just never receive a like, and never means maybe 2 or 3 likes in the lifespan of several weeks&lt;/p&gt;
&lt;p&gt;The best day of the week in terms of acquisition and user activity is Sunday by a large margin; Friday and Saturday are the worst.&lt;/p&gt;
&lt;p&gt;Only 50% of girls sent 10 likes in their account lifespan.&lt;/p&gt;
&lt;p&gt;25k new users per day in the US is a good performance for a dating app.&lt;/p&gt;
&lt;p&gt;10% of girls that finish the onboarding never send any pass or like, after an onboarding of an average of 13 minutes.&lt;/p&gt;
&lt;h2&gt;Shady idea&lt;/h2&gt;
&lt;p&gt;I think that if you are a marketing person and have a bit of a shady personality, you can create a dating app that has significant revenue easily. What you have to do is to create fake girls' profiles; you don't really have to make them talk or match, just be visible on the feed. Then you make guys pay for similar things that Tinder is doing (you can just copy their plans). The best would be to communicate around being an app for sex. When a guy pays, you would just not do anything different than non-paying users. You will probably end up with 90% real guys and 10% real girls, but I would be surprised if you don't make a lot of money with that. Probably a lot of not really popular dating apps you find on the Play Store/Apple Store are just that, and that have no girls.&lt;/p&gt;
&lt;h2&gt;Retention as a metric for dating apps&lt;/h2&gt;
&lt;p&gt;I don't think retention is a good metric for a dating app, unfortunately that's how VC evaluate performance of B2C apps. When we think about dating it is more about quality than quantity. &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;The issue is that for some people they have pretty specific things that they are attracted to, for example if you like someone with piercings, and you have that passion. There are very few people that have a piercing, so you will scroll through the available people during the period you are using the app, and at one point you will stop using the app. In truth you want to be notified when someone with a piercing has registered into the app and you want to 100% be able to talk to him, not to hope he will like you back. &lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;For other people it is only about focusing on one person, instead of accumulating a lot of matches. When you have a feed you are just unconsciously encouraged to keep scrolling and to not be satisfied with what you already have. The app should just handpick a few profiles for you, and make you focus on these ones.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;For some people that are not super picky about their partner, and for these people usually dating apps work very well.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The problem with not using a feed is that it will inevitably get you a bad retention compared to the retention you have on Tinder for example. What makes you keep scrolling on TikTok or YouTube or Instagram? It is the feed, it is the same on a feed-based dating app. Pursuing retention will just bring you to recreate Tinder.&lt;/p&gt;
&lt;p&gt;As a consequence if you really want to create a novel dating app, and not a dating app that looks like Tinder for example, then you mustn't follow retention too closely, of course it is important to follow retention because it is also a great marker that your users like your app. But optimizing for retention all the time is going to end you doing the exact same thing as Tinder is doing, and Tinder is a cash machine, a wonderful one, but not a dating app. So you will end up with a worse retention than Tinder so VC won't want to give you money, so you need to be self-funded. So you need to monetize your app almost from the start. It is not super expensive to acquire users on a dating app, because a lot of people are looking for love and are testing a lot of apps all the time. What is expensive is to acquire a high number of users all the time. &lt;/p&gt;
&lt;h2&gt;MATCH group&lt;/h2&gt;
&lt;p&gt;I used to think Match Group was an evil monopoly. What now I think is that they have super knowledge on how to operate a dating app, how to market a dating app, how to be profitable doing user acquisition, how to optimize every single part of a funnel to extract as much money from users without losing them.&lt;/p&gt;
&lt;p&gt;I don't think they are a monopoly, Bumble is a super big company that once had a lot of money to do whatever they wanted and compete with Match and they managed for some time, but stopped and now will become whatever happens.&lt;/p&gt;
&lt;p&gt;I don't think they prevent the field from innovating, on the contrary they are super agile for their size to copy what other dating apps are doing when they feel it is interesting.&lt;/p&gt;
&lt;p&gt;I don't think they bring anything interesting to the world either, they could crash and that wouldn't change a thing, other apps will gain more visibility and do the same things as them.&lt;/p&gt;
&lt;p&gt;They are not hugely profitable, their profit margin is 20% (Google is 23%, Visa is 50%, Nvidia is 55%).&lt;/p&gt;
&lt;p&gt;Operating a dating app is just about filling out a leaky bucket by nature, and so you need to be good in user acquisition, in monetization and then do anything you can to reduce the churn.&lt;/p&gt;
&lt;h2&gt;Can dating apps work?&lt;/h2&gt;
&lt;p&gt;There are a lot of people saying that dating apps are evil, that Match Group exploits people's feelings. That's true on one hand and wrong on the other. &lt;/p&gt;
&lt;p&gt;First the expensive resource on a dating app is girls, not girls because they will pay you, but because if you have girls it will attract guys, what impacts the retention of girls on a dating app? The number of likes they send, so the first goal of a dating app is to make girls like, clearly not something evil. There is no interest in making them pay as none will do it.
(Hot girls can be replaced by bots, or by girls that promote their Instagram, they should just not like everyone but they don't need to be real for the system to work, in truth it is not super complex to acquire these girls, so no need to have bots.)&lt;/p&gt;
&lt;p&gt;Second the most expensive resource on a dating app is hot guys, because without hot guys you won't get girls, well hot guys are the users that have the best retention, without effort they will have a 50% retention, so in fact you just have to wait some time and the app will fill up with those guys, need a specific strategy? No, do nothing. Is this evil? No.&lt;/p&gt;
&lt;p&gt;Then the last most expensive resource on a dating app is guys that are willing to pay, what can you offer to guys that want to pay? More likes received. Well good news more likes received = more retention for these guys. So the things these apps do, is how to make a guy pay the most to access likes? It is very similar to any business, a football club has the same objective, a restaurant has the same objective, a gaming app has the same objective, a gym has the same objective. The ones that are left behind are actually the ones that are not paying. Tinder for example, they are just the best at converting you into a paying user and keeping you, and they will not keep you if you don't get likes.&lt;/p&gt;
&lt;p&gt;The problem of dating apps is not the product in itself it is the users of these apps. People that complain about datings app are either: &lt;/p&gt;
&lt;p&gt;MALE&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Not willing to date (so they complain they cant accumulate matches as fast as they would like),&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Make no effort to be attractive (everyday we would receive emails to the support of guys saying "im not receive likes and im not the less attractive", well yes you are ), &lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;FEMALE&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Not willing to like anyone (We have plenty of girls that can scroll through 300 profiles and not like anyone and deleting their account saying "I dont like anyone" well&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Liking users too attractive that would only want to have sex with them&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The hard truth is that if you are a guy and you dont go on a date with at least one new girl per week and dont have your picture taken by a professional photograph you are loosing your time on a Tinder-like dating app&lt;/p&gt;
&lt;p&gt;And if you are a girl and you dont date at least one guy per week and you dont lower your appearances standards then you are also loosing your time on a Tinder like dating app&lt;/p&gt;
&lt;p&gt;So for me dating apps currently work, and actually they are the biggest place people meet these days. But using them is very disappointing&lt;/p&gt;
&lt;h2&gt;Can Dating apps be fixed ?&lt;/h2&gt;
&lt;p&gt;What I meant by "fixed", is an app where:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;It is possible for someone to reach out to anyone and get an answer, and discussion can be interesting from the start (at least as much as in real life)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Your looks, how you behave, the tone of your voice,... reflect what you look like in real life&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;It is easier to meet new people than attending local events&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;I don't think it can. I think our digital representation either via photo, video, text, voice doesn't represent us very well and as a result we will either over-hyperoptimize before meeting and be disappointed when meeting. To minimize that risk girls will always increase their standards (which are currently too high) and guys will lower them, which is a recipe for mismatch.&lt;/p&gt;
&lt;p&gt;But I think dating apps can currently be used at each women and men advantage, it is just necessary to have the right strategy:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;For girls you need to lower your standards and force you to go on a date with guys that you dont have the flame for (it is actually very hard to do that for a girl, very very hard)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;For guys, you need to pay a photograph (to get liked) and pay the premium plan (so that your profile is shown to other users). If you think a dating app has no incentive to show paying users to girls, then you didnt read this article ^^&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I think Tinder has reached peak business revenue, and it will not decrease much nor increase much. They are not really 100% in the dating business, their business is more to entertain you in the context of dating. There are other apps that help you meet with strangers like Timeleft, and they seem to do fine, but are not really apps, they just pair you with people without letting you choose who you will meet (which I believe is a very interesting take, and could work very well in the long term). But they are not a dating app. I wouldn't look into AI to find the next dating app, because AI has already been present there for a long time, and it doesn't increase meeting people and can't fix the fact that pictures are biased, people don't know what they look for, etc ...&lt;/p&gt;
&lt;p&gt;The biggest advantage of a dating app is that it gathers only people that are actually looking to create intimate relationships with other people. And as a result, they are seen as a more effective way of meeting new people. Their biggest issue is that coming from that users expect the rest of the process to be seamless and to find a partner in hours without doing much work.&lt;/p&gt;
&lt;p&gt;To me, the next revolution is really concepts that will make you meet other people without having much information about them. As a user, you will trust the algorithm to match you with the right people. And these concepts will be paying only.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Users would be able to fill out a maximum of 2 or 3 criteria in addition to the custom-made algorithm (the custom-made algorithm will try to create couples that have the same interests, the interesting variables for that are age, localization, job position (to infer social status), body type, ethnicity, religion, attractiveness level, kind of relationship searched), and the 2 or 3 criteria would be some things like (sporty, don't smoke, tall, small, white, black, no bald, high status, ambitious, ...) these ones are not easy to find and would not be entirely respected by the matching algorithm, but more a help&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Users would have limited information on the other before meeting with each other, it could be either 1-1 meetings or meeting in a group setting, (group settings is a very interesting idea, because that directly lowers the expectation of the date and you are not afraid to be locked with someone that is awkward during xx minutes)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Users would need to pay to access the service from the start. Free dating apps are not efficient because they need to get something in return, which is your attention to monetize some features and need to keep you in the app, which is the opposite of what we want. (And yes, make girls pay, it will work, Timeleft has proved it)&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;So to summarize, a concept where users pay and commit that they will meet people without knowing them before. So yes, it will take a few dates to really find someone that you like, but so is going every day in dating apps and meeting people that you don't like either.&lt;/p&gt;
&lt;h2&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;I'm not a lover of Match Group, I don't own their stocks, I'm not, and never have been paid by them. I don't like Tinder, I find Bumble's product to be super annoying. I don't recommend to people to install dating apps (unless you are a hot guy and looking for sex).&lt;/p&gt;
&lt;p&gt;But really I challenge anyone that tells me that they are shit what would they change to make the product better for users (and don't tell me to remove paying features, they are a business they need to make money and it is going either through ads or through user membership).&lt;/p&gt;
&lt;p&gt;The core problem is users (YOU) don't want to go on a date and want to find a gf/bf staying in their bed with unrealistic criteria&lt;/p&gt;</content><category term="Dating"></category></entry><entry><title>Your B2B startup will stop innovating the day you give power to product managers</title><link href="https://blog.luap.info/your-b2b-startup-will-stop-innovating-the-day-you-give-power-to-product-managers.html" rel="alternate"></link><published>2023-02-17T12:00:00+01:00</published><updated>2023-02-17T12:00:00+01:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2023-02-17:/your-b2b-startup-will-stop-innovating-the-day-you-give-power-to-product-managers.html</id><summary type="html">&lt;p&gt;The problem of product managers is not that they exist but rather that they have too much power. We have all seen these articles written by developers that explain that product managers are useless. They miss the point.&lt;/p&gt;
&lt;p&gt;I think it is pretty obvious that PMs (whether you call them …&lt;/p&gt;</summary><content type="html">&lt;p&gt;The problem of product managers is not that they exist but rather that they have too much power. We have all seen these articles written by developers that explain that product managers are useless. They miss the point.&lt;/p&gt;
&lt;p&gt;I think it is pretty obvious that PMs (whether you call them product managers or project managers) have some value. If you only ask developers to create some specific “thing”, they will forget how to release the “thing” to get maximum engagement, they will forget to talk to some important people in the company, they will not like talking much to customers, they will fight between each other on how to do the “thing”. Getting some smart social person (a PM) is very helpful to solve these things.&lt;/p&gt;
&lt;p&gt;That’s where the PM brings all their value. But this role is meant to facilitate decision making, make the project move forward. This is what is called “delivery” in the product management discipline. And this is usually the part that “Product managers” hate doing. The other part is “discovery”, it is meant to discover what to build, and this is the part that “Product managers” love doing. Of course they love doing it, this is about deciding what to build, you set yourself as the boss who decides, arbitrates and is the final decision maker.&lt;/p&gt;
&lt;p&gt;You can think to yourself, “well we have hired smart people who know how to make decisions on those topics, what’s the issue ?”.&lt;/p&gt;
&lt;p&gt;Well two things:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;First most product managers believe that the most important thing to do, is to interview users, look at data of usage, and then take some obvious bet to take the best decisions&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Second, most product managers are not smart in the sense that they make good product decisions. Anyone can be a product manager, you just need to pretend to know how things work and have done other things in the past. Product managers really rarely evaluate themselves on the KPI they have achieved in the past. And finally if you are really good at taking decisions to make a company successful you will have started a company of your own a long time ago (Not everyone want to create their own company, yes I know, but the high performers do :) )&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;So to sum up, we have a bunch of smart people in which we have removed the extremely smart ones and that believe that talking to users and looking at the data is the key to all good product decisions.&lt;/p&gt;
&lt;p&gt;That’s where we make the link with the title of the article:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Why is that specific to B2B?&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Why the company will stop innovating&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;When you analyze B2B and B2C companies they don’t have much in common, in the former you want to create a company around being able to help other companies believe that you bring them a lot of value, in the later you want to create a company that will actually provide value to random people.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Products managers in B2B context, does that work ?&lt;/h2&gt;
&lt;p&gt;This has a lot of impact on the product of the company, in B2B (and B2B2C is in most cases just B2B) your customers are powerful managers that don’t use your product but that have financial objectives, in B2C your customers are your users, they use your product. The consequence of that is interviewing users in B2B is almost useless, and taking decisions from what users tell you is a severe error and in most cases the path to stagnation.
Should product managers in B2B interview users and should your b2b startup build things for users? Yes but the bare minimum, just to make sure that they are somewhat satisfied about the product. What matters is to make your customers happy, and sometimes, and pretty often this is not needed, so all time spent on it is time you will not spend on the most important people, your customers.&lt;/p&gt;
&lt;h2&gt;Product managers and innovation&lt;/h2&gt;
&lt;p&gt;There is a famous quote about Henry Ford “If I had asked people what they wanted, they would have said faster horses”. Innovation is not something you see in the data. It is someone that has intuition and most people disagree with. When you start by saying “Let's look at the data and talk to users and we will build what we see”. You are basically saying “Let’s not innovate but work on the most visible issues”. You will skip all the issues that are not visible or which are a combination of a lot of small issues, and you will also have a powerful argument to dismiss any innovators (founders for example) but also executives (sales, Customer success, Customer care execs that have usually a pretty good visibility on what customers need). Someone who innovate is not always right, but without trying you won’t end up anywhere&lt;/p&gt;
&lt;p&gt;To sum up, this whole thing of making small autonomous teams is complete bullshit if the product managers have excessive power inside that team. They are also pretty good social people so they will make the rest of the company believe that not listening to them is a big error as “this is their job, they know how to do it” (No they don’t, a successful startup founder is 100 times more skilled in this area than 99% of product managers). If you are a startup B2B founder, I want to give you one piece of advice, don’t ever give a lot of power to product managers as long as you want to innovate. Take your most competent sales person and put him in charge of the product.&lt;/p&gt;
&lt;p&gt;Product manager will be angry at this post and argue that the role of the product manager is not to decide, but to help stakeholders find a solution. The reality is in most time this is not the case the product manager is really deciding (and taking bad decisions)&lt;/p&gt;</content><category term="Product management"></category></entry><entry><title>The metaverse will solve climate change</title><link href="https://blog.luap.info/the-metaverse-will-solve-climate-change.html" rel="alternate"></link><published>2022-07-09T12:00:00+02:00</published><updated>2022-07-09T12:00:00+02:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2022-07-09:/the-metaverse-will-solve-climate-change.html</id><summary type="html">&lt;p&gt;&lt;em&gt;Disclaimer: This is not 100% sure, this is a bet I'm making. The future will decide&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Over the last years the number of people who had sex is decreasing &lt;a href="https://www.washingtonpost.com/business/2019/03/29/share-americans-not-having-sex-has-reached-record-high/"&gt;in the US&lt;/a&gt; but also &lt;a href="https://www.lemonde.fr/m-perso/article/2022/07/09/le-sexe-et-les-jeunes-en-fait-ca-ne-m-interesse-vraiment-pas-tant-que-ca_6134072_4497916.html"&gt;in France&lt;/a&gt;. The lockdowns did not help, but this is a trend that existed before.&lt;/p&gt;
&lt;p&gt;The …&lt;/p&gt;</summary><content type="html">&lt;p&gt;&lt;em&gt;Disclaimer: This is not 100% sure, this is a bet I'm making. The future will decide&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Over the last years the number of people who had sex is decreasing &lt;a href="https://www.washingtonpost.com/business/2019/03/29/share-americans-not-having-sex-has-reached-record-high/"&gt;in the US&lt;/a&gt; but also &lt;a href="https://www.lemonde.fr/m-perso/article/2022/07/09/le-sexe-et-les-jeunes-en-fait-ca-ne-m-interesse-vraiment-pas-tant-que-ca_6134072_4497916.html"&gt;in France&lt;/a&gt;. The lockdowns did not help, but this is a trend that existed before.&lt;/p&gt;
&lt;p&gt;The explanation for me is due to the availability of porn and the usage of dating apps (I include instagram as a dating app). As porno is available in so much quantity without effort, it is much easier for guys to consume sexual content than to find a sexual partner. And for girls the existence of dating apps allow any kind of girl to meet with super hot or famous guys. A girl seeing she can have so much attention from guys even the hotter ones can only shift her expections higher and make it even more difficult for boys to be considered. The results of that (if this is true) is guys and girls having less sex.&lt;/p&gt;
&lt;p&gt;There is also the fact that feminism encourage girls to have more freedom, and encourage them to have better career, which means less "being a wife" and thus reducing the need to settle down to have children but also reducing the interest for these girls to need a man in their life.&lt;/p&gt;
&lt;p&gt;But this is only the beginning for me. The concept of the metaverse is going to change everything. Imagine the difference between looking at a porn magazine and watching a porn video, this is a pretty good gap in terms of sensations right ? Well the metaverse is going to create the same gap. Many people underestimate the metaverse and feel like this is some crypto, web3 bullshit equivalent. But this is not the case. The concept of the metaverse is to create an immersive environment to make humans better feel the virtual world. Will the metaverse be powered by META ? That's something that is not sure at all, but whether this is META who creates it or someone else will not change the result. If you can have the sensation that your dick is being sucked by your favorite pornstar it is unlikely you will want to spend time trying to find an average girlfriend. Of course having sex is not the only reason people are in a relationship. But would you keep your girlfriend if you didnt have sex with her?&lt;/p&gt;
&lt;p&gt;Back to the title of the article. The metaverse will make people not wanting to have sex by a lot. Less sex means less relationships, less relationships mean less babies, less babies mean huge decrease of the world population. Decrease of the world population will create many problems, but as long as the co2 emission per person is not increasing as fast as the world population is decreasing then the total world co2 emission will decrease. This can go pretty fast, if the average number of children per woman is 1 for example then it takes only 80 years for the population to be cut by 50%. If the per capita co2 emission is not increasing (&lt;a href="https://ourworldindata.org/grapher/co-emissions-per-capita?tab=chart&amp;amp;country=~OWID_WRL"&gt;which seems to be the case&lt;/a&gt;) then the total world emission is going to be cut by 50% by 2100&lt;/p&gt;</content><category term="Opinion"></category></entry><entry><title>My take on electricty production to reduce co2 emission</title><link href="https://blog.luap.info/my-take-on-electricty-production-to-reduce-co2-emission.html" rel="alternate"></link><published>2022-06-14T12:00:00+02:00</published><updated>2022-06-14T12:00:00+02:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2022-06-14:/my-take-on-electricty-production-to-reduce-co2-emission.html</id><summary type="html">&lt;p&gt;To fight climate change we have to reduce our Co2 emission, and as a big chunk of co2 emissions comes from electricity production we should find a way to decarbonize it. The second thing is we should decarbonize the emission of the transportation area. The main solution today is to …&lt;/p&gt;</summary><content type="html">&lt;p&gt;To fight climate change we have to reduce our Co2 emission, and as a big chunk of co2 emissions comes from electricity production we should find a way to decarbonize it. The second thing is we should decarbonize the emission of the transportation area. The main solution today is to convert our car/trucks/bus/plane to electric and produce green electricity.&lt;/p&gt;
&lt;p&gt;The sole objective of this post is to present in my opinion the best durable way to reduce co2 emission in the context of electricity production (the smaller co2/kwh). But I'm not an expert, so this should not be seen as the final solution.&lt;/p&gt;
&lt;p&gt;We more or less have 5 ways to produce electricity:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Use gas, petrol and coal a lot of co2, but can produce at any times at a relatively low cost&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Use nuclear, few co2, can almost product at any time but has perceived security issues, and limited fuel available on earth&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Use Hydro, few co2 but we have almost reached full potential today, can produce at any time&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Consume from stored energy (batteries, hydrogen,...) very expensive, still research and can have big environmental impact&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Solar and wind, few co2, relatively cheap (and cost are decreasing) but produce only when it wants, requires a lot of space&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;From that list the order of preference to decrease co2 seems to be : Hydro, Solar and wind, nuclear, stored energy and fossil fuels&lt;/p&gt;
&lt;p&gt;Hydro is already more or less at maximal capacity so let's focus on the others.&lt;/p&gt;
&lt;p&gt;Solar and wind alone can't work because they produce only what they want, and so as long as we want to not change our habits of consumption we have to find something in addition to that.&lt;/p&gt;
&lt;p&gt;There are three ways to produce energy when solar and wind don't produce enough.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;The first solution is to use stored energy (that was stored when wind and solar produced enough), but the problem with storage is that it has to be planned for the worst. Eg. We can't just say on average there is sun everyday so we need to plan for storage for the night. We also need to say, well sometimes during 3 weeks there is barely any sun or wind. So in that case we need to have three weeks of electricity storage, which at today's time we don't know how to do&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The second solution is to say, well when wind is not producing in France, maybe wind is producing in Germany or Russia or China and we will transfer electricity from the place where there is currently sun or wind to places that don't. The reality is that we don't really know yet how to transfer a large quantity of electricity over long distances, so even if that solution can work between France or Germany or 2 touching American states for example it is unlikely to solve our issue. If the places are close the weather conditions are going to be similar and it will not be enough.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The last solution is to use a dispatchable source of energy like nuclear, hydro, gas, petrol, coal. Nuclear is expensive in this case as a nuclear facility has a fixed cost but gas/petrol/case have a high co2 emission rate. So there are choices to be made here. Especially since storage is also expensive, but is it more or less expensive than nuclear ? And just to expand on fossil fuels, having coal facilities that work only under extreme scenarios, like once a year because there is really really no wind of solar is not really an issue, they will be a lot of co2 emission during that period but the rest of the time they will be no emission at all from those.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;So for me we should follow this path:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Invest in wind massively (especially maritime one that have better effectiveness)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Invest in solar massively (especially in place that have a lot of sun)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Invest massively in research to send big quantity of energy over long distance&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Invest massively in research around hydrogen production and storage so that we can store big excess production of wind and solar&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Ideally you would want to spread nuclear facilities around the globe, especially countries that don't have a lot of hydro (but nuclear can only work in stable countries for security reasons). Or you could invest in nuclear now to reduce as fast as possible the co2 emission, in the long term it will not make a difference.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Invest in carbon capture, there are potential but we are not investing enough&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Invest in house insulation, in bicycle infrastructures, in batteries&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Money is not going to be an issue, we are all going to die, so this should not be seen as a big factor. What will make a big leap is if we are able to store big quantities of energy and transfer electricity over long distances, all others are small factors.&lt;/p&gt;
&lt;p&gt;But at the end of the day, this is not going to really solve the long term issue, the reality is that we are too many people on this planet and no matter how much we consume it will be too much, especially if we keep growing. But can the world work if the population is decreasing ? or even if the population stays constant ? I have no idea&lt;/p&gt;</content><category term="Opinion"></category></entry><entry><title>Product Market Fit doesn't exists in B2B Enterprise</title><link href="https://blog.luap.info/product-market-fit-doesnt-exists-in-b2b-enterprise.html" rel="alternate"></link><published>2022-04-26T12:00:00+02:00</published><updated>2022-04-26T12:00:00+02:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2022-04-26:/product-market-fit-doesnt-exists-in-b2b-enterprise.html</id><summary type="html">&lt;p&gt;Before a startup reaches Product Market Fit (PMF), the company is struggling to sell his product in a scalable way. When a startup has found PMF then, selling becomes much easier, because the product fulfills most of customer needs. Seeds VC explains that the goal of a startup that is …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Before a startup reaches Product Market Fit (PMF), the company is struggling to sell his product in a scalable way. When a startup has found PMF then, selling becomes much easier, because the product fulfills most of customer needs. Seeds VC explains that the goal of a startup that is just created is to do anything to find its PMF so that when it is found they can raise a Series A and scale commercially.&lt;/p&gt;
&lt;p&gt;But what happens when the startup we are talking about is a B2B Enterprise startup ? How can you find a fit between a product and a market when the market doesn't really care about the actual product ?&lt;/p&gt;
&lt;p&gt;Over all the B2B Enterprise startups I've worked at, and some of them are multi-billion valued companies I've not seen PMF being reached. Meaning I've never seen the state where customers feel like the product really fulfills their needs. Which is not surprising when you know how B2B Enterprise software is sold (and bought). But I've seen all those companies reach a Sales Market Fit or as others call it a Go-To-Market Fit. This state has nothing to do with the product but everything to do with having a company vision, a sales playbook that gives a predictable growth engine (eg. I know that X more salespeople will give me Y more revenue). And this is a state that B2C and B2B SMB startups also need to find in order to really grow their business (Which is more Marketing based than Sales based).&lt;/p&gt;
&lt;p&gt;It is true that VCs don't like B2B Enterprise Saas very much. This is because success in B2B enterprise can't happen overnight and can't happen without an army of sales people. For example it is unlikely to become a billionaire as a result of founding a successful B2B Enterprise startup. The consequence of that is that as a VC a B2B Enterprise startup is usually not the company that will return your fund. And the other consequence of that is that VC don't talk to much about that type of startup when they post articles. That's why you will usually only hear about PMF&lt;/p&gt;</content><category term="Startup"></category></entry><entry><title>Wrap a website with a Webextension</title><link href="https://blog.luap.info/wrap-a-website-with-a-webextension.html" rel="alternate"></link><published>2021-11-20T12:00:00+01:00</published><updated>2021-11-20T12:00:00+01:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2021-11-20:/wrap-a-website-with-a-webextension.html</id><summary type="html">&lt;p&gt;I've tried to wrap any website into my own interface for the last couple of days, and that revealed itself to be a very painful experience. Actually I haven't managed to get it working as well as I wanted. So I want to describe all things that I tried in …&lt;/p&gt;</summary><content type="html">&lt;p&gt;I've tried to wrap any website into my own interface for the last couple of days, and that revealed itself to be a very painful experience. Actually I haven't managed to get it working as well as I wanted. So I want to describe all things that I tried in case in the future I want to attack the problem again&lt;/p&gt;
&lt;p&gt;Here is an example of what I'm trying to achieve:
&lt;img alt="example" src="https://blog.luap.info/static/webextension/example.jpg"&gt;&lt;/p&gt;
&lt;p&gt;Basically, I want to be able to show a search bar and a sidebar (wrapping content) on any website (page).&lt;/p&gt;
&lt;h2&gt;How to do that&lt;/h2&gt;
&lt;p&gt;There are only three ways that I'm aware of:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Inject the page into an iframe on a domain you control&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Use a Webextension, and inject some css and js, to add padding to the body of the page and insert your wrapping content as fixed element&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Use a Webextension, and replace the html of the page with your wrapping content plus an iframe to the current page&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;Inject the page into an iframe&lt;/h2&gt;
&lt;p&gt;So that's the easiest solution of all and you don't need an extension. But :&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Some websites prevent to be opened from an iframe via the X-FRAME-OPTIONS header&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Some websites use SameSite=Strict cookies which are not sent when the main frame domain is not the same as the one of the page (cross origin)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Some websites try to communicate with the parent frame and for example reload itself in the parent frame&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The 1. can be bypassed by using an extension, basically you just need to subscribe to the onbeforerequest event and filter out the x-frame-options header. We do not really impact the security of the page doing so&lt;/p&gt;
&lt;p&gt;The 2. can be bypassed by using an extension and rewriting the cookies and removing the SameSite attributes, but I have not tried it, I'm sure other issues will arise, and we will impact the page from working properly in some cases. We also introduce a new CSRF security threat&lt;/p&gt;
&lt;p&gt;I haven't experienced 3. for now, but in the past I have worked with websites that did it, and it was hell. Actually if you use an extension you could use the sandbox attributes and other allow parameters excluding the 'allow-top-navigation' parameters. I'll document it here if I happen to have the issue&lt;/p&gt;
&lt;p&gt;Overall that was the first solution tested, which was easy but not enough to support all our use cases&lt;/p&gt;
&lt;h2&gt;Inject wrapping content into the page&lt;/h2&gt;
&lt;p&gt;What you need to do is to inject some CSS to add paddings to the body of the page: &lt;code&gt;body{padding-top:55px;padding-left:200px}&lt;/code&gt; which will shift the page a bit down and to the right. And then inject a content-script (run_at document_end ) which will render your wrapping content. Here is the issue you will have to deal with:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;The CSP of the page may prevent you to inject your own CSS or own js&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The page may render itself comparing to the window size&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The 1. is easy to bypass, you just need to subscribe to onbeforerequest, and remove the content-security-policy header. If you want to respect the security of the website, instead of removing the CSP, you can modify it, to allow also your script and css, if you want to use some inline script, you will have to use a &lt;a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/nonce"&gt;nonce&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The 2. is a much bigger issue. And actually I don't think there is any solution to fix it. If you try to add padding on Google docs for example, it just doesn't work. So that technique only works for basic websites that don't use JS to place elements.&lt;/p&gt;
&lt;p&gt;I've given up that way as I'm working mostly with app that use a ton of JS&lt;/p&gt;
&lt;h2&gt;Replace the page with the wrapping content + an iframe to self&lt;/h2&gt;
&lt;p&gt;Just to explain in an example what that is. Imagine you want to wrap https://domain.com/path. Then you will let the page load. When the page finishes loading, you replace the whole page with&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;document.body.parentElement.innerHTML=`
    &lt;span class="nt"&gt;&amp;lt;html&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;head&amp;gt;&amp;lt;/head&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;body&amp;gt;&lt;/span&gt;
            &lt;span class="nt"&gt;&amp;lt;div&amp;gt;&lt;/span&gt;
                &lt;span class="nt"&gt;&amp;lt;wrapping-content&amp;gt;&amp;lt;/wrapping-content&amp;gt;&lt;/span&gt;
                &lt;span class="nt"&gt;&amp;lt;iframe&lt;/span&gt; &lt;span class="na"&gt;src=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;https://domain.com/path&amp;quot;&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/iframe&amp;gt;&lt;/span&gt;
            &lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;`
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;That's how most 'responsive viewer extensions' work. The benefits is :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Don't have to deal with cookie as you are in the same origin setup&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Don't deal with the page content, the page render itself into an iframe&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Your wrapper is kinda isolated form the iframe as you can clear the initial page if you want with &lt;code&gt;document.open();document.close()&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;But there are also tons of issues:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;You lose the favicon and the title of the page&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;You render the page two times and so it is slow&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If the page use service workers and all those new things they will wonder why the page is not rendering as expected&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;You still have the issue of the iframe trying to communicate with the parent&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;You still have the CSP issue&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Firefox and Chrome don't work the same and you have to do code for each browser&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;For 1. you can wait for the html to be rendered, query for the title tag and the favicon and then insert it into your wrapping content.&lt;/p&gt;
&lt;p&gt;For 2. to make it fast, as there is no way to modify the initial html page, you have to let the browser download and render it. But you have to do it in the fastest way possible. I found two ways to do it:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Generate a CSP that will prevent anything to be loaded except when ressources come from your domain. That will also prevent inline script execution and ajax requests to be sent. I haven't figured out if this works well with service workers, even when you include the connect-src directive. You need to add a nonce to the favicon if you want it to works&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Returns &lt;code&gt;{cancel:true}&lt;/code&gt; in onbeforerequest when the parentFrameId is -1 and the url is the one you want to intercept. The issue is that on Chrome you don't have access to the page url that made the request. Only to the origin. You have to first cache it. The issue is that inline scripts will still be executed and service workers too. I had less success with this option than the CSP one&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For 3. I haven't completely succeeded in fixing that. On Google docs for example the second times I reload the page on Firefox, there is an alert that's popping to tell me there was an issue&lt;/p&gt;
&lt;p&gt;For 4. Same as previously&lt;/p&gt;
&lt;p&gt;For 5. Same as previously easy to bypass&lt;/p&gt;
&lt;p&gt;For 6. For example, if you want to override the page on Chrome, you can use &lt;code&gt;document.open();document.close()&lt;/code&gt; from a content script run at "document_start" but on Firefox it doesn't work. Content scripts don't seem to have access to &lt;code&gt;document.open&lt;/code&gt; for security reasons. But you can use &lt;code&gt;window.eval('document.open()')&lt;/code&gt; which works, but in that case you need to have the CSP unsafe-eval allowed. Or you can insert your content script on &lt;code&gt;window.onload&lt;/code&gt; or run the contentscript at &lt;code&gt;document_end&lt;/code&gt;, but you lose the duration it takes to render the initial html page. Another issue I had, is that for some reason overriding the CSP doesn't work well when you have UblockOrigin installed on Firefox, the two overrides seem to conflict with each other.&lt;/p&gt;
&lt;p&gt;The result is pretty fast, the only page you load twice is the initial html page, so you lose the ping of the first page.&lt;/p&gt;
&lt;h2&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;That was overall a pretty stressful experiment. And I'm not 100% happy with the result, the last way seems to work more or less fine, but there are still times when it bugs. It also feels pretty hackish and I'm scared that any new version of Firefox or Chrome may break it. I will maybe try to adapt the UX so that instead of having a wrapper, I inject an overlay. That way I can modify the CSP, add some js and some css and render into the page DOM.&lt;/p&gt;
&lt;p&gt;That's also a good reminder that when you intall an extension. This extension can almost do anything it wants with what you do in your browser, so be carefull !&lt;/p&gt;
&lt;p&gt;And if you want to tell me that what I have been doing is a stupid idea, do not hesitate to send me an email :)&lt;/p&gt;</content><category term="Tech"></category></entry><entry><title>We deserve better than Confluence and Notion</title><link href="https://blog.luap.info/we-deserve-better-than-confluence-and-notion.html" rel="alternate"></link><published>2021-09-26T23:00:00+02:00</published><updated>2021-09-26T23:00:00+02:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2021-09-26:/we-deserve-better-than-confluence-and-notion.html</id><summary type="html">&lt;p&gt;If you ever were in the situation of looking for a tool to manage the knowledge of your organization, chances are you ended up choosing between Notion and Confluence. A handful of other tools also exist in this field, large players like Microsoft Sharepoint or Google Drive, niche tools like …&lt;/p&gt;</summary><content type="html">&lt;p&gt;If you ever were in the situation of looking for a tool to manage the knowledge of your organization, chances are you ended up choosing between Notion and Confluence. A handful of other tools also exist in this field, large players like Microsoft Sharepoint or Google Drive, niche tools like Slite, Guru, Coda etc and very old weird guys (KMS, I’m looking at you).&lt;/p&gt;
&lt;p&gt;In the end, this critical and fragmented market is mostly served by Notion and Confluence, especially for startups and fast-growing companies.&lt;/p&gt;
&lt;p&gt;Confluence is an old tool (V1 in 2004) and is admittedly hated by its users, as for any product made by Atlassian really. I'm not convinced Confluence deserves this rather harsh criticism given that it is overall better than its competitors.&lt;/p&gt;
&lt;p&gt;Notion is the new, fancy note taking tool. It’s the new Evernote and its growth is huge, but it was never built as a tool for organizations. Rather, it properly serves the needs of individuals and very small teams though now its creators are working hard to try to pivot into the Enterprise game.&lt;/p&gt;
&lt;h2&gt;What is important for an organization&lt;/h2&gt;
&lt;p&gt;The two objectives organizations try to achieve using these tools are making it easier to find information and encouraging the creation of new content. The issue with these two objectives is that they can easily become opposite goals. If the information architecture is not properly defined, additional content adds complexity and makes finding relevant information more frustrating, harder and time consuming.&lt;/p&gt;
&lt;p&gt;Let's take an example, Confluence and Notion both advertise that they can have infinitely nested folders. But is that really a good thing? If you are the one creating the structure, you will give titles for each folder that match the way your brain works and you will be able to find deeply nested content. But for any other person, the folder system becomes a maze after the second or third nested folder. We have all heard of “I can’t find document X” - “Oh it is easy you need to go in Q then P then T and yeah for this one it is a bit unusual you also have to search for C instead of X, and here you have it, easy no?” The structure is basically helpful to almost no one and if you want to find something you have to scan everything. The result is that deep nested folders should be banned because they are unhelpful.&lt;/p&gt;
&lt;p&gt;Making information easy to find needs to include knowledge that belongs in other tools. It is not because your company has Notion that employees will stop using Google Sheets, Google Presentations, Microsoft Words, Figma, Github and so on. Some tools are amazing tools and heavily specialized in their respective fields, but each tool is also its own silo. You are never going to replace Google Sheets or Excel with Notion tables, and neither are you ever going to use Confluence as a filesystem storage to replace Google Drive. This means that your knowledge’s single-source of truth needs to accept external tools content as possible documentation. This interfacing, though, can’t simply be about  linking files and urls in one place, it has to be deeply integrated so that it feels natural, native even. We should be able to put a Google Sheet file in a folder, attribute tags for example.&lt;/p&gt;
&lt;p&gt;If we want to have a common single source of truth of knowledge through the same software we also have to take into account the variability of skills of members. Some teams are using these products way more than others, some users will look up information every day, when others will need it once a year. Some people like dealing with a flat file system while others prefer nesting folders very precisely. If you don’t have a tool in which all members feel welcome they will not use it. This makes user experience a determining factor of success. An area in which Notion was particularly good especially for non technical teams compared to Confluence.&lt;/p&gt;
&lt;p&gt;But we should not make the mistake of being too flexible either. There is a balance to be found to keep a common framework. That’s why not everyone should be responsible for information architecture. A place where Notion and Confluence have chosen opposite approaches. Notion doesn’t provide its users with an admin interface, changing the information structure is easy and done quickly, newly created content doesn’t seem to belong to some precise location, all users have rights on anything and information seems to be floating around. Confluence makes it more rigid, it provides admin interfaces and a very detailed rights-management system, but admins feel powerless to handle all new contents and for making sure users respect the framework. And as users are not made to feel responsible for properly organizing the content they add, it is nobody’s responsibility and things become a mess .&lt;/p&gt;
&lt;p&gt;This result is not a consequence of unawareness because a lot of people understand the value of creating and using documentation, but tools are built in such a way that it ends up in chaos and nobody is able to use them as they wish.&lt;/p&gt;
&lt;h2&gt;Is better than that even possible?&lt;/h2&gt;
&lt;h3&gt;Better structure&lt;/h3&gt;
&lt;p&gt;Considering the limitations of Notion and Confluence approaches, is there a better way to handle knowledge? We could for example use Google style of search to simplify finding information. As tempting this solution is, it presents unbearable downsides. Most of the criterias that make a search engine powerful are not working in the context of a business organization: using backlinks to rank results, matching synonyms to understand meaning, skipping words, words stemming, using large amounts of data and learning from it etc.
None of this really works for an organization’s internal knowledge where data volumes are low and acronyms are the norm (IT can be Information Technology or the verb, same for THE, how can we know that ‘dockerd’ is not a typo ? ...). &lt;/p&gt;
&lt;p&gt;But it is also too difficult to search in the raw data. That means it needs to be indexed, which can be achieved in many different ways:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Put data in tree structures.&lt;/li&gt;
&lt;li&gt;Assign tags to data.&lt;/li&gt;
&lt;li&gt;Assign metadata to data.&lt;/li&gt;
&lt;li&gt;Group data by similarity.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The first approach, putting data in tree structures is what's being used by most softwares out there. It can make searching for information way faster by reducing the list of documents to scan, but this is helpful only if folders are pretty clear of what they contain. So we should have a few fat folders and use other indexing methods inside them. For example there is a clear difference between Sales documents and engineering specifications. But there is no clear border between pricing strategy and sales presentations in an organizations of 100 ppl, so these two contents should be in the same folder&lt;/p&gt;
&lt;p&gt;Assigning tags to data, multiple tags for a single document for example, helps avoiding the main downside of using a folder tree structure, i.e not knowing to which folder belongs a file. Though, as for the tree structure that needs to be meaningful and understood, the list of tags must be consistent. Only specific owners should be able to define allowed tags so that they can make sure the tag system is “balanced”.&lt;/p&gt;
&lt;p&gt;Metadatas are usually preferred to tags as they allow for precise filtering and impose a common schema for indexing data. Though, their main downside is that they can only be used with similar content. It is a very robust yet limiting framework: if you want to index meeting notes, names of participants and date of the meeting are relevant metadata, but what if you need to create a totally different type of document? Metadatas are a powerful tool (as Notion showed building their Tables) but limited to cases where the data itself answers to a common pattern. One way to go beyond this limitation is not to give metadatas to documents but to give metadata depending on where they are searched. The same document “Meeting note about the board meeting” could have the metadata “date of the meeting” and “participants” when viewed from the list of meetings notes. But will have the metadata “type of document=meeting notes” when viewed from the list of document related to board decisions
Grouping data by similarity has been made popular by Pinterest or Slack, under the terme “curation”. Any document can be shared in as numerous Slack channels deemed relevant. In Pinterest, each pin can exist in several collections. The collections and channels facilitate the finding of common documents (according to the definition of the collection). Even better, those collection-types can be created by other people than the creators of the document and then offer some kind of transversal structure in which you can impose a different metadata schema inside each collection. Each owner of a collection becomes the curator of the content of other peoples.&lt;/p&gt;
&lt;p&gt;All of these solutions are relevant and useful for enhancing discoverability and relevance of organizations’ internal knowledge. In each case, it's only when everyone shares the same framework that information becomes accessible. Those tools need more than anything to build alignment between people.&lt;/p&gt;
&lt;h3&gt;Ease of use&lt;/h3&gt;
&lt;p&gt;If you implement a new tool in your company to create documentation but the collaborating experience is worse than Google Docs most people will use Google Docs and nobody will use your new tool. As a company executive or knowledge management worker you understand the benefit of having the same tool to store all your information. But on a day-to-day basis, if you have to decide for a folder, choose tags, choose a title, publish your document, invite people to comment and use a text editor with 10% of the capacities of Google Docs’ or Excel’s, that's never going to work in the long term. That's exactly what happens with Confluence, first people hate Confluence, then they don't know where to put their document, then that's probably the first time they try to create content, so they don't have rights to create content, and finally people don't receive updates to their comments because they are used to ignoring notification emails from Confluence.&lt;/p&gt;
&lt;p&gt;A typical user of any knowledge management solution must be able to execute a few actions:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Create new content.&lt;/li&gt;
&lt;li&gt;Collaborate with peers on a document.&lt;/li&gt;
&lt;li&gt;Quickly retrieved a previous document deemed useful.&lt;/li&gt;
&lt;li&gt;Explore and find specific content.&lt;/li&gt;
&lt;li&gt;Be notified when content is updated.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Notice how this list doesn’t include “Create rich text documents better than Google Docs”. 
Most existing tools do not focus on the organization part: Notion Tables are arguably an attempt to reimplement Excel inside Notion, and &lt;a href="https://techcrunch.com/2021/03/18/atlassian-peps-up-confluence-with-new-graphical-design-features/"&gt;Confluence is trying to make people use smileys in their pages title&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;We need tools to organize content, we don't need to recreate Google Sheet and JIRA inside knowledge base tools. Current vendors should make more effort to make external documents first class citizens of content and leverage existing tools, as discussed before. We could push things further and allow creation of external content from the knowledge base or one-click add an external url to the documentation&lt;/p&gt;
&lt;p&gt;If you are interested in any of these topics, have ideas or if you are looking to solve those issues, don't hesitate to reach out to me. I'm building on those topics at &lt;a href="https://dokkument.com"&gt;Dokkument&lt;/a&gt;. A collaborative knowledge management solution for organizations.&lt;/p&gt;</content><category term="Opinion"></category></entry><entry><title>What the covid pandemic taugh me</title><link href="https://blog.luap.info/what-the-covid-pandemic-taugh-me.html" rel="alternate"></link><published>2021-07-24T12:00:00+02:00</published><updated>2021-07-24T12:00:00+02:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2021-07-24:/what-the-covid-pandemic-taugh-me.html</id><summary type="html">&lt;p&gt;It is difficult to predict what will happen when it's the first time something is happening, and it is also difficult to predict something when you have no expertise in the domain. I'm somewhat unusual in the way I take care of my health. I belong to the group of …&lt;/p&gt;</summary><content type="html">&lt;p&gt;It is difficult to predict what will happen when it's the first time something is happening, and it is also difficult to predict something when you have no expertise in the domain. I'm somewhat unusual in the way I take care of my health. I belong to the group of people who try to let his body and health system handle as much as possible the diseases that I have to overcome. I do a lot of sports and eat as healthy as possible in order to build a strong immune system. I also usually refuse to take any medicine if this is highly likely I can recover without it, even if this means suffering. The only exception being taking paracetamol when I have a headache.&lt;/p&gt;
&lt;p&gt;When I first started to hear about the covid, I didn't really know what to think about it. I thought that China has not a very powerful hospital system and what happened to them won't happen in a country like France, a country which has a solid health infrastructure. Covid started to spread around the globe. The first time I gave advice about it, was the 13 of March 2020, there were 785 cases in France. What I said was&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;"Don't overreact, what's important is not the number of cases, but the number of deaths. The only countries who manage to contain the epidemic yet have used either of these two strategies : Very strong hygiene measures and forced sick people to stay at home (japon, taiwan, south korea, singapour, hongkong). Or hard lockdown on everyone (China). In France none of those strategies are possible. The best to decrease the covid propagation is to not transmit it, so when you are sick stay at home and wear a mask. If you are not sick you can still already have it so wear also a mask. (although all those stupid european countries tell you it is useless, some countries are able to control it that way)".&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;That aged pretty well but that was not hard to predict either. I tend not to panic in stressful events and stay rational. I made one mistake though, without any knowledge I thought most of the transmission is through contact, even though today we still don't know what is the main way of transmission it doesn't seem to be via contact.&lt;/p&gt;
&lt;p&gt;But we are here, almost 18 months later and even in the most vaccinated countries the epidemy doesn't stop. And we still don't know if the epidemic is going to stop anyway. The vaccine speed surprised EVERYYONE except Trump (You can ban stupid and be right :) ). And the vaccine efficiency at preventing death also surprised everyone, and still does.&lt;/p&gt;
&lt;h2&gt;What I learn ?&lt;/h2&gt;
&lt;p&gt;I have learn a few things, but they all comes down to a simple sentence:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Whether or not it is true, 80% of people will think what the top 5 medias of the country say&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;I discovered that propaganda exists as much in our democraties than in dictatures, the only difference is that we don't call it propaganda. It is so easy to influence people, just keep telling them the same thing over and over. I discovered how important independent media are to democraties. I've since stopped reading any kind of newspaper and only read somewhat neutral newspaper like Bloomberg and reading the timeline of 3-4 people on Twitter that I trust, and which are very nuanced (and not surprisingly those people as very rational and have not changed their opinions since the beginning because they were close to the truth since the beginning). As soon as I see a post which is certain about something, I know it is unlikely to be true.&lt;/p&gt;
&lt;p&gt;You want examples :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Masks don't work (people were very convinced at the start of the epidemic)&lt;/li&gt;
&lt;li&gt;Compulsory masks works (people are very convinced about it, even though we have no proof about it)&lt;/li&gt;
&lt;li&gt;Lockdown works (Hard lockdown works for sure, but the ones we had ? no strong proof)&lt;/li&gt;
&lt;li&gt;Vaccine will not be available in 12 months (even though the industrials and Trump kept repeating it was possible)&lt;/li&gt;
&lt;li&gt;Astrazeneca vaccine is dangerous ( that was very nothing compared to the risk of catching Covid for old people at the time of the headlines)&lt;/li&gt;
&lt;li&gt;Alpha variant is 60% more transmissible (Was stopped with lighter measures and fears than the previous one)&lt;/li&gt;
&lt;li&gt;Delta variant is 60% more transmissible than Alpha (Cases are already decreasing in unvaccinated teens in UK without any measures or fears)&lt;/li&gt;
&lt;li&gt;The second wave is not a new epidemy (The first one who said was Didier Raoult, nobody believed it because he lost his scientific credibility with his support to HCQ, but not we see that every wave is a new variant)&lt;/li&gt;
&lt;li&gt;The vaccine will stop the epidemy (We don't know 100% if this is true or not but I bet it will not)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;What is the impact of that ?&lt;/h2&gt;
&lt;p&gt;The major issue of that, is that our democraties are in fact super fragile. Nobody believed before the covid that the government had the power to force people to stay at home. That you could be fined for going outside your home. That you could ask citizens to download an app which will force them to quarantine if they walk close to some random people. That you could lose your job because you are not vaccinated.  But in fact all of that is possible, if all media advertise for it, the majority of people will agree, even if this based on false promise. People who are against will be called complotist or extreme-something. Politicians - who don't want to go against people who vote for them - will then be in favor of the measure, and here we go..  &lt;/p&gt;
&lt;p&gt;The same is happening currently in France. Macron said that the 'green pass' will be compulsory to access almost everything, even hospitals (except urgencies). This is also more or less making vaccination mandatory. All media are in favor of it because it was sold to them as a way to exit the pandemy (Which is unlikely to be true). Nothing new you will tel me, there are other vaccines which are mandatory. The funny part is in order to verify that everyone is vaccinated, instead of making it mandatory Macron basically asked every business owner to control that people who come to their business are vaccinated. This is pretty tricky. It goes even further. Every vaccinated citizen is given a QR code with its identity. The authentication process is pretty strong, meaning you can't create fake QR code as the code is signed with government keys. The person who controls the pass, is also verifying the identity of the person at the same time. We only need an update on the verification app to include the GPS coordinate and send the information to a government server and the government is then able to collect the geolocation of each of its citizens in real time. Will that happen ? It is very likely. The government is also currently modifying the law to be able to fire people because they are not vaccinated. Basically for health reasons you can be fired, even though firing someone in France is usually pretty hard. That law has the support of the media and therefore the population.&lt;/p&gt;
&lt;p&gt;You will ask me, why the population is in favor of something which is probably going to be against them ? Because this is not how it is sold to them. If you ask the media or the government, "The green pass is a problem for  our freedom" They never answer the question, they always say. But this is the pass or the lockdown. People believe lockdown or the pass is efficient at fighting the virus (which is unlikely to be true) so the people prefer the pass to the lockdown. This is very terrifying, if tomorrow the government says "we are going to kill people who are unvaccinated" and the media support that, 80% of people will be in favor of it. If you ask them if in the future the app will be used to collecting their gelocation, they will say something along the lines of "No way, this is strictly for verifying the vaccine status, we have a strong independant legal system which will prevent is anyway". The same argument they used 3 months ago to say that the green pass will NEVER be asked for going to a restaurant. Pure joke.&lt;/p&gt;
&lt;p&gt;We don't even know why Macron decided to make the vaccination mandatory thanks to the pass, we don't know if he really wants a dictatorship. He probably did that just to be more popular while trying to do something. But the reality is that dictature is closer than ever to come back and I see nothing to prevent that.&lt;/p&gt;
&lt;p&gt;In most countries the media belongs to billionaires, they have understood for far longer than us that they will be able to control the people with that. They can control who is elected, what people do, what they want to buy, what is important, who is guilty. They only need to agree with each other. That's how Macron was elected.&lt;/p&gt;
&lt;p&gt;What is crazy is that people who manifest against it, do it mostly for wrong reasons, anti-vaxx, complotists, people who hate the president, people who like manifesting, ... And they are mostly poor people. They are also the people who have nothing to lose. But we have to accept something, us the rich or educated people. The day the dictature will really be there (and there is not much preventing that to happen). That's the poor people who will go manifesting and free us from it. All of the people who criticize the poor people rebelling against those laws should try to think about it. Because they are basically today the only thing that prevent us from being in a dictatorship. Whether the dictatorship is better than the democracy is another story&lt;/p&gt;
&lt;h2&gt;How to not be under the influence of the media ?&lt;/h2&gt;
&lt;p&gt;Don't try to think you can continue reading the same newspaper and thinking "I don't trust them" will be enough. If you read something all day, you will believe it 90% of the time, that's the reality. There is only one way. Stop reading the newspaper. Do you really have news in your life ? Today's news is the most important thing to make you scared, lose your time or make you believe things that are wrong. Social media is even worse, don't go there !! I've quit news, and I'm way more relaxed&lt;/p&gt;</content><category term="Opinion"></category></entry><entry><title>Cancel culture, Twitter trendings and radical transparency</title><link href="https://blog.luap.info/cancel-culture-twitter-trendings-and-radical-transparency.html" rel="alternate"></link><published>2021-05-01T23:00:00+02:00</published><updated>2021-05-01T23:00:00+02:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2021-05-01:/cancel-culture-twitter-trendings-and-radical-transparency.html</id><summary type="html">&lt;p&gt;&lt;em&gt;This post is a bit different from usual posts, and because I'm not very good at communicating unstructured thoughts it could be hard to read&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;I'm not going to debate whether or not cancel culture is bad, plenty of people have done it, and it seems there can't be a …&lt;/p&gt;</summary><content type="html">&lt;p&gt;&lt;em&gt;This post is a bit different from usual posts, and because I'm not very good at communicating unstructured thoughts it could be hard to read&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;I'm not going to debate whether or not cancel culture is bad, plenty of people have done it, and it seems there can't be a definitive answer on it. But I feel like cancel culture is just a part of a bigger thing. &lt;/p&gt;
&lt;p&gt;A few days ago a company of 50 people &lt;a href="https://world.hey.com/dhh/basecamp-s-new-etiquette-regarding-societal-politics-at-work-b44bef69"&gt;announced&lt;/a&gt; (in an unusual way) that employee would be asked to not talk about politics at work. If you don't know Basecamp and you are not in tech, that will not make a bigger news to you than knowing your neighboor is wearing a white shirt. But for the internet apparently it was not the case. There was thousands of comments on Hackernews, there are several threads of employees on Twitter making thousands of repost, there was an article about it in every major newspapper. Seriously why would Bloomberg cares about of a change a company of 50 people made, especially since 'no politics at work' is almost a practice in any company in the world.&lt;/p&gt;
&lt;p&gt;The answer is Twitter trendings. Twitter Trendings is a list of topics that are trending on Twitter. If you are not a Twitter user, usually for a topic to be trending this is not the result of several small people talking about the object. But instead this is one account tweeting something and thousands of people retweeting or liking it. Then people see the topic in trendings and start making other tweets about it. But not every content is a candidate for being in trendings, that need something that most people can give their mind about it. And it is better if this is content of someone who is outraged about something, because when you are outraged about something you are more vocals, and when you are outraged about something, other people who are outraged at everything will support you. That's how every person being cancelled starts, that's how the Basecamp stories started, that's how a lot of topics you see on TV or newspapper start, that's how the "new X covid variant stories" starts&lt;/p&gt;
&lt;p&gt;Imagine you are a journalist, and you need to make an article. You want your article to have a good engagement and to make people come to your website. What a better way than writting about something which is currently trending on Twitter ? If it is trending on Twitter it means it interests people. So this journalists makes article about it. And when other people involved with the stories starts seeing articles about it or the subject being trendy on Twitter. They start writting threads to explain their side of the story. Those thread usually makes thousands of likes and retweets. Not because what they say is important or right. Just because they express an opinion on something which is trendy and they have first hand experience about it. When I talk about people, I'm not talking about celebrities, it is really random people like me and you, who have 300 followers.&lt;/p&gt;
&lt;p&gt;The crazy thing is that when a topic is trending it doesn't mean most of people care about it, it only means a few thousands people are vocal about it. Imagine if you have a protest of five thousands people in the street. Making that kind of protest is difficult to do. Thousands of people need to make an effort to all go at the same place in the same time and wait a few hours of their time shouting, and at the end this is only a small protest that nobody is going to talk about, because if that was only 5000 people it probably most people don't care about it. But on Twitter this is different. To create a protest you don't need any effort, you just need to click on several buttons (the retweet or like button of people who are vocal about it ), as a result instead of 5k people you have a virtual protest of more than 50k people. The protest seems much bigger and also seems to be important whereas in fact this is still just a very very small fraction of people.&lt;/p&gt;
&lt;p&gt;One of the thing that I've discovered since the covid started is how much newspappers act as propaganda. This is probably not intentionnaly, but the results is the same. When newspapper creates content on top of Twitter trending subject, they give importance to this topics to anyone who read them. Is there any topics more interesting to people than Basecamp ? Well probably any topic is more interesting to people than Basecamp, but instead we hear about Basecamp. Is what is wrote about Basecamp even true ? Probably not, on Twitter doesn't have to be true to be retweeted, and I would say it almost has to be false to be retweeted. So we have a loop. A few thousands people have a strong mind about topic, it becomes trending because people are outraged about it, the content is picked up by newspapper, anyone has now (a wrong) opinion on the topic. Sometimes it results in someone being cancelled, sometimes it is someone being praised, sometimes is a company being blamed. And most of the time for something which is not even true.&lt;/p&gt;
&lt;p&gt;I'm a big fan of transparency inside an organization, but I'm very against Radical transparency. &lt;a href="https://en.wikipedia.org/wiki/Radical_transparency"&gt;"Radical transparency has also been explained by Dan Goleman as a management approach where (ideally,) all decision making is carried out publicly"&lt;/a&gt;.  At first it was companies being transparent with their employees about the business, but some companies tried to be transparent with the public. This is mostly a marketing strategy to create a cult around the company. Basecamp is an example of that, they have 50 employees, make less than 40M of revenue, but still they are very known in the tech world (before they made the headlines). Initially transparency can helps you become better, as any decision of results is public, it forces you to try to be the best everywhere. When you are the best, you can then communicate it publicly and people starts saying you are a dream company. Is it really a dream company ? Well probably at the beginning. When everything go well, when you have a lot of money, it is easy to be perfect. But the issue is you are also telling the public they should have high expectations with you. No one is perfect, and no company is perfect. One day someone is going to make a mistake, or the company will have a difficult time. This time people who have high expectations will be outraged by it, and the company will get a correction. When you are transparent with the public, you remove the borders of the company and any topic for employees is a public topic. For example if you are in a Radical transparency company and the founder publicly says that he is a supported of Trump, all people who are hate Trump will blame the company (even though you are free to have politics opinion). Because in a radical transparency company, the opinion of one person is also the opinion of the company, and I said the founder, but probably the same would happen if this is an normal employee.&lt;/p&gt;
&lt;p&gt;I have a few advice:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Most of content we read on newspapper is false, not intentionnaly but because of lack of seriousness of the profession.&lt;/li&gt;
&lt;li&gt;Radical transparency is a trap. It can help you a lot to start a company but if you don't leave the trend before it is too late you are going to pay the price. (&lt;a href="https://blog.alan.com/bonne-nouvelle/alan-q1-2021-letter-to-shareholders-en09"&gt;Alan&lt;/a&gt; be careful)&lt;/li&gt;
&lt;li&gt;Twitter is the kingdom of fake news and human stupidity, always verify what you read.&lt;/li&gt;
&lt;li&gt;A company is not a relationship. Communicating everything is not going to solve all the problems, some people lack context and knowledge to fully grasp issues.&lt;/li&gt;
&lt;/ul&gt;</content><category term="Opinion"></category></entry><entry><title>Notion is not a knowledge base</title><link href="https://blog.luap.info/notion-is-not-a-knowledge-base.html" rel="alternate"></link><published>2021-03-05T23:00:00+01:00</published><updated>2021-03-05T23:00:00+01:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2021-03-05:/notion-is-not-a-knowledge-base.html</id><summary type="html">&lt;p&gt;&lt;img alt="notion" src="https://blog.luap.info/static/notion/notion.png"&gt;&lt;/p&gt;
&lt;h2&gt;What is Notion&lt;/h2&gt;
&lt;p&gt;For those of you who don't know &lt;a href="https://notion.so"&gt;Notion&lt;/a&gt;, it is a note taking app. Well it used to be a note taking app. They describe themselves as the 'All-in-one workspace'. I usually describe themselves as 'Google drive with pretty emojis'. Which is I don't think far from …&lt;/p&gt;</summary><content type="html">&lt;p&gt;&lt;img alt="notion" src="https://blog.luap.info/static/notion/notion.png"&gt;&lt;/p&gt;
&lt;h2&gt;What is Notion&lt;/h2&gt;
&lt;p&gt;For those of you who don't know &lt;a href="https://notion.so"&gt;Notion&lt;/a&gt;, it is a note taking app. Well it used to be a note taking app. They describe themselves as the 'All-in-one workspace'. I usually describe themselves as 'Google drive with pretty emojis'. Which is I don't think far from the truth when you see how far you can go with Excel sheets.&lt;/p&gt;
&lt;p&gt;But Notion is special, they have an immense growth. They 4x their user base in 2020, they have more than 4 millions of users, make more than $40M in revenue, are profitable, and everyone talks about them, they refused VC money. They are very successful, but it has not always been the case. The founders explain how much the beginning was. And they had to relocate and fire all their employees to keep the company running. A good reminder for any aspiring entrepreneur, that the success usually comes after years of pain (According to Linkedin Ivan started working on Notion in 2013).&lt;/p&gt;
&lt;p&gt;But what company is Notion? You know how much I like to categorize startups. Is Notion, B2B SMB, B2C, B2B Enterprise ? Well I'm not sure of the answer, but I'm sure of what they want to be. They want to be a B2B company, they have recently made Notion free for individual users which is probably a way to send a signal that individuals are not their target users while still using them as a growth driver. They also explained at this occasion that they get most of the revenue from companies. They explain that &lt;a href="https://techcrunch.com/2019/12/02/why-notion-is-staying-small-as-its-valuation-gets-bigger/"&gt;sub 100 employee&lt;/a&gt; companies benefit the max from Notion, while in bigger companies "what tends to happens is that some person or some team tends to have a preference for a specific tool" which is a tricky way of saying that your tool is not best for those companies, but hey you can still use us. They way they talk about the company, they never talk about their individual users, which is weird as they have a TON of them.&lt;/p&gt;
&lt;p&gt;Let's dig, and try to find which company they really are. So first, in mid 2020 they had something along 40M in revenue and 4M users. $10 dollars per year per user. Their cheapest plan is $4 PER MONTH and it is for individuals, their public plan for business is $8 per month (which is coherent with the price Confluence or Google Workspace). So from these figures there is no way that most of their users are business. Maybe that the majority of their paying customers are business, but if you count the overall users. They don't have sales guys, they don't hire sales guys, they don't list any big companies in their customer stories. (Well they have some big companies as customers but only for one team among it ). That's very clear they are in fact a B2C/B2B smb companies.&lt;/p&gt;
&lt;style&gt;.full img{margin:auto;display:block}&lt;/style&gt;

&lt;h2&gt;The good and bad of free plans&lt;/h2&gt;
&lt;p&gt;Should you do a free plan, should you do a free trial, none of them ? That's a common question people ask when they launch their Saas product. What it is clear is that Notion has chosen the free plan option. To make it brief, free plans are usually for B2C and have free users as a marketing asset, free trial is for B2C or B2B SMB when they want all users to become customers but don't want to hire too many sales people. And None of them is for B2B when you want all customers to go through a sales funnel. It is clear that Notion chose the free plan because they want to benefit from the visibility the free uses are offering them. And that happened to be a strong choice. I really think that their business approach has been extraordinary. They have tons of visibility on the web, tons of users loving them, tons of paying customers without almost doing any marketing. They can thank all their users for the communication around the product they do. 2 years ago when I was seeing Notion popup up in companies I was impressed. They have a product which is not really good for companies, that knowledge management admins don't want to see. And despite that there are employees of these companies starting to use Notion for their own team, and then that drives interest from other teams. Which creates a presence in the B2B market, you then just need to transform your companies into a B2B companies, hire a bunch of sales guys, create marketing around that, and you are on the road to make plenty of money. But that's not going to happen.&lt;/p&gt;
&lt;p&gt;At that point Notion probably has more than 50% of their users who are individual users. And this is a very difficult position to be in. Imagine you have a company, most of your users don't pay anything and are individuals while your target users are companies. If most of your users are individual your product is probably built around them. Also personal knowledge bases have almost nothing in common with company internal knowledge bases. Yeah of course, both need a way to type documents and create buckets of documents but that stops here. Individuals and companies have strong different needs, trying to create a dual product that includes both features and that is activated depending on the user, is mission impossible. If you tell your individual users that you will stop supporting their use case and they need to find another tool, you will lose what makes your company successful, so that's unlikely to happen. And if you continue to target B2B while not taking into account your individual users, what will happen (and it is already happening) is that users will keep asking for things that you will never build, and at some point they will be frustrated and leave the platform. That's already happening, what individual Notion users want is : &lt;a href="https://www.reddit.com/r/Notion/comments/lxaq7e/its_time_to_accept_the_fact_that_notion_will/"&gt;offline mode&lt;/a&gt; (has almost no point for B2B, and is especially hard to do when your whole product is built on the promise that every content of the interface is live), API (Same),  Encryption (Difficult to do when multi users), Beautiful templates (No point for B2B).&lt;/p&gt;
&lt;p&gt;They are trapped in here. And that's one of the consequences of the free plan. If free plan users become too big, they will have a strong force to keep the company as it is and prevent it from going where it wants to go. And if those free plan customers are not the same kind of your target customers you are in big trouble, which is what is happening here.&lt;/p&gt;
&lt;h2&gt;The product is amazing but can't scale past 100 employees&lt;/h2&gt;
&lt;p&gt;In Notion almost any piece of content displayed in the screen is live. If someone else is modifying the menu it will automatically make the change on your screen. Same for documents. If you change the name of a page it will automatically change the name on the document where this page is referenced. The UI is beautiful, you can feel that everything has been created by designers (The CEO is a designer). The editor works very well. You can't imagine how hard it is to do a rich text editor with tables, images, text, modules and so on, while keeping the selection workings, managing the positioning of elements, you can move elements from a doc to a menu, ... Despite that, the one of Notion works very well and is at the same level as the one of Google docs which is a reference. There are templates for everything, want to create a TODO list ? a roadmap ? a task list ? a customer CRM ? there are templates for all of those things, in a few clicks you will get a page.&lt;/p&gt;
&lt;p&gt;But to me the &lt;a href="https://telegra.ph/Notion-is-a-UX-Disaster-12-23"&gt;UX is a big issue&lt;/a&gt;. You can't just go on Notion and start using it. Look at what looks a table when you create it :
&lt;img alt="notion table" src="https://blog.luap.info/static/notion/table.png"&gt;&lt;/p&gt;
&lt;p&gt;Does that look like a table ? Yeah kinda, but not kinda either. Because in fact a table in Notion is a list of documents, and columns are attributes of the documents. Some documents are text documents, other are gallery views and you have to be very lucky to understand how to create either of them. The interface is super slow, when you search something it starts by returning documents which match your query that are cached on your local computer and then when the requests finished it updates with the real answer. When you want to search by page, you can't see the page tree and pick the page, you have to find the page by name. Just type Notion course on Google and see how many services there are.&lt;/p&gt;
&lt;p&gt;Is that an issue ? Not so much, if you want to use Notion as a personal knowledge base. I hope you will take a few minutes to understand the tool and start using it. But if you are a company, do you really think every member of the org is going to go through a course of Notion ? Some will, some won't, and the more you have people who don't the more those people are going to use alternative tools.&lt;/p&gt;
&lt;p&gt;The very good thing about Notion is that it can almost do anything. When you are a small company, you don't have to look for a new tool, just build a simple page with Notion for a few minutes and you can start working (This is Excel 2.0. Airtable also wants this place). Want to create job postings ? just create a public page with your job posting. Yes Notion, can also be a CMS for a website. (Surprisingly Notion itself uses Greenhouse for job postings). But if you have worked in a company that starts to grow, the lack of structure and hacker philosophy stops working at one point. When people buy JIRA, they know they could keep going on Excel sheets, but they also know that they will benefit from having a dedicated tool. If you use Notion instead of JIRA, you will need a lot of work to keep the system working.&lt;/p&gt;
&lt;p&gt;Notion wants to be good at everything. Other softwares that do everything are called ... ERPs. So yeah Notion is some kind of ERP for small companies used by individual users for note taking.&lt;/p&gt;
&lt;h2&gt;But I need an internal knowledge base tool for my company, how could I use Notion for that ?&lt;/h2&gt;
&lt;p&gt;Well you can try, and some manage to do it. If you have a few Notion power users you will probably manage to do it. You will need to teach everyone in your org how to user Notion. You will need to create processes explaining employees how to build documentation, keeping it up to date. And you will then need to hope that people will really respect the processes. Otherwise this is going to become a mess, and someone will have to spend his time fixing pages, changing titles, moving pages ... Notion is not an alternative to Confluence, Sharepoint or any knowledge management tool. They are probably an alternative to Evernote or Google drive. If you want to use Notion as an alternative to Google Drive I think this is a good choice. Even though Notion is slow, it is much easier to create a structure of folders with right management than with Google drive. But as soon as you will be approaching 100 employees you will need to 'unbundle' your Notion workspace into different independant apps. Take a look at &lt;a href="https://dokkument.com"&gt;Dokkument&lt;/a&gt;&lt;/p&gt;</content><category term="startup"></category></entry><entry><title>Linkedin is uniquely positioned to solve the biggest businesses' problems</title><link href="https://blog.luap.info/linkedin-is-uniquely-positioned-to-solve-the-biggest-businesses-problems.html" rel="alternate"></link><published>2021-02-13T23:00:00+01:00</published><updated>2021-02-13T23:00:00+01:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2021-02-13:/linkedin-is-uniquely-positioned-to-solve-the-biggest-businesses-problems.html</id><summary type="html">&lt;p&gt;&lt;em&gt;But they focus on building a social network instead&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;When &lt;a href="https://twitter.com/LucaBongiorni/status/1359560585990537216"&gt;developpers&lt;/a&gt; wake up in 2021 and discover that Linkedin is a business social network, Sales people have for a long time accepted that their linkedin account is one of their company's communication channel&lt;/p&gt;
&lt;p&gt;Linkedin knows your connections, your past jobs …&lt;/p&gt;</summary><content type="html">&lt;p&gt;&lt;em&gt;But they focus on building a social network instead&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;When &lt;a href="https://twitter.com/LucaBongiorni/status/1359560585990537216"&gt;developpers&lt;/a&gt; wake up in 2021 and discover that Linkedin is a business social network, Sales people have for a long time accepted that their linkedin account is one of their company's communication channel&lt;/p&gt;
&lt;p&gt;Linkedin knows your connections, your past jobs, your customers, your main skills, what you are interested in, the number of employees in each company in the world, if a company is growing or shrinking, what companies say, who interact with them. They know as much of a company as the company itself. &lt;a href="https://www.forbes.com/sites/emmawoollacott/2019/09/10/linkedin-data-scraping-ruled-legal/"&gt;Seeing how much they prevent scrapping&lt;/a&gt; they know their data is valuable. As a result of that you can be sure that they use this data to solve big problems. Well no, they don't, their three main paying features are:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Make people pay to send messages to other people&lt;/li&gt;
&lt;li&gt;Give a few filters to search people&lt;/li&gt;
&lt;li&gt;Let people post job offers&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;And they are NOT EVEN good at it!&lt;/p&gt;
&lt;p&gt;Despite that, they could help solving the two most difficult tasks of business: Finding customers and recruiting&lt;/p&gt;
&lt;h2&gt;Recruiting&lt;/h2&gt;
&lt;p&gt;I'm not going to say that hiring is broken, it is the same thing as dating. People don't know what they need nor want, so they talk to a few people until they find one that makes them feel good and then they hire him. I'm clearly not sure it is a much better process than picking random people in the crowd and hiring them, but at least they are happy about their choice.&lt;/p&gt;
&lt;p&gt;There are two parts in the recruiting process:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Finding qualified candidates&lt;/li&gt;
&lt;li&gt;Interviewing them&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Even though Linkedin is not going to help interviewing candidates it can make finding qualified candidates much easier. Today the process to find candidates is the following:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Create vague job offers that almost use the same terms as Google job offers.&lt;/li&gt;
&lt;li&gt;Publish it in your ATS&lt;/li&gt;
&lt;li&gt;Wait for unqualified candidates to apply to your offer (unless you are Google, Apple, Facebook, Uber or any other trendy company)&lt;/li&gt;
&lt;li&gt;In the meantime go on Linkedin, type a few keywords in the search bar, use a few criterias to get a list of candidates&lt;/li&gt;
&lt;li&gt;Browse the list of candidates and verify one by one if the candidate really match the keywords you typed&lt;/li&gt;
&lt;li&gt;Harass each candidates to get a call with him&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Why things need to be so complex when Linkedin knows if a user is available for a new position, knows how much money he needs, what are their skill, where he lives.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;How could Linkedin have not solved the "experience level" filters ? Have you ever used it ? It doesn't even somewhat work, it doesn't work at all. An actual intern can be tagged as an expert, and expert as an intern . Why can't I get a list of product managers with years of experience&lt;/li&gt;
&lt;li&gt;Why Linkedin doesn't help recruiters find candidates by position ? Why recruiters have to know that: front-end engineer, front engineer, UI engineer, react developer, front developer all mean the same thing ?&lt;/li&gt;
&lt;li&gt;Why Linkedin doesn't unify job position titles by company ? Software developers is the name in some companies, in others it is engineers, in others it is developers, in others it is consultants. Linkedin can figure all that, they have the data to do some clustering&lt;/li&gt;
&lt;li&gt;Why when searching for product managers, Linkedin also suggests you people who are "production managers" ?&lt;/li&gt;
&lt;li&gt;Why won't linkedin let recruiters search only people who have logged in on linkedin in the last 3 months and that are actually ok to be solicited ? yeah you can say you are open to work, but that's not the same thing, that's too tough.&lt;/li&gt;
&lt;li&gt;Why Linkedin don't unify the recruiting process ? Let users say whatever they want on their profile but put them in a unified bucket. Is that so hard to do for a billion company ? How many attributes are necessary to classify a sales guy for example ? His years of experience, has a sold service, saas, software, physical stuff ... , how much money he wants. That seems to be far from being an impossible thing.&lt;/li&gt;
&lt;li&gt;Why Linkedin doesn't help recruiters create useful job descriptions ?  Why do they let companies say things like :&lt;ul&gt;
&lt;li&gt;Excellent time-management skills and the ability to establish reasonable and attainable deadlines for resolution.&lt;/li&gt;
&lt;li&gt;Have a service-oriented mind, be analytical, and have strong problem-solving skills.&lt;/li&gt;
&lt;li&gt;Strong attention to detail and extremely well-organized.&lt;/li&gt;
&lt;li&gt;Positive can-do attitude &amp;amp; ability to work well with teams.&lt;/li&gt;
&lt;li&gt;Good at communicating complex ideas and reaching out to different points of view.
Which company is looking for people who are not positive ? Who are badly organized ? Who are bad at communicating ? Who is not analytical ? Who doesn't take attention to details ?
Don't you have more important things to say ? Things like: Work from the office mandatory, can explain his work to non technical people, likes interviewing other engineers...&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Linkedin knows really well the candidate and the companies, why don't they actually try to help them communicate ? This market is HUGE. There are billions of dollars of recruiting fees spent every month (150 bn a year in the US)
And they are the only one that can offer that, as you need the data on at least the company or the candidates to make a product about recruiting. If you want to help candidates find job offers, you need data on business, and only linkedin has them. For example the number of employees ONLY linkedin has this data (and crunchbase a bit). As for if you want to offer a product for business, then you need to have candidates. And once again only Linkedin has this data.&lt;/p&gt;
&lt;h2&gt;Finding customers&lt;/h2&gt;
&lt;p&gt;When I talk about customers, I only mean business customers. Finding consumers is a different thing that I'm not sure Linkedin can help at.&lt;/p&gt;
&lt;p&gt;So we are talking about B2B.
Here are the different ways to find customers:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Pay people to tell people they know to buy your offer. ex: Digital marketing, Partnership, Physical marketing, invite existing customers to restaurant, strategic hiring, ...&lt;/li&gt;
&lt;li&gt;Go to a place where people who work for the type of business you are interested in go. Talk to people, and pitch your offer. ex: Marketing events, Networking dinner, Conferences, ...&lt;/li&gt;
&lt;li&gt;Pay people to find and convince businesses to buy your offer. ex: salespeople&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Linkedin is today the place most sales and marketing people find contact. And that sucks. A LOT !&lt;/p&gt;
&lt;p&gt;Whether you are in 2. or 3. what you want from Linkedin is :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Let you choose the type of company you are interested in&lt;/li&gt;
&lt;li&gt;Find the employees responsible for the topic you are selling&lt;/li&gt;
&lt;li&gt;Give you their email address&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Today it is impossible to filter companies, you can search them by name but that's all. There is an 'industry' filter, but, lol, complete garbage. You can find by location and company size though, and that works, which is pretty remarkable to finally find something that works.&lt;/p&gt;
&lt;p&gt;And for finding employees it is pretty difficult for the same reason that searching for candidates doesn't work. With job position titles not being standardized you can't really search efficiently.&lt;/p&gt;
&lt;p&gt;But even so. Imagine you found one person that you think may be interested about your offer. How do you actually make sure that this person is interested ? For most businesses the answer is : I will design a loop of 5 emails talking about the topic that I'm trying to sell. And I will send you an email every 4 days until you actually accept or refuse. If at the end of the 5 mails you had no response, I will contact another person in your company and send them the same 5 mails, until someone answers me.&lt;/p&gt;
&lt;p&gt;For some of you that method can seem like harassment, and it is. But it is the only method available to find customers. Some are going to say that if people don't answer that's because they are not interested. Well it is impossible to say, sometimes people answer you after 5 emails and are actually pretty interested about what you are offering.&lt;/p&gt;
&lt;p&gt;In an ideal world we would have a marketplace of needs and offers. You could push an offer to people who are really in the target group and you could find offers matching your needs. And for that, the bigger the marketplace the better. I'm not going to describe how this should work, or how this could work. But it is obvious that Linkedin is uniquely positioned to create that kind of service.&lt;/p&gt;
&lt;p&gt;It is unfortunate that instead of that they are focusing on getting more businesses to pay to send InMail to unqualified users.&lt;/p&gt;
&lt;p&gt;The data of linkedin is a goldmine but today it rests unused so that users can annoy their network with stupid clickbaik posts&lt;/p&gt;</content><category term="Startup"></category></entry><entry><title>Product Management in Saas B2B Enterprise is easy</title><link href="https://blog.luap.info/product-management-in-saas-b2b-enterprise-is-easy.html" rel="alternate"></link><published>2021-01-21T12:00:00+01:00</published><updated>2021-01-21T12:00:00+01:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2021-01-21:/product-management-in-saas-b2b-enterprise-is-easy.html</id><summary type="html">&lt;p&gt;I've already described the differences between &lt;a href="https://blog.luap.info/why-most-saas-companies-cant-be-successful-with-both-enterprise-and-smb-customers.html"&gt;Saas B2B SMB and Saas B2B Enterprise&lt;/a&gt;. But to summarize, B2B Enterprise is when you customers buy you for your vision and your solutions and B2B SMB is when people buy you for your features. As a result B2B Enterprise is also usually when …&lt;/p&gt;</summary><content type="html">&lt;p&gt;I've already described the differences between &lt;a href="https://blog.luap.info/why-most-saas-companies-cant-be-successful-with-both-enterprise-and-smb-customers.html"&gt;Saas B2B SMB and Saas B2B Enterprise&lt;/a&gt;. But to summarize, B2B Enterprise is when you customers buy you for your vision and your solutions and B2B SMB is when people buy you for your features. As a result B2B Enterprise is also usually when your customers are big companies (more than 250 employees).&lt;/p&gt;
&lt;h2&gt;Nobody cares about the product in Enterprise&lt;/h2&gt;
&lt;p&gt;Because the only people who care about the product are not the people who buy or sell your product. This can be simplified as : No important person cares about your product. I'm not even sure that the product quality of a B2B Saas company has any influence on the company's business success.&lt;/p&gt;
&lt;p&gt;Let's first define a good product, a product of good quality. A good prodct is a product users are happy to use, it is heavily influenced by UI, UX and simplicity of doing common actions. If you want to understand if your product is good, talk to a new user, and ask him a feedback of your product, if he tells mostly things to improve, you have a bad product ! If most of your users are think the same, you have a bad product.&lt;/p&gt;
&lt;p&gt;Let's look at the product quality of big Saas Enterprise products:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Is Salesforce a good CRM  ?&lt;/li&gt;
&lt;li&gt;Is SAP a good ERP ?&lt;/li&gt;
&lt;li&gt;Is Team a good communication system ?&lt;/li&gt;
&lt;li&gt;Is any Oracle product a good product ?&lt;/li&gt;
&lt;li&gt;What about Workday, Atlassian, MongoDB, Alteryx ?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Most people who use those tools will tell you that the products are shit, while still being more or less satisfied with the overall functionalities it offers them.&lt;/p&gt;
&lt;p&gt;Of course not all products are like that, Zoom comes to my mind as a good product in the Saas b2b enterprise space. But if you look at the 50 most successful business Saas b2b enterprise software in the world, most of them will have a shitty product. There are several explanations of why it is like that:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;First, the bigger and the older a company is the worse the product is going to become, so of course the biggest companies have the shittiest product&lt;/li&gt;
&lt;li&gt;Second, people who buy the product, are not the ones who are using it, as a result product quality is never something they care&lt;/li&gt;
&lt;li&gt;Third, A good product is beneficial for referrals or inbound marketing, but most of B2B enterprise companies get their customers through outbound marketing&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Should that change ? I don't think so. At the end of the day if you are obsessed about product quality you should not try to work in B2B enterprise. Working time is limited and the more you work on the product quality the less you work on other more important topics.&lt;/p&gt;
&lt;h2&gt;How to be a successful product manager in Saas B2B Enterprise&lt;/h2&gt;
&lt;p&gt;Most PM, read &lt;a href="https://www.amazon.com/INSPIRED-Create-Tech-Products-Customers/dp/1119387507"&gt;Inspired&lt;/a&gt;, like the book and would like to work inside their Product organization the same way it is described in the book. But the book, and most product management articles you can read online, are focusing on creating great products, or products that customers love. But one thing you need to always have in mind when you are working for a business, is that the business is paying you because your work is going to bring them money. And in the case of Saas Enterprise, making great products is not what is going to bring money to your company.&lt;/p&gt;
&lt;p&gt;The result of that mindset is that you will see very often inside Saas B2B companies. Customer support, customer management and product management clashing with Sales and the execs about how the product is not what the end users want. There is this perpetual stupid loop of sales and execs saying, we dont care about those things because that is not what customers wants and the end users focused teams saying, but this is what end users are telling us on a daily basis. Both of those teams are right, they just don't talk about the same people.&lt;/p&gt;
&lt;p&gt;If at heart, being a product manager is creating products that customers love, then product management in Saas Enterprise is closer to &lt;em&gt;creating products which support the sales and customer team&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;If you look at your job from that angle, a lot of things change:&lt;/p&gt;
&lt;p&gt;Instead of focusing on your users only, you need to focus on two kinds of groups, users and your sales colleagues. Most of the PM toolkits still apply when listening to users. But to listen to sales people things are different. You need to small talk with them, you need to go into sales meetings, you need to understand the sales cycle, you need to understand the value proposition of your company, you need to be in contact with sales guys.&lt;/p&gt;
&lt;p&gt;First challenge : Every salesperson in the company is going to push you to build features that their prospects want. The sales team is not really a team, every member has its own objectives, and a small part of their salary comes from team objectives. So they are willing to 'fight' with each other to achieve their objectives.&lt;/p&gt;
&lt;p&gt;Second challenge: Sales people have no idea of what features their customers want. First because the customers themselves don't know what they want. Second, salespeople are trained to sell some kinds of products, and are not really good at guessing new ideas and finding what is important or not. They will most of the time repeat what a customer is saying, without even trying to understand what that means or if the customer really needs it.&lt;/p&gt;
&lt;p&gt;Third challenge: There is a ton of politics in sales. Execs directly step in into the sales cycle, promising things to customers. Some prospects are 'strategic', some prospects are more important than others ...&lt;/p&gt;
&lt;p&gt;So if I can give you a few advice:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Be friend with sales people, you are going to tell them 'No' a lot of time (if not all of the time), but their feedbacks is important, so try to be as much friend with them as possible&lt;/li&gt;
&lt;li&gt;Be friends with sales execs, involve them in your decisions, make them participate. They are not going to decide, but they will like being consulted, and will help you maintain a good relationships with them&lt;/li&gt;
&lt;li&gt;Stop complaining that your product is not the best for your users. Your customers are not your users, treat them well but keep in mind they are not the only ones you need to care about&lt;/li&gt;
&lt;li&gt;Always balance your decisions between what is great for your users and what is great for your sales colleagues. Are we spending enough time on things that help the business VS spending time on making users love the product ?&lt;/li&gt;
&lt;li&gt;Keep fighting to improve the product because at some point a too bad product is going to be very bad for your company. But don't make product quality the most important decision in your prioritization and day to day decisions&lt;/li&gt;
&lt;li&gt;Don't let the execs or salespeople or your manager make the decisions for you. Always stay in control. As soon as the execs are able to impose you their decisions, you lose all credibility as a product manager and you won't protect your developers, neither your users and it's going to be bad. You need to be able to say 'No' to your CEO, and you need to be able to tell him 'No' every day!&lt;/li&gt;
&lt;li&gt;Forget what you have read in Inspired, almost none of it will help you be good in Saas Enterprise. Always search what impact this new thing is going to have in the overall product. Don't promise anything. Either say 'No' or say 'Yes' but don't do it afterwards. As a result it is also much more complex to evaluate a PM in that type of company.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;You don't have any idea on how bad a product needs to be to really harm your business. It is almost as if the worst products make the best businesses.&lt;/p&gt;
&lt;p&gt;This post can look a bit negative but don't interpret that as a critic. Some PM will prefer working with AB Tests and KPIs and others will like of the environement of Saas Enterprise, I personally prefer the latter !&lt;/p&gt;
&lt;p&gt;If you have any question, send me an email. &lt;/p&gt;</content><category term="Product Management"></category></entry><entry><title>My bet: Why masks mandate are useless to control covid epidemic</title><link href="https://blog.luap.info/my-bet-why-masks-mandate-are-useless-to-control-covid-epidemic.html" rel="alternate"></link><published>2020-12-23T23:00:00+01:00</published><updated>2020-12-23T23:00:00+01:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2020-12-23:/my-bet-why-masks-mandate-are-useless-to-control-covid-epidemic.html</id><summary type="html">&lt;p&gt;I'm not an epidemiologist, I'm not a doctor, I'm not an expert, I'm no one. But it seems like after 10 months of covid, we still don't know what is the mean of transmission of covid, we don't know what measure works to control it, we don't know how to …&lt;/p&gt;</summary><content type="html">&lt;p&gt;I'm not an epidemiologist, I'm not a doctor, I'm not an expert, I'm no one. But it seems like after 10 months of covid, we still don't know what is the mean of transmission of covid, we don't know what measure works to control it, we don't know how to treat it.&lt;/p&gt;
&lt;p&gt;So I'm maybe not an expert, but experts are just not able either to give us anything right, so my words are are as much valuable as them, that is to say, randomly right and randomly wrong.&lt;/p&gt;
&lt;p&gt;The only thing that we can say is a success, is the vaccine, we have a vaccine that works and whithout risk (likely). Which is a huge achievement btw. If covid has taught us that science related health is probably complete failure and garbage, then we canalso see that if we give enough money to private companies they may be able to create a cure in no time for any kind of sickness. (I use the rule, if that worked for covid, that may work for anything, which is very likely a wrong rule, but well I don't care haha)&lt;/p&gt;
&lt;p&gt;Let's come back to our topic, are masks mandate useless to control the covid epidemy ? The answer is yes, without hesitation, as some countries which have made them mandatoraty did have a second wave and some which didnt make them mandatory were able to control the epidemy. But this is not the topic of the post, the post is here to explain why it doesnt work.&lt;/p&gt;
&lt;p&gt;Same, I'm not arguing whether masks can prevent to infect or to be infected, because the answer us : we still don't know how people get infected.&lt;/p&gt;
&lt;h2&gt;What is a mask mandate&lt;/h2&gt;
&lt;p&gt;A mask mandate is a law which say to people, you are forced to wear a mask in these places. It doesnt force people to wear a mask a certain way. It doesn't force people to keep a mask for maximum 4 hours. It doesn't force people to wear a FFP2 mask. It doesnt force people to keep their maskx when they talk to someone else. It just says, when you are in restaurant for example, you need to have a mask with you, and use it.&lt;/p&gt;
&lt;h2&gt;What are the possible ways of transmission of covid&lt;/h2&gt;
&lt;p&gt;They are three of them:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Through aerosol, which means, through small particulates that can be transmitted through the air over time and distance [Wikipedia]. So when someone breathe or talks, some very small particules comes out of his nose, mouth and can stay in the outside air. Some other person can then breath in those particules through the nose or the mouth&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Through respiratory droplet, small aqueous droplet produced by exhalation, consisting of saliva or mucus and other matter derived from respiratory tract surfaces [Wikipedia]. So basically it is the same as aerosol, but the particules are just bigger, and some of them are falling quickly of the floor instead of staying in the air&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Through contact, so you touch a part which is infected, or you touch someone who is infected and then you touch either your eyes, mouth or nose&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;How people use their mask ?&lt;/h2&gt;
&lt;p&gt;First, they use shitty mask, nobody is using FFP2 masks, and from what I understand it is difficult to ear those mask for a long time anyway. Maks creator says that if you want to protect yourself 100% from aerosol, you need to use a FFD2, all others mask types are not perfect to prevent the transmission. &lt;/p&gt;
&lt;p&gt;&lt;em&gt;So if you do NOT wear a FFP2 mask and the covid transmit through aerosol, then:&lt;/em&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;You wont protect yourself by wearing a mask, as you are breathing air from the outside which is contaminated and not filtered by the mask&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;You wont really protect others as some of the air you breath out, will go through the mask&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Let's forget about aerosol as, it is very clear that masks don't even work in this case&lt;/p&gt;
&lt;p&gt;Second, do people use their mask all the time even when it is mandatory ? No, and I've even seen a lot of people wearing a mask, and then removing it when they talk to someone. People spend their time putting and removing their mask whether or not they are talking to someone. And if droplet transmission is most at risk when you are talking to someone, then lets look at the people you are talking to:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Either close friend, familly in situations the mask mandate doesn't apply or anyway you will spend so much time with them that you won't wear a mask at all time&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Colleagues (but masks are not mandatory at work)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Some people, like a cashier some random people in the bus, a neighbourg, ..., it those cases, it seems to work well, except that most cashier have plexiglass screen which are working even better than masks&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Last, people spend their time touching their mask. And if the mean of transmission of covid is contact, then we can be sure that wearing a mask is going to increase this way of transmission, as the mask act as an accumulator of covid particules.&lt;/p&gt;
&lt;h2&gt;To sum up&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If transmission is aerosol, then masks usage will reduce the transmission of particules in the air&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If transmission is droplets, then the mask protect you when you are talking to someone else, (but mask mandates inconsciously push people to wear a mask all the time except when they talk to someone). So basically mask madates are equal to doing nothing&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If transmission is contact, then mask usage increase the transmission of covid&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Of course my post is not going to be linked in The New York times, they will prefer a peer reviewed study that shows that ideal usage of a FFP2 mask decrease the covid particules someone breath out into the air. I'm really baffled that after 10 month, no scientist, has put a covid positive person (with a mask, without a mask, with a FFP2) in a room during 12 hours with 4 non covid positive people and tests what works and what doesnt. We would understand the mean of transmission and end of endless debates of opinion of what is right and what is wrong.&lt;/p&gt;</content><category term="life"></category></entry><entry><title>What is, and what is not true feminism</title><link href="https://blog.luap.info/what-is-and-what-is-not-true-feminism.html" rel="alternate"></link><published>2020-11-17T23:00:00+01:00</published><updated>2020-11-17T23:00:00+01:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2020-11-17:/what-is-and-what-is-not-true-feminism.html</id><summary type="html">&lt;p&gt;The definition of feminism is sometimes &lt;em&gt;"The advocacy of women's rights on the basis of the equality of the sexes"&lt;/em&gt; or sometimes &lt;em&gt;"The theory of the political, economic, and social equality of the sexes"&lt;/em&gt;. Both definitions are not the same, but let's pick the second one.&lt;/p&gt;
&lt;p&gt;So basically we don't …&lt;/p&gt;</summary><content type="html">&lt;p&gt;The definition of feminism is sometimes &lt;em&gt;"The advocacy of women's rights on the basis of the equality of the sexes"&lt;/em&gt; or sometimes &lt;em&gt;"The theory of the political, economic, and social equality of the sexes"&lt;/em&gt;. Both definitions are not the same, but let's pick the second one.&lt;/p&gt;
&lt;p&gt;So basically we don't want women to be discriminated against men only because they are women. But we also don't want men to be discriminated against women only because they are men. But men have been educated to be strong, and don't complain, so nobody is going to argue for more equality for men, it is admitted that if they need equality they have to take it (end).&lt;/p&gt;
&lt;p&gt;Social phenomena are different depending on culture, so I will talk only about things in my country (France) but most of them also apply for most rich countries (Germany, UK, Sweden, Australia, US, ..)&lt;/p&gt;
&lt;p&gt;Let's make a few hypothesis regarding women (which for me are just reality, but let's be nice so that people who disagree are not offended):&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Women, biologically are in average physically weaker than men and are also in average less competitive (Not all men are stronger than women, not all men are more competitive than women and maybe culture has ALSO an influence on competitiveness levels)&lt;/li&gt;
&lt;li&gt;Women can be pregnant&lt;/li&gt;
&lt;li&gt;Culture's history and people's inconscious social models have expectations on how women should behave (This is also the case for male, for trans, for gay, for children, for anyone)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;First myth: Feminism is somewhat a fight of women against men&lt;/h2&gt;
&lt;p&gt;If we take a simple model and say that everyone is going to be in a relationship with someone at some point on his life, we can also say that if the relationship is not forced, and accepted by both parties, the two people in the relationship are very likely agreeing on what are their role in their own relationship. And that includes that both the male and the woman in each relationship have the SAME point of view regarding feminism. So I you think a man is not feminist then there is very HIGH chance his partner is not feminist either.&lt;/p&gt;
&lt;p&gt;If we exclude homosexual couples, then what we see is that there are in a country like France, probably &lt;em&gt;as much males than females who are not feminist&lt;/em&gt;. So there is no fight of women against men. But it is more, some people are feminist, and some are not. Nevertheless what is true, is that maybe strategically it is easier to first convince a woman to adhere to feminism and then let her convince her husband. I disagree with that but well anyone can have his own strategy.&lt;/p&gt;
&lt;h2&gt;Second myth: Women should be paid as much as men&lt;/h2&gt;
&lt;p&gt;Well in France, two people bringing the same value from their job have to be paid the same, not only the base salary but also the variable one. If this is not the case this is illegal. If you are a woman and are paid less than a man and you feel like you are bringing as much as him then talk about it to your manager and if he doesn't increase your salary, you can sue him, it is very likely that you will win. Personally in my working area (developers, product manager, designer) I have never seen a woman purposely be paid less than a man.&lt;/p&gt;
&lt;p&gt;But as salaries are still private things in today's society, if someone is a better negotiator than another it is likely that he will get a better salary. And yeah men are more competitive so that would make sense that their salary is greater than the one of the women. A business owner's goal is to hire someone for the least amount of money he is willing to accept. So if you want more equality in terms of salary at same business value added, just ask for more transparency of salaries.&lt;/p&gt;
&lt;p&gt;There is one last point that I haven't touched, that bad feminist particulary like, is that women are in average paid 30% less than men. Well if the data tells that it is true, I'm not going to complain about it.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;But men are (in average) more competitive than women, so it makes sense that in the highest paid positions, the ones with more responsibilities, more working hours, more data driven projects, more competitive we have more men than women.&lt;/li&gt;
&lt;li&gt;It is also true that in some people's mind, executive positions are more a men's job than a women's job, which also influences women on not trying to pursue this kind of careers and then decrease the number of women being in a high paid position.&lt;/li&gt;
&lt;li&gt;It is also true that there are much more men as a fireman, working in the army, working in construction, driving trucks and there are much more women than men, working as nurses, secretaries, cleaner, ... So if in average women and men are not working the same job, we can't expect their average salary to be the same&lt;/li&gt;
&lt;li&gt;It is also true that women can be pregnant and that being pregnant is a big problem when you have a job with responsibilities. As a result for an employer it is much riskier to hire a woman, who can have a child, than a man. Do we want to keep things like that ? Personally I don't think so, we should find a way so that mothers have a way to pursue the same careers as non-mother women. It is important to let any girl be able to be a mother if she wants to and preserve also her ability to have a great career if she wants to, but this is not something an employer can do alone. There needs to be state regulation to address this problem&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Third myth: Women can wear whatever they want&lt;/h2&gt;
&lt;p&gt;In today's society there are a lot of girls saying "I can wear what I want". Well no, you cannot. We live socially together in society and we follow rules so that there is no anarchy. You are a girl and you think you can wear a short which reveals your butt ? then you can't. The same way as men can't either. You want to walk topless in the street ? well you can't. The same way that men cannot. Do I agree with that ? Personally I don't care. People can go in the street naked I don't give any shit about it. But that's not what the laws of our country are saying. So regarding the law you can't wear anything you want. But this has nothing to do with feminism&lt;/p&gt;
&lt;p&gt;The second reason you shouldn't wear whatever you want is that you don't understand what wearing anything you want means. You have seen this sexualized model on ads and you want to get dressed the same way as her ? Then you become a sexualized object too. Having a cleavage because you liked the dress and you didn't really think about having your boobs out is feminism, wearing a tight dress because you feel hot, you feel sexy, you feel desirable, is the opposite of feminism. If you get dressed as a sexual object, then you stop being yourself and being a woman but you start being what the business industry wants you to be, a SEXUAL object. On Instagram for example, all those girls showing their butts, are not feminists, they want people to look at her and say "she is hot" (i.e tell me I'm a sexual object). Being a sexual object for a woman is the moment at which she loses being equal to a guy, because she basically markets herself as an object of men's sexuality.&lt;/p&gt;
&lt;p&gt;When you dress as a sexual object, you increase the feeling that women are just objects of men desires, when you draw a caricature of mahomet you attract more the interest of muslims. The more you present a sexual object to a guy the highest chance you will have to have a crazy man trying to force use the object. The more you attract muslims the highest chance you will have a crazy man trying to kill you. Does that excuse people who rape or who kill ? NOT AT ALL. The woman is not responsible, it is the society as a whole who is responsible. The big problem is that getting dressed hot is a spectrum, from not being hot to be extremely hot. And this spectrum is the same spectrum as getting dress whatever you want. So anyway the best solution is to not rape anyone, never ever, but for that we need stop having girls being presented by society as sexual objects&lt;/p&gt;
&lt;h2&gt;Feminism is also about having sex with more guys&lt;/h2&gt;
&lt;p&gt;Sex is probably the biggest topic of inequality betwen men and women. But surprisingly this is not something feminists usually talk about. In the non-recent past, when you were a women and you were having sex you were quite likely to get pregnant, so that may have contributed to the fact that women are trying to prevent themselve to having sex with many different people. But when we look at now ? Why would a woman stop herself from having sex with a lot of partners ? Well maybe social pressure. In this documentary &lt;a href="https://www.youtube.com/watch?v=AMa3HeY4egM"&gt;The science of lust&lt;/a&gt; they show that women unconsciously repress themself from feeling horny, this is called sexual repression. And even if some woule say that naturally women are less interested in having sex than guy I'm personally don't think it true. Nevertheless it is hard to imagine that spending your childhood seeing princesses refusing to be seduced have no effect on that. In all media content children can watch, and real life examples they will have from their mothers, you will almost never see an example of an easy girl, but you see will plenty of examples of girls preventing men to seduce them. On the opposite side of that, there is no social stigma associated with being an easy man. Even today we can rarely see any woman who is able to have sex with any guy she wants without being treated poorly and most of women are limiting (or lying on ) the number of partners they have sex with.  &lt;/p&gt;
&lt;p&gt;But why ? What is different in having sex than talking with a friend ? Let's forget everything and imagine you are on a planet, on this planet there are one woman and one man. Both of them like each other. If they have 30 minutes, to spend what the most enjoyable activity they can do during that time ? Well for plenty of people that would be having sex, but will they do it ? Well probably not, only because this is not something which is socially accepted. And especially on the girl side.&lt;/p&gt;
&lt;p&gt;This is a controversial subject, but I can't help to think that if a guy is not fulfilled sexually he will suffer from it. If the behavior of women make sex scarce for men, in average men will suffer from it. Yeah some people don't need sex, but most people need. When you have a group of people who suffer from something it is more likely to have extreme behavior from them, no ? As far a I know, people who are happy are not the one who manifest on the street. I can't believe that the lack of sex fulfillment is not a factor of rape, it can't be the only one, but it must be a factor.&lt;/p&gt;
&lt;h2&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;At the end of the day, &lt;a href="https://www.theatlantic.com/science/archive/2018/02/the-more-gender-equality-the-fewer-women-in-stem/553592/"&gt;the more a country is feminist, the less there are girls in engineering positions&lt;/a&gt;, because you know what ? All those stereotypes that women are nicer than men, they are more interesting in educating their children than men... They are maybe most of them true. And the more we are trying to artificially remove those differences the more women will actually try to look like the ideal woman we have in mind&lt;/p&gt;
&lt;p&gt;For sure it is hard to be a free woman, and for sure what society expect women to do is probably not exactly what these women want to do, but please for god sake, stop posting photo of your butt on Instagram ...(or do it if you want to find sexual partners)&lt;/p&gt;
&lt;p&gt;If you disagree with me, my email is open, tell me why. Always happy to progress&lt;/p&gt;</content><category term="Opinion"></category></entry><entry><title>The only way to be productive</title><link href="https://blog.luap.info/the-only-way-to-be-productive.html" rel="alternate"></link><published>2020-10-15T23:00:00+02:00</published><updated>2020-10-15T23:00:00+02:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2020-10-15:/the-only-way-to-be-productive.html</id><summary type="html">&lt;p&gt;&lt;em&gt;TLDR: Reading productivity books, articles will make you less productive&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;I want to take a little bit of freedom when defining the word &lt;em&gt;productivity&lt;/em&gt;. In self development I think people are talking about &lt;em&gt;how much is done&lt;/em&gt; when refering to &lt;em&gt;productivity&lt;/em&gt;. Which is different than &lt;em&gt;efficiency&lt;/em&gt; which is a a …&lt;/p&gt;</summary><content type="html">&lt;p&gt;&lt;em&gt;TLDR: Reading productivity books, articles will make you less productive&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;I want to take a little bit of freedom when defining the word &lt;em&gt;productivity&lt;/em&gt;. In self development I think people are talking about &lt;em&gt;how much is done&lt;/em&gt; when refering to &lt;em&gt;productivity&lt;/em&gt;. Which is different than &lt;em&gt;efficiency&lt;/em&gt; which is a a measure of a lot has been be done during a certain span of time.&lt;/p&gt;
&lt;p&gt;So if we want to make things simple:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Productivity: I do a lot&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Efficiency : I have done that task very quickly &lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Regarding productivity there are only two kinds of people:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Those who are productive&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Those who are not productive&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Yeah easy, If you do a lot then you are productive, if you don't you are not.&lt;/p&gt;
&lt;p&gt;This post is kind of a complaint of the &lt;em&gt;productivity porn movement&lt;/em&gt;: how to be become productive ? &lt;/p&gt;
&lt;p&gt;The answer couldn't be simpler: stop asking yourself the question and start doing. There is no such things as learning to be productive or spending time to improve your productivity knowledge. There is only one case in which reading a book about productivity is actually productive. It's when your objective is to actually read the book.&lt;/p&gt;
&lt;p&gt;Let me emphasize that and repeat again:&lt;/p&gt;
&lt;h2&gt;The only way to be more productive is to stop asking and start doing&lt;/h2&gt;
&lt;p&gt;All other things are bullshit.&lt;/p&gt;
&lt;p&gt;If you have applied this wonderful advice, you are now being productive 24h - sleeping time - shower time - eating time  hours per day or at least a number of hours you are satisfied with.&lt;/p&gt;
&lt;p&gt;The remaining question you could have is, how can I be efficient ?&lt;/p&gt;
&lt;p&gt;There are two parts to master to be efficient:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Do JUST one and ONLY one thing at a time&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Frequently ask yourself what you can change in order to do more&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;To me 1. is the main reason some people are being seen as productive people, when you take care of your child, you go grocery shopping, you wash clothes, you take 30min of makeup per day, you read a book before going to bed,... You have done so many small things that none of them are significant and as a result you have the feeling to have accomplished nothing. When you are 25, no child, you don't do social activities, and you work 35h per week: you have 5 hours of free time per day. And even if you use only 1h of that to create something, you will externally be seen as productive.&lt;/p&gt;
&lt;p&gt;So my last advice, is that if you really want to be productive and efficent, &lt;em&gt;just do less things and do them during more time&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;PS: This article is not about how to be motivated to do things&lt;/p&gt;</content><category term="life"></category></entry><entry><title>I built a lay-down desk</title><link href="https://blog.luap.info/i-built-a-lay-down-desk.html" rel="alternate"></link><published>2020-10-02T13:27:00+02:00</published><updated>2020-10-02T13:27:00+02:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2020-10-02:/i-built-a-lay-down-desk.html</id><summary type="html">&lt;p&gt;After spending part of the last 12 months &lt;a href="https://blog.luap.info/travelling-with-24-monitors.html"&gt;travelling in Europe&lt;/a&gt; I'm now settling down around Paris and I need to adapt my multi-screens setup.&lt;/p&gt;
&lt;p&gt;You probably have seen an ads for &lt;a href="https://altwork.com/"&gt;the altwork desk&lt;/a&gt; &lt;em&gt;a $7000 desk that let you work laying down&lt;/em&gt;. Spending a big part of my …&lt;/p&gt;</summary><content type="html">&lt;p&gt;After spending part of the last 12 months &lt;a href="https://blog.luap.info/travelling-with-24-monitors.html"&gt;travelling in Europe&lt;/a&gt; I'm now settling down around Paris and I need to adapt my multi-screens setup.&lt;/p&gt;
&lt;p&gt;You probably have seen an ads for &lt;a href="https://altwork.com/"&gt;the altwork desk&lt;/a&gt; &lt;em&gt;a $7000 desk that let you work laying down&lt;/em&gt;. Spending a big part of my day in front of a computer I want to have the most comfortable position as possible, but well $7000 + $1000 for the delivery seems so expensive. There is also &lt;a href="http://www.ergoquest.com/"&gt;this company&lt;/a&gt; but this is still about $4000 all included. Let's be creative and build it myself.&lt;/p&gt;
&lt;p&gt;Here is the result&lt;/p&gt;
&lt;p&gt;&lt;img alt="complete desk" src="https://blog.luap.info/static/desk/complete.jpg"&gt; &lt;/p&gt;
&lt;p&gt;The things I have to take into account are:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;I have three monitors&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;I have no diy tools&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;I want a laying down position&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;This should be easy to use&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;This should be light and not take too much space&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;I have only a bike to move the parts&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;I haven't found anyone who has done something similar and so don't really have examples&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;So instead of doing the waterfall way I decided to go the agile way and to not do any plans, I didn't know what to expect, so let's do it step by step and see how it goes&lt;/p&gt;
&lt;h2&gt;Take care of the chair&lt;/h2&gt;
&lt;p&gt;There are several options:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Built a chair from scratch including the 'mattress' part&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Use a reclined chair&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Adapt a chair&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The issue with the first option is that I will not be sure of the result, is it going to be comfortable ? How I'm going to wash the seat covers ? I have no idea of the things to take into account for building a comfortable chair.&lt;/p&gt;
&lt;p&gt;Reclined chairs are great but they are very heavy (except the garden ones but not very comfortable) and expensive. So again let's be creative, I got inspired by &lt;a href="https://www.ikeahackers.net/2017/04/poang-gravity-recliner.html"&gt;this&lt;/a&gt; and &lt;a href="https://www.ikeahackers.net/2020/04/remove-poang-arms.html"&gt;this&lt;/a&gt; ikea hacks which use a IKEA POANG chair and transform it into a reclined chair.&lt;/p&gt;
&lt;p&gt;Here is the result :&lt;/p&gt;
&lt;p&gt;&lt;img alt="ikea poang adaptation" src="https://blog.luap.info/static/desk/chair.jpg"&gt;&lt;/p&gt;
&lt;p&gt;The chair is 69 euro, I had to buy three cushions to extend it&lt;/p&gt;
&lt;p&gt;The most complex part was to do 7km with the chair on a bike. I do not recommend doing the same, particularly because I have done it on a rainy day but well a bit of challenge in my life is always welcome!&lt;/p&gt;
&lt;p&gt;&lt;img alt="ikea bike" src="https://blog.luap.info/static/desk/ikea_bike.jpg"&gt;&lt;/p&gt;
&lt;p&gt;Great, the chair is comfortable, let's do something for the desk part.&lt;/p&gt;
&lt;h2&gt;What structure for the desk&lt;/h2&gt;
&lt;p&gt;The biggest issue you are going to have with the lay down position, is that the desk is going to be on your legs and you cant 'enter' or 'leave' the desk if you can't move the desk. So you need the 'desk' part to be dynamic from the 'chair' part.&lt;/p&gt;
&lt;p&gt;I had two ideas for that, either the Altwork way, the structure goes above your head and can incline, or the the base is on the side and the desk can move somewhere (writing that, having the desk in front of me, I wonder if having the base where the foot are is not an even better solution ? Damn, too late). Having the base on the side seems better because it would be smaller and lighter and also you can balance the weight much better. But the structure also needs to be more rigid and I need to find a way to incline the desk, anyway I haven't found a way to do it :(, after a night of thinking I went the altwork way.&lt;/p&gt;
&lt;p&gt;There are two parts to design:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;The base + the incline system&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The desk + the screen supports&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;1. Base + incline system&lt;/h3&gt;
&lt;p&gt;The base is pretty standard, you need something strong enough so that it can suppot the whole thing. At that point I still didn't know the weight of the complete platform so I didn't know how strong it should be. After a few failing choices, I ended up with a main pole of 7cm x 7cm.&lt;/p&gt;
&lt;p&gt;Now the complex part, how to design the rotation part ? How heavy is going to be the rest of desk ? How much does the desk need to move so that I can 'enter' the desk ? So many questions I didnt have an answer for.&lt;/p&gt;
&lt;p&gt;So let's try something and see how it goes, I bought an &lt;a href="https://www.amazon.fr/gp/product/B00H8SZ87W"&gt;gaz actuator on Amazon&lt;/a&gt; which can support 70kg with a range of 31cm, it is built for cars and pretty cheap, 19euro. Actually 70kg is a lot. So at least I have a some freedom on the weight of the structure.&lt;/p&gt;
&lt;p&gt;I had two issues with the actuator:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;70kg IS A LOT, it is so much that when I was fixing it on the wood of the base, it was breaking the wood. The best would be to have an iron piece that I can fix to the wood but I didnt have the tools for that so I used stronger woods but this is still fragile. &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img alt="fixation verrin" src="https://blog.luap.info/static/desk/fixation_verrin.jpg"&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The desk follows a circular trajectory when you move it up and down. As a result the barycenter of the structure changes depending on the Y position of the 'desk part' and so there is more strength applied on the actuator when it is up than when it is down. So basically the desk will not stay by itself when in the up position.  I need to find a way to get the desk in the up position.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I'm not really proud of the way I've done it, but it somewhat works. I've built a piece of wood that inserts itself in the area between the two poles where the actuator is. There is a counterweight which drags the piece into the zone when in up position, and when I want to release it, I just need to pull on the rope. (I think I will replace the actuator with a real electric actuator when the current system breaks so that I can control the movement, it is about 120euro)&lt;/p&gt;
&lt;p&gt;&lt;img alt="system block" src="https://blog.luap.info/static/desk/blocking_system.jpg"&gt;&lt;/p&gt;
&lt;h3&gt;2. Desk + screens support&lt;/h3&gt;
&lt;p&gt;I bought a chipboard plate of 80cm x 120cm, and cut some space for my body&lt;/p&gt;
&lt;p&gt;&lt;img alt="plaque bois" src="https://blog.luap.info/static/desk/agglo.jpg"&gt; &lt;/p&gt;
&lt;p&gt;This is pretty solid, so I can directly screw this plate to the pole and we have a desk surface&lt;/p&gt;
&lt;p&gt;&lt;img alt="plaque bureau" src="https://blog.luap.info/static/desk/bureau_with_plaque.jpg"&gt;&lt;/p&gt;
&lt;p&gt;For holding the monitors I did something pretty basic, I created a box for each screen. Then comes the position of the screen, how to know the position of each screen ? I didnt know how to know it beforehand, so I just created dynamic arms and adjusted them while in front of the screens&lt;/p&gt;
&lt;p&gt;&lt;img alt="support monitor" src="https://blog.luap.info/static/desk/support_monitor.jpg"&gt;&lt;/p&gt;
&lt;h2&gt;Next steps&lt;/h2&gt;
&lt;p&gt;This is only a few days old so I can't really make a feedback but there are already a few things that I need to fix&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;I can't use a mouse anymore, as the mouse would fall down, I'm probably going to replace it by a trackball&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;I need to invest in an ergonomic keyboard to get really comfortable, probably going to buy the kenesis advantage 2, but this is expensive !&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Here is a video of the complete desk:&lt;/p&gt;
&lt;video  controls&gt;
  &lt;source src="https://blog.luap.info/static/desk/video.mp4" type="video/mp4"&gt;
&lt;/video&gt;

&lt;h2&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;When you want to build this kind of structure, I'm not sure you can plan everything beforehand, there are always things that will happen that you didn't expect, like when you code: if you want to modify the actuator when the 60kg setup is mounted how do you do ? (I have done it 6 times) When your base can't support the weight because it lacks one screw and you need to unmount everything what do you do ? ...&lt;/p&gt;
&lt;p&gt;I'm really annoyed by the actuator part, I hope I will find something more reliable&lt;/p&gt;
&lt;p&gt;Overall it cost me :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;45 euro for tools&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;130 euro for wood pieces, screws, joins, ...&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;110 euro for the IKEA chair + cushions&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;and I spent 26 hours working, excluding the transport and the time shopping for pieces&lt;/p&gt;
&lt;p&gt;Don't forget when you do woodworking to clean afterwards  :)&lt;/p&gt;
&lt;p&gt;&lt;img alt="dirty" src="https://blog.luap.info/static/desk/dirty_floor.jpg"&gt;&lt;/p&gt;
&lt;p&gt;If you have done something similar and know a few advice, please send me an email&lt;/p&gt;
&lt;p&gt;PS: If you wonder whether you can do that or not, everyone can do it, basic woodworking is not complex, you need to know how to cut wood, how to join wood, how to screw and a little bit of imagination, you dont even need a car to transport parts, I transported everything: pole of 2m40, big plate ... on a bike&lt;/p&gt;</content><category term="DIY"></category></entry><entry><title>Save money and uninstall Tinder</title><link href="https://blog.luap.info/save-money-and-uninstall-tinder.html" rel="alternate"></link><published>2020-09-23T23:00:00+02:00</published><updated>2020-09-23T23:00:00+02:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2020-09-23:/save-money-and-uninstall-tinder.html</id><summary type="html">&lt;p&gt;&lt;em&gt;TLDR: Tinder is a dating app with girls looking for followers on insta, super attractive guys looking for sex, and non-super attractive guys paying for swiping on hot models. The likely next evolution of Tinder is to make the chat a feature&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;I assume you already know what is Tinder …&lt;/p&gt;</summary><content type="html">&lt;p&gt;&lt;em&gt;TLDR: Tinder is a dating app with girls looking for followers on insta, super attractive guys looking for sex, and non-super attractive guys paying for swiping on hot models. The likely next evolution of Tinder is to make the chat a feature&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;I assume you already know what is Tinder, the most popular dating app in the world, it's super quick to install and to signup, you will match some people straight away, but something weird will happen after 3 days&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you are a guy you will not get any more matches&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you are a girl you will be overwhelmed by the number of guys who want to talk to you&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you are naive you will probably think that the guy is ugly and the girl is very attractive, well wrong, whatever your attractivity level you will endup in the situation above.&lt;/p&gt;
&lt;p&gt;Why ?&lt;/p&gt;
&lt;p&gt;Simple, Tinder is a business listed on the NASDAQ (&lt;a href="https://finance.yahoo.com/quote/MTCH/"&gt;ticket:MTCH&lt;/a&gt;) [1]. Its only goal is to make the most money. It doesn't care if you meet people or not as long as they make money. And yeah they make plenty of money, so it seems like a lot of people are paying for a premium account.&lt;/p&gt;
&lt;p&gt;Let's imagine you are the CEO of Tinder and your investors ask you to make money, what would you do ?&lt;/p&gt;
&lt;p&gt;You want people to subscribe to a premium account, will users do it, if they can get everything they can on the free version ? For sure no. So let's disadvantage free users, this is simple to do, let's not show their profile to anyone and constantly remind them that this is because they are not premium. But a few issues are going to arise:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Some guys will get upset to get zero match and uninstall the app&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Girls will get no match then they will quit and install another app&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;You will have a lot of churn&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Let's solve these issues:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;We are going to try something, we will try to hook guys to the app during a short period after they install. We are going to show their profile to a lot of girls so that they get a few matches and see that the app is working and enable them to talk with girls, in the same time we will show them tons of very very hot girls so that they get used to seeing better looking girls on Tinder than on real life. Guys will feel like they can date girls much better than the ones they are seeing at the bar. With that strategy more guys will convert to premium. But something else will happen, guys will get not so many matches, so instead of picking their likes, they will just like every girls possible, which is a pretty good thing.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Unfortunately for Tinder they have to find matches for girls because girls know they can find guys on any dating app that exists, that's a very bad news for you because you know if you could make a dating app with everyone paying but no one matching with each other, that would be pure dream. But no, girls need match for social validation, so we will just make them match with the hottest guys, that way they will think they can have any guys they want and will have to be picky about who to date and will never be satisfied, you know when you can have anything you want, you are never satisfied because there is always something missing. So as guys will match any girl this is very easy for us to make girls match with the hottest guys. That would be amazing to find ways to make girls pay, but this is probably an impossible goal!&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Well let's never talk about churn, have you ever seen the word churn in the &lt;a href="https://ir.mtch.com/news-and-events/quarterly-results/default.aspx"&gt;Match group investor documents &lt;/a&gt;? We will use that trick, let's also hide the number of average active user on the app, instead we are going to show the number of downloads of the app, this doesnt represent the number of user but this number will always be increasing (Facebook has about stable number of active users but is still the most downloaded app). And we are going to show the number of subscribers, the one who pay, who care about the others.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;A few others topic that we may want to tackle :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Girls will use Tinder to promote their insta, well that's a pretty good news, more hot girls and more girls who don't want to message guys&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Premium guys will still be upset to get only a few matches, then we are going to invent Boosts. They will pay to get their profile shown to more girls, that's more revenue and that's addictive that's good&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If we are so hostile to users, so many of them will go to other dating apps and at some point we will not have any user. But we own so many apps they will just end up on one of our other apps. But fuck you Bumble, why don't you want to &lt;a href="https://techcrunch.com/2017/08/23/match-group-tried-to-acquire-bumble-for-450-million/"&gt;sell for $450 million&lt;/a&gt; ? The other big dating app, Happn is doing the same strategy as us, so they are not a threat for now but look at all those tiny apps which get traction, don't worry we are checking on them, as soon as they get some relevant user base, we will acquire them, they will not have any choice but to accept because their only way to grow is to be free and if they dont have any revenu they need money ;)&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Do you think all that is fiction ? Well I do think this is not. Tinder is a cash cow, and a pretty big one ! &lt;/p&gt;
&lt;p&gt;If you are a guy and want to meet some girls, use &lt;del&gt;&lt;a href="https://bumble.com/"&gt;Bumble&lt;/a&gt; they are going to IPO in a year or so. So you still have a few months to enjoy their product. Then you will have to find another app :)&lt;/del&gt; (Edit : 18/12/20 time to leave Bumble too, they start doing tactics too, good luck)&lt;/p&gt;
&lt;p&gt;If you are a girl, you can use Tinder, but if you want to be successful you need to &lt;a href="https://blog.luap.info/how-to-be-successful-on-dating-apps-girls-version.html"&gt;have a strategy&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;[1] Tinder belongs to the Match group. The Match group owns several dating app, the most popular ones are Tinder, Match.com and OkCupid&lt;/p&gt;</content><category term="dating"></category></entry><entry><title>How to get over your ex, the rational way</title><link href="https://blog.luap.info/how-to-get-over-your-ex-the-rational-way.html" rel="alternate"></link><published>2020-09-14T12:00:00+02:00</published><updated>2020-09-14T12:00:00+02:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2020-09-14:/how-to-get-over-your-ex-the-rational-way.html</id><summary type="html">&lt;p&gt;&lt;em&gt;I'm not used to talk about topics which are highly present on the web, but I feel like I can offer an alternative approach on this one&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Do you know &lt;a href="https://apps.ankiweb.net/"&gt;Anki&lt;/a&gt; ? This is a software which has popularized the spaced repetition learning technique. The principle of this technique is that …&lt;/p&gt;</summary><content type="html">&lt;p&gt;&lt;em&gt;I'm not used to talk about topics which are highly present on the web, but I feel like I can offer an alternative approach on this one&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Do you know &lt;a href="https://apps.ankiweb.net/"&gt;Anki&lt;/a&gt; ? This is a software which has popularized the spaced repetition learning technique. The principle of this technique is that when you memorize something, you will forget it after &lt;em&gt;X days&lt;/em&gt; unless you memorize it again, and the second time you will remember it for &lt;em&gt;Y days&lt;/em&gt; with Y much greater than X. This is easy to understand, the more you think about something the longer you will remember it.&lt;/p&gt;
&lt;p&gt;Well the same thing happen when you want to get over your ex, you want (most of the time) to stop thinking about her/his (will use &lt;em&gt;his&lt;/em&gt; in the following). So to be able to do that you need to do two things :&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Take the decision that you want to get over him (usually the most difficult part)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Take actions to get over him&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;To do 2. you need to do 1. before. But the issue is that 1. is almost impossible to do rationnaly because anyone will try to balance what she has to gain and what she has to lost, and usually in the lossing part there is the fact that you will loose your ex, something that you don't want. So the best way to do 1. is to do it when you are not lucid. You can be drunk, it can be just after you learn something huge, it can be immediately after the breakup, but it will be always easier to be in that state of mind after these kind of events.&lt;/p&gt;
&lt;p&gt;Then when you are in that state, you will be able to take actions to get over him, here is the list of things that you absolutely have to do :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Tell him that this is really over for you, and you are going to block him on everything and that there is no future between you and him at all, you are not angry against him, you are just trying to remove him from your life&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Block him on all social media, as long as you follow him on social media the spaced repetition thing is going to prevent him to forget about him, social medial will remind you of his existence all the time &lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you have pictures of him, video, facts anything about him on your phone, I won't tell you to remove everything as this is very difficult to do, but gather all the pieces and put it on an external drive or a computer you dont use, put everything somewhere that is not easy for you to access. You will still have everything but you will forget about it&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you make all those steps you have make a huge step forward, if you have a little bit of ego you will prevent yourself to try to contact him again or try to get info about him because you commited yourself to not do it. But this won't fix everything. There are two other things that you need to do over time:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Talk or write about everything of your relation with him, do it accurately, and go deeply in your mind. Do it until you have nothing new to say, you can do it several times, but try to say everything that can be said about it. You need to purge your mind with things that you kept secret and you kept close to you. The more things you keep for yourself the more you will get flashes of those subjects and therefore, him. Write down all the bad things of your relationship, put everything on a paper, there are several billions of people on the planet if you found a person like that, there are for sure many others who are better...&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Built new habits. This person was part of your life, a part of your days was dedicated to him, you need to fill this time with something else. If you used to get coffee with him everyday at 11pm, then try to do something new every day around the same time. The more free time you have that are associated with time you were doing things together the more your memory will remind you him. You were going to the same park every saterday with him ? go to another park every saturday or go for a hike somewhere else. There are things you can't trick, if you had a cat with him, if you were planning to get married together,.. your memory will remind you all of that, that's normal, just think about it and then go to something else &lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The longer you have been happy with this person the longer the recovery is going to be. But if you follow the steps you should be on a fast track to forget about him&lt;/p&gt;</content><category term="dating"></category></entry><entry><title>France, UE, covid, democracry and the research of complete stupidity</title><link href="https://blog.luap.info/france-ue-covid-democracry-and-the-research-of-complete-stupidity.html" rel="alternate"></link><published>2020-08-21T12:00:00+02:00</published><updated>2020-08-21T12:00:00+02:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2020-08-21:/france-ue-covid-democracry-and-the-research-of-complete-stupidity.html</id><summary type="html">&lt;p&gt;Everything about France work system can be understood reading one sentence : In France it is legally impossible to fire an employee who doesn't want to leave. &lt;/p&gt;
&lt;p&gt;This is something I've never understood, how can we think that an employee possesses his job ? An employee is working for a salary and …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Everything about France work system can be understood reading one sentence : In France it is legally impossible to fire an employee who doesn't want to leave. &lt;/p&gt;
&lt;p&gt;This is something I've never understood, how can we think that an employee possesses his job ? An employee is working for a salary and benefits, that's all, the rest belongs to the company, which belongs to its investors.&lt;/p&gt;
&lt;p&gt;France is a touristic country which doesn't grow anymore. It is not doing worst than &lt;a href="https://data.worldbank.org/indicator/NY.GDP.PCAP.KD.ZG?end=2019&amp;amp;locations=FR-GB-DE-US&amp;amp;start=1961&amp;amp;view=chart"&gt;neighbour countries&lt;/a&gt; but this can't be an excuse. The youngest company of the CAC40 (40 biggest companies in france) was &lt;a href="https://twitter.com/paulg/status/650702144186662914?lang=en"&gt;founded in 1967&lt;/a&gt;. Building a company there is tough, there are a lot of taxes (paying an 1$ to an employee requires the company to pay one other dollar to the government). The work system is outdated, people can't be fired, the work legislation is more complex (3000 pages) than building a fusion reactor. Founders are limited and will either try to sell their company as soon as it is a bit successfull or move their headquarter in the US. The EU is not a unified market, every country has its own legislation, culture, language, ... And at the end if you are successfull there will be millions of people try to explain to you that you should not be rich.&lt;/p&gt;
&lt;p&gt;But the problem is not only the system, the people are also the problem (the system is the people and the people are the system I know). France political system is an oligarchy hidden behind that everyone can vote. But a country can't be smarter than its own population. France as a country doesn't have any goal, people are living in the country complaining all the time about everything, there is no wish to progress or to help people, the only goal is to preserve its own privilege. Rich people make friends with politic people to preserve their advantages, poor people try to work less, profit from employment benefits and complain about everything else. People in the middle live together and use their money to balance the failing of the {school,retiring} systems. As a result the whole system is stuck.&lt;/p&gt;
&lt;p&gt;Our school system is shit, it is designed for already priviledged students to be successfull and for poor people to fail. Because, of course it is easier to educate already educated people and tell to others that it is their fault if they do not succeed.  Our retiring system is complete garbage, nobody understand how 25M people working can pay for 14M people not working, and for french people it is normal to retire at 62 years old, this is normal because it has always been like that, so why change ? But thanks to debt our country is not fucked. It is always easier to borrow money than to earn it so why bother ?&lt;/p&gt;
&lt;p&gt;Our 'democracies' are not working, you can't accept that all opinions are equals, you would not choose your CEO by making everyone in the company vote. The covid crisis is a good example showing that a democracy can't handle important crisi. Everyone has become an epidemiologist, anyone knows what is a good traitment, anyone knows how to protect himself, anyone is able to read a scientific study and make its own conclusion. The more follower you have the smarter epidemiologist you are. China suggested to do a lockdown, well lets do a lockdown, some tv host suggested that we wear mask ? Well lets wear mask. Masks doesn't prevent the virus to spread ? then lets make the mask mandatory, student are going to be in class touching each other, exchanging pens and papers ? well let's take the most stupid decision ever and madate them to wear a mask? When everyone has an opinion and this opinion has to be taken seriously the opinion of no one has any value. Democracy seems to be the worst politic system when you want to achieve best performance.&lt;/p&gt;
&lt;p&gt;We are trying to reach the maximum level of stupidity and everybody seems to be fine with it.&lt;/p&gt;
&lt;h2&gt;How to fix that ?&lt;/h2&gt;
&lt;p&gt;On the short term this is impossible, you can't change the mentality of people in the short term, you can't educate greater than 25 years old people, you can't change the work system in a few years. The only thing that can save us is education. Educate your children, force them to go to school to do their homework, tell them that they will be able to become software engineers if they study and start working with a better salary than 90% of the population. Vote for people who care about education, and vote for people who will try to improve education of unpriviledege people, the smarter 'the most stupid' people are, the smarter the country is going to be. Don't vote for a president, this is useless, they are all the same and complete garbage, the system is not designed for a competent person to be elected. Fortunately climate change is coming and is going to kill most of the population, that way the few people who will be there (if any ) to rebuilt the world will be able to make better foundations. If you want to live a pleasant life, ignore the rules, the laws, the governements and focus on doing good around you, educate your children, help the cleaning lady, dont give your money to your children when you die, give it to charity, dont take any time caring about politics dont go voting for someone linked to a party, vote for motivated people who wants to make things change.... Try to think with your brain and stop listening to what media tell you&lt;/p&gt;
&lt;p&gt;Not everything is bad, look at the US and appreciate how lucky we are&lt;/p&gt;</content><category term="life"></category></entry><entry><title>Planning for my kidnapping</title><link href="https://blog.luap.info/planning-for-my-kidnapping.html" rel="alternate"></link><published>2020-08-03T13:27:00+02:00</published><updated>2020-08-03T13:27:00+02:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2020-08-03:/planning-for-my-kidnapping.html</id><summary type="html">&lt;p&gt;Imagine tomorrow you go shopping and, for whatever reason, you never come back. Maybe be someone killed you, maybe someone kidnapped you, maybe you had an accident ... Now imagine you are travelling alone in Thailand and you die. How people who know you are going to find out what happen …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Imagine tomorrow you go shopping and, for whatever reason, you never come back. Maybe be someone killed you, maybe someone kidnapped you, maybe you had an accident ... Now imagine you are travelling alone in Thailand and you die. How people who know you are going to find out what happen ? if you are being kidnaped how the police will do to find you, if you got lost how people will find you ? If you die how your family is going to find your papers ?&lt;/p&gt;
&lt;p&gt;I wanted to find a way to answer all those questions, basically we can sum up the issues in 3 points :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;In case of being kidnaped or getting lost send as much information on your last location, and following locations, your last activity, all your digital information to someone who is going to help liberating you&lt;/li&gt;
&lt;li&gt;In case of dying, sending all your documents (passwords, friends list, legal documents, ...) to your family&lt;/li&gt;
&lt;li&gt;Not sending those documents by mistakes if you are not on the situations above&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;First step : collect your position, your activity, your documents, ...&lt;/h2&gt;
&lt;p&gt;The first step is to be sure that you have the data that you want to send, on my part, the data are:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;My current position and recent history&lt;/li&gt;
&lt;li&gt;My last know activity and a recent history&lt;/li&gt;
&lt;li&gt;The list of my credentials&lt;/li&gt;
&lt;li&gt;The list of my legal documents (id, passport, health insurance, work papers, ...)&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;I've written an &lt;a href="https://blog.luap.info/how-i-track-my-life.html"&gt;article&lt;/a&gt; explaining how I'm doing 1. and 2. (position in real time, and last activity), so this is fixed.&lt;/p&gt;
&lt;p&gt;For my credentials, I use &lt;a href="https://keepassxc.org/"&gt;keepassXC&lt;/a&gt; with a keyfile + a master password, the keyfile and the password db is synced using &lt;a href="https://syncthing.net/"&gt;syncthingd&lt;/a&gt; with a server that I rent&lt;/p&gt;
&lt;p&gt;My legal documents are all tied in one folder on my laptop which is also synced on the same server&lt;/p&gt;
&lt;p&gt;So basically we have all the needed documents which are synced in real time on the same server&lt;/p&gt;
&lt;h2&gt;Second step : Choose how to trigger the sharing of documents&lt;/h2&gt;
&lt;p&gt;The biggest problem is you want the alert to react quickly but not fire because you have been sleeping for 8 hours. So I chose to rely on the time since I last changed of activity. Currently after 24h without changing activity a first notification is sent to my own email so that if this is a mistake I can stop the system before it is too late. And if 6 hours later I've still haven't changed of activity then a mail is sent to my parents.&lt;/p&gt;
&lt;p&gt;So basically if something happens to me my parents will be notified maximum 30h after the event, this is not so great but this is a good beginning. In the future I should try to have an adaptive delay depending on the last activity, for example if my last activity is eating, then I won't eat for 24 hours, so I can trigger the alert after for example 4 hours.&lt;/p&gt;
&lt;h2&gt;Last step : What to put inside the notification&lt;/h2&gt;
&lt;p&gt;So my parents will receive an email after 30 hours of inactivity. In this email there is a link to a page which will allow them to retrieve all the documents.
&lt;img alt="email" src="https://blog.luap.info/static/kidnap/email.png"&gt;&lt;/p&gt;
&lt;p&gt;The link is random generated link available only 6 hours, this is important to be safe as you don't want anyone to be able to access all your passwords ...&lt;/p&gt;
&lt;p&gt;And the page, there are explanations of that page is about, like, "maybe I was kidnaped, maybe I'm lost, check my last time active on whatsapp, contact xxxx to see if he knows anything"
You can also view the current position of my phone and a small location history, that way you can see if I'm still moving, or if the last point if 30 hours old, you can also see my last activity and when it started&lt;/p&gt;
&lt;p&gt;And finally you can get the list of all my passwords, for that purpose I created a form, with 6 facts on my life, that only my parents can know all of them, like what was the color of my first car ..., then there you can submit your answer, there is a rate limit on the number of requests you can make to prevent a brute force. If the 6 answers are true, the backend will decode the keepassxc archive and return a json of the archive, containing all of my credentials, including the ssh password to connect on the server to get all the paper documents.&lt;/p&gt;
&lt;h2&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;I know that all of that is far from being perfect. I check every few months that the alerting is working, by decreasing the delay to trigger the alert, but the server can go down, ton of things can happen to make the system not working, so that's why I tried to keep everything as simple as possible, postgresql + django + cron. Someone should create a service to manage that at a bigger scale, or maybe that's something that 1password or others could include in their offer&lt;/p&gt;</content><category term="life"></category></entry><entry><title>How to get your first Enterprise customer as a Saas SMB company</title><link href="https://blog.luap.info/how-to-get-your-first-enterprise-customer-as-a-saas-smb-company.html" rel="alternate"></link><published>2020-07-10T12:00:00+02:00</published><updated>2020-07-10T12:00:00+02:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2020-07-10:/how-to-get-your-first-enterprise-customer-as-a-saas-smb-company.html</id><summary type="html">&lt;p&gt;You have read my article on &lt;a href="https://blog.luap.info/why-most-saas-companies-cant-be-successful-with-both-enterprise-and-smb-customers.html"&gt;the differences between Saas enterprise and Saas SMB&lt;/a&gt; you are currently selling to SMB and are wondering how you can get your first Enterprise customer, I will try to help you do so.&lt;/p&gt;
&lt;p&gt;If you have read my article carefully you know that what …&lt;/p&gt;</summary><content type="html">&lt;p&gt;You have read my article on &lt;a href="https://blog.luap.info/why-most-saas-companies-cant-be-successful-with-both-enterprise-and-smb-customers.html"&gt;the differences between Saas enterprise and Saas SMB&lt;/a&gt; you are currently selling to SMB and are wondering how you can get your first Enterprise customer, I will try to help you do so.&lt;/p&gt;
&lt;p&gt;If you have read my article carefully you know that what you are trying to do is hard in the long run, sustain both kind of customers (SMB and Enterprise) in the long term requires a lot of agility and excellence in all departments of your company&lt;/p&gt;
&lt;h2&gt;Understand that selling to this new type of customer is completely different&lt;/h2&gt;
&lt;p&gt;You are used to communicate with your customers through SEO and digital marketing, none of that works with Enterprise customer, they care about being able to talk with someone. Someone who understands their problem, someone who listen to them more than solve their issue. In bigger company, the decision maker is not the one who is going to use your product, he doesn't need to know how the product work, the product features, the number of steps it takes to change an image,...&lt;/p&gt;
&lt;p&gt;They need to know, the ROI of your product and if they are aligned with your vision (sometime you also have some legal requirements or certification issue). None of the those 2 elements need to be true. The ROI can be wrong but the customer need to beleive it is true, the vision can hide a malfunctionning product. This is the sad trough of enterprise sales, your job is to present the topic in such way that the customer is wanting to hear about it. After they buy your product they will most of time stick with it for several years and will almost never ask you back about the features they talked to you about during the sales process. They are used to care more about the platform being able to scale with their volume, and their useless pixel perfect design, and other things which are not helpfull to achieve their objective. &lt;/p&gt;
&lt;p&gt;Big comapnies can't take risk, a legal risk can be the end of their business, a scallability issue could be a nightmare for their communication. Big companies move slowly, just the fact of changing of provider is a huge risk for them.&lt;/p&gt;
&lt;p&gt;Let me give you an example, imagine you are Facebook and you notice that your product (facebook.com) is less and less used by people and you understand that this is such way because people think the design is too old school, and young people don't indentify with it anymore because they prefer dynamic product like TikTok, what will you do  ? Will you try modify your design to be more dynamic ? Probably not, changing is probably more risky than keeping thing as it is, you have quarter forecast to make and doing such change will probably put you in the dark regarding your future. So you have two options to continue react:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;You change things slowly, you start with updating the design of messenger, it takes you 6 months, then you start changing the group product, and so on, the changes will take you years to achieve, and probably after a few years (before you complete the product revamp) the design will again not be matching user expectation&lt;/li&gt;
&lt;li&gt;You buy Tiktok or Instagram or Snapchat or ... and let them the autonomy to keep growing without interference&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;A small companies on the contrary has 3 customers, it doesnt really care if it has to lost them to migrate to a better product, this company is therefore more agile because it has also nothing to loose.&lt;/p&gt;
&lt;p&gt;Remove from your brain how you are used to sell to small businesses, enterprise requires a complete different approach. &lt;/p&gt;
&lt;h2&gt;Adapt your pitch&lt;/h2&gt;
&lt;p&gt;If there is only one thing that you need to adapt it is what you are pitching to your prospect, you are probably used to talk about individual features, this is wrong to do in enterprise, this is the last thing you want to do. What you want to talk about it the vision, what is the vision of your products, what is the vision of your company, what is the vision of your customers. Enterprise customers are looking for long term reliable partner, they want to feel that you understand their problem and that you are long term engaged to help them.&lt;/p&gt;
&lt;p&gt;So first, talk about your vision, if the prospect is talking to you about a feature, answer quickly and redirect the discussion that saying that this is not the most important.&lt;/p&gt;
&lt;p&gt;Usually the sales cycle in enterprise is splitted in 3 phases:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;First phase, qualification of the prospect : does the prospect have the same vision as your company ? (usually a phone call)&lt;/li&gt;
&lt;li&gt;Second phase, understand the prospect issues: You need to talk to them to understand what are their issues, what they want to do, how they want to do, when they want to do it, .... The prospect needs to feel listened, they need to feel ok sharing with you their issues and wanting to collaborate with you, they should share with your their vision, understand your positioning and seeing that you are here to help them and you have time for them (a physical meeting, with usually a generic presentation from you, but this is just a support the meeting should be interactive)&lt;/li&gt;
&lt;li&gt;Third phase, the proposition : you explained to them what you have to offer them, that's also the good time (if necessary, a lot of enterprise softwares are sold without the prospect even seeing the product) to make a demo of few features that they would be able to use, the ROI of the product, the structure of your organization, the strutures of your futures exchanges ( for new features contact this email, for technical issue contact this other email, lets have a regular call every quarter,..., dont hesitate to promote, for example, a simple software engineer to Head of Tech virtually to just make your organization look more mature) and then the price of your solution&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;At no point of the process you should tell about your flaws, you can talk about your limits, but never acknowledge a flaw, because usually a flaw is not a really a flaw, it is more a limitation. You should be confident about what you are selling, the prospect is taking some time with you, so they are thinking you are a credible solution and you should act as one. Never forget that other competitors may have 10 times more customers and employees than you, the reality is that they are not agile anymore and their software is lagging probably a f ew years behind yours. Position yourselft as a leader of your sector and dont be demanding. if the prospect is asking something very different than what you are offering, it means that you did a bad job at phase 1 ans phase 2. You can adpat your vision, but don't change everything, keep your culture and authenticity&lt;/p&gt;
&lt;p&gt;To sum up :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Be confident you are a credible solution&lt;/li&gt;
&lt;li&gt;Don't talk about your product, instead talk about your vision&lt;/li&gt;
&lt;li&gt;Listen to the prospect and create a trustfull discussion&lt;/li&gt;
&lt;li&gt;Don't accept everything, stay as you are. The product is not going to change they need to adapt to you&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Accept the consequences&lt;/h2&gt;
&lt;p&gt;Going after enterprise customers is going to change many things in your organization, you will probably have more contact with them than you used to have with your old customers. They will not call you when they have an issue, you will have to call them to ask them if everything is going well instead. You will have to get used to talk about your vision with them, and expect them to answer slower to your requests.&lt;/p&gt;
&lt;p&gt;You will have to keep building on a strong personal relationship with them instead of just one centred on the product. This is not going to be easy, even for your small organization being able to make all those changes is going to take time, and sales processes with enterprise customers are always longer, it is not weird to have a sales process taking more than a year &lt;/p&gt;
&lt;p&gt;This article also applies to less Saas business, and any business in general even though you will need to adapt things to your industry. But the principles are going to be the same&lt;/p&gt;</content><category term="Startup"></category></entry><entry><title>How to make sure to fail your startup</title><link href="https://blog.luap.info/how-to-make-sure-to-fail-your-startup.html" rel="alternate"></link><published>2020-06-01T12:00:00+02:00</published><updated>2020-06-01T12:00:00+02:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2020-06-01:/how-to-make-sure-to-fail-your-startup.html</id><summary type="html">&lt;p&gt;&lt;em&gt;Ignorance&lt;/em&gt; is thinking that you know something that you don't know. My opinion is that being an ignorant is not really an advantage in most situations. And I bet that a lot of people who fail at building a company are like that. &lt;/p&gt;
&lt;p&gt;One issue with people who are ignorant …&lt;/p&gt;</summary><content type="html">&lt;p&gt;&lt;em&gt;Ignorance&lt;/em&gt; is thinking that you know something that you don't know. My opinion is that being an ignorant is not really an advantage in most situations. And I bet that a lot of people who fail at building a company are like that. &lt;/p&gt;
&lt;p&gt;One issue with people who are ignorant is that it is difficult to make them change, as they are sure the don't have any problem. This is a documented topic in psychology, you can read it more here : &lt;a href="https://en.wikipedia.org/wiki/Four_stages_of_competence"&gt;Four stages of competence&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;This is always difficult to make an article to tell people how to be successfull. Because for any tips that you may give, there are always people who will succeed by doing the opposite. People are very different and we have to accept it. Also being successfull is all about being yourself and being innovative, so really the kind of things which don't follow rules.&lt;/p&gt;
&lt;p&gt;So instead of telling you how to succeed I will try to explain you how to fail&lt;/p&gt;
&lt;h2&gt;Spend your time reading people explaining how to succeed&lt;/h2&gt;
&lt;p&gt;Subscribe to podcasts of people who are successfull, read books on people who have succeed and make a summary of the book, learn Steve Jobs quotes and read blog posts of people who have failed. If you spend a lot of time doing it, I can ensure you that you are taking the good path. &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The Steve Jobs quotes will help you explain to your friend why you are working on something that nobody cares about&lt;/li&gt;
&lt;li&gt;The books will help you following processes that doesn't suit you and will help you spending most of your time on things that are not relevant&lt;/li&gt;
&lt;li&gt;The podcasts will make your long days super short, listen to it at speed x1 and when you find a new podcast make sure to listen to at least 10 episodes, because every founders is different and you can't be good yourself if you don't know what all other people have experienced&lt;/li&gt;
&lt;li&gt;The blog posts will give you the ability to skip all the mistakes that other people have made and you will fail even faster than them&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Make a blog post explaining why you have 0 customers&lt;/h2&gt;
&lt;p&gt;This is often something I recommend, create a blog post, explain why you have 0 customers, and create a list of learnings for people who read you, that way they will be able to not make the same mistakes as you. Publish the post on HackerNews, people there like to defend the weak, so you will have a lot of people talking about your post, you will be happy. Some people will tell you that your startup is a bad idea, but don't listen to them, they are jealous that you have a lot of visibility and no customers. At the end  you will feel like you had a very productive day, and your article is very popular, you should spend more time on creating other articles. If you don't have any idea for your post, inspire yourself from this &lt;a href="https://news.ycombinator.com/item?id=23033448"&gt;good one&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Don't promote your product or not on the good communities&lt;/h2&gt;
&lt;p&gt;Good communities, are communities of people who never buy anything. For example people working in tech and introverts are very good at that, they are more rationnal people than average and they know that it is important to save their money and not buy useless things. So if you present your product to them, they will make a lot of comments, but don't worry none will buy it.&lt;/p&gt;
&lt;p&gt;But even better is to not promote your product. If you think your product is revolutionary, that's maybe because it is the case, and people will find it by themselves. That's especially true when you sell to B2B. Companies have plenty of time searching the web for the best tools.&lt;/p&gt;
&lt;h2&gt;Don't stick to an idea for more than 3 weeks&lt;/h2&gt;
&lt;p&gt;If after 3 weeks you have no customer, that's because this is a bad idea and nobody is interested. And if you didn't promote your product and after 1 week there is no customer, you can change. This is very important to pivot as fast as possible when you don't have customers, just try to market yourself differently or completely rebuild your product in Vue.js it will make it faster and it will be much easier in the future to hire developpers. &lt;/p&gt;
&lt;p&gt;Another possibitity is to make a survey about a few topics and ask your family what they think should be your next topic. You will have feedbacks from other people and you will have just to pick the highest ranked topic and start to build it.  After creating this product if nobody is willing to pay for it, at least you will be able to blame the people who answered the survey and make a blog post on 'why people don't really know what they need'&lt;/p&gt;
&lt;h2&gt;Choose a programming language and a market that you don't know&lt;/h2&gt;
&lt;p&gt;I've already talked a bit about it. But if you are very good in Python, you may consider something like Rust or Scala to build your product. People are much more interested in Rust than Python and this is blazing fast, you will have no issue hiring expensive 10x developpers. Also if you don't know the language, this is an opportunity to learn a new one. I'm pretty sure also that you are very good at multi-tasking, so you will be very efficent at learning and building at the same time. &lt;/p&gt;
&lt;p&gt;As for the market, if you have a lot of experience in ecommerce then pick something in the law business for example. After all this is not important to be an expert in the field to be successfull, people will adapt to your phylosophy and they will feel stupid not having thought to your ideas before.&lt;/p&gt;
&lt;h2&gt;Do everything on your own and don't ask for help&lt;/h2&gt;
&lt;p&gt;You and me, we know that other people are dumb and evil. If you explain them what you want to do, they will probably steal your idea and build it before you, after all the competitive advantage is the idea and the person who is starting first will make the most money. Don't go to startup events, you should spend the most time as possible in your room, and don't go to an incubator either. The less people are aware of your product the less likely you will get customers, it is also very important not to ask your potential customers of what they think. If you are not good at sales don't make more effort, or maybe invest some money on Google to rank first on some keywords.&lt;/p&gt;
&lt;p&gt;I hope that this post was helpfull to you. Don't forget to subscribe to my newsletter, Ben Thomson is making millions of dollars from his, why not me ?&lt;/p&gt;</content><category term="Startup"></category></entry><entry><title>Tips to optimize django SQL queries</title><link href="https://blog.luap.info/tips-to-optimize-django-sql-queries.html" rel="alternate"></link><published>2020-05-26T12:00:00+02:00</published><updated>2020-05-26T12:00:00+02:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2020-05-26:/tips-to-optimize-django-sql-queries.html</id><summary type="html">&lt;p&gt;When you first start with Django you will probably find the ORM to be an amazing feature. I agree with that, but the issue with ORMs is that it is too easy to forget that at the end the ORM generate SQL queries.&lt;/p&gt;
&lt;p&gt;Django has no way to optimize those …&lt;/p&gt;</summary><content type="html">&lt;p&gt;When you first start with Django you will probably find the ORM to be an amazing feature. I agree with that, but the issue with ORMs is that it is too easy to forget that at the end the ORM generate SQL queries.&lt;/p&gt;
&lt;p&gt;Django has no way to optimize those queries if the programmer doesn't tell Django what to do, here is the list of 'tips' I use to optimize those queries :&lt;/p&gt;
&lt;h2&gt;Activate SQL logging in the console&lt;/h2&gt;
&lt;p&gt;By doing so you can see all generated SQL, there are differnt ways of doing it, but here is my preferred approach :&lt;/p&gt;
&lt;p&gt;Put that in your setttings.py&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="n"&gt;LOGGING&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="s1"&gt;&amp;#39;version&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="s1"&gt;&amp;#39;disable_existing_loggers&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;False&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="s1"&gt;&amp;#39;handlers&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="s1"&gt;&amp;#39;console&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="s1"&gt;&amp;#39;class&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;logging.StreamHandler&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="p"&gt;},&lt;/span&gt;
    &lt;span class="p"&gt;},&lt;/span&gt;
    &lt;span class="s1"&gt;&amp;#39;loggers&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="s1"&gt;&amp;#39;django.db.backends&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="s1"&gt;&amp;#39;level&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;DEBUG&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="s1"&gt;&amp;#39;handlers&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;console&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;
        &lt;span class="p"&gt;},&lt;/span&gt;
      &lt;span class="s1"&gt;&amp;#39;django.db.template&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="s1"&gt;&amp;#39;level&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;DEBUG&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="s1"&gt;&amp;#39;handlers&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;console&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;
        &lt;span class="p"&gt;}&lt;/span&gt;

    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;   
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;That will log all SQL in the console in which manage.py runserver is started, you will also see the query generated by the admin&lt;/p&gt;
&lt;h2&gt;Use list()&lt;/h2&gt;
&lt;p&gt;When you make a query, the result is a Queryset and its a lazy evaluted list, which means that everything you access an element, a SQL request is made, even if you access several time the same first element of the queryset for example. &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;So if you are going to access all the elements of the returned query convert it to a list : &lt;code&gt;list(query_result)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;If you don't plan to access all the elements of the query, then you should filter more your query before converting it, don't forget that in most case it is much faster to apply the filterings in the SQL query than doing the filtering in Python&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Use &lt;code&gt;.select_related()&lt;/code&gt;&lt;/h2&gt;
&lt;p&gt;Django makes it very easy to access a linked model, for example if an &lt;code&gt;order&lt;/code&gt; object references a &lt;code&gt;customer1 object, you can do&lt;/code&gt;order.customer` but doing so will make 2 SQL queries, one for the order and the other for customer.&lt;/p&gt;
&lt;p&gt;Making on SQL request is most of the time faster, so when you fetch your order, you can add &lt;code&gt;.select_related&lt;/code&gt; =&amp;gt; &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="n"&gt;order&lt;/span&gt;  &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;Order&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;objects&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;select_related&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;customer&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;pk&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;h2&gt;Use '_id' for smaller results&lt;/h2&gt;
&lt;p&gt;When on &lt;code&gt;order&lt;/code&gt; object has a ForegeignKey &lt;code&gt;customer&lt;/code&gt; for example, in a lot of case, you don't want to access the &lt;code&gt;customer&lt;/code&gt; but only its id, so in that case, you can just do &lt;code&gt;customer.customer_id&lt;/code&gt; &lt;/p&gt;
&lt;h2&gt;Use &lt;code&gt;.values()&lt;/code&gt; or &lt;code&gt;.only()&lt;/code&gt;&lt;/h2&gt;
&lt;p&gt;When you want to access an object you most of the time don't need to have access to all the attributes, but only a list of them. In that case you can add to you query either &lt;code&gt;.values("attribute1","attribute2")&lt;/code&gt; or &lt;code&gt;.only("attribute1","attribute2")&lt;/code&gt;. &lt;/p&gt;
&lt;p&gt;&lt;code&gt;.only()&lt;/code&gt; will return a django object with only the attributes listed fetched from db (if you need other attributes, another SQL request will be made, so be carefull). And &lt;code&gt;.values()&lt;/code&gt; will create a dict, of the key,values of each object&lt;/p&gt;
&lt;h2&gt;Use &lt;code&gt;.values_list(,flat=True)&lt;/code&gt;&lt;/h2&gt;
&lt;p&gt;When you need to access only one attributes per object, for example when you list the list of all id of some objects, you can do &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nb"&gt;list&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;Customer&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;objects&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;all&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;values_list&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;id&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;flat&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="kc"&gt;True&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;and this will return a list of ids&lt;/p&gt;
&lt;h2&gt;Use a second db to manage your analytics query&lt;/h2&gt;
&lt;p&gt;If you don't want your master db to handle the load of analytics query, you can create a readonly replica of your master db. Define the new "replica" db in the DATABASES object of your settings.py and then for your analytics query you can do something like that:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="n"&gt;Orders&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;objects&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;using&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;replica&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;count&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;h2&gt;Use &lt;code&gt;.exists()&lt;/code&gt; when you want to know if an object exists&lt;/h2&gt;
&lt;p&gt;If  you want to know if an object exists, but don't intend to use this object, you can just query for existence by appending &lt;code&gt;.exists()&lt;/code&gt; at the end of the query&lt;/p&gt;
&lt;h2&gt;Don't use &lt;code&gt;.count()&lt;/code&gt; if you want to know if a result has more than x elements&lt;/h2&gt;
&lt;p&gt;Usually if you want to know if a query has more than x elements you will do something like that &lt;code&gt;Order.objects.all().count() &amp;gt;x&lt;/code&gt; this is not good, because you force the db to compute all elements, instead what you can do is :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nb"&gt;len&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;list&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;Order&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;objects&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;values_list&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;id&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;flat&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="kc"&gt;True&lt;/span&gt;&lt;span class="p"&gt;)[:&lt;/span&gt;&lt;span class="n"&gt;x&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;]))&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="n"&gt;x&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;That what you ask the db to find at max x+1 elements (non ordered) and you check if the query returns x+1 elements. In the case that the db has more than x+1 elements, you query will be faster in the case that it result is greater than x and a bit slower when it is smaller&lt;/p&gt;
&lt;h2&gt;Remove index from ForeignKey with small number distinct of values&lt;/h2&gt;
&lt;p&gt;Indexes works well when the number of possible value is as close as possible as the number of columns in the table. But for exampel when you have an Address model with a country ForeignKey, you have at max 200 countries, so the index is not going to be used but will need to be updated. So you better remove it, by doing that:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="n"&gt;Class&lt;/span&gt; &lt;span class="n"&gt;Address&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;models&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Model&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="n"&gt;country&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;models&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;ForeignKey&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;Country&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;db_index&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="kc"&gt;False&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="o"&gt;...&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;h2&gt;Use EXPLAIN ANALYZE&lt;/h2&gt;
&lt;p&gt;If you want to understand why a query performs badly you need to the see the query plan generated by the db, to get that, just open the dbshell and add EXPLAIN ANALYZE in front of your query:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;python manage.py dbshell
&amp;gt; EXPLAIN ANALYZE SELECT id, ...
&lt;/pre&gt;&lt;/div&gt;


&lt;h2&gt;Use &lt;code&gt;.save(update_field=[])&lt;/code&gt; to update only some attributes&lt;/h2&gt;
&lt;p&gt;Sometime you have modified only one of two elements of your object and want to save it, without triggering an update with the unchanged attributes, you can do &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="n"&gt;command&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;save&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;update_fields&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;price&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;quantity&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;h2&gt;Use &lt;code&gt;.update()&lt;/code&gt; to update several rows at once&lt;/h2&gt;
&lt;p&gt;When you want to update a set of object at once, instead of iterating and saving each object, you can use &lt;code&gt;.update()&lt;/code&gt; on the queryset  : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="n"&gt;Order&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;objects&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;all&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;update&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;price&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;1&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;h2&gt;Use &lt;code&gt;.values_list()&lt;/code&gt; with relations&lt;/h2&gt;
&lt;p&gt;Instead of using &lt;code&gt;.select_related()&lt;/code&gt; or &lt;code&gt;.prefetch_related()&lt;/code&gt; you can directly tell which relation you want in the result, for example&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="n"&gt;Order&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;objects&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;all&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;select_related&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;id&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;address__city&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;addresse__city__country&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;Will return the city, the country and the id of the order in one query&lt;/p&gt;
&lt;h2&gt;Use &lt;code&gt;F()&lt;/code&gt; to rename an attribute&lt;/h2&gt;
&lt;p&gt;Some time you want to rename db fieldname to a more customer friendly one, one way to do that, is to use the &lt;code&gt;F()&lt;/code&gt; function:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="kn"&gt;from&lt;/span&gt; &lt;span class="nn"&gt;django.db.models&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;F&lt;/span&gt;
&lt;span class="n"&gt;cc&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;Order&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;objects&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;all&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;annotate&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;order_reference&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;F&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;command_order_db_field_not_customerfriendly&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
&lt;span class="nb"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;cc&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;order_reference&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;h2&gt;Override &lt;code&gt;.get_queryset()&lt;/code&gt; in django admin&lt;/h2&gt;
&lt;p&gt;Wen you want to display related object information (or if the &lt;strong&gt;str&lt;/strong&gt; method uses related objects) in the django admin list, django will make n+1 queries, so you can override your ModelAdmin model and only 1 query will be made&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;WebsiteAdmin&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;admin&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;ModelAdmin&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;        
     &lt;span class="n"&gt;model&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;Website&lt;/span&gt;
     &lt;span class="n"&gt;list_display&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;__str__&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;nb_jobs&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;

     &lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;nb_jobs&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="bp"&gt;self&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;obj&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
         &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;obj&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;nb_jobs&lt;/span&gt;

     &lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;get_queryset&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="bp"&gt;self&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;request&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
        &lt;span class="n"&gt;queryset&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;super&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;WebsiteAdmin&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="bp"&gt;self&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;get_queryset&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;request&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
        &lt;span class="kn"&gt;from&lt;/span&gt; &lt;span class="nn"&gt;django.db.models&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;Count&lt;/span&gt;
        &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;queryset&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;annotate&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;nb_jobs&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;Count&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;jobs&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;h2&gt;Don't use &lt;code&gt;first()&lt;/code&gt; or &lt;code&gt;last()&lt;/code&gt; when you want to access any element of the query&lt;/h2&gt;
&lt;p&gt;Using &lt;code&gt;last()&lt;/code&gt; or &lt;code&gt;first()&lt;/code&gt; on a query will force an order by clause in SQL, instead if you want to get any element from the query do that:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;try&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="n"&gt;obj&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;Order&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;objects&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;filter&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;name__icontains&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;paul&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;)[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;span class="k"&gt;except&lt;/span&gt; &lt;span class="ne"&gt;IndexError&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="n"&gt;obj&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kc"&gt;None&lt;/span&gt;
&lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;obj&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="o"&gt;...&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;or&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="n"&gt;obj&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nb"&gt;list&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;Order&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;objects&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;filter&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;name__icontains&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;paul&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;)[:&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt;
&lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;obj&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="n"&gt;obj&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;obj&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
    &lt;span class="o"&gt;...&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;That will do a basic SELECT A from B where X limit 1 ; without order by, if someone has a simplest way to do that, send me an email I'm really interested&lt;/p&gt;</content><category term="Tech"></category></entry><entry><title>How I track my life</title><link href="https://blog.luap.info/how-i-track-my-life.html" rel="alternate"></link><published>2020-05-16T12:00:00+02:00</published><updated>2020-05-16T12:00:00+02:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2020-05-16:/how-i-track-my-life.html</id><summary type="html">&lt;p&gt;Have you ever wonder if your sleep time has been increasing over the years ? If you worked more than 40 hours this week ? How has your mood or your sleep quality decreased since 2 months ago ? Where were you on 27th April 2019 ? ...&lt;/p&gt;
&lt;p&gt;I ask myself those questions all the …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Have you ever wonder if your sleep time has been increasing over the years ? If you worked more than 40 hours this week ? How has your mood or your sleep quality decreased since 2 months ago ? Where were you on 27th April 2019 ? ...&lt;/p&gt;
&lt;p&gt;I ask myself those questions all the time. It is important for me to not answer these questions with feelings and to be accurate. This make me able to make data driven decision on my sleep for example, or be sure that I don't work more for my employers than it is necessary to completes my duties. I like to think my life as an efficient thing and to optimize how I use my time, therefore I track a lot of things of few things in my life:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Track how I spend my time (starting in Dec 2014)&lt;/li&gt;
&lt;li&gt;Track my position in real time (starting in Dec 2014)&lt;/li&gt;
&lt;li&gt;Track my mood (starting 15 May 2019)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Tracking my position&lt;/h2&gt;
&lt;p&gt;This is probably the easiest thing to track, you need a phone with a GPS chip on Android (You can probably do the same with an iPhone). So basically anyone with a phone can do it. I personally use &lt;a href="https://gpslogger.app/"&gt;GPS Logger&lt;/a&gt;, it is an open source app which lets you configure most settings of the tracking: the frequency, the accuracy, the format ... and offer several ways to backup the data. You can save the location of your local disk or send it over the network straight away. &lt;/p&gt;
&lt;p&gt;I use the &lt;code&gt;custom url&lt;/code&gt; feature, this way the app sends a GET request to the endpoint you indicated, with the lat,long,alt info and you can secure it with a shared token.&lt;/p&gt;
&lt;p&gt;I also save a location every 30 minutes, which is almost real time without draining too much battery. &lt;/p&gt;
&lt;p&gt;Finally, I built a small interface to see the locations I have been to:&lt;/p&gt;
&lt;p&gt;&lt;img alt="map of world" src="https://blog.luap.info/static/track-my-life/map-of-world.png"&gt;&lt;/p&gt;
&lt;p&gt;I have never had a use case so far on how to use this data, but it doesn't take me any time to track it so if one day I need it, I will be able to access it. I use it to inform my parents in case I'm unreachable though.&lt;/p&gt;
&lt;h2&gt;Tracking of my mood&lt;/h2&gt;
&lt;p&gt;I started tracking my mood recently, but I have been thinking about it for a long time. When I had bad days in my life and sleeping badly I wanted to understand if that was really an impression of the reality. I wanted also if being injured was having an impact on my wellbeing. So I tried looking for mood tracking app on Google Play store, and I didn't find any that suits my need. My asks were:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Auto sync the data on my server, &lt;/li&gt;
&lt;li&gt;Can customize the scale&lt;/li&gt;
&lt;li&gt;Can rate my end of day, and my sleep&lt;/li&gt;
&lt;li&gt;Can note other things every day (like if I'm injured and where, or a special event happend in my life)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;All the apps that I were seeing were full of ads and none let me export the data, so I use the most simple thing in the world : an Excel sheet.&lt;/p&gt;
&lt;p&gt;There is a shortcut to the sheet on my home screen and the sheet is structured that way :&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.luap.info/static/track-my-life/excel.jpeg" alt="Excel" style="max-width:500px;display:block;margin:auto"/&gt;&lt;/p&gt;
&lt;p&gt;The columns are :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Date &lt;/li&gt;
&lt;li&gt;Grade of the night on 10&lt;/li&gt;
&lt;li&gt;Comment of the night&lt;/li&gt;
&lt;li&gt;Grade of the day on 10&lt;/li&gt;
&lt;li&gt;Comment of the day&lt;/li&gt;
&lt;li&gt;My gym workout of the day&lt;/li&gt;
&lt;li&gt;The list of my current injuries&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Here is the grade scale I use:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;I'm at the hospital dying&lt;/li&gt;
&lt;li&gt;I don't see any interest in life&lt;/li&gt;
&lt;li&gt;I'm depressed&lt;/li&gt;
&lt;li&gt;I'm disapointed&lt;/li&gt;
&lt;li&gt;This was not a good day&lt;/li&gt;
&lt;li&gt;Normal day&lt;/li&gt;
&lt;li&gt;Good day&lt;/li&gt;
&lt;li&gt;Successful day&lt;/li&gt;
&lt;li&gt;Once in a lifetime event&lt;/li&gt;
&lt;li&gt;Impossible to reach&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;6 being the neutral point you can extrapolate what is means for the sleep quality.&lt;/p&gt;
&lt;p&gt;You need to be consistent on how you evaluate your day, so if you fix yourself a neutral point as I do this ensures you to never shift your evaluation.&lt;/p&gt;
&lt;p&gt;This sheet is backup every night using the Google API from a cron job, and the data is inserted in the same database than the locations points&lt;/p&gt;
&lt;p&gt;You can see the evolution of my mood on the last 12 months (Using &lt;a href="https://www.metabase.com/"&gt;Metabase&lt;/a&gt; on the db)&lt;/p&gt;
&lt;p&gt;&lt;img alt="Mood of day" src="https://blog.luap.info/static/track-my-life/mood_day.png"&gt;&lt;/p&gt;
&lt;h2&gt;Tracking of time/activities&lt;/h2&gt;
&lt;p&gt;I track all my activities of my life. I do it because I find it very valuable, but this is not something easy to do, thinking about updating your phone every time you change your activity is a habit that takes a lot of time to create. &lt;/p&gt;
&lt;p&gt;At first your mind is constantly saturated by the information that you need to think to update your phone. It was like that for a few weeks, after a few months this comes naturally but this is still not automatic. After 2 years (I have been doing it for 5 years), it was completely automatic, I still forget to do it sometimes though, but it doesn't stress me out.&lt;/p&gt;
&lt;p&gt;For tracking my time I use an app called &lt;a href="http://timetrack.io/"&gt;Timetrack&lt;/a&gt; the app is not free, but is developed by Sergei, and this guy is pure gold, he listens to feedback, fix all bugs, if you use the app, pay for the premium even though you don't need it because he deserves it. It is only 1$ per month (I'm NOT affiliated with him). The app was originally called aTimelogger, and this is the app which inspired most of the time tracking apps that you can use now. &lt;/p&gt;
&lt;p&gt;The app has several time tracking feature but I use only two of them:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The ability to start and stop an activity&lt;/li&gt;
&lt;li&gt;Generating on-demand reports&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Here is the main screen:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.luap.info/static/track-my-life/timetrack_main.jpeg" alt="Excel" style="max-width:500px;display:block;margin:auto"/&gt;&lt;/p&gt;
&lt;p&gt;At the top you have the current activity, you can stop it, and you can click on an icon below to start another activity.&lt;/p&gt;
&lt;p&gt;The first thing you have to do when you want to use this kind of app, is to decide which activity you want to track, and what level of accuracy you want to have.&lt;/p&gt;
&lt;p&gt;Personally I'm interested in tracking activities that may want the data, for example, How many do you sleep per night ? How many hours doing sports per week ? How many time do you spend working ? ...  but for example I'm not interested in the time I spend going to the toilets, how much time I spend on each website, how much do I spend walking when I go shopping. So the list of activities I track are :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Time sleeping (from putting my phone in flight mode to waking up, I would like to get time asleep)&lt;/li&gt;
&lt;li&gt;Time working for my main job (This is excluding lunch and commuting, so it starts when I let my bike in the bike parking, to when I go take something for lunch and restarts after lunch to when I start riding my bike back)&lt;/li&gt;
&lt;li&gt;Time working for my side projects, one activity per different side project&lt;/li&gt;
&lt;li&gt;Time spent on my computer not doing something listed here&lt;/li&gt;
&lt;li&gt;Time spent on my phone&lt;/li&gt;
&lt;li&gt;Time taking my shower&lt;/li&gt;
&lt;li&gt;Time eating (splitted if just eating or restaurant eating)&lt;/li&gt;
&lt;li&gt;Time doing sport (splitted by which sport I do)&lt;/li&gt;
&lt;li&gt;Time playing the piano&lt;/li&gt;
&lt;li&gt;Time spending in transportation (splitted by mean of transportation, car, walk, bike, bus, plane, ship)&lt;/li&gt;
&lt;li&gt;Time masturbating&lt;/li&gt;
&lt;li&gt;Time going shopping&lt;/li&gt;
&lt;li&gt;Time going to the supermarket&lt;/li&gt;
&lt;li&gt;Time having sex&lt;/li&gt;
&lt;li&gt;Time doing social activities&lt;/li&gt;
&lt;li&gt;Time doing to the doctor&lt;/li&gt;
&lt;li&gt;Time watching TV&lt;/li&gt;
&lt;li&gt;Time spending time with my girlfriend&lt;/li&gt;
&lt;li&gt;Time doing DIY stuff&lt;/li&gt;
&lt;li&gt;Time washing house&lt;/li&gt;
&lt;li&gt;Time reading&lt;/li&gt;
&lt;li&gt;If there is no category for what I'm doing there is an activity called "anything" for anything that I don't care tracking&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;So basically a day of my interaction with the app would be something like that : I wake up, I change sleep to eating, I finish eating, I change eating to walking, I finish walking, I change eating to being at the gym, I finish eating, I change being at the gym to shower, I finish shower, I change shower to walking, I finish walking, I change walking to biking, I arrive to work, I change to biking to working ....&lt;/p&gt;
&lt;p&gt;All the data I track is synced with my server in real time in the same db than the gps points and my mood.&lt;/p&gt;
&lt;p&gt;I use the data I get from my time tracking to do two kinds of things:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Check how much I have done x in a week, for example if on friday morning I have already done 35 hours this week, I will leave work early. If I feel like I have spent a lot of time in my phone recently and I will check the app and react accordingly. If I spent too much of my time eating I will try to arrange to spend less time ... (This is possible directly in the app)&lt;/li&gt;
&lt;li&gt;I analyze my time globally, for example if sleeping time has an influence on my mood, how have my sport habits have evolved, has masturbating an influence on my mood ( no influence ...), how much hours I have worked this year (I do that on metabase on my server). I'm sharing a few findings I got below.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;One big impact that this tracking has had on my life, is the decrease of procrastination. Let me give an example, when I was not tracking my time and was procrastinating, the effort to start an activity would be to stand up, go to my desk, start doing something, and sticking to it. Now I only need to start a new activity and then as I don't want to have inaccurate tracking data I'm somewhat forced to do the acitivity. You could think that this is a trick that won't work for you, but I would have never guessed it would have worked for me either ... Often when I think about stopping an activity, I'm like "Do I really want to change my activity and what else will I do ?" and often the answer is "Well ok let's continue". That doesn't stop all procrastination but that definitely helps a lot.&lt;/p&gt;
&lt;h2&gt;Technical details&lt;/h2&gt;
&lt;p&gt;For those interested, the server app is just a django app on postgres. And the data is backed up everynight on Backbaze. Don't forget to have backups even for your personal projects. This is almost nothing to do and you will be happy to have them the day you have a problem ;) &lt;/p&gt;
&lt;h2&gt;Findings&lt;/h2&gt;
&lt;p&gt;There is a correlation between the number of hours I sleep and my night mood:&lt;/p&gt;
&lt;p&gt;&lt;img alt="Night mood vs duration of night" src="https://blog.luap.info/static/track-my-life/sleep-mood.png"&gt;&lt;/p&gt;
&lt;p&gt;There is also a correlation betwen the number of hours I work per week at my main job and my happiness&lt;/p&gt;
&lt;p&gt;&lt;img alt="Number of hours of work vs happyness" src="https://blog.luap.info/static/track-my-life/work-happyness.png"&gt;&lt;/p&gt;
&lt;p&gt;I sleep about 8.7 hours per night, and this is about similar on the last 4 years&lt;/p&gt;
&lt;p&gt;&lt;img alt="Number of hours of sleep" src="https://blog.luap.info/static/track-my-life/sleep.png"&gt;&lt;/p&gt;
&lt;p&gt;I have stopped going to the gym 4 times (due to injuries ) during the last 5 years and had to restart from scratch and thanks to covid, there will be at least a 6th time ...&lt;/p&gt;
&lt;p&gt;&lt;img alt="week injured" src="https://blog.luap.info/static/track-my-life/gym.png"&gt;&lt;/p&gt;
&lt;h2&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;This is not for everyone, but I know some of you may want to have to access this kind of data. I've been thinking to rate my mood for years but didn't take action until recently, and now I regret it, because I will not be able to get that data back, and the worst thing is that it is a process that takes 30 second per days and will help you how to improve your wellbeing and your sleep quality. So if you think about that kind of things, don't wait, the tools exists, start doing it.&lt;/p&gt;</content><category term="Life"></category></entry><entry><title>The different career paths to become product manager</title><link href="https://blog.luap.info/the-different-career-paths-to-become-product-manager.html" rel="alternate"></link><published>2020-05-09T23:00:00+02:00</published><updated>2020-05-09T23:00:00+02:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2020-05-09:/the-different-career-paths-to-become-product-manager.html</id><summary type="html">&lt;p&gt;A lot of people ask themselves, how they can become a product manager. Most of articles who try to answer this question start by saying that there is no school to become a product manager, but is there one for salespeople, for developper, for entrepreuneurs ? No. So  the product manager …&lt;/p&gt;</summary><content type="html">&lt;p&gt;A lot of people ask themselves, how they can become a product manager. Most of articles who try to answer this question start by saying that there is no school to become a product manager, but is there one for salespeople, for developper, for entrepreuneurs ? No. So  the product manager job is not the super different job that these people want you to believe.&lt;/p&gt;
&lt;p&gt;As any other qualified job, if you want to get hired as product manager, you need to demonstrate during the hiring process that you are able to take the role.&lt;/p&gt;
&lt;p&gt;A product manager is in brief someone who is able to :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Detect and understand issues or opportunities&lt;/li&gt;
&lt;li&gt;Talk to people who are going to help him understand and progress on this topic&lt;/li&gt;
&lt;li&gt;Create a strategy and be a good communicator to demonstrate the importance of this topic&lt;/li&gt;
&lt;li&gt;Define objectives, and lead a team of people to solve these objectives&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Do you need to know how to code ? No but you need to be able to talk to a developper . Do you need to know how to do a business plan ? No but you need to know what is the financial impact of your project. Do you need to know how to design an interface ? No, but you need to be able to talk to a designer about design.&lt;/p&gt;
&lt;p&gt;There is no mandatory expert knowledge except being able to think. The most important part is that you need to know a little bit of everything of how a company works. But being good at something is not negative either, most product manager are very good at one topic, some will be past developpers, some past designers, some past data analyst, some past entrepreuneurs ... When someone is trying to hire a product manager they will wonder if this person is able to know a little bit of everything first, but when they have doubt about your potential they will remember your qualities 'Yeah but he understands very well dev' or 'She is super strong in design though'.&lt;/p&gt;
&lt;h2&gt;The different career paths&lt;/h2&gt;
&lt;h3&gt;Former dev/designer/data analyst/product marketing manager/project manager&lt;/h3&gt;
&lt;p&gt;This one is the one you will see recommended the most often, because a lot of people have been through that path. The path is the following, you get good at any of those job, so you end up being hired to do low level things in a company, you will start working in a product team, with developpers, designers, product managers, data analysts and you will build internal knowledge of the company. After you have shown that you are good at you own job, you can ask to take more product responsibilities inside your team (usually product manager are willing to give away they responsibilities to other team members to empower them and free more time to something else) and after about a year, if your company is looking for a new pm, you can apply and it is very likely that you will be chosen, because they already know you, they know you are smart, there is no risks for them. You can be upfront as soon as you are hired that your goal is to transition to PM, so that they can help you doing so.&lt;/p&gt;
&lt;h3&gt;Former entrepreuneur/side project builder/charity leader&lt;/h3&gt;
&lt;p&gt;There is this famous quote that the product manager is a "mini CEO", a lot of people argue that this is false, well those people don't know what is a CEO. A CEO is a not a guru or a dictator who decides everything in a company, a CEO is first a leader, has responsibilities and help the company going forward, exactly what a product manager do at his product level. Thats the reason why CEO/entrepreuneurs/charity leaders are very good at product management, their job is very similar to the product manager one, the difference that they usually don't know a lot about tech. &lt;/p&gt;
&lt;p&gt;So if you are one and you are interested about tech, then this will be easy for you to go through a product management interview process, do not think that because you don't have a product manager title on your resume people will not consider you, focus yourself on prooving on the points I described in the introduction&lt;/p&gt;
&lt;h3&gt;Former Consultant&lt;/h3&gt;
&lt;p&gt;When you are a consultant your job is similar in a lot of areas, you are very often working alone, but your job has an impact on a lot of people, and in several missions you need to interface with operational people which makes you very good at understanding politics and how companies are run, which is very often an area in which product managers lack skills&lt;/p&gt;
&lt;h3&gt;Product manager assistant internship&lt;/h3&gt;
&lt;p&gt;If you are still a student, starting directly by being a product manager is possible, there are more and more offers of internships for product manager, but the competition is big, so don't try to apply without studying what product managers do. The good thing about starting as an intern is that it will be very easy for your company to convert your intership into a full time position.&lt;/p&gt;
&lt;h2&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;Having the different career path is good but don't forget that you need to read content about product management, learn what is the developper/designer job, understand how a company is run, how to create a mobile app, understand a bit commong things in web apps ... You don't need to be expert about all this topics, but you need to know a little bit of all of them&lt;/p&gt;
&lt;p&gt;And don't forget that the best way to demonstrate a quality during an hiring process is to build yourself and show it. &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;If you are a former designer, learn python and create a simple app to store your mood of the day for  example&lt;/li&gt;
&lt;li&gt;If you are a former coder, create a website for your side project with a landind page and pricing page for example&lt;/li&gt;
&lt;li&gt;If you are a consultant, learn to code and build a simple app to gather your expenses for example&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;...&lt;/p&gt;
&lt;p&gt;Good luck&lt;/p&gt;</content><category term="Product management"></category></entry><entry><title>How to be a good product manager in a bad product company?</title><link href="https://blog.luap.info/how-to-be-a-good-product-manager-in-a-bad-product-company.html" rel="alternate"></link><published>2020-04-14T12:00:00+02:00</published><updated>2020-04-14T12:00:00+02:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2020-04-14:/how-to-be-a-good-product-manager-in-a-bad-product-company.html</id><summary type="html">&lt;p&gt;Some of you have may have worked in those kind of companies in which product people are not empowered (usually the rest of the company is also not empowered), in which the CEO is some sort of guru who micromanages everyone or the culture is very sales centric and sales …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Some of you have may have worked in those kind of companies in which product people are not empowered (usually the rest of the company is also not empowered), in which the CEO is some sort of guru who micromanages everyone or the culture is very sales centric and sales decide on when and how to build the product or the business model is very close to 'project get $$$' in which customers pay to get their idea built. These examples of companies are all examples of bad product company, it doesn't mean they are not able to get new customers or grow but they, most of the time, are behind customer expectations and struggle to innovate.&lt;/p&gt;
&lt;p&gt;Even in those companies you will find product managers, why ? for mainly two reasons:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Some investors or advisors told the CEO that if you he wants to innovate he needs to have product managers&lt;/li&gt;
&lt;li&gt;There is a misconception that good product managers are people who build things that customers wants (or say they want)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;But what is a good product manager ?&lt;/p&gt;
&lt;p&gt;Someone that is successful at building products (the s is important, you can't be successful every times) that &lt;a href="https://svpg.com/inspired-how-to-create-products-customers-love/"&gt;customers love&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;If you think this is easy to do, and the only thing to do is to listen to what customers want and build it, you will fail most of the time, because people are very bad at knowing what they want. This one of the role of the product manager, to fill the gap between what customers think they want and what they really need. A famous and eye-opening quote of Henry Ford on this topic is &lt;em&gt;If I had asked people what they wanted, they would have said faster horses.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;When you are a product manager you need to understand what customers need, how you can address it considering the business model of your company, if is this technically feasible in a short span of time, get it bought by executives, bring it live not too late after the day which was expected and at the end you need to get people to like using it. As you can see, it is only at the end of the whole process that you know if what your team built is a success or a failure.&lt;/p&gt;
&lt;p&gt;This is a very long process, with several challenges, and never one best solution, always complex and unpredictable choices, in which you take risks, one small mistakes and the whole product can be irrelevant.&lt;/p&gt;
&lt;p&gt;If you want your product managers to be good they need to be empowered, they need to feel they own the future of the product, they need to be responsible for the failure or the success, because if you do not, at every issue they will complain that it is not their fault (developer is not good enough, customers don't know what they want, people don't understand the UX,...), the best way to take the most of someone is to trust him, encourage him, and help him in difficult times. If you want to go deeper on this topic you can read &lt;a href="https://svpg.com/empowered-product-teams/"&gt;this article of Marty Cagan&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;But this article's title is 'How to be a good product manager in a bad product company'. In a bad product company you will not find empowered PM, so you need to find another way to create your products, the CEO will come to your desk every day asking "where is X feature ?", sales guys will tell you customer asked for one last change and so on ...&lt;/p&gt;
&lt;p&gt;Experienced people will tell you that in that atmosphere the right decision is to spend more time educating your stakeholders and explaining why your choice is the good one, but I'm somewhat against that, there is still this part of uncertainties, of guess, that you made that you won't be able to explain, and you will lose so much time trying to explain yourself. To me the only way to succeed in this kind of atmosphere is to ignore your stakeholders (and the risk here is to become a bad product manager in a bad product company), you have made your research, you know what customers told you, you know the business model of your company, you think you have the right idea in your hands, go for it, speak with your team, spend your time to have them with you ( and that's also why it is important to nurture good relationships with developers, in bad times they will trust you). If you know that doing half what you want and half what the CEO wants will results in a failure then don't listen to him. But to not do that with your 'feature' team, team members should trust each other and understand why we do things.&lt;/p&gt;
&lt;p&gt;From my experience there is only one quick way to get more trust from someone who doesn't trust you, is to get right when he is wrong. When you fight with a CEO for months and at the end you were the one being right (don't underestimate capacity of CEO to be wrong), that will drastically improve his opinion of you, you will never get 100% trusted by him, but you will be more free next time, and if you fail it will not change much compared to if you listened to him as he would have reject the fault on you anyway.&lt;/p&gt;
&lt;p&gt;Some people will argue saying it is the best way to get fired, I will say that this is not wrong, but if you think of work as a way to improve your knowledge and become better, which is better, risking being fired but having the possibility to create great products or staying but complaining that you are not free to make choices ?&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Risk is part of any innovation&lt;/em&gt;, as a product manager one of your role is to take and manage risks. I'm not encouraging you to refuse to talk to your stakeholders or be stubborn, there are subtle ways to ignore people.&lt;/p&gt;
&lt;p&gt;Take risks, and when you fail, accept it and try again better.&lt;/p&gt;
&lt;p&gt;You have that kind of issue and don't know how to solve it ? send me a email&lt;/p&gt;</content><category term="Product management"></category></entry><entry><title>Learn to code, where to start ?</title><link href="https://blog.luap.info/learn-to-code-where-to-start.html" rel="alternate"></link><published>2020-04-08T12:00:00+02:00</published><updated>2020-04-08T12:00:00+02:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2020-04-08:/learn-to-code-where-to-start.html</id><summary type="html">&lt;p&gt;You have seen that more and more companies are looking for developpers and developpers are able to create websites, applications, tools, automation softwares but you never understood how to do all that by yourself, or you maybe didnt have the motivation to start learning, this article is here to help …&lt;/p&gt;</summary><content type="html">&lt;p&gt;You have seen that more and more companies are looking for developpers and developpers are able to create websites, applications, tools, automation softwares but you never understood how to do all that by yourself, or you maybe didnt have the motivation to start learning, this article is here to help you understand what is achievable by a developper and how to start being one.&lt;/p&gt;
&lt;h2&gt;Some definitions&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;A &lt;em&gt;programming language&lt;/em&gt; is more or less a language that allows someone to talk to a computer, for example in this language you could have a word &lt;code&gt;print&lt;/code&gt; wich displays something on the screen, so when you write &lt;code&gt;print hello&lt;/code&gt; inside a &lt;em&gt;language interpreter&lt;/em&gt; the computer will show &lt;code&gt;hello&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;A &lt;em&gt;language interpreter&lt;/em&gt; is a program, as firefox, or chrome but instead of seeing webpages, you can type some text and the programm understand the programming language. For example the image below I typed &lt;code&gt;print("Display this message!!")&lt;/code&gt; and typed Enter and the programm displayed &lt;code&gt;Display this message!!&lt;/code&gt;
&lt;img alt="interpreter" src="https://blog.luap.info/static/learn-to-code/interpreter.png"&gt;&lt;/li&gt;
&lt;li&gt;A &lt;em&gt;programmer&lt;/em&gt; ( or a developper, or a coder or a software engineer) is someone who knows a programming language, some developpers will know how to create an app some will know how to create a website, it is not because you are a developper that you can code anything.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;When you want to become a developper or just want to learn how to code, there are more things to learn than a programming language, yes you need to know at least one programming language, but for example if you want to create a website you also need to know how to make the programm available to see to others (how your website can be available on www.yourname.com ?), if you want to create an app, you need to know how to publish your app the Android play store. I will explain bellow the steps to reproduce depending on what you want to create.&lt;/p&gt;
&lt;p&gt;Note : I recommand to start by learning how to create a basic website before anything else, so that you can start learning with something you can see. Also don't forget that trying to learn something is much easier if you apply what you learn, so think to an idea of website you would like to create before starting learning.&lt;/p&gt;
&lt;h2&gt;You want to create a website&lt;/h2&gt;
&lt;p&gt;If you want to create a website there are several languages to learn:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;HTML, This is a language that allows you to structure a website page, so which text you want to display, wich button, a link to another website, this is a very simple language&lt;/li&gt;
&lt;li&gt;CSS, this is a language that will allow you to style your website, do you want this button to be red? this text to be in italic? 30 pixels of blank between two buttons?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;As a simple example, if you copy the text below in a text file on your computer and you open it with google chrome it will display like the image below&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;html&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;body&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;div&amp;gt;&lt;/span&gt;Hello this is the first text&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;style=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;color:blue&amp;quot;&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;And this text is red&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;button&amp;gt;&lt;/span&gt;Click on me &lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;&lt;img alt="interpreter" src="https://blog.luap.info/static/learn-to-code/html-example.png"&gt;&lt;/p&gt;
&lt;p&gt;I'm not goint to teach you CSS or HTML, there are lot of tutorial on the internet and a lot of books that teach it, just google "learn html and CSS"  and you will find plenty of ressources, The most important is not to have the best tutorial but instead to dedicate some time everyday to it for a few weeks.&lt;/p&gt;
&lt;p&gt;When you will have created your website you will want to make it available to everyone to see on the internet, so you need to buy a &lt;em&gt;domain name&lt;/em&gt; for example "www.thisisthebestwebsite.com" for example you can go &lt;a href="https://www.ovh.com/order/domain/?domain_name=&amp;amp;form_id=domain_search_form#/legacy/domain/search"&gt;here&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Then you need to buy a hosting plan, usualy there is one free with the domain name, when you have it you have to send your HTML and CSS code on the hosting plan, and voila your website is reachable by anyone&lt;/p&gt;
&lt;h3&gt;If you want to make your website dynamic&lt;/h3&gt;
&lt;p&gt;With the languages we have above you can only create static pages with links, so no forms, no buttons, That would be enough to create news website for example, because the news website just show the same pages to all the users and it is like reading a paper newspaper on the internet. &lt;/p&gt;
&lt;p&gt;But if you want to have buttons or that your website reacts to events, like click or mouse move, for example if you want to build a game, then you need another language : Javascript&lt;/p&gt;
&lt;p&gt;Javascript is much more complex to learn than HTML and CSS, because this is a real programming language, you can code almost anything you want with javascript and this is the only language you can use to create a dynamic website, because this is the only 'real' languages that the browser (Chrome, firefox, safari) understands.&lt;/p&gt;
&lt;p&gt;So same as HTML and CSS, type 'learn javascript' on Google to find ressources&lt;/p&gt;
&lt;h3&gt;Your want a website which can save information&lt;/h3&gt;
&lt;p&gt;With javascript you can create a dynamic website, but you wont be able to save information, or exchange information with the website, for example you cant enable your user to register or to login. If you want people who go on your website to register or exchange information (for example let users upload a CV to you) you need to learn again a new languages, but for the first time, you have tons of programming language you can choose : Python, NodeJs, Ruby, Java, C++, Go .... almost any programming languages can be used here. This will be your Backend, and the javascript part of your code will be your frontend&lt;/p&gt;
&lt;p&gt;So which language to choose ? &lt;/p&gt;
&lt;p&gt;I suggest Python or Ruby, but it honestly doesn't really matter which one you pick, Python an Ruby are probably the most simple to use and when you use Python alongside Django or Ruby alongside Ruby on rails you will get a language that is adapted to web, but are still without any limit (Instagram was initially built in Python/Django, Airbnb was initially built on Ruby/Ruby on rails), if you have a friend knowing any them it is probably a good idea to pick the same one so that he can help you at some point.&lt;/p&gt;
&lt;p&gt;So choose one (personally I used python) and type on Google 'learn Django' if you picked Python and type 'learn ruby on rails' if you picked Ruby&lt;/p&gt;
&lt;p&gt;Now you will also have to learn the concept of a database, which is just a way to store data and retrieve it, like a dictionnary. &lt;/p&gt;
&lt;h2&gt;You want to create a mobile app&lt;/h2&gt;
&lt;p&gt;Creating a mobile app is at first much more complex than creating a static website, but after you have learnt it then it gets easy as anything else.&lt;/p&gt;
&lt;p&gt;There are 3 possibles types of mobile app:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;An app for Android only&lt;/li&gt;
&lt;li&gt;An app for IOS only&lt;/li&gt;
&lt;li&gt;An app for both Android and IOS&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;For each types the way of building the app is completely different. You probably ask yourself, why not everyone is creating an app for both IOS and Android, and the answer is simple, if you create an app that works for both then you will have a lot of limitations and performance drawbacks, as a result most of the company that you know that have an app, have two apps, Netflix has an app for IOS and another for Android, same for Facebook, same for most of big companies, and if you have an android phone and an iphone you can see that on both phones are the app look the same but they have some differences visually, because they are different. But the advantage of creating an app for both is that it is probably going to be easier and faster (than creating two), there will be some limitations and if you make the wrong choice you may have to recreate your app from scratch in a few months because your reached the limits.&lt;/p&gt;
&lt;p&gt;So if you want to create a simple app, like an note taking app, an alarm, then you can go with 3, but if you want to create a game or sync files (like dropbox) it is probably a good idea to create a different app for Android and IOS&lt;/p&gt;
&lt;p&gt;If you picked 3., then there a few different languages that you can use : React Native, Ionic, Flutter, Xamarin, Cordova , search on google the one that is most adapted to what you want to build&lt;/p&gt;
&lt;p&gt;If you picked 2., then there is only two ways, Swift or Objective-C&lt;/p&gt;
&lt;p&gt;If you picked 1., then the two most popular ways are : Kotlin or Java &lt;/p&gt;
&lt;h2&gt;You want to create a desktop app&lt;/h2&gt;
&lt;p&gt;This is probably the most complex thing to build, an example of desktop app is Microsoft Word, Photosphop, Notepad ++.&lt;/p&gt;
&lt;p&gt;There are so many ways to built them, and you can use so many language that is almost impossible to create an article to cover everything, but if this your first app you will probably have to use a graphical interface framework which is more important that the language itself, example of such framwork are : QT, GTK, Electron, Unity. Depending on what you choose your app may work only on Windows, or only on Mac or both of the them at the same time.&lt;/p&gt;</content><category term="Tech"></category></entry><entry><title>Why most Saas companies can't be successful with both enterprise and SMB customers ?</title><link href="https://blog.luap.info/why-most-saas-companies-cant-be-successful-with-both-enterprise-and-smb-customers.html" rel="alternate"></link><published>2020-03-21T12:00:00+01:00</published><updated>2020-03-21T12:00:00+01:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2020-03-21:/why-most-saas-companies-cant-be-successful-with-both-enterprise-and-smb-customers.html</id><summary type="html">&lt;p&gt;&lt;em&gt;The purpose of this article is not to explain you how to create a successfull company, there are already too much articles about that. Instead we are going to see why chosing the type of customers you want to sell to is a very important decision as it will have …&lt;/em&gt;&lt;/p&gt;</summary><content type="html">&lt;p&gt;&lt;em&gt;The purpose of this article is not to explain you how to create a successfull company, there are already too much articles about that. Instead we are going to see why chosing the type of customers you want to sell to is a very important decision as it will have a big impact on the structure of the company&lt;/em&gt;&lt;/p&gt;
&lt;h2&gt;What is Saas, SMB and Enterprise&lt;/h2&gt;
&lt;p&gt;SaaS (Software as a Service) is way to sell a software in which the customer doesn't need to host anything and intreractions with the the software are done through a customer dashboard or any kind of API. Most of the time this kind of sofware is sold with a recurring monthly or annual licence fee, wich is a good way for the company to have predictibility of revenue and for the customer the cost of the product is spread on time instead of having to pay a big fee at the beginning.  &lt;/p&gt;
&lt;p&gt;SMB (Small and Medium Business) means a company which is smalled than a certain number of employee/revenue, somewhat until 250 employees. In this article a SMB is a company in which one or two person are going to be involved in the sales cycle.&lt;/p&gt;
&lt;p&gt;Enterprise business is a very large company, usually more than 1000, but in this article this is going to be a company in which more than 5 people are going to be involved in the sales cycle.&lt;/p&gt;
&lt;p&gt;If you take the definition I've given you can note that some company can be SMB-like for some products ( a note taking app of a small team inside the company) and enterprise for other products (a CRM for the whole company)&lt;/p&gt;
&lt;p&gt;Examples of SMB and Enterprise companies : &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Messaging : &lt;a href="https://slack.com"&gt;Slack&lt;/a&gt; (SMB), &lt;a href="https://products.office.com/en-us/microsoft-teams/group-chat-software"&gt;Micorosft Team&lt;/a&gt; (Enterprise)&lt;/li&gt;
&lt;li&gt;File stockage : &lt;a href="https://www.dropbox.com/business"&gt;Dropbox&lt;/a&gt; SMB, &lt;a href="https://www.box.com/en-gb/home"&gt;Box&lt;/a&gt; Enterprise&lt;/li&gt;
&lt;li&gt;Email API : &lt;a href="https://www.mailgun.com/"&gt;MailGun&lt;/a&gt; SMB,   &lt;a href="https://www.sparkpost.com/"&gt;SparkPost&lt;/a&gt; Enterprise&lt;/li&gt;
&lt;li&gt;HR Tools: &lt;a href="https://www.bamboohr.com/"&gt;BambooHR&lt;/a&gt; SMB, &lt;a href="https://www.workday.com/en-us/homepage.html"&gt;Workday&lt;/a&gt; Enteprise&lt;/li&gt;
&lt;li&gt;Microsoft 365 : &lt;a href="https://www.microsoft.com/en-us/microsoft-365/business"&gt;Business version&lt;/a&gt; SMB, &lt;a href="https://www.microsoft.com/en-us/microsoft-365/enterprise"&gt;Enterprise version&lt;/a&gt; Enterprise&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;SMB customers of Saas products&lt;/h2&gt;
&lt;p&gt;Usually the way SMB customers look for a product can be summarized in two points:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;It should be the cheapest as possible&lt;/li&gt;
&lt;li&gt;It should deliver the functionalities needed&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Customers know what they are looking for, they usually want to fix one issue that they have experienced and they probably don't have a lot of budget. As a result you will see that most Saas companies that sell mainly to SMB (Mailchimp, Google, Slack, Twilio, ...) will have common characteristics:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Transparent pricing, offer a free plan and usually a cost calculator and has self service onboarding&lt;/li&gt;
&lt;li&gt;Very clear website with a list of all the functionalities of the product&lt;/li&gt;
&lt;li&gt;Most of the employees working in marketing, product and engineering&lt;/li&gt;
&lt;li&gt;High churn&lt;/li&gt;
&lt;li&gt;No engagement&lt;/li&gt;
&lt;li&gt;Product minded company&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The main challenge of a Saas companies focusing on SMB is efficiency, you need to be efficient to acquire your customers, they will (individually) not bring you a lot of money (low LTV) so they should take the less of your time as possible : No CSM, no Sales, extensive product documentation, automated marketing, mass feedback traitment. If you are not efficient you will never be profitable, if you are not able to show your ability to scale your processes it will be harder to raise more money.&lt;/p&gt;
&lt;p&gt;The second thing to tackle is to not let churn be too high, to decrease your churn you need both to keep your prices low and your customer happy about your product, so you have to be agile about your product (or don't have any competitors, as it is easy to onboard, it is also easy to change), if you don't take into account customer feedbacks, some customers will churn because there is one feature that they (think they) dream about that another player can offer them but you need to balance that need of new features with a high scalability so your platform needs to stay as much generic as possible. That's why product and engineering teams are very important&lt;/p&gt;
&lt;h2&gt;Enterprise customers of Saas products&lt;/h2&gt;
&lt;p&gt;The way enterprise customers look for a product is very different, they usually think long term, they know integrating with a new products takes times, sometimes several months, and every one in the company is figthing to get implementation ressources, they are often less agile and they usually get taught on how to use a new software and get quick support to solve their HUGE problems (which most of the time are not, but they want someone to talk to). So as result what they are interested into is :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Find a company with a similar long term vision as themselves&lt;/li&gt;
&lt;li&gt;A sales person to who they can explain their problem and have the insurance that even after the sales cycle someone will listen to them&lt;/li&gt;
&lt;li&gt;A product that somewhat answer their challenges but above all, they need to feel during the sales cycles that people are competent and will help them implementating market's best practices &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;They most of the time don't really know what they are looking for, but they know they have issues. Budget is something you talk about at the end of the sales cycle, because this is not so much the most important thing. And also take into account that it is frequent that the one who is going to invest on your product is not the same one who is going to use it. Thus a lot of enterprise oriented saas companies will have those characteristics:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Sales, CSM, and Marketing account for most of companies staff&lt;/li&gt;
&lt;li&gt;Product doesn't look good, is not easy to implement and not easy to use but can be customized very deeply&lt;/li&gt;
&lt;li&gt;Low churn&lt;/li&gt;
&lt;li&gt;Prices are not public and are often discounted depending on customers&lt;/li&gt;
&lt;li&gt;Long term engagement (1 year -10 years)&lt;/li&gt;
&lt;li&gt;Sales/Marketing minded organization&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The most painful things when you run an enterprise oriented company is the the duration of the sales cycle, it starts when you are doing marketing events in popular conferences of your market or by chasing some identified customers by your business development team, then a long process divided into different steps owned by a salesperson and finally after the signature the CSM/Implentation/teaching people will try to make the customer live as fast as possible, during this process you probably discover that one of the use case of the customer is not handled byt the platform so there is this influence game between the product team and the sales team to try to make it happen, as a result the product is often not generic and it is frequent that some features works only for some customers. This process with repeat itself when it is time to renew the customer.&lt;/p&gt;
&lt;h2&gt;Why selling successfully to both customer types is hard ?&lt;/h2&gt;
&lt;p&gt;Because you need to be good everywhere, your product team needs to create a product roadmap taking into account sales request but also take into account aggregated needs of smaller customers at any time. Your CSM team needs to know how to prioritze their time to only entreprise customer but still communicate to smaller customer, your support team needs to be able to handle different types of SLA depending of customer, your CEO needs to not micromanage anyone (which is very hard to find nowadays), your finance team needs to have automated billing in place but also being able to manually dun enterprise customers. Most of your teams needs to be good at both jobs, because if you are not, you will always find an average company that is able to be better than you in one of these areas. &lt;/p&gt;
&lt;p&gt;My advice is to not focus too much on it, if you feel like you are able to manage efficiently at the company level the two customer types then do it, but if you are already struggling a bit doing one, you will not succeed doing both.&lt;/p&gt;
&lt;p&gt;As a side note, I have met a lot of people that think that when an enterprise oriented company is facing efficiency issues it is a good idea to start selling more to SMB because that will force people to be more efficient, that's just plain wrong. If you have efficiency issues it is because of the way the company is organized and not who you are selling to, going that path will put the company in a risky position  &lt;/p&gt;</content><category term="Startup"></category></entry><entry><title>How to be successful on dating apps (Girls version)</title><link href="https://blog.luap.info/how-to-be-successful-on-dating-apps-girls-version.html" rel="alternate"></link><published>2020-03-02T12:00:00+01:00</published><updated>2020-03-02T12:00:00+01:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2020-03-02:/how-to-be-successful-on-dating-apps-girls-version.html</id><summary type="html">&lt;p&gt;For a few years dating apps have been becoming one of the most frequent way people date new people. But a lot of people hate them, complain about them and tell they are not efficient. &lt;/p&gt;
&lt;p&gt;The article is aiming at describing the best way to use dating apps when you …&lt;/p&gt;</summary><content type="html">&lt;p&gt;For a few years dating apps have been becoming one of the most frequent way people date new people. But a lot of people hate them, complain about them and tell they are not efficient. &lt;/p&gt;
&lt;p&gt;The article is aiming at describing the best way to use dating apps when you are a girl&lt;/p&gt;
&lt;h2&gt;What are the existing dating apps ?&lt;/h2&gt;
&lt;p&gt;If you have ever wanted to try a dating app your first question was probably "what app will I choose ?". A few years ago the answer was easy: Tinder. But over time Tinder is becoming less and less the best app to use. &lt;/p&gt;
&lt;p&gt;There are basically two kind of datings apps :&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Tinder like (Tinder, Bumble, Happn, Badoo, Hinge...) : These are apps in which the physicial appearance is in the heart of the app, most of these apps work with the swiping mechanism that let you like or dislike a some unlikely realistic pictures of a person&lt;/li&gt;
&lt;li&gt;Meetic like (Meeting, Match, OkCupid, SeekingArangement, AshleyMadison,...) : These are apps in which the writing conversation and the appearance is most important&lt;/li&gt;
&lt;li&gt;Niche app (the league,...) : They don't have a lot of users, they are centered on one specific topic&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Usually apps of type 1. advertise themselves as a way for people to meet for short term relationships wherase apps of type 2, tell they are for long term relationships. Which is mostly true, when you center your app on physicial appearance it will be difficult to find something else than a short relationship.&lt;/p&gt;
&lt;p&gt;So far nothing new&lt;/p&gt;
&lt;h2&gt;How to use Tinder-like apps efficiently&lt;/h2&gt;
&lt;p&gt;There are only a handfull of cases in which a girl should want to use a dating app:
- If you are looking for quick sex with very attractive guys
- If you have specific physical attraction chracteristics (you only like gus with abs, you only guys with blue eyes,...)
- If you are not looking for anything specific and want to meet people and you are not picky&lt;/p&gt;
&lt;p&gt;The explanation of that is simple:&lt;/p&gt;
&lt;p&gt;Most guys on dating apps want love but will end up having fun.&lt;/p&gt;
&lt;p&gt;It is very difficult for a guy on dating app to stand out from the crowd. During each swipe session a girl will always see and match tons of very handsome guys, so why would they pick someone random ? As a result girls tend to all match with the same most attractive guys and will think those guys are interested in them ( because well, they matched with them).&lt;/p&gt;
&lt;p&gt;And guys will feel that they can match with some attractive girls (but those girls wont talk to them) and they can talk to under average girls.&lt;/p&gt;
&lt;p&gt;There is a good article about Gini coefficient applied to dating &lt;a href="https://quillette.com/2019/03/12/attraction-inequality-and-the-dating-economy/"&gt;here&lt;/a&gt; that explains the issue&lt;/p&gt;
&lt;p&gt;To sum up, those apps are good at creating unballanced relationship in which the girl is much more physicaly interested in guy than the other way around. In those kind of relationship girls will want to secure the guy long term, and guys will only want to have sex. And we will have the "Guys are only interesed in sex" complain&lt;/p&gt;
&lt;p&gt;If you are a girl and want to take advantage of that put in your mind that those apps are only for sex. As a girl do you need a dating app to find for sex ? No, unless you are in the cases mentionned above.&lt;/p&gt;
&lt;p&gt;Don't use a Tinder-like app to find a serious relationship you will be disapointed&lt;/p&gt;
&lt;h2&gt;How to use Meetic-like apps efficiently&lt;/h2&gt;
&lt;p&gt;Don't use them, it is usually a bad choice to look for love, if you are obssessed about looking for love you will probably spend your time being unhappy, because the most important thing when it comes to successful serious relationship is feeling, and it is very difficult to test feeling though a photo, a written conversation or a bio. &lt;/p&gt;
&lt;p&gt;If you are searching for love, just think to something else, meet new people, be open to new ideas, go to events, meet with friends, spend time with people, smile when you walk, answer nicely to guys who approach you even if they dont look like Tom cruise, exercise frequently, feel confident about how you look and about you are, be at your BEST. This is probably the only efficient way to not be disapointed, finding someone with which you like being is hard and you will not detect that on a picture.&lt;/p&gt;
&lt;p&gt;After that if you still feel like you want to try those apps, you will find out that in average guys take dating more seriously and you will easily have solid and deep conversations on interesting subjects as long as you put a little bit of effort bootstrating those conversations, but be carefull with one thing, the way someone is able to express himself by writting can be very different from what he does orally, so do not wait too long before meeting in person to not be disapointed after a lot of involvement virtually.&lt;/p&gt;
&lt;h2&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;Don't forget that dating apps are businesses and a business to be viable need to make money. How can you make money when doing your job well will make you loose all your users ? This is not possible with the Tinder business model (An article will come soon on this subject). These companies's goals are to keep you as a customer, and the only way for you to keep being a customer is that you dont find a relationship.&lt;/p&gt;</content><category term="Dating"></category></entry><entry><title>Travelling with 24" monitors</title><link href="https://blog.luap.info/travelling-with-24-monitors.html" rel="alternate"></link><published>2020-02-20T13:27:00+01:00</published><updated>2020-02-20T13:27:00+01:00</updated><author><name>Paul</name></author><id>tag:blog.luap.info,2020-02-20:/travelling-with-24-monitors.html</id><summary type="html">&lt;p&gt;During 2019 I was living in Paris and really wondering what I was doing there as my job doesn't require me to be physically in Paris, I was working with teams in India and San Francisco. I don't really need to be close to my friends or be in a …&lt;/p&gt;</summary><content type="html">&lt;p&gt;During 2019 I was living in Paris and really wondering what I was doing there as my job doesn't require me to be physically in Paris, I was working with teams in India and San Francisco. I don't really need to be close to my friends or be in a place that I know but I need my computer setup to be efficient, and my computer setup is a big issue, as I have three 24 inches monitors an external GPU and an ergonomic keyboard.&lt;/p&gt;
&lt;p&gt;&lt;img alt="3 screens" src="https://blog.luap.info/static/monitors/example.jpg"&gt;&lt;/p&gt;
&lt;p&gt;But I wanted to travel, how can I keep my efficiency while travelling ?
Adapting to a single or two 13 inches monitors was not an option, I have never been able to work efficiency on a small screen.
So I had to find a way to travel with monitors. How can I carry abroad 3 screens (55cmx30cm) which weighs more than 3kg each, which required a monitor arm and an external GPU which is 7kg ? &lt;/p&gt;
&lt;p&gt;The whole setup is about 20kg, with the weight of the luggage we would already reach the 23kg or even sometimes 20kg of checked luggage in airplaines, the total volume would exceed the maximum volume also and how am I going to protect all that stuff so it doesn't get broke during the transportation ?
First try : I can send everything via DHL on a box, That was about 200$, DHL picked the package, went to the custom, and brought it back, they needed invoices, Aaarg I don't want to deal with customs and all that and take the risk to lose everything. So this is not going to be an option&lt;/p&gt;
&lt;p&gt;But how then ? I had no idea, I checked on the internet, didn't found anything, some people carried one monitor on the plane, but my setup was much more complex, I had to innovate.&lt;/p&gt;
&lt;p&gt;I had to find something so that:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The total weight is less than 12kg&lt;/li&gt;
&lt;li&gt;The dimension is be minimal enough to enter in a standard checked baggage&lt;/li&gt;
&lt;li&gt;The Y position of each screen is still adjustable to adapt to different desks in different places&lt;/li&gt;
&lt;li&gt;The setup is easy to mount and unmount&lt;/li&gt;
&lt;li&gt;Everything is protected during transport&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;My current monitors were already heavier than the maximum weight, so I had to find other monitors, my first thought was, laptop monitors are so thin, I just need 3 of 24 inches size and everything is solved, yes ... but that doesn't exist, the biggest lcd  display pannel that I could find were 17 inches, and you would also need to convert the video signal to hdmi, figure out how to power it, so not possible. Second thought let's go to store and find the slimmest monitors, well ... there is none, you find a lot of monitors with very slim lcd pannel but the power block still takes a lot of space.&lt;/p&gt;
&lt;p&gt;I had only one last option, disassemble the monitor and remove anything that is useless.&lt;/p&gt;
&lt;p&gt;There a four parts to my journey:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;How to make the monitors lighter&lt;/li&gt;
&lt;li&gt;How do I keep the Y position of the monitor adjustable &lt;/li&gt;
&lt;li&gt;How do I plug everything on a lenovo X1 Carbon without an external GPU&lt;/li&gt;
&lt;li&gt;How can I have only one power cable instead of 3&lt;/li&gt;
&lt;li&gt;How do I transport all that safely&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;1. How to make the monitors lighter&lt;/h2&gt;
&lt;p&gt;A monitor is composed of :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;a plastic case&lt;/li&gt;
&lt;li&gt;a metallic case that keep all the pieces of the lcd screen together&lt;/li&gt;
&lt;li&gt;a lcd panel (this is basically  a rigid sheet in my case)&lt;/li&gt;
&lt;li&gt;a backlight (in my case this is a plexiglass sheet with a row of leds)&lt;/li&gt;
&lt;li&gt;a power block&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;So I removed the plastic case, removed the back of the metallic case (probably the heaviest part), glued everything together that everything stay together and kept the power block separately from the monitor, you can see the results below :
&lt;img alt="Screen" src="https://blog.luap.info/static/monitors/screen1.jpg"&gt;&lt;/p&gt;
&lt;p&gt;Now each monitor was about 1.5kg !!!!&lt;/p&gt;
&lt;h2&gt;2. How do I keep the Y position of the monitor adjustable&lt;/h2&gt;
&lt;p&gt;Basically I need three monitors arms, but I didnt find anything transportable, so again I had to create something new that is transportable, light and easy to mount/unmount&lt;/p&gt;
&lt;p&gt;When you want to do something solid and light you usually have 3 material that you can use, aluminium, wood and plastic. At that time I was in Estonia and didnt have machinery to build something in aluminium neither plastic, so I had to go with wood.&lt;/p&gt;
&lt;p&gt;Here is what I build :
&lt;img alt="Wood screen support" src="https://blog.luap.info/static/monitors/support1.jpg"&gt;&lt;/p&gt;
&lt;p&gt;The middle part (in black) is not fixed and can move from the bottom to the top if the shaft,&lt;/p&gt;
&lt;p&gt;The bottom is 4 small brackets attached together with some wire&lt;/p&gt;
&lt;p&gt;And thats all.&lt;/p&gt;
&lt;p&gt;I can adjust the vertical of the support by bending the brackets (which doesnt work well) and I can adjust the Y position by modifying the position of the middle part &lt;/p&gt;
&lt;p&gt;I can unmount everything and just get a shaft and a handful of accessories while travelling&lt;/p&gt;
&lt;h2&gt;3. How do I plug everything on a lenovo X1 Carbon without an external GPU&lt;/h2&gt;
&lt;p&gt;The lenovo X1 carbon and most of laptop have an integrated GPU, mine support 3 independents screens, so whatever the adaptator you use and the combination of monitors without using some form of GPU you can't have more than 3 independent monitors.&lt;/p&gt;
&lt;p&gt;So for setup I deactivated the internal screen of the Lenovo, and then plugged one monitor on the hdmi output
and two others on a dual hdmi to usb c adaptor : &lt;a href="https://www.amazon.com/Sabrent-Adapter-Supports-Monitors-Compatible/dp/B07H11ZHPW"&gt;This one on Amazon&lt;/a&gt;
Works great so far !&lt;/p&gt;
&lt;h2&gt;4. How can I have only one power cable instead of 3&lt;/h2&gt;
&lt;p&gt;For the powering one thing to take into account is that cable are somewhat heavy and if you have 3 screen + your laptop you will need 4 electrical sockets. You could use the same socket for the screens by doing something like that.
&lt;img alt="one cable to two cables" src="https://blog.luap.info/static/monitors/cable.jpg"&gt;&lt;/p&gt;
&lt;h2&gt;5. How do I transport all that safely&lt;/h2&gt;
&lt;p&gt;Now it is time to put all that in a suitcase, The simplest thing I found, is you can take one yoga mat and wrap everything inside like that (everything is inside except the cables, the total weight is around 12 kg):
&lt;img alt="screens wrapped" src="https://blog.luap.info/static/monitors/wrapped.jpg"&gt;
&lt;img alt="screens wrapped in suitcase" src="https://blog.luap.info/static/monitors/suitcase.jpg"&gt;&lt;/p&gt;
&lt;h2&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;The whole thing take me 8min to fold it and 12min to unfold it. It is about 12kg, it works great so far&lt;/p&gt;
&lt;p&gt;Two ways of improvement: find something better designed for the support, and buy some lighter screens&lt;/p&gt;
&lt;p&gt;&lt;img alt="3 screens" src="https://blog.luap.info/static/monitors/exampleon2.jpg"&gt;&lt;/p&gt;</content><category term="DIY"></category></entry></feed>