<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Mbenga</title>
    <description>The latest articles on DEV Community by Mbenga (@jeremymonatte).</description>
    <link>https://dev.to/jeremymonatte</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F426986%2F74533e78-8e23-47b6-8751-e3ff8428f9bb.jpeg</url>
      <title>DEV Community: Mbenga</title>
      <link>https://dev.to/jeremymonatte</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/jeremymonatte"/>
    <language>en</language>
    <item>
      <title>Should we get a AI-noindex ?</title>
      <dc:creator>Mbenga</dc:creator>
      <pubDate>Mon, 20 Feb 2023 10:25:17 +0000</pubDate>
      <link>https://dev.to/jeremymonatte/should-we-get-a-ai-noindex--53p6</link>
      <guid>https://dev.to/jeremymonatte/should-we-get-a-ai-noindex--53p6</guid>
      <description>&lt;p&gt;Artificial Intelligences like Chat-GPT &amp;amp; Bard work by happily feeding on the entire Internet. Many of the sites derive some (if not all) of their funding from advertising revenue. Unfortunately, once the info has been ingested by the AI, it can be returned an infinite number of times without offering compensation to the original sites, wich won't get any visit anymore.&lt;/p&gt;

&lt;p&gt;This also raises a question of intellectual property. Currently, any creation you post on the internet can be freely used to feed an AI, without even giving you the opportunity to give or refuse your consent.&lt;/p&gt;

&lt;p&gt;This is why I come to ask myself the following questions:&lt;br&gt;
Shouldn't we put in place a system to indicate that we refuse or authorize indexing by AIs? And if so, what form should it take? Should this take the form of a tag on the site, like the NoIndex currently? or a license file? or something else ?&lt;/p&gt;

&lt;p&gt;I look forward to reading your response&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>ai</category>
    </item>
    <item>
      <title>Vous souhaitez un article sur un sujet ? Dis-moi, je vais l'écrire</title>
      <dc:creator>Mbenga</dc:creator>
      <pubDate>Tue, 24 May 2022 12:36:12 +0000</pubDate>
      <link>https://dev.to/jeremymonatte/vous-souhaitez-un-article-sur-un-sujet-dis-moi-je-vais-lecrire-332j</link>
      <guid>https://dev.to/jeremymonatte/vous-souhaitez-un-article-sur-un-sujet-dis-moi-je-vais-lecrire-332j</guid>
      <description>&lt;p&gt;...Ou du moins je vais essayer 😅&lt;/p&gt;

&lt;p&gt;J'aime partager des connaissances et en tirer des discussions. Mais depuis quelques semaines, j'ai eu un manque d'inspiration.&lt;/p&gt;

&lt;p&gt;Je ne sais pas trop quels sujets pourraient vous intéresser. Je vous demande donc aujourd'hui si vous avez un sujet sur lequel vous souhaitez obtenir des informations.&lt;/p&gt;

