My bloghttps://blog.luap.info/2023-02-17T12:00:00+01:00Your B2B startup will stop innovating the day you give power to product managers2023-02-17T12:00:00+01:002023-02-17T12:00:00+01:00Paultag:blog.luap.info,2023-02-17:/your-b2b-startup-will-stop-innovating-the-day-you-give-power-to-product-managers.html<p>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.</p>
<p>I think it is pretty obvious that PMs (whether you call them …</p><p>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.</p>
<p>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.</p>
<p>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.</p>
<p>You can think to yourself, “well we have hired smart people who know how to make decisions on those topics, what’s the issue ?”.</p>
<p>Well two things:</p>
<ul>
<li>
<p>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</p>
</li>
<li>
<p>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 :) )</p>
</li>
</ul>
<p>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.</p>
<p>That’s where we make the link with the title of the article:</p>
<ul>
<li>
<p>Why is that specific to B2B?</p>
</li>
<li>
<p>Why the company will stop innovating</p>
</li>
<li>
<p>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.</p>
</li>
</ul>
<h2>Products managers in B2B context, does that work ?</h2>
<p>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.</p>
<h2>Product managers and innovation</h2>
<p>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</p>
<p>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.</p>
<p>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)</p>The metaverse will solve climate change2022-07-09T12:00:00+02:002022-07-09T12:00:00+02:00Paultag:blog.luap.info,2022-07-09:/the-metaverse-will-solve-climate-change.html<p><em>Disclaimer: This is not 100% sure, this is a bet I'm making. The future will decide</em></p>
<p>Over the last years the number of people who had sex is decreasing <a href="https://www.washingtonpost.com/business/2019/03/29/share-americans-not-having-sex-has-reached-record-high/">in the US</a> but also <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">in France</a>. The lockdowns did not help, but this is a trend that existed before.</p>
<p>The …</p><p><em>Disclaimer: This is not 100% sure, this is a bet I'm making. The future will decide</em></p>
<p>Over the last years the number of people who had sex is decreasing <a href="https://www.washingtonpost.com/business/2019/03/29/share-americans-not-having-sex-has-reached-record-high/">in the US</a> but also <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">in France</a>. The lockdowns did not help, but this is a trend that existed before.</p>
<p>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.</p>
<p>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.</p>
<p>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?</p>
<p>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 (<a href="https://ourworldindata.org/grapher/co-emissions-per-capita?tab=chart&country=~OWID_WRL">which seems to be the case</a>) then the total world emission is going to be cut by 50% by 2100</p>My take on electricty production to reduce co2 emission2022-06-14T12:00:00+02:002022-06-14T12:00:00+02:00Paultag:blog.luap.info,2022-06-14:/my-take-on-electricty-production-to-reduce-co2-emission.html<p>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 …</p><p>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.</p>
<p>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.</p>
<p>We more or less have 5 ways to produce electricity:</p>
<ul>
<li>
<p>Use gas, petrol and coal a lot of co2, but can produce at any times at a relatively low cost</p>
</li>
<li>
<p>Use nuclear, few co2, can almost product at any time but has perceived security issues, and limited fuel available on earth</p>
</li>
<li>
<p>Use Hydro, few co2 but we have almost reached full potential today, can produce at any time</p>
</li>
<li>
<p>Consume from stored energy (batteries, hydrogen,...) very expensive, still research and can have big environmental impact</p>
</li>
<li>
<p>Solar and wind, few co2, relatively cheap (and cost are decreasing) but produce only when it wants, requires a lot of space</p>
</li>
</ul>
<p>From that list the order of preference to decrease co2 seems to be : Hydro, Solar and wind, nuclear, stored energy and fossil fuels</p>
<p>Hydro is already more or less at maximal capacity so let's focus on the others.</p>
<p>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.</p>
<p>There are three ways to produce energy when solar and wind don't produce enough.</p>
<ul>
<li>
<p>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</p>
</li>
<li>
<p>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.</p>
</li>
<li>
<p>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.</p>
</li>
</ul>
<p>So for me we should follow this path:</p>
<ul>
<li>
<p>Invest in wind massively (especially maritime one that have better effectiveness)</p>
</li>
<li>
<p>Invest in solar massively (especially in place that have a lot of sun)</p>
</li>
<li>
<p>Invest massively in research to send big quantity of energy over long distance</p>
</li>
<li>
<p>Invest massively in research around hydrogen production and storage so that we can store big excess production of wind and solar</p>
</li>
<li>
<p>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.</p>
</li>
<li>
<p>Invest in carbon capture, there are potential but we are not investing enough</p>
</li>
<li>
<p>Invest in house insulation, in bicycle infrastructures, in batteries</p>
</li>
</ul>
<p>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.</p>
<p>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</p>Product Market Fit doesn't exists in B2B Enterprise2022-04-26T12:00:00+02:002022-04-26T12:00:00+02:00Paultag:blog.luap.info,2022-04-26:/product-market-fit-doesnt-exists-in-b2b-enterprise.html<p>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 …</p><p>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.</p>
<p>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 ?</p>
<p>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).</p>
<p>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</p>Wrap a website with a Webextension2021-11-20T12:00:00+01:002021-11-20T12:00:00+01:00Paultag:blog.luap.info,2021-11-20:/wrap-a-website-with-a-webextension.html<p>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 …</p><p>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</p>
<p>Here is an example of what I'm trying to achieve:
<img alt="example" src="https://blog.luap.info/static/webextension/example.jpg"></p>
<p>Basically, I want to be able to show a search bar and a sidebar (wrapping content) on any website (page).</p>
<h2>How to do that</h2>
<p>There are only three ways that I'm aware of:</p>
<ol>
<li>
<p>Inject the page into an iframe on a domain you control</p>
</li>
<li>
<p>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</p>
</li>
<li>
<p>Use a Webextension, and replace the html of the page with your wrapping content plus an iframe to the current page</p>
</li>
</ol>
<h2>Inject the page into an iframe</h2>
<p>So that's the easiest solution of all and you don't need an extension. But :</p>
<ol>
<li>
<p>Some websites prevent to be opened from an iframe via the X-FRAME-OPTIONS header</p>
</li>
<li>
<p>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)</p>
</li>
<li>
<p>Some websites try to communicate with the parent frame and for example reload itself in the parent frame</p>
</li>
</ol>
<p>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</p>
<p>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</p>
<p>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</p>
<p>Overall that was the first solution tested, which was easy but not enough to support all our use cases</p>
<h2>Inject wrapping content into the page</h2>
<p>What you need to do is to inject some CSS to add paddings to the body of the page: <code>body{padding-top:55px;padding-left:200px}</code> 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:</p>
<ol>
<li>
<p>The CSP of the page may prevent you to inject your own CSS or own js</p>
</li>
<li>
<p>The page may render itself comparing to the window size</p>
</li>
</ol>
<p>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 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/nonce">nonce</a>.</p>
<p>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.</p>
<p>I've given up that way as I'm working mostly with app that use a ton of JS</p>
<h2>Replace the page with the wrapping content + an iframe to self</h2>
<p>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</p>
<div class="highlight"><pre><span></span>document.body.parentElement.innerHTML=`
<span class="nt"><html></span>
<span class="nt"><head></head></span>
<span class="nt"><body></span>
<span class="nt"><div></span>
<span class="nt"><wrapping-content></wrapping-content></span>
<span class="nt"><iframe</span> <span class="na">src=</span><span class="s">"https://domain.com/path"</span><span class="nt">></iframe></span>
<span class="nt"></div></span>
<span class="nt"></body></span>
<span class="nt"></html></span>`
</pre></div>
<p>That's how most 'responsive viewer extensions' work. The benefits is :</p>
<ul>
<li>
<p>Don't have to deal with cookie as you are in the same origin setup</p>
</li>
<li>
<p>Don't deal with the page content, the page render itself into an iframe</p>
</li>
<li>
<p>Your wrapper is kinda isolated form the iframe as you can clear the initial page if you want with <code>document.open();document.close()</code></p>
</li>
</ul>
<p>But there are also tons of issues:</p>
<ol>
<li>
<p>You lose the favicon and the title of the page</p>
</li>
<li>
<p>You render the page two times and so it is slow</p>
</li>
<li>
<p>If the page use service workers and all those new things they will wonder why the page is not rendering as expected</p>
</li>
<li>
<p>You still have the issue of the iframe trying to communicate with the parent</p>
</li>
<li>
<p>You still have the CSP issue</p>
</li>
<li>
<p>Firefox and Chrome don't work the same and you have to do code for each browser</p>
</li>
</ol>
<p>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.</p>
<p>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:</p>
<ul>
<li>
<p>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</p>
</li>
<li>
<p>Returns <code>{cancel:true}</code> 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</p>
</li>
</ul>
<p>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</p>
<p>For 4. Same as previously</p>
<p>For 5. Same as previously easy to bypass</p>
<p>For 6. For example, if you want to override the page on Chrome, you can use <code>document.open();document.close()</code> from a content script run at "document_start" but on Firefox it doesn't work. Content scripts don't seem to have access to <code>document.open</code> for security reasons. But you can use <code>window.eval('document.open()')</code> which works, but in that case you need to have the CSP unsafe-eval allowed. Or you can insert your content script on <code>window.onload</code> or run the contentscript at <code>document_end</code>, 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.</p>
<p>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.</p>
<h2>Conclusion</h2>
<p>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.</p>
<p>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 !</p>
<p>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 :)</p>We deserve better than Confluence and Notion2021-09-26T23:00:00+02:002021-09-26T23:00:00+02:00Paultag:blog.luap.info,2021-09-26:/we-deserve-better-than-confluence-and-notion.html<p>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 …</p><p>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).</p>
<p>In the end, this critical and fragmented market is mostly served by Notion and Confluence, especially for startups and fast-growing companies.</p>
<p>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.</p>
<p>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.</p>
<h2>What is important for an organization</h2>
<p>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.</p>
<p>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.</p>
<p>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.</p>
<p>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.</p>
<p>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 .</p>
<p>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.</p>
<h2>Is better than that even possible?</h2>
<h3>Better structure</h3>
<p>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 ? ...). </p>
<p>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:</p>
<ol>
<li>Put data in tree structures.</li>
<li>Assign tags to data.</li>
<li>Assign metadata to data.</li>
<li>Group data by similarity.</li>
</ol>
<p>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</p>
<p>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”.</p>
<p>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.</p>
<p>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.</p>
<h3>Ease of use</h3>
<p>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.</p>
<p>A typical user of any knowledge management solution must be able to execute a few actions:</p>
<ul>
<li>Create new content.</li>
<li>Collaborate with peers on a document.</li>
<li>Quickly retrieved a previous document deemed useful.</li>
<li>Explore and find specific content.</li>
<li>Be notified when content is updated.</li>
</ul>
<p>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 <a href="https://techcrunch.com/2021/03/18/atlassian-peps-up-confluence-with-new-graphical-design-features/">Confluence is trying to make people use smileys in their pages title</a>.</p>
<p>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</p>
<p>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 <a href="https://dokkument.com">Dokkument</a>. A collaborative knowledge management solution for organizations.</p>What the covid pandemic taugh me2021-07-24T12:00:00+02:002021-07-24T12:00:00+02:00Paultag:blog.luap.info,2021-07-24:/what-the-covid-pandemic-taugh-me.html<p>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 …</p><p>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.</p>
<p>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</p>
<blockquote>
<p>"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)".</p>
</blockquote>
<p>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.</p>
<p>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.</p>
<h2>What I learn ?</h2>
<p>I have learn a few things, but they all comes down to a simple sentence:</p>
<blockquote>
<p>Whether or not it is true, 80% of people will think what the top 5 medias of the country say</p>
</blockquote>
<p>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.</p>
<p>You want examples :</p>
<ul>
<li>Masks don't work (people were very convinced at the start of the epidemic)</li>
<li>Compulsory masks works (people are very convinced about it, even though we have no proof about it)</li>
<li>Lockdown works (Hard lockdown works for sure, but the ones we had ? no strong proof)</li>
<li>Vaccine will not be available in 12 months (even though the industrials and Trump kept repeating it was possible)</li>
<li>Astrazeneca vaccine is dangerous ( that was very nothing compared to the risk of catching Covid for old people at the time of the headlines)</li>
<li>Alpha variant is 60% more transmissible (Was stopped with lighter measures and fears than the previous one)</li>
<li>Delta variant is 60% more transmissible than Alpha (Cases are already decreasing in unvaccinated teens in UK without any measures or fears)</li>
<li>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)</li>
<li>The vaccine will stop the epidemy (We don't know 100% if this is true or not but I bet it will not)</li>
</ul>
<h2>What is the impact of that ?</h2>
<p>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.. </p>
<p>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.</p>
<p>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.</p>
<p>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.</p>
<p>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.</p>
<p>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</p>
<h2>How to not be under the influence of the media ?</h2>
<p>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</p>Cancel culture, Twitter trendings and radical transparency2021-05-01T23:00:00+02:002021-05-01T23:00:00+02:00Paultag:blog.luap.info,2021-05-01:/cancel-culture-twitter-trendings-and-radical-transparency.html<p><em>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</em></p>
<p>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 …</p><p><em>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</em></p>
<p>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. </p>
<p>A few days ago a company of 50 people <a href="https://world.hey.com/dhh/basecamp-s-new-etiquette-regarding-societal-politics-at-work-b44bef69">announced</a> (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.</p>
<p>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</p>
<p>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.</p>
<p>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.</p>
<p>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.</p>
<p>I'm a big fan of transparency inside an organization, but I'm very against Radical transparency. <a href="https://en.wikipedia.org/wiki/Radical_transparency">"Radical transparency has also been explained by Dan Goleman as a management approach where (ideally,) all decision making is carried out publicly"</a>. 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.</p>
<p>I have a few advice:</p>
<ul>
<li>Most of content we read on newspapper is false, not intentionnaly but because of lack of seriousness of the profession.</li>
<li>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. (<a href="https://blog.alan.com/bonne-nouvelle/alan-q1-2021-letter-to-shareholders-en09">Alan</a> be careful)</li>
<li>Twitter is the kingdom of fake news and human stupidity, always verify what you read.</li>
<li>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.</li>
</ul>Notion is not a knowledge base2021-03-05T23:00:00+01:002021-03-05T23:00:00+01:00Paultag:blog.luap.info,2021-03-05:/notion-is-not-a-knowledge-base.html<p><img alt="notion" src="https://blog.luap.info/static/notion/notion.png"></p>
<h2>What is Notion</h2>
<p>For those of you who don't know <a href="https://notion.so">Notion</a>, 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 …</p><p><img alt="notion" src="https://blog.luap.info/static/notion/notion.png"></p>
<h2>What is Notion</h2>
<p>For those of you who don't know <a href="https://notion.so">Notion</a>, 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.</p>
<p>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).</p>
<p>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 <a href="https://techcrunch.com/2019/12/02/why-notion-is-staying-small-as-its-valuation-gets-bigger/">sub 100 employee</a> 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.</p>
<p>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.</p>
<style>.full img{margin:auto;display:block}</style>
<h2>The good and bad of free plans</h2>
<p>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.</p>
<p>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 : <a href="https://www.reddit.com/r/Notion/comments/lxaq7e/its_time_to_accept_the_fact_that_notion_will/">offline mode</a> (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).</p>
<p>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.</p>
<h2>The product is amazing but can't scale past 100 employees</h2>
<p>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.</p>
<p>But to me the <a href="https://telegra.ph/Notion-is-a-UX-Disaster-12-23">UX is a big issue</a>. You can't just go on Notion and start using it. Look at what looks a table when you create it :
<img alt="notion table" src="https://blog.luap.info/static/notion/table.png"></p>
<p>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.</p>
<p>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.</p>
<p>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.</p>
<p>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.</p>
<h2>But I need an internal knowledge base tool for my company, how could I use Notion for that ?</h2>
<p>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 <a href="https://dokkument.com">Dokkument</a></p>Linkedin is uniquely positioned to solve the biggest businesses' problems2021-02-13T23:00:00+01:002021-02-13T23:00:00+01:00Paultag:blog.luap.info,2021-02-13:/linkedin-is-uniquely-positioned-to-solve-the-biggest-businesses-problems.html<p><em>But they focus on building a social network instead</em></p>
<p>When <a href="https://twitter.com/LucaBongiorni/status/1359560585990537216">developpers</a> 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</p>
<p>Linkedin knows your connections, your past jobs …</p><p><em>But they focus on building a social network instead</em></p>
<p>When <a href="https://twitter.com/LucaBongiorni/status/1359560585990537216">developpers</a> 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</p>
<p>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. <a href="https://www.forbes.com/sites/emmawoollacott/2019/09/10/linkedin-data-scraping-ruled-legal/">Seeing how much they prevent scrapping</a> 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:</p>
<ul>
<li>Make people pay to send messages to other people</li>
<li>Give a few filters to search people</li>
<li>Let people post job offers</li>
</ul>
<p>And they are NOT EVEN good at it!</p>
<p>Despite that, they could help solving the two most difficult tasks of business: Finding customers and recruiting</p>
<h2>Recruiting</h2>
<p>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.</p>
<p>There are two parts in the recruiting process:</p>
<ul>
<li>Finding qualified candidates</li>
<li>Interviewing them</li>
</ul>
<p>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:</p>
<ol>
<li>Create vague job offers that almost use the same terms as Google job offers.</li>
<li>Publish it in your ATS</li>
<li>Wait for unqualified candidates to apply to your offer (unless you are Google, Apple, Facebook, Uber or any other trendy company)</li>
<li>In the meantime go on Linkedin, type a few keywords in the search bar, use a few criterias to get a list of candidates</li>
<li>Browse the list of candidates and verify one by one if the candidate really match the keywords you typed</li>
<li>Harass each candidates to get a call with him</li>
</ol>
<p>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.</p>
<ul>
<li>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</li>
<li>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 ?</li>
<li>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</li>
<li>Why when searching for product managers, Linkedin also suggests you people who are "production managers" ?</li>
<li>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.</li>
<li>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.</li>
<li>Why Linkedin doesn't help recruiters create useful job descriptions ? Why do they let companies say things like :<ul>
<li>Excellent time-management skills and the ability to establish reasonable and attainable deadlines for resolution.</li>
<li>Have a service-oriented mind, be analytical, and have strong problem-solving skills.</li>
<li>Strong attention to detail and extremely well-organized.</li>
<li>Positive can-do attitude & ability to work well with teams.</li>
<li>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...</li>
</ul>
</li>
</ul>
<p>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.</p>
<h2>Finding customers</h2>
<p>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.</p>
<p>So we are talking about B2B.
Here are the different ways to find customers:</p>
<ol>
<li>Pay people to tell people they know to buy your offer. ex: Digital marketing, Partnership, Physical marketing, invite existing customers to restaurant, strategic hiring, ...</li>
<li>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, ...</li>
<li>Pay people to find and convince businesses to buy your offer. ex: salespeople</li>
</ol>
<p>Linkedin is today the place most sales and marketing people find contact. And that sucks. A LOT !</p>
<p>Whether you are in 2. or 3. what you want from Linkedin is :</p>
<ul>
<li>Let you choose the type of company you are interested in</li>
<li>Find the employees responsible for the topic you are selling</li>
<li>Give you their email address</li>
</ul>
<p>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.</p>
<p>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.</p>
<p>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.</p>
<p>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.</p>
<p>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.</p>
<p>It is unfortunate that instead of that they are focusing on getting more businesses to pay to send InMail to unqualified users.</p>
<p>The data of linkedin is a goldmine but today it rests unused so that users can annoy their network with stupid clickbaik posts</p>Product Management in Saas B2B Enterprise is easy2021-01-21T12:00:00+01:002021-01-21T12:00:00+01:00Paultag:blog.luap.info,2021-01-21:/product-management-in-saas-b2b-enterprise-is-easy.html<p>I've already described the differences between <a href="https://blog.luap.info/why-most-saas-companies-cant-be-successful-with-both-enterprise-and-smb-customers.html">Saas B2B SMB and Saas B2B Enterprise</a>. 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 …</p><p>I've already described the differences between <a href="https://blog.luap.info/why-most-saas-companies-cant-be-successful-with-both-enterprise-and-smb-customers.html">Saas B2B SMB and Saas B2B Enterprise</a>. 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).</p>
<h2>Nobody cares about the product in Enterprise</h2>
<p>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.</p>
<p>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.</p>
<p>Let's look at the product quality of big Saas Enterprise products:</p>
<ul>
<li>Is Salesforce a good CRM ?</li>
<li>Is SAP a good ERP ?</li>
<li>Is Team a good communication system ?</li>
<li>Is any Oracle product a good product ?</li>
<li>What about Workday, Atlassian, MongoDB, Alteryx ?</li>
</ul>
<p>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.</p>
<p>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:</p>
<ul>
<li>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</li>
<li>Second, people who buy the product, are not the ones who are using it, as a result product quality is never something they care</li>
<li>Third, A good product is beneficial for referrals or inbound marketing, but most of B2B enterprise companies get their customers through outbound marketing</li>
</ul>
<p>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.</p>
<h2>How to be a successful product manager in Saas B2B Enterprise</h2>
<p>Most PM, read <a href="https://www.amazon.com/INSPIRED-Create-Tech-Products-Customers/dp/1119387507">Inspired</a>, 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.</p>
<p>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.</p>
<p>If at heart, being a product manager is creating products that customers love, then product management in Saas Enterprise is closer to <em>creating products which support the sales and customer team</em></p>
<p>If you look at your job from that angle, a lot of things change:</p>
<p>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.</p>
<p>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.</p>
<p>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.</p>
<p>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 ...</p>
<p>So if I can give you a few advice:</p>
<ul>
<li>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</li>
<li>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</li>
<li>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</li>
<li>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 ?</li>
<li>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</li>
<li>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!</li>
<li>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.</li>
</ul>
<p>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.</p>
<p>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 !</p>
<p>If you have any question, send me an email. </p>My bet: Why masks mandate are useless to control covid epidemic2020-12-23T23:00:00+01:002020-12-23T23:00:00+01:00Paultag:blog.luap.info,2020-12-23:/my-bet-why-masks-mandate-are-useless-to-control-covid-epidemic.html<p>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 …</p><p>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.</p>
<p>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.</p>
<p>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)</p>
<p>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.</p>
<p>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.</p>
<h2>What is a mask mandate</h2>
<p>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.</p>
<h2>What are the possible ways of transmission of covid</h2>
<p>They are three of them:</p>
<ul>
<li>
<p>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</p>
</li>
<li>
<p>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</p>
</li>
<li>
<p>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</p>
</li>
</ul>
<h2>How people use their mask ?</h2>
<p>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. </p>
<p><em>So if you do NOT wear a FFP2 mask and the covid transmit through aerosol, then:</em></p>
<ul>
<li>
<p>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</p>
</li>
<li>
<p>You wont really protect others as some of the air you breath out, will go through the mask</p>
</li>
</ul>
<p>Let's forget about aerosol as, it is very clear that masks don't even work in this case</p>
<p>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:</p>
<ul>
<li>
<p>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</p>
</li>
<li>
<p>Colleagues (but masks are not mandatory at work)</p>
</li>
<li>
<p>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</p>
</li>
</ul>
<p>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.</p>
<h2>To sum up</h2>
<ul>
<li>
<p>If transmission is aerosol, then masks usage will reduce the transmission of particules in the air</p>
</li>
<li>
<p>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</p>
</li>
<li>
<p>If transmission is contact, then mask usage increase the transmission of covid</p>
</li>
</ul>
<p>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.</p>What is, and what is not true feminism2020-11-17T23:00:00+01:002020-11-17T23:00:00+01:00Paultag:blog.luap.info,2020-11-17:/what-is-and-what-is-not-true-feminism.html<p>The definition of feminism is sometimes <em>"The advocacy of women's rights on the basis of the equality of the sexes"</em> or sometimes <em>"The theory of the political, economic, and social equality of the sexes"</em>. Both definitions are not the same, but let's pick the second one.</p>
<p>So basically we don't …</p><p>The definition of feminism is sometimes <em>"The advocacy of women's rights on the basis of the equality of the sexes"</em> or sometimes <em>"The theory of the political, economic, and social equality of the sexes"</em>. Both definitions are not the same, but let's pick the second one.</p>
<p>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).</p>
<p>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, ..)</p>
<p>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):</p>
<ul>
<li>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)</li>
<li>Women can be pregnant</li>
<li>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)</li>
</ul>
<h2>First myth: Feminism is somewhat a fight of women against men</h2>
<p>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.</p>
<p>If we exclude homosexual couples, then what we see is that there are in a country like France, probably <em>as much males than females who are not feminist</em>. 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.</p>
<h2>Second myth: Women should be paid as much as men</h2>
<p>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.</p>
<p>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.</p>
<p>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.</p>
<ul>
<li>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.</li>
<li>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.</li>
<li>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</li>
<li>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</li>
</ul>
<h2>Third myth: Women can wear whatever they want</h2>
<p>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</p>
<p>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.</p>
<p>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</p>
<h2>Feminism is also about having sex with more guys</h2>
<p>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 <a href="https://www.youtube.com/watch?v=AMa3HeY4egM">The science of lust</a> 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. </p>
<p>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.</p>
<p>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.</p>
<h2>Conclusion</h2>
<p>At the end of the day, <a href="https://www.theatlantic.com/science/archive/2018/02/the-more-gender-equality-the-fewer-women-in-stem/553592/">the more a country is feminist, the less there are girls in engineering positions</a>, 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</p>
<p>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)</p>
<p>If you disagree with me, my email is open, tell me why. Always happy to progress</p>The only way to be productive2020-10-15T23:00:00+02:002020-10-15T23:00:00+02:00Paultag:blog.luap.info,2020-10-15:/the-only-way-to-be-productive.html<p><em>TLDR: Reading productivity books, articles will make you less productive</em></p>
<p>I want to take a little bit of freedom when defining the word <em>productivity</em>. In self development I think people are talking about <em>how much is done</em> when refering to <em>productivity</em>. Which is different than <em>efficiency</em> which is a a …</p><p><em>TLDR: Reading productivity books, articles will make you less productive</em></p>
<p>I want to take a little bit of freedom when defining the word <em>productivity</em>. In self development I think people are talking about <em>how much is done</em> when refering to <em>productivity</em>. Which is different than <em>efficiency</em> which is a a measure of a lot has been be done during a certain span of time.</p>
<p>So if we want to make things simple:</p>
<ul>
<li>
<p>Productivity: I do a lot</p>
</li>
<li>
<p>Efficiency : I have done that task very quickly </p>
</li>
</ul>
<p>Regarding productivity there are only two kinds of people:</p>
<ul>
<li>
<p>Those who are productive</p>
</li>
<li>
<p>Those who are not productive</p>
</li>
</ul>
<p>Yeah easy, If you do a lot then you are productive, if you don't you are not.</p>
<p>This post is kind of a complaint of the <em>productivity porn movement</em>: how to be become productive ? </p>
<p>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.</p>
<p>Let me emphasize that and repeat again:</p>
<h2>The only way to be more productive is to stop asking and start doing</h2>
<p>All other things are bullshit.</p>
<p>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.</p>
<p>The remaining question you could have is, how can I be efficient ?</p>
<p>There are two parts to master to be efficient:</p>
<ol>
<li>
<p>Do JUST one and ONLY one thing at a time</p>
</li>
<li>
<p>Frequently ask yourself what you can change in order to do more</p>
</li>
</ol>
<p>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.</p>
<p>So my last advice, is that if you really want to be productive and efficent, <em>just do less things and do them during more time</em></p>
<p>PS: This article is not about how to be motivated to do things</p>I built a lay-down desk2020-10-02T13:27:00+02:002020-10-02T13:27:00+02:00Paultag:blog.luap.info,2020-10-02:/i-built-a-lay-down-desk.html<p>After spending part of the last 12 months <a href="https://blog.luap.info/travelling-with-24-monitors.html">travelling in Europe</a> I'm now settling down around Paris and I need to adapt my multi-screens setup.</p>
<p>You probably have seen an ads for <a href="https://altwork.com/">the altwork desk</a> <em>a $7000 desk that let you work laying down</em>. Spending a big part of my …</p><p>After spending part of the last 12 months <a href="https://blog.luap.info/travelling-with-24-monitors.html">travelling in Europe</a> I'm now settling down around Paris and I need to adapt my multi-screens setup.</p>
<p>You probably have seen an ads for <a href="https://altwork.com/">the altwork desk</a> <em>a $7000 desk that let you work laying down</em>. 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 <a href="http://www.ergoquest.com/">this company</a> but this is still about $4000 all included. Let's be creative and build it myself.</p>
<p>Here is the result</p>
<p><img alt="complete desk" src="https://blog.luap.info/static/desk/complete.jpg"> </p>
<p>The things I have to take into account are:</p>
<ul>
<li>
<p>I have three monitors</p>
</li>
<li>
<p>I have no diy tools</p>
</li>
<li>
<p>I want a laying down position</p>
</li>
<li>
<p>This should be easy to use</p>
</li>
<li>
<p>This should be light and not take too much space</p>
</li>
<li>
<p>I have only a bike to move the parts</p>
</li>
<li>
<p>I haven't found anyone who has done something similar and so don't really have examples</p>
</li>
</ul>
<p>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</p>
<h2>Take care of the chair</h2>
<p>There are several options:</p>
<ol>
<li>
<p>Built a chair from scratch including the 'mattress' part</p>
</li>
<li>
<p>Use a reclined chair</p>
</li>
<li>
<p>Adapt a chair</p>
</li>
</ol>
<p>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.</p>
<p>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 <a href="https://www.ikeahackers.net/2017/04/poang-gravity-recliner.html">this</a> and <a href="https://www.ikeahackers.net/2020/04/remove-poang-arms.html">this</a> ikea hacks which use a IKEA POANG chair and transform it into a reclined chair.</p>
<p>Here is the result :</p>
<p><img alt="ikea poang adaptation" src="https://blog.luap.info/static/desk/chair.jpg"></p>
<p>The chair is 69 euro, I had to buy three cushions to extend it</p>
<p>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!</p>
<p><img alt="ikea bike" src="https://blog.luap.info/static/desk/ikea_bike.jpg"></p>
<p>Great, the chair is comfortable, let's do something for the desk part.</p>
<h2>What structure for the desk</h2>
<p>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.</p>
<p>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.</p>
<p>There are two parts to design:</p>
<ol>
<li>
<p>The base + the incline system</p>
</li>
<li>
<p>The desk + the screen supports</p>
</li>
</ol>
<h3>1. Base + incline system</h3>
<p>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.</p>
<p>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.</p>
<p>So let's try something and see how it goes, I bought an <a href="https://www.amazon.fr/gp/product/B00H8SZ87W">gaz actuator on Amazon</a> 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.</p>
<p>I had two issues with the actuator:</p>
<ul>
<li>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. </li>
</ul>
<p><img alt="fixation verrin" src="https://blog.luap.info/static/desk/fixation_verrin.jpg"></p>
<ul>
<li>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.</li>
</ul>
<p>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)</p>
<p><img alt="system block" src="https://blog.luap.info/static/desk/blocking_system.jpg"></p>
<h3>2. Desk + screens support</h3>
<p>I bought a chipboard plate of 80cm x 120cm, and cut some space for my body</p>
<p><img alt="plaque bois" src="https://blog.luap.info/static/desk/agglo.jpg"> </p>
<p>This is pretty solid, so I can directly screw this plate to the pole and we have a desk surface</p>
<p><img alt="plaque bureau" src="https://blog.luap.info/static/desk/bureau_with_plaque.jpg"></p>
<p>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</p>
<p><img alt="support monitor" src="https://blog.luap.info/static/desk/support_monitor.jpg"></p>
<h2>Next steps</h2>
<p>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</p>
<ul>
<li>
<p>I can't use a mouse anymore, as the mouse would fall down, I'm probably going to replace it by a trackball</p>
</li>
<li>
<p>I need to invest in an ergonomic keyboard to get really comfortable, probably going to buy the kenesis advantage 2, but this is expensive !</p>
</li>
</ul>
<p>Here is a video of the complete desk:</p>
<video controls>
<source src="https://blog.luap.info/static/desk/video.mp4" type="video/mp4">
</video>
<h2>Conclusion</h2>
<p>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 ? ...</p>
<p>I'm really annoyed by the actuator part, I hope I will find something more reliable</p>
<p>Overall it cost me :</p>
<ul>
<li>
<p>45 euro for tools</p>
</li>
<li>
<p>130 euro for wood pieces, screws, joins, ...</p>
</li>
<li>
<p>110 euro for the IKEA chair + cushions</p>
</li>
</ul>
<p>and I spent 26 hours working, excluding the transport and the time shopping for pieces</p>
<p>Don't forget when you do woodworking to clean afterwards :)</p>
<p><img alt="dirty" src="https://blog.luap.info/static/desk/dirty_floor.jpg"></p>
<p>If you have done something similar and know a few advice, please send me an email</p>
<p>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</p>Save money and uninstall Tinder2020-09-23T23:00:00+02:002020-09-23T23:00:00+02:00Paultag:blog.luap.info,2020-09-23:/save-money-and-uninstall-tinder.html<p><em>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</em></p>
<p>I assume you already know what is Tinder …</p><p><em>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</em></p>
<p>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</p>
<ul>
<li>
<p>If you are a guy you will not get any more matches</p>
</li>
<li>
<p>If you are a girl you will be overwhelmed by the number of guys who want to talk to you</p>
</li>
</ul>
<p>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.</p>
<p>Why ?</p>
<p>Simple, Tinder is a business listed on the NASDAQ (<a href="https://finance.yahoo.com/quote/MTCH/">ticket:MTCH</a>) [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.</p>
<p>Let's imagine you are the CEO of Tinder and your investors ask you to make money, what would you do ?</p>
<p>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:</p>
<ol>
<li>
<p>Some guys will get upset to get zero match and uninstall the app</p>
</li>
<li>
<p>Girls will get no match then they will quit and install another app</p>
</li>
<li>
<p>You will have a lot of churn</p>
</li>
</ol>
<p>Let's solve these issues:</p>
<ol>
<li>
<p>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.</p>
</li>
<li>
<p>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!</p>
</li>
<li>
<p>Well let's never talk about churn, have you ever seen the word churn in the <a href="https://ir.mtch.com/news-and-events/quarterly-results/default.aspx">Match group investor documents </a>? 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.</p>
</li>
</ol>
<p>A few others topic that we may want to tackle :</p>
<ul>
<li>
<p>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</p>
</li>
<li>
<p>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</p>
</li>
<li>
<p>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 <a href="https://techcrunch.com/2017/08/23/match-group-tried-to-acquire-bumble-for-450-million/">sell for $450 million</a> ? 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 ;)</p>
</li>
</ul>
<p>Do you think all that is fiction ? Well I do think this is not. Tinder is a cash cow, and a pretty big one ! </p>
<p>If you are a guy and want to meet some girls, use <del><a href="https://bumble.com/">Bumble</a> 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 :)</del> (Edit : 18/12/20 time to leave Bumble too, they start doing tactics too, good luck)</p>
<p>If you are a girl, you can use Tinder, but if you want to be successful you need to <a href="https://blog.luap.info/how-to-be-successful-on-dating-apps-girls-version.html">have a strategy</a>.</p>
<p>[1] Tinder belongs to the Match group. The Match group owns several dating app, the most popular ones are Tinder, Match.com and OkCupid</p>How to get over your ex, the rational way2020-09-14T12:00:00+02:002020-09-14T12:00:00+02:00Paultag:blog.luap.info,2020-09-14:/how-to-get-over-your-ex-the-rational-way.html<p><em>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</em></p>
<p>Do you know <a href="https://apps.ankiweb.net/">Anki</a> ? This is a software which has popularized the spaced repetition learning technique. The principle of this technique is that …</p><p><em>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</em></p>
<p>Do you know <a href="https://apps.ankiweb.net/">Anki</a> ? 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 <em>X days</em> unless you memorize it again, and the second time you will remember it for <em>Y days</em> with Y much greater than X. This is easy to understand, the more you think about something the longer you will remember it.</p>
<p>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 <em>his</em> in the following). So to be able to do that you need to do two things :</p>
<ol>
<li>
<p>Take the decision that you want to get over him (usually the most difficult part)</p>
</li>
<li>
<p>Take actions to get over him</p>
</li>
</ol>
<p>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.</p>
<p>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 :</p>
<ul>
<li>
<p>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</p>
</li>
<li>
<p>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 </p>
</li>
<li>
<p>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</p>
</li>
</ul>
<p>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:</p>
<ol>
<li>
<p>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...</p>
</li>
<li>
<p>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 </p>
</li>
</ol>
<p>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</p>France, UE, covid, democracry and the research of complete stupidity2020-08-21T12:00:00+02:002020-08-21T12:00:00+02:00Paultag:blog.luap.info,2020-08-21:/france-ue-covid-democracry-and-the-research-of-complete-stupidity.html<p>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. </p>
<p>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 …</p><p>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. </p>
<p>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.</p>
<p>France is a touristic country which doesn't grow anymore. It is not doing worst than <a href="https://data.worldbank.org/indicator/NY.GDP.PCAP.KD.ZG?end=2019&locations=FR-GB-DE-US&start=1961&view=chart">neighbour countries</a> but this can't be an excuse. The youngest company of the CAC40 (40 biggest companies in france) was <a href="https://twitter.com/paulg/status/650702144186662914?lang=en">founded in 1967</a>. 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.</p>
<p>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.</p>
<p>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 ?</p>
<p>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.</p>
<p>We are trying to reach the maximum level of stupidity and everybody seems to be fine with it.</p>
<h2>How to fix that ?</h2>
<p>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</p>
<p>Not everything is bad, look at the US and appreciate how lucky we are</p>Planning for my kidnapping2020-08-03T13:27:00+02:002020-08-03T13:27:00+02:00Paultag:blog.luap.info,2020-08-03:/planning-for-my-kidnapping.html<p>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 …</p><p>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 ?</p>
<p>I wanted to find a way to answer all those questions, basically we can sum up the issues in 3 points :</p>
<ul>
<li>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</li>
<li>In case of dying, sending all your documents (passwords, friends list, legal documents, ...) to your family</li>
<li>Not sending those documents by mistakes if you are not on the situations above</li>
</ul>
<h2>First step : collect your position, your activity, your documents, ...</h2>
<p>The first step is to be sure that you have the data that you want to send, on my part, the data are:</p>
<ol>
<li>My current position and recent history</li>
<li>My last know activity and a recent history</li>
<li>The list of my credentials</li>
<li>The list of my legal documents (id, passport, health insurance, work papers, ...)</li>
</ol>
<p>I've written an <a href="https://blog.luap.info/how-i-track-my-life.html">article</a> explaining how I'm doing 1. and 2. (position in real time, and last activity), so this is fixed.</p>
<p>For my credentials, I use <a href="https://keepassxc.org/">keepassXC</a> with a keyfile + a master password, the keyfile and the password db is synced using <a href="https://syncthing.net/">syncthingd</a> with a server that I rent</p>
<p>My legal documents are all tied in one folder on my laptop which is also synced on the same server</p>
<p>So basically we have all the needed documents which are synced in real time on the same server</p>
<h2>Second step : Choose how to trigger the sharing of documents</h2>
<p>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.</p>
<p>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.</p>
<h2>Last step : What to put inside the notification</h2>
<p>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.
<img alt="email" src="https://blog.luap.info/static/kidnap/email.png"></p>
<p>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 ...</p>
<p>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</p>
<p>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.</p>
<h2>Conclusion</h2>
<p>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</p>How to get your first Enterprise customer as a Saas SMB company2020-07-10T12:00:00+02:002020-07-10T12:00:00+02:00Paultag:blog.luap.info,2020-07-10:/how-to-get-your-first-enterprise-customer-as-a-saas-smb-company.html<p>You have read my article on <a href="https://blog.luap.info/why-most-saas-companies-cant-be-successful-with-both-enterprise-and-smb-customers.html">the differences between Saas enterprise and Saas SMB</a> 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.</p>
<p>If you have read my article carefully you know that what …</p><p>You have read my article on <a href="https://blog.luap.info/why-most-saas-companies-cant-be-successful-with-both-enterprise-and-smb-customers.html">the differences between Saas enterprise and Saas SMB</a> 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.</p>
<p>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</p>
<h2>Understand that selling to this new type of customer is completely different</h2>
<p>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,...</p>
<p>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. </p>
<p>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.</p>
<p>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:</p>
<ul>
<li>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</li>
<li>You buy Tiktok or Instagram or Snapchat or ... and let them the autonomy to keep growing without interference</li>
</ul>
<p>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.</p>
<p>Remove from your brain how you are used to sell to small businesses, enterprise requires a complete different approach. </p>
<h2>Adapt your pitch</h2>
<p>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.</p>
<p>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.</p>
<p>Usually the sales cycle in enterprise is splitted in 3 phases:</p>
<ul>
<li>First phase, qualification of the prospect : does the prospect have the same vision as your company ? (usually a phone call)</li>
<li>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)</li>
<li>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</li>
</ul>
<p>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</p>
<p>To sum up :</p>
<ul>
<li>Be confident you are a credible solution</li>
<li>Don't talk about your product, instead talk about your vision</li>
<li>Listen to the prospect and create a trustfull discussion</li>
<li>Don't accept everything, stay as you are. The product is not going to change they need to adapt to you</li>
</ul>
<h2>Accept the consequences</h2>
<p>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.</p>
<p>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 </p>
<p>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</p>How to make sure to fail your startup2020-06-01T12:00:00+02:002020-06-01T12:00:00+02:00Paultag:blog.luap.info,2020-06-01:/how-to-make-sure-to-fail-your-startup.html<p><em>Ignorance</em> 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. </p>
<p>One issue with people who are ignorant …</p><p><em>Ignorance</em> 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. </p>
<p>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 : <a href="https://en.wikipedia.org/wiki/Four_stages_of_competence">Four stages of competence</a>.</p>
<p>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.</p>
<p>So instead of telling you how to succeed I will try to explain you how to fail</p>
<h2>Spend your time reading people explaining how to succeed</h2>
<p>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. </p>
<ul>
<li>The Steve Jobs quotes will help you explain to your friend why you are working on something that nobody cares about</li>
<li>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</li>
<li>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</li>
<li>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</li>
</ul>
<h2>Make a blog post explaining why you have 0 customers</h2>
<p>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 <a href="https://news.ycombinator.com/item?id=23033448">good one</a></p>
<h2>Don't promote your product or not on the good communities</h2>
<p>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.</p>
<p>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.</p>
<h2>Don't stick to an idea for more than 3 weeks</h2>
<p>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. </p>
<p>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'</p>
<h2>Choose a programming language and a market that you don't know</h2>
<p>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. </p>
<p>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.</p>
<h2>Do everything on your own and don't ask for help</h2>
<p>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.</p>
<p>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 ?</p>Tips to optimize django SQL queries2020-05-26T12:00:00+02:002020-05-26T12:00:00+02:00Paultag:blog.luap.info,2020-05-26:/tips-to-optimize-django-sql-queries.html<p>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.</p>
<p>Django has no way to optimize those …</p><p>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.</p>
<p>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 :</p>
<h2>Activate SQL logging in the console</h2>
<p>By doing so you can see all generated SQL, there are differnt ways of doing it, but here is my preferred approach :</p>
<p>Put that in your setttings.py</p>
<div class="highlight"><pre><span></span><span class="n">LOGGING</span> <span class="o">=</span> <span class="p">{</span>
<span class="s1">'version'</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
<span class="s1">'disable_existing_loggers'</span><span class="p">:</span> <span class="kc">False</span><span class="p">,</span>
<span class="s1">'handlers'</span><span class="p">:</span> <span class="p">{</span>
<span class="s1">'console'</span><span class="p">:</span> <span class="p">{</span>
<span class="s1">'class'</span><span class="p">:</span> <span class="s1">'logging.StreamHandler'</span><span class="p">,</span>
<span class="p">},</span>
<span class="p">},</span>
<span class="s1">'loggers'</span><span class="p">:</span> <span class="p">{</span>
<span class="s1">'django.db.backends'</span><span class="p">:</span> <span class="p">{</span>
<span class="s1">'level'</span><span class="p">:</span> <span class="s1">'DEBUG'</span><span class="p">,</span>
<span class="s1">'handlers'</span><span class="p">:</span> <span class="p">[</span><span class="s1">'console'</span><span class="p">],</span>
<span class="p">},</span>
<span class="s1">'django.db.template'</span><span class="p">:</span> <span class="p">{</span>
<span class="s1">'level'</span><span class="p">:</span> <span class="s1">'DEBUG'</span><span class="p">,</span>
<span class="s1">'handlers'</span><span class="p">:</span> <span class="p">[</span><span class="s1">'console'</span><span class="p">],</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="p">}</span>
</pre></div>
<p>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</p>
<h2>Use list()</h2>
<p>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. </p>
<ul>
<li>So if you are going to access all the elements of the returned query convert it to a list : <code>list(query_result)</code></li>
<li>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</li>
</ul>
<h2>Use <code>.select_related()</code></h2>
<p>Django makes it very easy to access a linked model, for example if an <code>order</code> object references a <code>customer1 object, you can do</code>order.customer` but doing so will make 2 SQL queries, one for the order and the other for customer.</p>
<p>Making on SQL request is most of the time faster, so when you fetch your order, you can add <code>.select_related</code> => </p>
<div class="highlight"><pre><span></span><span class="n">order</span> <span class="o">=</span> <span class="n">Order</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">select_related</span><span class="p">(</span><span class="s2">"customer"</span><span class="p">)</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">pk</span><span class="o">=</span><span class="mi">1</span><span class="p">)</span>
</pre></div>
<h2>Use '_id' for smaller results</h2>
<p>When on <code>order</code> object has a ForegeignKey <code>customer</code> for example, in a lot of case, you don't want to access the <code>customer</code> but only its id, so in that case, you can just do <code>customer.customer_id</code> </p>
<h2>Use <code>.values()</code> or <code>.only()</code></h2>
<p>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 <code>.values("attribute1","attribute2")</code> or <code>.only("attribute1","attribute2")</code>. </p>
<p><code>.only()</code> 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 <code>.values()</code> will create a dict, of the key,values of each object</p>
<h2>Use <code>.values_list(,flat=True)</code></h2>
<p>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 </p>
<div class="highlight"><pre><span></span><span class="nb">list</span><span class="p">(</span><span class="n">Customer</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">all</span><span class="p">()</span><span class="o">.</span><span class="n">values_list</span><span class="p">(</span><span class="s2">"id"</span><span class="p">,</span><span class="n">flat</span><span class="o">=</span><span class="kc">True</span><span class="p">))</span>
</pre></div>
<p>and this will return a list of ids</p>
<h2>Use a second db to manage your analytics query</h2>
<p>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:</p>
<div class="highlight"><pre><span></span><span class="n">Orders</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">using</span><span class="p">(</span><span class="s2">"replica"</span><span class="p">)</span><span class="o">.</span><span class="n">count</span><span class="p">()</span>
</pre></div>
<h2>Use <code>.exists()</code> when you want to know if an object exists</h2>
<p>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 <code>.exists()</code> at the end of the query</p>
<h2>Don't use <code>.count()</code> if you want to know if a result has more than x elements</h2>
<p>Usually if you want to know if a query has more than x elements you will do something like that <code>Order.objects.all().count() >x</code> this is not good, because you force the db to compute all elements, instead what you can do is :</p>
<div class="highlight"><pre><span></span><span class="nb">len</span><span class="p">(</span><span class="nb">list</span><span class="p">(</span><span class="n">Order</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">values_list</span><span class="p">(</span><span class="s2">"id"</span><span class="p">,</span><span class="n">flat</span><span class="o">=</span><span class="kc">True</span><span class="p">)[:</span><span class="n">x</span><span class="o">+</span><span class="mi">1</span><span class="p">]))</span> <span class="o">==</span> <span class="n">x</span> <span class="o">+</span><span class="mi">1</span>
</pre></div>
<p>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</p>
<h2>Remove index from ForeignKey with small number distinct of values</h2>
<p>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:</p>
<div class="highlight"><pre><span></span><span class="n">Class</span> <span class="n">Address</span><span class="p">(</span><span class="n">models</span><span class="o">.</span><span class="n">Model</span><span class="p">):</span>
<span class="n">country</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">ForeignKey</span><span class="p">(</span><span class="s2">"Country"</span><span class="p">,</span><span class="n">db_index</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span>
<span class="o">...</span>
</pre></div>
<h2>Use EXPLAIN ANALYZE</h2>
<p>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:</p>
<div class="highlight"><pre><span></span>python manage.py dbshell
> EXPLAIN ANALYZE SELECT id, ...
</pre></div>
<h2>Use <code>.save(update_field=[])</code> to update only some attributes</h2>
<p>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 </p>
<div class="highlight"><pre><span></span><span class="n">command</span><span class="o">.</span><span class="n">save</span><span class="p">(</span><span class="n">update_fields</span><span class="o">=</span><span class="p">[</span><span class="s2">"price"</span><span class="p">,</span><span class="s2">"quantity"</span><span class="p">])</span>
</pre></div>
<h2>Use <code>.update()</code> to update several rows at once</h2>
<p>When you want to update a set of object at once, instead of iterating and saving each object, you can use <code>.update()</code> on the queryset : </p>
<div class="highlight"><pre><span></span><span class="n">Order</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">all</span><span class="p">()</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="n">price</span><span class="o">=</span><span class="s2">"1"</span><span class="p">)</span>
</pre></div>
<h2>Use <code>.values_list()</code> with relations</h2>
<p>Instead of using <code>.select_related()</code> or <code>.prefetch_related()</code> you can directly tell which relation you want in the result, for example</p>
<div class="highlight"><pre><span></span><span class="n">Order</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">all</span><span class="p">()</span><span class="o">.</span><span class="n">select_related</span><span class="p">(</span><span class="s2">"id"</span><span class="p">,</span><span class="s2">"address__city"</span><span class="p">,</span><span class="s2">"addresse__city__country"</span><span class="p">)</span>
</pre></div>
<p>Will return the city, the country and the id of the order in one query</p>
<h2>Use <code>F()</code> to rename an attribute</h2>
<p>Some time you want to rename db fieldname to a more customer friendly one, one way to do that, is to use the <code>F()</code> function:</p>
<div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">django.db.models</span> <span class="kn">import</span> <span class="n">F</span>
<span class="n">cc</span><span class="o">=</span> <span class="n">Order</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">all</span><span class="p">()</span><span class="o">.</span><span class="n">annotate</span><span class="p">(</span><span class="n">order_reference</span> <span class="o">=</span> <span class="n">F</span><span class="p">(</span><span class="s2">"command_order_db_field_not_customerfriendly"</span><span class="p">))</span>
<span class="nb">print</span><span class="p">(</span><span class="n">cc</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">order_reference</span><span class="p">)</span>
</pre></div>
<h2>Override <code>.get_queryset()</code> in django admin</h2>
<p>Wen you want to display related object information (or if the <strong>str</strong> 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</p>
<div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">WebsiteAdmin</span><span class="p">(</span><span class="n">admin</span><span class="o">.</span><span class="n">ModelAdmin</span><span class="p">):</span>
<span class="n">model</span> <span class="o">=</span> <span class="n">Website</span>
<span class="n">list_display</span> <span class="o">=</span> <span class="p">[</span><span class="s2">"__str__"</span><span class="p">,</span><span class="s2">"nb_jobs"</span><span class="p">]</span>
<span class="k">def</span> <span class="nf">nb_jobs</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span><span class="n">obj</span><span class="p">):</span>
<span class="k">return</span> <span class="n">obj</span><span class="o">.</span><span class="n">nb_jobs</span>
<span class="k">def</span> <span class="nf">get_queryset</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">):</span>
<span class="n">queryset</span> <span class="o">=</span> <span class="nb">super</span><span class="p">(</span><span class="n">WebsiteAdmin</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span><span class="o">.</span><span class="n">get_queryset</span><span class="p">(</span><span class="n">request</span><span class="p">)</span>
<span class="kn">from</span> <span class="nn">django.db.models</span> <span class="kn">import</span> <span class="n">Count</span>
<span class="k">return</span> <span class="n">queryset</span><span class="o">.</span><span class="n">annotate</span><span class="p">(</span><span class="n">nb_jobs</span> <span class="o">=</span> <span class="n">Count</span><span class="p">(</span><span class="s2">"jobs"</span><span class="p">))</span>
</pre></div>
<h2>Don't use <code>first()</code> or <code>last()</code> when you want to access any element of the query</h2>
<p>Using <code>last()</code> or <code>first()</code> on a query will force an order by clause in SQL, instead if you want to get any element from the query do that:</p>
<div class="highlight"><pre><span></span><span class="k">try</span><span class="p">:</span>
<span class="n">obj</span><span class="o">=</span><span class="n">Order</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">name__icontains</span><span class="o">=</span><span class="s2">"paul"</span><span class="p">)[</span><span class="mi">0</span><span class="p">]</span>
<span class="k">except</span> <span class="ne">IndexError</span><span class="p">:</span>
<span class="n">obj</span> <span class="o">=</span> <span class="kc">None</span>
<span class="k">if</span> <span class="n">obj</span><span class="p">:</span>
<span class="o">...</span>
</pre></div>
<p>or</p>
<div class="highlight"><pre><span></span><span class="n">obj</span><span class="o">=</span><span class="nb">list</span><span class="p">(</span><span class="n">Order</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">name__icontains</span><span class="o">=</span><span class="s2">"paul"</span><span class="p">)[:</span><span class="mi">1</span><span class="p">])</span>
<span class="k">if</span> <span class="n">obj</span><span class="p">:</span>
<span class="n">obj</span> <span class="o">=</span> <span class="n">obj</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span>
<span class="o">...</span>
</pre></div>
<p>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</p>How I track my life2020-05-16T12:00:00+02:002020-05-16T12:00:00+02:00Paultag:blog.luap.info,2020-05-16:/how-i-track-my-life.html<p>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 ? ...</p>
<p>I ask myself those questions all the …</p><p>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 ? ...</p>
<p>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:</p>
<ul>
<li>Track how I spend my time (starting in Dec 2014)</li>
<li>Track my position in real time (starting in Dec 2014)</li>
<li>Track my mood (starting 15 May 2019)</li>
</ul>
<h2>Tracking my position</h2>
<p>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 <a href="https://gpslogger.app/">GPS Logger</a>, 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. </p>
<p>I use the <code>custom url</code> 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.</p>
<p>I also save a location every 30 minutes, which is almost real time without draining too much battery. </p>
<p>Finally, I built a small interface to see the locations I have been to:</p>
<p><img alt="map of world" src="https://blog.luap.info/static/track-my-life/map-of-world.png"></p>
<p>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.</p>
<h2>Tracking of my mood</h2>
<p>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:</p>
<ul>
<li>Auto sync the data on my server, </li>
<li>Can customize the scale</li>
<li>Can rate my end of day, and my sleep</li>
<li>Can note other things every day (like if I'm injured and where, or a special event happend in my life)</li>
</ul>
<p>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.</p>
<p>There is a shortcut to the sheet on my home screen and the sheet is structured that way :</p>
<p><img src="https://blog.luap.info/static/track-my-life/excel.jpeg" alt="Excel" style="max-width:500px;display:block;margin:auto"/></p>
<p>The columns are :</p>
<ul>
<li>Date </li>
<li>Grade of the night on 10</li>
<li>Comment of the night</li>
<li>Grade of the day on 10</li>
<li>Comment of the day</li>
<li>My gym workout of the day</li>
<li>The list of my current injuries</li>
</ul>
<p>Here is the grade scale I use:</p>
<ol>
<li>I'm at the hospital dying</li>
<li>I don't see any interest in life</li>
<li>I'm depressed</li>
<li>I'm disapointed</li>
<li>This was not a good day</li>
<li>Normal day</li>
<li>Good day</li>
<li>Successful day</li>
<li>Once in a lifetime event</li>
<li>Impossible to reach</li>
</ol>
<p>6 being the neutral point you can extrapolate what is means for the sleep quality.</p>
<p>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.</p>
<p>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</p>
<p>You can see the evolution of my mood on the last 12 months (Using <a href="https://www.metabase.com/">Metabase</a> on the db)</p>
<p><img alt="Mood of day" src="https://blog.luap.info/static/track-my-life/mood_day.png"></p>
<h2>Tracking of time/activities</h2>
<p>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. </p>
<p>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.</p>
<p>For tracking my time I use an app called <a href="http://timetrack.io/">Timetrack</a> 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. </p>
<p>The app has several time tracking feature but I use only two of them:</p>
<ul>
<li>The ability to start and stop an activity</li>
<li>Generating on-demand reports</li>
</ul>
<p>Here is the main screen:</p>
<p><img src="https://blog.luap.info/static/track-my-life/timetrack_main.jpeg" alt="Excel" style="max-width:500px;display:block;margin:auto"/></p>
<p>At the top you have the current activity, you can stop it, and you can click on an icon below to start another activity.</p>
<p>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.</p>
<p>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 :</p>
<ul>
<li>Time sleeping (from putting my phone in flight mode to waking up, I would like to get time asleep)</li>
<li>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)</li>
<li>Time working for my side projects, one activity per different side project</li>
<li>Time spent on my computer not doing something listed here</li>
<li>Time spent on my phone</li>
<li>Time taking my shower</li>
<li>Time eating (splitted if just eating or restaurant eating)</li>
<li>Time doing sport (splitted by which sport I do)</li>
<li>Time playing the piano</li>
<li>Time spending in transportation (splitted by mean of transportation, car, walk, bike, bus, plane, ship)</li>
<li>Time masturbating</li>
<li>Time going shopping</li>
<li>Time going to the supermarket</li>
<li>Time having sex</li>
<li>Time doing social activities</li>
<li>Time doing to the doctor</li>
<li>Time watching TV</li>
<li>Time spending time with my girlfriend</li>
<li>Time doing DIY stuff</li>
<li>Time washing house</li>
<li>Time reading</li>
<li>If there is no category for what I'm doing there is an activity called "anything" for anything that I don't care tracking</li>
</ul>
<p>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 ....</p>
<p>All the data I track is synced with my server in real time in the same db than the gps points and my mood.</p>
<p>I use the data I get from my time tracking to do two kinds of things:</p>
<ul>
<li>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)</li>
<li>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.</li>
</ul>
<p>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.</p>
<h2>Technical details</h2>
<p>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 ;) </p>
<h2>Findings</h2>
<p>There is a correlation between the number of hours I sleep and my night mood:</p>
<p><img alt="Night mood vs duration of night" src="https://blog.luap.info/static/track-my-life/sleep-mood.png"></p>
<p>There is also a correlation betwen the number of hours I work per week at my main job and my happiness</p>
<p><img alt="Number of hours of work vs happyness" src="https://blog.luap.info/static/track-my-life/work-happyness.png"></p>
<p>I sleep about 8.7 hours per night, and this is about similar on the last 4 years</p>
<p><img alt="Number of hours of sleep" src="https://blog.luap.info/static/track-my-life/sleep.png"></p>
<p>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 ...</p>
<p><img alt="week injured" src="https://blog.luap.info/static/track-my-life/gym.png"></p>
<h2>Conclusion</h2>
<p>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.</p>The different career paths to become product manager2020-05-09T23:00:00+02:002020-05-09T23:00:00+02:00Paultag:blog.luap.info,2020-05-09:/the-different-career-paths-to-become-product-manager.html<p>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 …</p><p>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.</p>
<p>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.</p>
<p>A product manager is in brief someone who is able to :</p>
<ul>
<li>Detect and understand issues or opportunities</li>
<li>Talk to people who are going to help him understand and progress on this topic</li>
<li>Create a strategy and be a good communicator to demonstrate the importance of this topic</li>
<li>Define objectives, and lead a team of people to solve these objectives</li>
</ul>
<p>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.</p>
<p>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'.</p>
<h2>The different career paths</h2>
<h3>Former dev/designer/data analyst/product marketing manager/project manager</h3>
<p>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.</p>
<h3>Former entrepreuneur/side project builder/charity leader</h3>
<p>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. </p>
<p>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</p>
<h3>Former Consultant</h3>
<p>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</p>
<h3>Product manager assistant internship</h3>
<p>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.</p>
<h2>Conclusion</h2>
<p>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</p>
<p>And don't forget that the best way to demonstrate a quality during an hiring process is to build yourself and show it. </p>
<ul>
<li>If you are a former designer, learn python and create a simple app to store your mood of the day for example</li>
<li>If you are a former coder, create a website for your side project with a landind page and pricing page for example</li>
<li>If you are a consultant, learn to code and build a simple app to gather your expenses for example</li>
</ul>
<p>...</p>
<p>Good luck</p>How to be a good product manager in a bad product company?2020-04-14T12:00:00+02:002020-04-14T12:00:00+02:00Paultag:blog.luap.info,2020-04-14:/how-to-be-a-good-product-manager-in-a-bad-product-company.html<p>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 …</p><p>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.</p>
<p>Even in those companies you will find product managers, why ? for mainly two reasons:</p>
<ul>
<li>Some investors or advisors told the CEO that if you he wants to innovate he needs to have product managers</li>
<li>There is a misconception that good product managers are people who build things that customers wants (or say they want)</li>
</ul>
<p>But what is a good product manager ?</p>
<p>Someone that is successful at building products (the s is important, you can't be successful every times) that <a href="https://svpg.com/inspired-how-to-create-products-customers-love/">customers love</a></p>
<p>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 <em>If I had asked people what they wanted, they would have said faster horses.</em></p>
<p>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.</p>
<p>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.</p>
<p>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 <a href="https://svpg.com/empowered-product-teams/">this article of Marty Cagan</a></p>
<p>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 ...</p>
<p>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.</p>
<p>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.</p>
<p>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 ?</p>
<p><em>Risk is part of any innovation</em>, 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.</p>
<p>Take risks, and when you fail, accept it and try again better.</p>
<p>You have that kind of issue and don't know how to solve it ? send me a email</p>Learn to code, where to start ?2020-04-08T12:00:00+02:002020-04-08T12:00:00+02:00Paultag:blog.luap.info,2020-04-08:/learn-to-code-where-to-start.html<p>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 …</p><p>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.</p>
<h2>Some definitions</h2>
<ul>
<li>A <em>programming language</em> is more or less a language that allows someone to talk to a computer, for example in this language you could have a word <code>print</code> wich displays something on the screen, so when you write <code>print hello</code> inside a <em>language interpreter</em> the computer will show <code>hello</code></li>
<li>A <em>language interpreter</em> 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 <code>print("Display this message!!")</code> and typed Enter and the programm displayed <code>Display this message!!</code>
<img alt="interpreter" src="https://blog.luap.info/static/learn-to-code/interpreter.png"></li>
<li>A <em>programmer</em> ( 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.</li>
</ul>
<p>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.</p>
<p>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.</p>
<h2>You want to create a website</h2>
<p>If you want to create a website there are several languages to learn:</p>
<ul>
<li>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</li>
<li>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?</li>
</ul>
<p>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</p>
<div class="highlight"><pre><span></span><span class="nt"><html></span>
<span class="nt"><body></span>
<span class="nt"><div></span>Hello this is the first text<span class="nt"></div></span>
<span class="nt"><div</span> <span class="na">style=</span><span class="s">"color:blue"</span><span class="nt">></span>And this text is red<span class="nt"></div></span>
<span class="nt"><button></span>Click on me <span class="nt"></div></span>
<span class="nt"></body></span>
<span class="nt"></html></span>
</pre></div>
<p><img alt="interpreter" src="https://blog.luap.info/static/learn-to-code/html-example.png"></p>
<p>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.</p>
<p>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 <em>domain name</em> for example "www.thisisthebestwebsite.com" for example you can go <a href="https://www.ovh.com/order/domain/?domain_name=&form_id=domain_search_form#/legacy/domain/search">here</a></p>
<p>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</p>
<h3>If you want to make your website dynamic</h3>
<p>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. </p>
<p>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</p>
<p>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.</p>
<p>So same as HTML and CSS, type 'learn javascript' on Google to find ressources</p>
<h3>Your want a website which can save information</h3>
<p>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</p>
<p>So which language to choose ? </p>
<p>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.</p>
<p>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</p>
<p>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. </p>
<h2>You want to create a mobile app</h2>
<p>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.</p>
<p>There are 3 possibles types of mobile app:</p>
<ol>
<li>An app for Android only</li>
<li>An app for IOS only</li>
<li>An app for both Android and IOS</li>
</ol>
<p>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.</p>
<p>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</p>
<p>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</p>
<p>If you picked 2., then there is only two ways, Swift or Objective-C</p>
<p>If you picked 1., then the two most popular ways are : Kotlin or Java </p>
<h2>You want to create a desktop app</h2>
<p>This is probably the most complex thing to build, an example of desktop app is Microsoft Word, Photosphop, Notepad ++.</p>
<p>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.</p>Why most Saas companies can't be successful with both enterprise and SMB customers ?2020-03-21T12:00:00+01:002020-03-21T12:00:00+01:00Paultag:blog.luap.info,2020-03-21:/why-most-saas-companies-cant-be-successful-with-both-enterprise-and-smb-customers.html<p><em>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 …</em></p><p><em>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</em></p>
<h2>What is Saas, SMB and Enterprise</h2>
<p>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. </p>
<p>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.</p>
<p>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.</p>
<p>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)</p>
<p>Examples of SMB and Enterprise companies : </p>
<ul>
<li>Messaging : <a href="https://slack.com">Slack</a> (SMB), <a href="https://products.office.com/en-us/microsoft-teams/group-chat-software">Micorosft Team</a> (Enterprise)</li>
<li>File stockage : <a href="https://www.dropbox.com/business">Dropbox</a> SMB, <a href="https://www.box.com/en-gb/home">Box</a> Enterprise</li>
<li>Email API : <a href="https://www.mailgun.com/">MailGun</a> SMB, <a href="https://www.sparkpost.com/">SparkPost</a> Enterprise</li>
<li>HR Tools: <a href="https://www.bamboohr.com/">BambooHR</a> SMB, <a href="https://www.workday.com/en-us/homepage.html">Workday</a> Enteprise</li>
<li>Microsoft 365 : <a href="https://www.microsoft.com/en-us/microsoft-365/business">Business version</a> SMB, <a href="https://www.microsoft.com/en-us/microsoft-365/enterprise">Enterprise version</a> Enterprise</li>
</ul>
<h2>SMB customers of Saas products</h2>
<p>Usually the way SMB customers look for a product can be summarized in two points:</p>
<ul>
<li>It should be the cheapest as possible</li>
<li>It should deliver the functionalities needed</li>
</ul>
<p>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:</p>
<ul>
<li>Transparent pricing, offer a free plan and usually a cost calculator and has self service onboarding</li>
<li>Very clear website with a list of all the functionalities of the product</li>
<li>Most of the employees working in marketing, product and engineering</li>
<li>High churn</li>
<li>No engagement</li>
<li>Product minded company</li>
</ul>
<p>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.</p>
<p>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</p>
<h2>Enterprise customers of Saas products</h2>
<p>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 :</p>
<ul>
<li>Find a company with a similar long term vision as themselves</li>
<li>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</li>
<li>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 </li>
</ul>
<p>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:</p>
<ul>
<li>Sales, CSM, and Marketing account for most of companies staff</li>
<li>Product doesn't look good, is not easy to implement and not easy to use but can be customized very deeply</li>
<li>Low churn</li>
<li>Prices are not public and are often discounted depending on customers</li>
<li>Long term engagement (1 year -10 years)</li>
<li>Sales/Marketing minded organization</li>
</ul>
<p>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.</p>
<h2>Why selling successfully to both customer types is hard ?</h2>
<p>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. </p>
<p>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.</p>
<p>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 </p>How to be successful on dating apps (Girls version)2020-03-02T12:00:00+01:002020-03-02T12:00:00+01:00Paultag:blog.luap.info,2020-03-02:/how-to-be-successful-on-dating-apps-girls-version.html<p>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. </p>
<p>The article is aiming at describing the best way to use dating apps when you …</p><p>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. </p>
<p>The article is aiming at describing the best way to use dating apps when you are a girl</p>
<h2>What are the existing dating apps ?</h2>
<p>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. </p>
<p>There are basically two kind of datings apps :</p>
<ol>
<li>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</li>
<li>Meetic like (Meeting, Match, OkCupid, SeekingArangement, AshleyMadison,...) : These are apps in which the writing conversation and the appearance is most important</li>
<li>Niche app (the league,...) : They don't have a lot of users, they are centered on one specific topic</li>
</ol>
<p>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.</p>
<p>So far nothing new</p>
<h2>How to use Tinder-like apps efficiently</h2>
<p>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</p>
<p>The explanation of that is simple:</p>
<p>Most guys on dating apps want love but will end up having fun.</p>
<p>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).</p>
<p>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.</p>
<p>There is a good article about Gini coefficient applied to dating <a href="https://quillette.com/2019/03/12/attraction-inequality-and-the-dating-economy/">here</a> that explains the issue</p>
<p>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</p>
<p>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.</p>
<p>Don't use a Tinder-like app to find a serious relationship you will be disapointed</p>
<h2>How to use Meetic-like apps efficiently</h2>
<p>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. </p>
<p>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.</p>
<p>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.</p>
<h2>Conclusion</h2>
<p>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.</p>Travelling with 24" monitors2020-02-20T13:27:00+01:002020-02-20T13:27:00+01:00Paultag:blog.luap.info,2020-02-20:/travelling-with-24-monitors.html<p>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 …</p><p>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.</p>
<p><img alt="3 screens" src="https://blog.luap.info/static/monitors/example.jpg"></p>
<p>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 ? </p>
<p>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</p>
<p>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.</p>
<p>I had to find something so that:</p>
<ul>
<li>The total weight is less than 12kg</li>
<li>The dimension is be minimal enough to enter in a standard checked baggage</li>
<li>The Y position of each screen is still adjustable to adapt to different desks in different places</li>
<li>The setup is easy to mount and unmount</li>
<li>Everything is protected during transport</li>
</ul>
<p>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.</p>
<p>I had only one last option, disassemble the monitor and remove anything that is useless.</p>
<p>There a four parts to my journey:</p>
<ol>
<li>How to make the monitors lighter</li>
<li>How do I keep the Y position of the monitor adjustable </li>
<li>How do I plug everything on a lenovo X1 Carbon without an external GPU</li>
<li>How can I have only one power cable instead of 3</li>
<li>How do I transport all that safely</li>
</ol>
<h2>1. How to make the monitors lighter</h2>
<p>A monitor is composed of :</p>
<ul>
<li>a plastic case</li>
<li>a metallic case that keep all the pieces of the lcd screen together</li>
<li>a lcd panel (this is basically a rigid sheet in my case)</li>
<li>a backlight (in my case this is a plexiglass sheet with a row of leds)</li>
<li>a power block</li>
</ul>
<p>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 :
<img alt="Screen" src="https://blog.luap.info/static/monitors/screen1.jpg"></p>
<p>Now each monitor was about 1.5kg !!!!</p>
<h2>2. How do I keep the Y position of the monitor adjustable</h2>
<p>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</p>
<p>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.</p>
<p>Here is what I build :
<img alt="Wood screen support" src="https://blog.luap.info/static/monitors/support1.jpg"></p>
<p>The middle part (in black) is not fixed and can move from the bottom to the top if the shaft,</p>
<p>The bottom is 4 small brackets attached together with some wire</p>
<p>And thats all.</p>
<p>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 </p>
<p>I can unmount everything and just get a shaft and a handful of accessories while travelling</p>
<h2>3. How do I plug everything on a lenovo X1 Carbon without an external GPU</h2>
<p>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.</p>
<p>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 : <a href="https://www.amazon.com/Sabrent-Adapter-Supports-Monitors-Compatible/dp/B07H11ZHPW">This one on Amazon</a>
Works great so far !</p>
<h2>4. How can I have only one power cable instead of 3</h2>
<p>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.
<img alt="one cable to two cables" src="https://blog.luap.info/static/monitors/cable.jpg"></p>
<h2>5. How do I transport all that safely</h2>
<p>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):
<img alt="screens wrapped" src="https://blog.luap.info/static/monitors/wrapped.jpg">
<img alt="screens wrapped in suitcase" src="https://blog.luap.info/static/monitors/suitcase.jpg"></p>
<h2>Conclusion</h2>
<p>The whole thing take me 8min to fold it and 12min to unfold it. It is about 12kg, it works great so far</p>
<p>Two ways of improvement: find something better designed for the support, and buy some lighter screens</p>
<p><img alt="3 screens" src="https://blog.luap.info/static/monitors/exampleon2.jpg"></p>