&lt;p&gt;BTW, je suis un développeur mixte (Back &amp;amp; Front), travaillant avec PHP, JS et évidemment HTML/SCSS, j'aime découvrir de nouveaux outils et le genre d'intérêt pour la vie privée. Voilà quelques exemples de sujets où je peux approfondir (tutoriel sur un point précis, explication d'une mécanique précise...). Mais si vous avez une idée sur un autre point, proposez les aussi, je vais y jeter un œil, et ça peut aussi inspirer quelqu'un d'autre&lt;/p&gt;

&lt;p&gt;PS : J'écris toujours mon article en français &amp;amp; anglais, donc si vous voulez un article que vous ne trouvez pas spécifiquement dans l'une de ces langues, c'est parti&lt;/p&gt;

</description>
      <category>french</category>
      <category>discuss</category>
      <category>blogging</category>
    </item>
    <item>
      <title>You want an article on a topic ? Tell me, I'll write it</title>
      <dc:creator>Mbenga</dc:creator>
      <pubDate>Tue, 24 May 2022 12:34:51 +0000</pubDate>
      <link>https://dev.to/jeremymonatte/you-want-an-article-on-a-topic-tell-me-ill-write-it-58p2</link>
      <guid>https://dev.to/jeremymonatte/you-want-an-article-on-a-topic-tell-me-ill-write-it-58p2</guid>
      <description>&lt;p&gt;...Or at least I'll try 😅&lt;/p&gt;

&lt;p&gt;I love to share some knowledge and get discussion about it. But from a few weeks, I got a miss of inspiration. &lt;/p&gt;

&lt;p&gt;I don't really know which topics could interest you. So I ask you today if you got some topic where you want some information.&lt;/p&gt;

&lt;p&gt;BTW, I a mixed developer (Back &amp;amp; Front), working with PHP, JS and obviously HTML/SCSS, I love to discover new tools and the kind of interest about privacy. That's some examples of topics where I can go pretty deep (a tutorial on a specific point, explanation of a specific mecanic...). But if you got any idea on another point, let's ask them too, I'll take a look on it, and that can also inspire somebody else&lt;/p&gt;

&lt;p&gt;PS: I always write my article in French &amp;amp; English, so if you want an article you can't find specifically in one of those languages, let's go&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>blogging</category>
    </item>
    <item>
      <title>3 nices features on PHP8.0</title>
      <dc:creator>Mbenga</dc:creator>
      <pubDate>Thu, 31 Mar 2022 12:24:14 +0000</pubDate>
      <link>https://dev.to/jeremymonatte/3-nices-features-on-php80-4pn2</link>
      <guid>https://dev.to/jeremymonatte/3-nices-features-on-php80-4pn2</guid>
      <description>&lt;p&gt;I just want to share with you really cool feature off PHP 8.0&lt;/p&gt;

&lt;h2&gt;
  
  
  Named Argument
&lt;/h2&gt;

&lt;p&gt;The use-case of this feature is when you want to use a function who has a lot of optional argument like this one:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="k"&gt;function&lt;/span&gt; &lt;span class="n"&gt;exampleFunction&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="nv"&gt;$param1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="nv"&gt;$param2&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"param2"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="nv"&gt;$param3&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"param3"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; 
    &lt;span class="nv"&gt;$param4&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"param4"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="c1"&gt;# some actions&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;If you need to use this function with the default parameters, except the last one, you used to do something like:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;    &lt;span class="nf"&gt;exampleFunction&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;$param1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="s2"&gt;"param2"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="s2"&gt;"param3"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="s2"&gt;"param4-v2"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;That's long. Too long. But don't panic. With php8.0 You don't have to repeat all arguments anymore. You could just pass the required parameters, and the optional you want by naming them. That would look like this:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;    &lt;span class="nf"&gt;exampleFunction&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;$param1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;param4&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;&lt;span class="s2"&gt;"param4-v2"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h2&gt;
  
  
  Nullsafe operator
&lt;/h2&gt;

&lt;p&gt;This time, we'll talk about objects. If you want to access to the methods of an object, you should check if the object is initialized. To do that,you would probably do something like:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;isset&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;$parent&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="nv"&gt;$parent&lt;/span&gt;&lt;span class="o"&gt;!==&lt;/span&gt; &lt;span class="kc"&gt;null&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nv"&gt;$parent&lt;/span&gt;&lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="nf"&gt;method&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;But now you could just write :&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="nv"&gt;$parent&lt;/span&gt;&lt;span class="o"&gt;?-&amp;gt;&lt;/span&gt;&lt;span class="nf"&gt;method&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;That's particularly useful if you need to access a value by chaining methods. For example, in an MVC, if you want to access an attribute of the returned value of a fetch method of your model in your controller, you could write:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="nv"&gt;$this&lt;/span&gt;&lt;span class="o"&gt;?-&amp;gt;&lt;/span&gt;&lt;span class="n"&gt;model&lt;/span&gt;&lt;span class="o"&gt;??-&amp;gt;&lt;/span&gt;&lt;span class="nf"&gt;fetch&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;$id&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="o"&gt;?-&amp;gt;&lt;/span&gt;&lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h2&gt;
  
  
  Simplification of writing class
&lt;/h2&gt;

&lt;p&gt;If you write a class in PHP, you have to define your attributes and give them a security level. Formerly, that was done outside the __constructor. That means you can't assign value based on the __constructor's argument at the same time you defined that attributes.&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Example&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;public&lt;/span&gt; &lt;span class="kt"&gt;float&lt;/span&gt; &lt;span class="nv"&gt;$attribute&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="k"&gt;public&lt;/span&gt; &lt;span class="k"&gt;function&lt;/span&gt; &lt;span class="n"&gt;__construct&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="kt"&gt;float&lt;/span&gt; &lt;span class="nv"&gt;$attribute&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nv"&gt;$this&lt;/span&gt;&lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="n"&gt;attribute&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;$attribute&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Since PHP 8.0, you can define your attributes directly in the constructor:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Example&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;public&lt;/span&gt; &lt;span class="k"&gt;function&lt;/span&gt; &lt;span class="n"&gt;__construct&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="k"&gt;public&lt;/span&gt; &lt;span class="kt"&gt;float&lt;/span&gt; &lt;span class="nv"&gt;$attribute&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h3&gt;
  
  
  Thank's for reading
&lt;/h3&gt;

&lt;p&gt;Have a good day&lt;br&gt;
Kisses&lt;/p&gt;

&lt;p&gt;French version of this post just here :&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag__link"&gt;
  &lt;a href="/jeremymonatte" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F426986%2F74533e78-8e23-47b6-8751-e3ff8428f9bb.jpeg" alt="jeremymonatte"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/jeremymonatte/3-fonctionnalites-cools-de-php-80-5ej" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;3 Fonctionnalités cools de PHP 8.0&lt;/h2&gt;
      &lt;h3&gt;Mbenga ・ Mar 31 '22&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#php&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#productivity&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#french&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;



</description>
      <category>php</category>
      <category>webdev</category>
      <category>productivity</category>
    </item>
    <item>
      <title>3 Fonctionnalités cools de PHP 8.0</title>
      <dc:creator>Mbenga</dc:creator>
      <pubDate>Thu, 31 Mar 2022 12:24:06 +0000</pubDate>
      <link>https://dev.to/jeremymonatte/3-fonctionnalites-cools-de-php-80-5ej</link>
      <guid>https://dev.to/jeremymonatte/3-fonctionnalites-cools-de-php-80-5ej</guid>
      <description>&lt;p&gt;Je veux juste vous montrer quelques fonctionnalités cool de PHP 8.0&lt;/p&gt;

&lt;h2&gt;
  
  
  Argument nommé
&lt;/h2&gt;

&lt;p&gt;Vous voyez quant vous voulez utiliser une fonction avec de multiple argument optionnels ?&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="k"&gt;function&lt;/span&gt; &lt;span class="n"&gt;exampleFunction&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="nv"&gt;$param1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="nv"&gt;$param2&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"param2"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="nv"&gt;$param3&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"param3"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; 
    &lt;span class="nv"&gt;$param4&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"param4"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="c1"&gt;# some actions&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Si vous voulez appeler cette fonction en laissant les paramètres par défaut, sauf le dernier, vous deviez jusque-là tous les répéter ;&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;    &lt;span class="nf"&gt;exampleFunction&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;$param1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="s2"&gt;"param2"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="s2"&gt;"param3"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="s2"&gt;"param4-v2"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;C'est bien trop long. Mais rassurez-vous, j'ai la solution pour vous. Avec Php 8.0, vous pouvez spécifier quel paramètre vous passé en donnant son nom. Cela permet de se soustraire à la contrainte de l'ordre des paramètres, et d'onc d'éviter de devoir réécrire tous les paramètres optionnels :&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;    &lt;span class="nf"&gt;exampleFunction&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;$param1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;param4&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;&lt;span class="s2"&gt;"param4-v2"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h2&gt;
  
  
  Nullsafe operateur
&lt;/h2&gt;

&lt;p&gt;Cette fois, on va parler d'objets. Is vous voulez accéder à la méthode d'un objet, vous devez vérifier que l'objet en question est bien initialisé. Pour cela vous allez surement écrire quelque chose qui ressemble à :&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;isset&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;$parent&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="nv"&gt;$parent&lt;/span&gt;&lt;span class="o"&gt;!=&lt;/span&gt; &lt;span class="kc"&gt;null&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nv"&gt;$parent&lt;/span&gt;&lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="nf"&gt;method&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Mais en fait, vous pourriez vous contenter d'écrire :&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="nv"&gt;$parent&lt;/span&gt;&lt;span class="o"&gt;?-&amp;gt;&lt;/span&gt;&lt;span class="nf"&gt;method&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;C'est particulièrement utile quand vous voulez accéder à une valeur en enchainant les méthodes.&lt;br&gt;
Par exemple, dans un MVC, si vous voulez accéder à un attribut de l'objet retourné par une méthode fetch d'un modèle, dans votre contrôler, is suffit d'écrire ;&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="nv"&gt;$this&lt;/span&gt;&lt;span class="o"&gt;?-&amp;gt;&lt;/span&gt;&lt;span class="n"&gt;model&lt;/span&gt;&lt;span class="o"&gt;??-&amp;gt;&lt;/span&gt;&lt;span class="nf"&gt;fetch&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;$id&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="o"&gt;?-&amp;gt;&lt;/span&gt;&lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h2&gt;
  
  
  Simplification de l'écriture des classes
&lt;/h2&gt;

&lt;p&gt;Si vous écrivez une classe en PHP, vous devez définir les attributs et leur niveau de confidentialité. Avant, vous deviez les définir en dehors du constructeur. Ce qui veut dire que vous ne pouviez pas définir et initialiser l'attribut en même temps avec une valeur dépendant des paramètres du constructeur.&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Example&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;public&lt;/span&gt; &lt;span class="kt"&gt;float&lt;/span&gt; &lt;span class="nv"&gt;$attribute&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="k"&gt;public&lt;/span&gt; &lt;span class="k"&gt;function&lt;/span&gt; &lt;span class="n"&gt;__construct&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="kt"&gt;float&lt;/span&gt; &lt;span class="nv"&gt;$attribute&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nv"&gt;$this&lt;/span&gt;&lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="n"&gt;attribute&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;$attribute&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Avec PHP 8.0, vous pouvez définir les attributs de votre class comme étant les paramètres de votre constructeur :&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Example&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;public&lt;/span&gt; &lt;span class="k"&gt;function&lt;/span&gt; &lt;span class="n"&gt;__construct&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="k"&gt;public&lt;/span&gt; &lt;span class="kt"&gt;float&lt;/span&gt; &lt;span class="nv"&gt;$attribute&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h3&gt;
  
  
  Merci de m'avoir lu
&lt;/h3&gt;

&lt;p&gt;Passez une bonne journée.&lt;br&gt;
Bisous.&lt;/p&gt;

&lt;p&gt;Vous pouvez retrouvez la version anglaise de ce post juste ici :&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag__link"&gt;
  &lt;a href="/jeremymonatte" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F426986%2F74533e78-8e23-47b6-8751-e3ff8428f9bb.jpeg" alt="jeremymonatte"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/jeremymonatte/3-nices-features-on-php80-4pn2" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;3 nices features on PHP8.0&lt;/h2&gt;
      &lt;h3&gt;Mbenga ・ Mar 31 '22&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#php&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#productivity&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;



</description>
      <category>php</category>
      <category>webdev</category>
      <category>productivity</category>
      <category>french</category>
    </item>
    <item>
      <title>Some shortcuts you’ll use each day on Windows </title>
      <dc:creator>Mbenga</dc:creator>
      <pubDate>Mon, 28 Feb 2022 16:07:50 +0000</pubDate>
      <link>https://dev.to/jeremymonatte/some-shortcuts-youll-use-each-day-on-windows-5cjh</link>
      <guid>https://dev.to/jeremymonatte/some-shortcuts-youll-use-each-day-on-windows-5cjh</guid>
      <description>&lt;h2&gt;
  
  
  Clipboard history
&lt;/h2&gt;

&lt;p&gt;Do you ever dream of a clipboard history ? You want to keep two or three elements in your clipboard and find them again later. You think to get many screenshot at the same time. &lt;/p&gt;

&lt;p&gt;So you should try Window +V&lt;/p&gt;

&lt;p&gt;This will let you enable the clipboard history. Once it’s activated, each time you you copy something, it’s added to your clipboard history. It can keep a few elements, depending on their size. &lt;/p&gt;

&lt;p&gt;Here you can just copy many things with Ctrl + C and paste many of them with Windows + V. &lt;/p&gt;

&lt;p&gt;You can also pin some to keep them in the end of the history, even if you copy a lot of them over.&lt;/p&gt;

&lt;h2&gt;
  
  
  Switch from Virtual Desktop
&lt;/h2&gt;

&lt;p&gt;Do you often use Virtuals Desktops on windows? If not, that’s probably caused it’s too long to switch between two of them. Going in Task View, clicking on the well screen. Too many actions for just one result. So what about only one shortcut to move to the left or right desktop ?&lt;/p&gt;

&lt;p&gt;I’ll give you this here : it’s Windows Ctrl → or Windows Ctrl ←. That’s as easy as that.&lt;br&gt;
Since I like you, i’ll give you two more shortcuts : &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
Windows Ctrl D creates a new desktop&lt;/li&gt;
&lt;li&gt;
Windows Ctrl F4 deletes the actual desktop, and move all windows to the previous one&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;
  
  
  Open the panel of specials characters
&lt;/h2&gt;

&lt;p&gt;Tired of browsing internet each time you need to use a special character to copy/paste it to your text ? You should just press Windows ;. It will open a panel where you can find special char, but also a gif search engine, and the list of emojis. You can just select one to add it to your text.&lt;/p&gt;
&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;That’s all for today. I hope those shortcuts would help you to save some time like they do for me. Tell me if it’s useful for you, and which one you already know. You can also leave a comment if you want some more article like that, maybe on another OS or software (why not on VS code, Google Chrome or adobe’s softwares).&lt;/p&gt;

&lt;p&gt;Have a good day.&lt;br&gt;
Kisses.&lt;/p&gt;

&lt;p&gt;French version of this post just here : &lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag__link"&gt;
  &lt;a href="/jeremymonatte" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--m0yHTqxQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://res.cloudinary.com/practicaldev/image/fetch/s--gAjgJ8fs--/c_fill%2Cf_auto%2Cfl_progressive%2Ch_150%2Cq_auto%2Cw_150/https://dev-to-uploads.s3.amazonaws.com/uploads/user/profile_image/426986/74533e78-8e23-47b6-8751-e3ff8428f9bb.jpeg" alt="jeremymonatte"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/jeremymonatte/quelques-raccourcis-claviers-que-vous-allez-adorer-9j8" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Quelques Raccourcis claviers que vous allez adorer &lt;/h2&gt;
      &lt;h3&gt;Mbenga ・ Feb 28 ・ 2 min read&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#productivity&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#shortcuts&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#windows&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#french&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


</description>
      <category>productivity</category>
      <category>shortcuts</category>
      <category>windows</category>
    </item>
    <item>
      <title>Quelques Raccourcis claviers que vous allez adorer </title>
      <dc:creator>Mbenga</dc:creator>
      <pubDate>Mon, 28 Feb 2022 16:07:43 +0000</pubDate>
      <link>https://dev.to/jeremymonatte/quelques-raccourcis-claviers-que-vous-allez-adorer-9j8</link>
      <guid>https://dev.to/jeremymonatte/quelques-raccourcis-claviers-que-vous-allez-adorer-9j8</guid>
      <description>&lt;h2&gt;
  
  
  Historique du presse-papier
&lt;/h2&gt;

&lt;p&gt;Vous voudriez pouvoir garder plusieurs éléments simultanément dans votre presse-papiers ? Vous voulez devenir le nouveaux maître de stack-overflow en amélioré votre Ctrl CCtrl +V&lt;/p&gt;

&lt;p&gt;Alors vous devriez simplement essayé Ctrl CWindows V&lt;/p&gt;

&lt;p&gt;Le raccourci Windows V permet d’accéder à l’historique du presse-papiers. Il vous faudra commencer par l’activer si vous ne l’avez jamais utilisé. Une fois activé, il gardera les derniers éléments que vous avez copiés. Vous pourrez alors accéder à l’ensemble des éléments gardés en mémoire en appuyant sur Windows V une nouvelle fois. le nombre d’éléments gardés en mémoire dépend de leur taille, si trop de mémoire est utilisé, les anciens éléments sont écrasés. Vous pouvez aussi épingler des éléments  pour qu’ils ne soient pas écrasés.&lt;/p&gt;

&lt;h2&gt;
  
  
  Changer de bureau Virtuel
&lt;/h2&gt;

&lt;p&gt;Est-ce que vous utilisez les bureaux virtuels de Windows ? Si la réponse est non, il y a de grandes chances que ce soit parce qu’il est trop long de passé de l’un à l’autre. Se rendre dans la vue des taches, cliqué sur les bons bureaux, tout ça est trop long. Mais en vérité une paire de raccourcis peut vous permettre de vous rendre rapidement vers le bureau situé à gauche ou à droite de votre bureau actuel. Pour cela il suffit d’utilisez Windows Ctrl → ou Windows Ctrl ←. Simple n’est ce pas ?&lt;br&gt;
Et puisque je vous aime bien, je vais aussi vous donner deux autres raccourcis concernant la gestion des bureaux :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
Windows Ctrl D Créer un nouveau bureau&lt;/li&gt;
&lt;li&gt;
Windows Ctrl F4 supprime le bureau actuel, et envoie toute les fenetres ouvertes vers le bureaux précedent.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;
  
  
  Ouvrir le panneau des caractères spéciaux
&lt;/h2&gt;

&lt;p&gt;Fatigué de devoir rechercher sur internet chaque fois que vous voulez faire un charactère spécial pour pouvoir le copié/collé ? Alors vous devriez tésté Windows ;. &lt;/p&gt;

&lt;p&gt;Ce raccourci ouvre un panneau contenant à la fois la liste des caractères spéciaux, un moteur de recherche de gif ET la liste des émojis, de quoi ne plus devoir ouvrir chrome en somme.&lt;/p&gt;
&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Ce sera tout pour aujourd’hui. J’espèreque ces raccourcis vous feront gagné autant de temps qu’ils m’en ont faits gagner. Dites-moi si ils vous ont été utiles, et lesquelles vous connaissiez déjà. Vous pouvez aussi me dire en commentaire si vous seriez intéréssé par d’autres articles de ce genre sur d’autres OS ou applications (pourquoi pas VS code, Google Chrome ou la suite Adobe).&lt;/p&gt;

&lt;p&gt;Passez une bonne journée.&lt;br&gt;
Bisous.&lt;/p&gt;

&lt;p&gt;Vous pouvez retrouvez la version anglaise de ce post juste ici :&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag__link"&gt;
  &lt;a href="/jeremymonatte" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--m0yHTqxQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://res.cloudinary.com/practicaldev/image/fetch/s--gAjgJ8fs--/c_fill%2Cf_auto%2Cfl_progressive%2Ch_150%2Cq_auto%2Cw_150/https://dev-to-uploads.s3.amazonaws.com/uploads/user/profile_image/426986/74533e78-8e23-47b6-8751-e3ff8428f9bb.jpeg" alt="jeremymonatte"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/jeremymonatte/some-shortcuts-youll-use-each-day-on-windows-5928-temp-slug-6186048" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Some shortcuts you’ll use each day on Windows &lt;/h2&gt;
      &lt;h3&gt;Mbenga ・  ・ 2 min read&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#productivity&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#shortcuts&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#windows&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


</description>
      <category>productivity</category>
      <category>shortcuts</category>
      <category>windows</category>
      <category>french</category>
    </item>
    <item>
      <title>Notion, Qu’est ce que c’est ?</title>
      <dc:creator>Mbenga</dc:creator>
      <pubDate>Thu, 27 Jan 2022 14:51:26 +0000</pubDate>
      <link>https://dev.to/jeremymonatte/notion-quest-ce-que-cest--3j09</link>
      <guid>https://dev.to/jeremymonatte/notion-quest-ce-que-cest--3j09</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;📃 Ce poste est le premier d’une série d’articles consacrés à Notion. N’hésitez pas à me dire en commentaire si ce sujet vous intéresse, ou si vous voulez que j’aborder des thèmes plus précis. &lt;br&gt;
Je ne suis pas un expert mais le sujet m’intéresse alors je ferais au mieux.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://www.notion.so/product"&gt;Notion.so&lt;/a&gt; est le produit de la startup notion Labs Inc fondé en 2013 à San Francisco par Ivan Zhao et Simon Last.&lt;/p&gt;

&lt;p&gt;Mais avant tout Notion est un logiciel, une application web &amp;amp; mobile permettant la gestion de données sous toutes ses formes : notes, listes, base de données... Ce produit permet de compiler-en un seul endroit ce que vous feriez sinon en plusieurs service. Voyons ça d’un peu plus près.&lt;/p&gt;

&lt;h2&gt;
  
  
  Les Pages
&lt;/h2&gt;

&lt;p&gt;Dans Notion, tout est organisé sous la forme de page. Ce sont elles qui contiennent toutes vos données. On ne retrouve pas d’organisation de dossiers ou groupes de pages. Si on veut regrouper plusieurs pages au même endroit, on crée simplement une page parent, et des pages enfants à l’intérieur. Cet aspect peut paraître étrange au premier abord mais on finit par s’y faire très vite, surtout devant la versatilité permise par les-dites pages.&lt;/p&gt;

&lt;h3&gt;
  
  
  Notes
&lt;/h3&gt;

&lt;p&gt;L’usage de base de notion est la création de pages pour la prise de notes. Celles-ci sont construites via une logique de bloc. Vous créez une liste, c’est un bloc. Vous rajoutez un lien, c’est un bloc. Notion implémente ainsi le standard &lt;a href="https://www.markdownguide.org/"&gt;Markdown&lt;/a&gt;, mais en offrant à l’utilisateur un ensemble de raccourci clavier et textuel pour la création de chaque type de bloc, accessible en tapant un simple “/” :&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--rmu55_eX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/46hit6mx0oep24hc991w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--rmu55_eX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/46hit6mx0oep24hc991w.png" alt="/ popup" width="357" height="240"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Cela permet une prise de notes stylisé rapide et facile. Une fois l’habitude prise, on avance aussi, voire plus vite que sur des logiciels dédiés à la saisie de texte (coucou Word et Libre-Office). Et si on perd une partie de la possibilité de style qu’offrent ces derniers, on gagne en simplicité d’usage. Notion nous offre une interface simple et la garantie de retrouver toute ces notes au même endroit, sans s’embarrasser à rechercher les fichiers.&lt;/p&gt;

&lt;h3&gt;
  
  
  Les propriétés
&lt;/h3&gt;

&lt;p&gt;Chaque page de Notion peut disposer d’un nombre de propriétés illimité, permettant de leur associer des données qui pourront ensuite être utilisées dans les différents types de database pour trier et organiser les pages. Ces propriétés peuvent être typées (nombre, texte, email...), faire appel à un select entre plusieurs labels, appeler une formule ou une relation à un autre database. C’est sur ses propriétés que se base toute l’organisation des databases.&lt;/p&gt;

&lt;h2&gt;
  
  
  Les Databases
&lt;/h2&gt;

&lt;p&gt;Les databases sont ce qui rend Notion aussi puissant et intéressant. Elles permettent l’organisation de pages selon différents schémas, appelés vues, en fonction de leurs propriétés. Comme une seule database peut disposer de plusieurs vues, on peut aisément passer de l’une à l’autre pour changer l’affichage des données.&lt;/p&gt;

&lt;p&gt;Ce sera plus clair avec un exemple. Imagez donc que vous vouliez répertorier un ensemble de lien internet pour votre veille.&lt;/p&gt;

&lt;p&gt;Vous allez donc créer votre database, lui donner un nom et choisir un style d’organisation. Considérons que l’a choisi le style “liste” qui comme son nom l’indique, créé une liste. Vous allez donc pouvoir créer vos éléments en leur donnant un nom, une URL, une description, la date d’enregistrement et un thème (propriétés de type multi select dans un ensemble de labels comprenant “productivité”, “finance”, “autre”...).&lt;/p&gt;

&lt;p&gt;Une fois ces liens créés vous allez pouvoir choisir quoi afficher directement dans la liste, et quel élément ne seront affichés qu’à l’ouverture de la sous-page correspondant à ce marque-page.&lt;/p&gt;

&lt;p&gt;Ainsi on aurait :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Le nom, pour reconnaitre le marque-page&lt;/li&gt;
&lt;li&gt;l’URL, pour pouvoir se rendre directement sur le lien sans avoir à ouvrir la sous-page&lt;/li&gt;
&lt;li&gt;le thème&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;La description et la date d’enregistrement seraient cachées pour ne pas encombrer la liste.&lt;/p&gt;

&lt;p&gt;Mais au fur et à mesure que la liste grandirait elle deviendrait un joyeux fouillis incompréhensible. On pourrait alors créer d'autres vues pour mieux organiser les données et les rendre plus faciles à visualiser.&lt;/p&gt;

&lt;p&gt;On aurait donc : &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;La vue de base, avec toutes les cartes, nom, URL et thème d’affichés&lt;/li&gt;
&lt;li&gt;une vue pour chaque thème, avec seulement les cartes correspondantes, et le thème caché&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Bon j’espère que c’est plus clair ainsi.&lt;/p&gt;

&lt;p&gt;Il est maintenant temps de faire un petit détour du coté des différents types d’affichage.&lt;/p&gt;

&lt;h3&gt;
  
  
  Les Listes
&lt;/h3&gt;

&lt;p&gt;Comme dit précédemment ce modèle crée une simple liste des différentes sous-pages en affichant les propriétés sélectionnées.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--zeyFmsaI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mpckxizt2xr25b1swqbn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--zeyFmsaI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mpckxizt2xr25b1swqbn.png" alt="List View" width="880" height="550"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Les Tables
&lt;/h3&gt;

&lt;p&gt;Cette organisation est la plus basique, mais aussi la plus apte à afficher un grand nombre de propriétés et des sous-pages. Il s’agit basiquement d’un tableau de données comme pourrait le proposer un excell ou un google sheet.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--E4Fa4wNQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ouwldsqh9pwm3ej0cnf3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--E4Fa4wNQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ouwldsqh9pwm3ej0cnf3.png" alt="Table View" width="880" height="550"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Les Kanbans
&lt;/h3&gt;

&lt;p&gt;Les boards Kanban sont une organisation de taches découpées en ToDo-Doing-Done comme le propose &lt;a href="https://trello.com/"&gt;Trello&lt;/a&gt; notamment.&lt;/p&gt;

&lt;p&gt;Cette organisation est parfaite pour suivre l’avancement d’un projet découpé en multiple tâche.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--pPKEE1ok--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s6h0tb4tssyoniyi035f.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--pPKEE1ok--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s6h0tb4tssyoniyi035f.png" alt="Kanban View" width="880" height="550"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Les Galeries
&lt;/h3&gt;

&lt;p&gt;Les galeries créent une carte pour chaque page, en affichant dans cette carte les différentes propriétés sélectionnées. Si la page dispose d’une bannière ou d’une image dans son contenu, elle apparaîtra dans la carte. C’est ce dernier point qui rend cet affichage particulièrement approprié pour des pages plus graphiques, comme la création d’un mood-board ou d’un design system par exemple.&lt;/p&gt;

&lt;h3&gt;
  
  
  Les Calendriers
&lt;/h3&gt;

&lt;p&gt;Simple et classique, cet affichage met les pages dans un calendrier en fonction d'une propriété de type date. Cette propriété peut inclure une heure, mais aussi une date &amp;amp; heure de fin. Dès lors on verra la tache s’étaler sur plusieurs jours dans le calendrier.&lt;/p&gt;

&lt;p&gt;Enfin il est possible pour toutes les pages disposant d’une date de paramétrer une notification de rappel un certain temps avant, mais ça fait encore plus sens selon moi dans le cas d’un calendrier.&lt;/p&gt;

&lt;p&gt;Vous pouvez ainsi gérer vos différends rendent voues et autres directement depuis Notion.&lt;/p&gt;

&lt;h3&gt;
  
  
  Les Timelines
&lt;/h3&gt;

&lt;p&gt;Last but not least, les timelines. Ce système de vue permet d’afficher les pages en fonction d’une propriété pour constituer une sorte de diagramme de Gant. Et cet affichage trouve facilement sa place, en facilitant la création de rétroplaning et d’autres gestions de projets sur la durée.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--I7sZO7SP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fo4zdm1745gw1ogzhj8i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--I7sZO7SP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fo4zdm1745gw1ogzhj8i.png" alt="Timeline View" width="880" height="550"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Voilà, vous devriez avoir une meilleure idée de ce qu’est Notion. J’espère avoir pu vous intéresser quelque peu et vous donnez envies de vous pencher un peu plus sur cet outil.&lt;/p&gt;

&lt;p&gt;Version anglaise de ce post ici :&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag__link"&gt;
  &lt;div class="ltag__link__content"&gt;
    &lt;div class="missing"&gt;
      &lt;h2&gt;Article No Longer Available&lt;/h2&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;


</description>
    </item>
    <item>
      <title>What is Notion</title>
      <dc:creator>Mbenga</dc:creator>
      <pubDate>Thu, 27 Jan 2022 14:51:16 +0000</pubDate>
      <link>https://dev.to/jeremymonatte/what-is-notion-5fdo</link>
      <guid>https://dev.to/jeremymonatte/what-is-notion-5fdo</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;📃 This post is the first in a series of articles dedicated to Notion. Do not hesitate to tell me in the comments if this subject interests you, or if you want me to address more specific topics.&lt;br&gt;
I'm not an expert but the subject interests me so I'll do my best.&lt;/p&gt;

&lt;p&gt;Oh by the way, English is not a native language, so sorry for any mistakes I might make.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://www.notion.so/product"&gt;Notion.so&lt;/a&gt; is the first product of Notion Labs Inc, a stratup founded by Ivan Zhao &amp;amp; Simon Last at San Francisco, in 2013.&lt;/p&gt;

&lt;p&gt;But above all Notion is a software, a web &amp;amp; deskop Application allowing data managment in multiple forms : Notes, Lists, Data-bases. This tool can merge usage from many services. Let’s dive in that.&lt;/p&gt;

&lt;h2&gt;
  
  
  Pages
&lt;/h2&gt;

&lt;p&gt;In Notion, pages organize everything. They are the ones that contain all your data. There is no folder or page groups. If you want to  gather some pages, just put them all in a parent page. This aspect is pretty strange on the first contact, but you’ll be use to quickly.&lt;/p&gt;

&lt;h3&gt;
  
  
  Notes
&lt;/h3&gt;

&lt;p&gt;this is the Notion’s basic usage. Taking Notes.&lt;/p&gt;

&lt;p&gt;There are build-up by stacking block together. A list, A link, a paragraph, all this elements are some blocks. This way Notion overload &lt;a href="https://www.markdownguide.org/"&gt;Markdown&lt;/a&gt; by adding some textual’s or keyboard’s shortcuts, accessible with a simple “/” :&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--rmu55_eX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/46hit6mx0oep24hc991w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--rmu55_eX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/46hit6mx0oep24hc991w.png" alt="/ popup" width="357" height="240"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This way, taking notes is fast &amp;amp; easy. Once you are use to, it become as fast as with software dedicated to text management like Microsoft Word, but with a bonus point. You are sure to find all your notes and texts at the same place. You won’t need to browse your whole computer to search some file.&lt;/p&gt;

&lt;h3&gt;
  
  
  Properties
&lt;/h3&gt;

&lt;p&gt;Each Notion’s page can have an unlimited number of properties. Those would store datas, which ones can be used in differents databases to filter or sort pages. Notion’s properties can be typed (number, string, email), be a select with some labels, call a formula or be a relation to another database.&lt;/p&gt;

&lt;h2&gt;
  
  
  Databases
&lt;/h2&gt;

&lt;p&gt;Databases are what make Notion so powerful and interesting. They allow the organization of pages according to different schemas, called views, according to their properties. As a single database can have several views, you can easily switch from one to another to change the display of data.&lt;/p&gt;

&lt;p&gt;It will be clearer with an example. So imagine that you want to list a set of internet links for your watch.&lt;/p&gt;

&lt;p&gt;You will therefore create your database, give it a name and choose an organization style. Let's consider that he chose the "list" style which, as its name suggests, creates a list. You will therefore be able to create your elements by giving them a name, a URL, a description, the date of registration and a theme (multi select type properties in a set of labels including “productivity”, “finance”, “other” ...).&lt;/p&gt;

&lt;p&gt;Once these links have been created, you will be able to choose what to display directly in the list, and which element will only be displayed when opening the sub-page corresponding to this bookmark.&lt;/p&gt;

&lt;p&gt;So we would have:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The name, to recognize the bookmark&lt;/li&gt;
&lt;li&gt;the URL, to be able to go directly to the link without having to open the sub-page&lt;/li&gt;
&lt;li&gt;the theme&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The description and recording date would be hidden so as not to clutter the list.&lt;/p&gt;

&lt;p&gt;But as the list grew it would become an incomprehensible merry mess. We could then create other views to better organize the data and make it easier to visualize.&lt;/p&gt;

&lt;p&gt;We would therefore have:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The basic view, with all maps, name, URL and display theme&lt;/li&gt;
&lt;li&gt;a view for each theme, with only the corresponding cards, and the hidden theme&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Ok, I hope it's clearer that way.&lt;/p&gt;

&lt;p&gt;It is now time to make a small detour to the side of the different types of display.&lt;/p&gt;

&lt;h3&gt;
  
  
  Lists
&lt;/h3&gt;

&lt;p&gt;As said before this template creates a simple list of the different sub-pages displaying the selected properties.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--zeyFmsaI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mpckxizt2xr25b1swqbn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--zeyFmsaI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mpckxizt2xr25b1swqbn.png" alt="List View" width="880" height="550"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Tables
&lt;/h3&gt;

&lt;p&gt;This organization is the most basic, but also the most suitable for displaying a large number of properties and sub-pages. It is basically a table of data as an excel or a google sheet could offer.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--E4Fa4wNQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ouwldsqh9pwm3ej0cnf3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--E4Fa4wNQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ouwldsqh9pwm3ej0cnf3.png" alt="Table View" width="880" height="550"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Kanbans
&lt;/h3&gt;

&lt;p&gt;Kanban boards are an organization of tasks cut into ToDo-Doing-Done as proposed by &lt;a href="https://trello.com/"&gt;Trello&lt;/a&gt; in particular.&lt;/p&gt;

&lt;p&gt;This organization is perfect for monitoring the progress of a project divided into multiple tasks.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--pPKEE1ok--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s6h0tb4tssyoniyi035f.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--pPKEE1ok--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s6h0tb4tssyoniyi035f.png" alt="Kanban View" width="880" height="550"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Galeries
&lt;/h3&gt;

&lt;p&gt;The galleries create a map for each page, displaying in this map the different properties selected. If the page has a banner or image in its content, it will appear in the map. It is this last point that makes this display particularly appropriate for more graphic pages, such as the creation of a mood board or a design system for example.&lt;/p&gt;

&lt;h3&gt;
  
  
  Calendars
&lt;/h3&gt;

&lt;p&gt;Simple and classic, this view puts pages into a calendar based on a date-like property. This property can include a time, but also an end date &amp;amp; time. From then on, we will see the stain spread over several days in the calendar.&lt;/p&gt;

&lt;p&gt;Finally it is possible for all pages with a date to set a reminder notification a certain time before, but it makes even more sense to me in the case of a calendar.&lt;/p&gt;

&lt;p&gt;You can thus manage your disputes make vows and others directly from Notion.&lt;/p&gt;

&lt;h3&gt;
  
  
  Timelines
&lt;/h3&gt;

&lt;p&gt;Last but not least, timelines. This view system makes it possible to display the pages according to a property to constitute a kind of Gant chart. And this display easily finds its place, facilitating the creation of retroplanning and other project management over time.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--I7sZO7SP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fo4zdm1745gw1ogzhj8i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--I7sZO7SP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fo4zdm1745gw1ogzhj8i.png" alt="Timeline View" width="880" height="550"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;There you go, you should have a better idea of what Notion is. I hope I have been able to interest you somewhat and make you want to look a little more at this tool.&lt;/p&gt;

&lt;p&gt;French version of this post just here :&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag__link"&gt;
  &lt;a href="/jeremymonatte" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--m0yHTqxQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://res.cloudinary.com/practicaldev/image/fetch/s--gAjgJ8fs--/c_fill%2Cf_auto%2Cfl_progressive%2Ch_150%2Cq_auto%2Cw_150/https://dev-to-uploads.s3.amazonaws.com/uploads/user/profile_image/426986/74533e78-8e23-47b6-8751-e3ff8428f9bb.jpeg" alt="jeremymonatte"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/jeremymonatte/notion-quest-ce-que-cest--3n20-temp-slug-7862183" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Notion, Qu’est ce que c’est ?&lt;/h2&gt;
      &lt;h3&gt;Mbenga ・  ・ 5 min read&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


</description>
      <category>tools</category>
      <category>productivity</category>
      <category>notion</category>
    </item>
    <item>
      <title>Is it a bad practice ?</title>
      <dc:creator>Mbenga</dc:creator>
      <pubDate>Wed, 06 Oct 2021 16:03:28 +0000</pubDate>
      <link>https://dev.to/jeremymonatte/is-it-a-bad-practice-3a36</link>
      <guid>https://dev.to/jeremymonatte/is-it-a-bad-practice-3a36</guid>
      <description>&lt;p&gt;Is it a bad pratice to do that :&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="cp"&gt;&amp;lt;?php&lt;/span&gt;
&lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Foo&lt;/span&gt;
&lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;public&lt;/span&gt; &lt;span class="nv"&gt;$propertie_Excplicitly_Defined&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

    &lt;span class="k"&gt;public&lt;/span&gt; &lt;span class="k"&gt;function&lt;/span&gt; &lt;span class="n"&gt;__construct&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
    &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="nv"&gt;$this&lt;/span&gt;&lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="n"&gt;propertie_Excplicitly_Defined&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"Hello"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

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

&lt;span class="nv"&gt;$bar&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;Foo&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="nv"&gt;$bar&lt;/span&gt;&lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="n"&gt;propertie_Not_Excplicitly_Defined&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"World"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;And if it's, why?&lt;/p&gt;

&lt;p&gt;I have to pass a new variable to an object whose structure I cannot modify, and I didn't find a better way to do it. So is it bad or is it ok ? And if it's bad, do you have an idea about how i should do ?&lt;/p&gt;

&lt;p&gt;Thanks a lot&lt;/p&gt;

</description>
      <category>php</category>
      <category>goodpractices</category>
      <category>oop</category>
      <category>needhelp</category>
    </item>
    <item>
      <title>Pssst, I got a surprise for you 😏</title>
      <dc:creator>Mbenga</dc:creator>
      <pubDate>Fri, 16 Jul 2021 14:53:46 +0000</pubDate>
      <link>https://dev.to/jeremymonatte/pssst-i-got-a-surprise-for-you-2ff</link>
      <guid>https://dev.to/jeremymonatte/pssst-i-got-a-surprise-for-you-2ff</guid>
      <description>&lt;p&gt;Yeah, I got a pretty seductive and exciting surprise, just for you... And that's surprise is such a fancy hover animations !! &lt;/p&gt;

&lt;p&gt;Owwwww, so cuuuuuute 😍 &lt;/p&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/JeremyMonatte/embed/xxdVzNX?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Isn't she beautiful ?&lt;/p&gt;

&lt;p&gt;French version of this post just here : &lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag__link"&gt;
  &lt;a href="/jeremymonatte" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--m0yHTqxQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://res.cloudinary.com/practicaldev/image/fetch/s--gAjgJ8fs--/c_fill%2Cf_auto%2Cfl_progressive%2Ch_150%2Cq_auto%2Cw_150/https://dev-to-uploads.s3.amazonaws.com/uploads/user/profile_image/426986/74533e78-8e23-47b6-8751-e3ff8428f9bb.jpeg" alt="jeremymonatte"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/jeremymonatte/pssst-j-ai-une-surprise-pour-vous-5m8" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Pssst, J'ai une surprise pour vous 😏&lt;/h2&gt;
      &lt;h3&gt;Mbenga ・ Jul 16 ・ 1 min read&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#showdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#css&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#french&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


</description>
      <category>showdev</category>
      <category>css</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Pssst, J'ai une surprise pour vous 😏</title>
      <dc:creator>Mbenga</dc:creator>
      <pubDate>Fri, 16 Jul 2021 14:53:28 +0000</pubDate>
      <link>https://dev.to/jeremymonatte/pssst-j-ai-une-surprise-pour-vous-5m8</link>
      <guid>https://dev.to/jeremymonatte/pssst-j-ai-une-surprise-pour-vous-5m8</guid>
      <description>&lt;p&gt;J'ai une surprise pour vous, tout en grâce et en élégance, aguicheuse mais jamais vulgaire, et qui n'attends que vous...&lt;br&gt;
Et cette surprise n'est autre qu'une incroyable animation de hover !!&lt;br&gt;
Si belle, Oooowww je fond 😍&lt;/p&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/JeremyMonatte/embed/xxdVzNX?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;N'est ce pas MAGNIFIQUE ?&lt;/p&gt;

&lt;p&gt;Vous pouvez retrouvez la version anglaise de ce post juste ici :&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag__link"&gt;
  &lt;a href="/jeremymonatte" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--m0yHTqxQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://res.cloudinary.com/practicaldev/image/fetch/s--gAjgJ8fs--/c_fill%2Cf_auto%2Cfl_progressive%2Ch_150%2Cq_auto%2Cw_150/https://dev-to-uploads.s3.amazonaws.com/uploads/user/profile_image/426986/74533e78-8e23-47b6-8751-e3ff8428f9bb.jpeg" alt="jeremymonatte"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/jeremymonatte/pssst-i-got-a-surprise-for-you-2ff" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Pssst, I got a surprise for you 😏&lt;/h2&gt;
      &lt;h3&gt;Mbenga ・ Jul 16 ・ 1 min read&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#showdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#css&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


</description>
      <category>showdev</category>
      <category>css</category>
      <category>webdev</category>
      <category>french</category>
    </item>
  </channel>
</rss>
