<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Home on A journey into a wild pointer</title>
    <link>https://carette.xyz/</link>
    <description>Recent content in Home on A journey into a wild pointer</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Tue, 06 Jan 2026 16:00:00 +0100</lastBuildDate>
    <atom:link href="https://carette.xyz/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>The Influentists</title>
      <link>https://carette.xyz/posts/influentists/</link>
      <pubDate>Tue, 06 Jan 2026 16:00:00 +0100</pubDate>
      <guid>https://carette.xyz/posts/influentists/</guid>
      <description>&lt;p&gt;Last week, the developer community was busy discussing about a single tweet:&lt;/p&gt;&#xA;&lt;blockquote class=&#34;twitter-tweet&#34;&gt;&lt;p lang=&#34;en&#34; dir=&#34;ltr&#34;&gt;I&amp;#39;m not joking and this isn&amp;#39;t funny. We have been trying to build distributed agent orchestrators at Google since last year. There are various options, not everyone is aligned... I gave Claude Code a description of the problem, it generated what we built last year in an hour.&lt;/p&gt;&amp;mdash; Jaana Dogan ヤナ ドガン (@rakyll) &lt;a href=&#34;https://twitter.com/rakyll/status/2007239758158975130?ref_src=twsrc%5Etfw&#34;&gt;January 2, 2026&lt;/a&gt;&lt;/blockquote&gt;&#xA;&lt;script async src=&#34;https://platform.twitter.com/widgets.js&#34; charset=&#34;utf-8&#34;&gt;&lt;/script&gt;&#xA;&#xA;&#xA;&lt;p&gt;The author is Jaana Dogan (known as &lt;a href=&#34;https://github.com/rakyll&#34;&gt;Rakyll&lt;/a&gt;), a highly respected figure in the Google ecosystem, in the open-source world, and in my heart (thank you Rakyll for your great &lt;a href=&#34;https://rakyll.org/&#34;&gt;Go blog posts&lt;/a&gt;).&lt;/p&gt;</description>
    </item>
    <item>
      <title>The CEO cost function</title>
      <link>https://carette.xyz/posts/automated_ceo/</link>
      <pubDate>Fri, 02 Jan 2026 13:30:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/automated_ceo/</guid>
      <description>&lt;p&gt;We are living through a strange era in tech.&lt;/p&gt;&#xA;&lt;p&gt;Every month, a new headline appears. Another CEO announces a massive round of layoffs of managers, developers, and engineers.&lt;br&gt;&#xA;They talk about &amp;ldquo;efficiency&amp;rdquo; and &amp;ldquo;streamlining&amp;rdquo;, which should maintain the same quality while spending less on staff.&#xA;However the engineers, and the users, on the ground see something else: &lt;a href=&#34;https://www.windowscentral.com/microsoft/windows-11/2025-has-been-an-awful-year-for-windows-11-with-infuriating-bugs-and-constant-unwanted-features&#34;&gt;a decrease in software quality&lt;/a&gt;, &lt;a href=&#34;https://www.windowscentral.com/microsoft/windows-11/microsoft-ai-ceo-pushes-back-against-critics-after-recent-windows-ai-backlash-the-fact-that-people-are-unimpressed-is-mindblowing-to-me&#34;&gt;a loss of institutional knowledge&lt;/a&gt;, and &lt;a href=&#34;https://www.reddit.com/r/softwaredevelopment/comments/1oy40of/ai_coding_tools_ruining_code_quality/&#34;&gt;a product that starts to feel like it’s held together by duct tape&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Going immutable on macOS</title>
      <link>https://carette.xyz/posts/going_immutable_macos/</link>
      <pubDate>Wed, 31 Dec 2025 14:30:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/going_immutable_macos/</guid>
      <description>&lt;p&gt;With no surprise the end of one year marks the start of the next.&lt;br&gt;&#xA;And the beginning of a year is always synonymous with&amp;hellip; a fresh macOS system!&lt;/p&gt;&#xA;&lt;p&gt;But managing a good working environment on macOS has long been a game of &amp;ldquo;hope for the best.&amp;rdquo; We’ve all been there: a &lt;code&gt;curl | sh&lt;/code&gt; here, a manual &lt;code&gt;brew install&lt;/code&gt; there, and six months later, you’re staring at a broken &lt;code&gt;PATH&lt;/code&gt; and a Python environment that seems to have developed its own consciousness.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Deep dive into crossover</title>
      <link>https://carette.xyz/posts/deep_dive_into_crossover/</link>
      <pubDate>Sat, 20 Dec 2025 15:00:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/deep_dive_into_crossover/</guid>
      <description>&lt;p&gt;If you read my previous post about &lt;a href=&#34;https://carette.xyz/posts/crossover_mac_retro_games&#34;&gt;gaming on mac&lt;/a&gt;, you know I have a soft spot for running Windows games on Apple Silicon.&lt;/p&gt;&#xA;&lt;p&gt;Early this year I upgraded from a M1 MacBook Air to an M3 Max MacBook Pro.&#xA;Naturally, I had to test three completely different generations of games at it: &lt;a href=&#34;https://en.wikipedia.org/wiki/ARC_Raiders&#34;&gt;&lt;em&gt;ARC Raiders&lt;/em&gt;&lt;/a&gt; (2025), &lt;a href=&#34;https://en.wikipedia.org/wiki/Routine_(video_game)&#34;&gt;&lt;em&gt;Routine&lt;/em&gt;&lt;/a&gt; (2025), &lt;a href=&#34;https://en.wikipedia.org/wiki/Watch_Dogs_2&#34;&gt;&lt;em&gt;Watch Dogs 2&lt;/em&gt;&lt;/a&gt; (2016) and &lt;a href=&#34;https://en.wikipedia.org/wiki/Tron_2.0&#34;&gt;&lt;em&gt;Tron 2.0&lt;/em&gt;&lt;/a&gt; (2003).&lt;/p&gt;&#xA;&lt;p&gt;I expected the modern game to struggle and the old game to fly.&#xA;The reality was exactly the opposite, and it forced me to dig deep into how &lt;a href=&#34;https://www.codeweavers.com/crossover&#34;&gt;CrossOver&lt;/a&gt; handles translation layers under the hood.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Chaos or comfort: a reflection on the engineer&#39;s quest</title>
      <link>https://carette.xyz/posts/chaos_or_comfort/</link>
      <pubDate>Mon, 25 Aug 2025 16:00:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/chaos_or_comfort/</guid>
      <description>&lt;p&gt;&lt;strong&gt;Disclaimer&lt;/strong&gt;&lt;br&gt;&#xA;Article fully writtened by the author, but grammar correction by Gemini.&lt;br&gt;&#xA;Images generated using Gemini.&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;p&gt;Every software engineer I know is searching for it.&lt;br&gt;&#xA;Me included.&lt;br&gt;&#xA;They don&amp;rsquo;t always call it the same thing, but the desire is universal.&lt;/p&gt;&#xA;&lt;p&gt;I call it the &amp;ldquo;holy grail&amp;rdquo;.&#xA;That one project, that perfect role, where we get to solve problems that matter.&#xA;The kind of deep, complex, elegant challenges in architecture, scaling, or algorithmic design that can justify long hours of coding and debugging. It&amp;rsquo;s the work that finally makes us feel like true engineers: the builders and architects of what could like the future.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Blame</title>
      <link>https://carette.xyz/blame/</link>
      <pubDate>Fri, 13 Jun 2025 00:00:00 +0000</pubDate>
      <guid>https://carette.xyz/blame/</guid>
      <description>&lt;p&gt;&lt;em&gt;&lt;strong&gt;The ideas shared here are mine alone and are not endorsed by my past or current employers.&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;I am a senior software engineer, living in Grand-Est region (France).&lt;/p&gt;&#xA;&lt;h2 class=&#34;heading&#34; id=&#34;contact&#34;&gt;&#xA;  Contact&#xA;  &lt;a class=&#34;anchor&#34; href=&#34;#contact&#34;&gt;#&lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;Feel free to send &amp;ldquo;hi&amp;rdquo; at &lt;a href=&#34;mailto:dev@carette.xyz&#34;&gt;dev[at]carette[dot]xyz&lt;/a&gt;.&lt;br&gt;&#xA;My public GPG key to contact me privately is available &lt;a href=&#34;https://carette.xyz/dev@carette.xyz.key&#34;&gt;here&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;h2 class=&#34;heading&#34; id=&#34;work-experience&#34;&gt;&#xA;  Work experience&#xA;  &lt;a class=&#34;anchor&#34; href=&#34;#work-experience&#34;&gt;#&lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;My resume, in &lt;a href=&#34;https://carette.xyz/CARETTE_EN_cv.pdf&#34;&gt;English&lt;/a&gt;.&lt;br&gt;&#xA;My &lt;a href=&#34;https://www.mobygames.com/person/1368928/antonin-carette/&#34;&gt;MobyGames profile&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Please take a look at &lt;a href=&#34;https://carette.xyz/projects&#34;&gt;this page&lt;/a&gt; for my past projects and publications.&lt;/p&gt;&#xA;&lt;h2 class=&#34;heading&#34; id=&#34;interesting-links&#34;&gt;&#xA;  Interesting links&#xA;  &lt;a class=&#34;anchor&#34; href=&#34;#interesting-links&#34;&gt;#&lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://users.ece.utexas.edu/~adnan/pike.html&#34;&gt;Blog Article - Rob Pike&amp;rsquo;s 5 Rules of Programming&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://highscalability.com/numbers-everyone-should-know&#34;&gt;Blog Article - Jeff Dean&amp;rsquo;s Numbers Everyone Should Know&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://kotaku.com/the-exceptional-beauty-of-doom-3s-source-code-5975610&#34;&gt;Blog Article - The Exceptional Beauty of Doom 3&amp;rsquo;s Source Code&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://www.usc.edu/~douglast/202/lecture23/manifesto.html&#34;&gt;Manifesto - The Hacker&amp;rsquo;s Manifesto&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://www.youtube.com/watch?v=9vz06QO3UkQ&#34;&gt;Youtube - The Internet&amp;rsquo;s Own Boy&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://www.youtube.com/watch?v=ZSRHeXYDLko&#34;&gt;Youtube - Jonathan Blow, Preventing the End of Civilization&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://www.youtube.com/watch?v=0SARbwvhupQ&#34;&gt;Youtube - The Myth of the Genius Programmer&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;</description>
    </item>
    <item>
      <title>Projects</title>
      <link>https://carette.xyz/projects/</link>
      <pubDate>Fri, 13 Jun 2025 00:00:00 +0000</pubDate>
      <guid>https://carette.xyz/projects/</guid>
      <description>&lt;h2 class=&#34;heading&#34; id=&#34;video-games&#34;&gt;&#xA;  Video games&#xA;  &lt;a class=&#34;anchor&#34; href=&#34;#video-games&#34;&gt;#&lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;h3 class=&#34;heading&#34; id=&#34;pico-8-cartridges&#34;&gt;&#xA;  Pico-8 cartridges&#xA;  &lt;a class=&#34;anchor&#34; href=&#34;#pico-8-cartridges&#34;&gt;#&lt;/a&gt;&#xA;&lt;/h3&gt;&#xA;&lt;figure class=&#34;pico-8-cartridge&#34;&gt;&lt;img src=&#34;https://carette.xyz/pico_8/galactica.p8.png&#34;&#xA;    alt=&#34;Galactica cartridge&#34;&gt;&lt;figcaption&gt;&#xA;      &lt;h4&gt;Galactica, a (basic) space shooter&lt;/h4&gt;&#xA;    &lt;/figcaption&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;h2 class=&#34;heading&#34; id=&#34;books-and-research-papers&#34;&gt;&#xA;  Books and research papers&#xA;  &lt;a class=&#34;anchor&#34; href=&#34;#books-and-research-papers&#34;&gt;#&lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;h3 class=&#34;heading&#34; id=&#34;books&#34;&gt;&#xA;  Books&#xA;  &lt;a class=&#34;anchor&#34; href=&#34;#books&#34;&gt;#&lt;/a&gt;&#xA;&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;2017, &lt;a href=&#34;https://www.packtpub.com/application-development/mastering-rust&#34;&gt;Mastering Rust, Vesa Kaihlavirta (PACKT)&lt;/a&gt; - official reviewer&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 class=&#34;heading&#34; id=&#34;research-papers&#34;&gt;&#xA;  Research papers&#xA;  &lt;a class=&#34;anchor&#34; href=&#34;#research-papers&#34;&gt;#&lt;/a&gt;&#xA;&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;2016, &lt;a href=&#34;https://hal.inria.fr/hal-01403485&#34;&gt;Investigating the Energy Impact of Android Smells&lt;/a&gt; - &lt;em&gt;accepted to &lt;a href=&#34;http://saner.aau.at&#34;&gt;SANER 2017&lt;/a&gt;&lt;/em&gt;&lt;/li&gt;&#xA;&lt;li&gt;2015, &lt;a href=&#34;https://hal.inria.fr/hal-01279620&#34;&gt;A Learning Algorithm for Change Impact Prediction: Experimentation on 7 Java Applications&lt;/a&gt; - &lt;a href=&#34;http://promisedata.org/raise/2016/&#34;&gt;RAISE 2016&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 class=&#34;heading&#34; id=&#34;blog-posts-talks--presentations&#34;&gt;&#xA;  Blog posts, talks &amp;amp; presentations&#xA;  &lt;a class=&#34;anchor&#34; href=&#34;#blog-posts-talks--presentations&#34;&gt;#&lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;h3 class=&#34;heading&#34; id=&#34;professional-blog-posts&#34;&gt;&#xA;  Professional blog posts&#xA;  &lt;a class=&#34;anchor&#34; href=&#34;#professional-blog-posts&#34;&gt;#&lt;/a&gt;&#xA;&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;2020, &lt;a href=&#34;https://medium.com/tadaweb/security-by-design-a-brief-introduction-to-rust-378060e45038&#34;&gt;Security By Design, A Brief Introduction to Rust&lt;/a&gt;, &lt;a href=&#34;https://www.tadaweb.com&#34;&gt;Tadaweb&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;2017, &lt;a href=&#34;https://blog.derniercri.io/julia-le-langage-qui-les-r%C3%A9unifiera-tous-3a274cb8794f/&#34;&gt;Julia, le langage qui les réunifiera tous ?&lt;/a&gt;, &lt;a href=&#34;http://www.derniercri.io&#34;&gt;Dernier Cri&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;2017, &lt;a href=&#34;https://blog.derniercri.io/d%C3%A9ployer-une-app-phoenix-sur-heroku-sans-conna%C3%AEtre-phoenix-29f3bfb95411/&#34;&gt;Déployer une app Phoenix sur Heroku, sans connaître Phoenix&lt;/a&gt;, &lt;a href=&#34;http://www.derniercri.io&#34;&gt;Dernier Cri&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;2016, &lt;a href=&#34;https://blog.derniercri.io/fausse-id%C3%A9es-sur-le-big-data-777114dd763e/&#34;&gt;Fausses idées sur le big data&lt;/a&gt;, &lt;a href=&#34;http://www.derniercri.io&#34;&gt;Dernier Cri&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 class=&#34;heading&#34; id=&#34;talks--public-presentations&#34;&gt;&#xA;  Talks &amp;amp; Public presentations&#xA;  &lt;a class=&#34;anchor&#34; href=&#34;#talks--public-presentations&#34;&gt;#&lt;/a&gt;&#xA;&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;2018, &lt;a href=&#34;https://www.youtube.com/watch?v=TJsPCI81Kzo&#34;&gt;L&amp;rsquo;apprentissage automatique, c&amp;rsquo;est pas automatique (Machine Learning is not magic)&lt;/a&gt;, &lt;a href=&#34;http://takeoff.rocks/past-events/2018-05-15-lille/&#34;&gt;TakeOff Talks&lt;/a&gt;, Lille (France)&lt;/li&gt;&#xA;&lt;li&gt;2018, &lt;a href=&#34;https://www.youtube.com/watch?v=Fn0TZCt_Fno&#34;&gt;Why you should take a look at Rust - an easy introduction to the Rust programming language&lt;/a&gt;, &lt;a href=&#34;https://fosdem.org/2018/&#34;&gt;FOSDEM&lt;/a&gt;, Bruxelles (Belgium)&lt;/li&gt;&#xA;&lt;li&gt;2017, &lt;a href=&#34;https://carette.xyz/presentations/lillefp_rust_2302.pdf&#34;&gt;Why you should take a look at Rust&lt;/a&gt;, &lt;a href=&#34;https://www.meetup.com/fr-FR/Lille-FP/events/237497716/&#34;&gt;LilleFP Meetup&lt;/a&gt;, Lille (France)&lt;/li&gt;&#xA;&lt;li&gt;2016, &lt;a href=&#34;https://carette.xyz/presentations/rust_talk_derniercri_1412.pdf&#34;&gt;Why you should take a look at Rust&lt;/a&gt;, &lt;a href=&#34;http://www.derniercri.io&#34;&gt;Dernier Cri&lt;/a&gt;, Lille (France)&lt;/li&gt;&#xA;&lt;li&gt;2016, &lt;a href=&#34;https://carette.xyz/presentations/m2-mocad-internship.pdf&#34;&gt;Eco-design of Android applications&lt;/a&gt;, &lt;a href=&#34;http://www.latece.uqam.ca&#34;&gt;Latece team&lt;/a&gt;, UQAM (Canada)&lt;/li&gt;&#xA;&lt;li&gt;2016, &lt;a href=&#34;https://carette.xyz/presentations/m2-mocad-projet.pdf&#34;&gt;State of art about energy consumption models, for mobile devices&lt;/a&gt;, &lt;a href=&#34;http://www.lifl.fr/emeraude/&#34;&gt;Emeraude team&lt;/a&gt;, IRCICA (France)&lt;/li&gt;&#xA;&lt;li&gt;2015, &lt;a href=&#34;https://github.com/k0pernicus/PropL&#34;&gt;Software development to study bugs propagation in Java applications&lt;/a&gt;, &lt;a href=&#34;https://sequel.lille.inria.fr&#34;&gt;SequeL team&lt;/a&gt;, INRIA (France)&lt;/li&gt;&#xA;&lt;li&gt;2015, &lt;a href=&#34;https://github.com/k0pernicus/PJI2015/blob/master/rapport/Rapport.pdf&#34;&gt;Serious-game development, based on distributed artificial intelligence&lt;/a&gt;, &lt;a href=&#34;https://www.cristal.univ-lille.fr/?rubrique29&amp;amp;eid=17&#34;&gt;SMAC team&lt;/a&gt;, CRIStAL (France)&lt;/li&gt;&#xA;&lt;li&gt;2014, &lt;a href=&#34;https://github.com/k0pernicus/Rapport_Stage_S6/blob/master/Rapport_Stage_Vidjil_CARETTE_ANTONIN.pdf&#34;&gt;Software developer for the Vidjil project&lt;/a&gt;, &lt;a href=&#34;http://www.lifl.fr/bonsai/&#34;&gt;Bonsai team&lt;/a&gt;, LIFL (France)&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 class=&#34;heading&#34; id=&#34;personal-projects&#34;&gt;&#xA;  Personal projects&#xA;  &lt;a class=&#34;anchor&#34; href=&#34;#personal-projects&#34;&gt;#&lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;Please to check my &lt;a href=&#34;https://github.com/k0pernicus&#34;&gt;Github account&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>The skill of the future is not &#39;AI&#39;, but &#39;Focus&#39;</title>
      <link>https://carette.xyz/posts/focus_will_be_the_skill_of_the_future/</link>
      <pubDate>Tue, 11 Feb 2025 16:00:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/focus_will_be_the_skill_of_the_future/</guid>
      <description>&lt;p&gt;If you frequent Hacker News regurlarly, you have likely noticed the buzz around engineers using AI&#xA;(specifically Large Language Models, or LLMs) to tackle Computer Science problems.&lt;/p&gt;&#xA;&lt;p&gt;I want to be clear: &lt;strong&gt;I&amp;rsquo;m not against LLMs&lt;/strong&gt;.&lt;br&gt;&#xA;LLMs are incredibly powerful tools, and &lt;strong&gt;can&lt;/strong&gt; be a huge boon to engineers.&#xA;They can automate repetitive tasks, generate code snippets, help with brainstorming, assist in debugging, &amp;hellip;&#xA;and this can frees up engineers&amp;rsquo; time and mental energy, which could be channeled into more complex, creative problem-solving.&lt;br&gt;&#xA;But, like any tool, LLMs should be used &lt;strong&gt;wisely&lt;/strong&gt;.&lt;br&gt;&#xA;LLMs can hallucinate, exhibit inconsistencies (especially with self-reflection models), and harbor biases. These limitations mean that LLM outputs require careful review before they can be trusted.&lt;/p&gt;</description>
    </item>
    <item>
      <title>The Paradoxical Disconnection of Silicon Valley</title>
      <link>https://carette.xyz/posts/the_paradoxical_disconnection_of_silicon_valley/</link>
      <pubDate>Sun, 02 Feb 2025 16:00:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/the_paradoxical_disconnection_of_silicon_valley/</guid>
      <description>&lt;p&gt;A few months ago, a video of a private tech conference leaked online. The speaker was Eric Schmidt, discussing tech entrepreneurship, his past experiences, and how to make money today.&lt;/p&gt;&#xA;&lt;div style=&#34;position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;&#34;&gt;&#xA;      &lt;iframe allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen&#34; loading=&#34;eager&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; src=&#34;https://www.youtube.com/embed/mKVFNg3DEng?si=v_CLbcdgP7Sqjwmq?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0&#34; style=&#34;position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;&#34; title=&#34;YouTube video&#34;&gt;&lt;/iframe&gt;&#xA;    &lt;/div&gt;&#xA;&#xA;&lt;p&gt;The transcript of the video can be found &lt;a href=&#34;https://github.com/ociubotaru/transcripts/blob/main/Stanford_ECON295%E2%A7%B8CS323_I_2024_I_The_Age_of_AI,_Eric_Schmidt.txt&#34;&gt;here&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Frankly, the conference was painful to watch, not because of technical issues, but because of the terrible advice and ideas Schmidt shared.  This isn&amp;rsquo;t the first time I&amp;rsquo;ve heard such pronouncements from (ex-)CEOs and managers, especially those from Silicon Valley. However, this time, I sensed something amiss, a disconnect from reality among those who manage significant companies and products.&lt;/p&gt;</description>
    </item>
    <item>
      <title>The AI boredom</title>
      <link>https://carette.xyz/posts/the_ai_boredom/</link>
      <pubDate>Wed, 08 Jan 2025 15:52:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/the_ai_boredom/</guid>
      <description>&lt;h2 class=&#34;heading&#34; id=&#34;summary-by-the-author&#34;&gt;&#xA;  Summary by the author&amp;hellip;&#xA;  &lt;a class=&#34;anchor&#34; href=&#34;#summary-by-the-author&#34;&gt;#&lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;&amp;hellip;to avoid wasting energy (and money) on summarization algorithms.&lt;br&gt;&#xA;&amp;quot;&#xA;I don&amp;rsquo;t share the same enthusiasm as the tech world about the current generation of Artificial Intelligence (AI) products because:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;most of them do not bring value to people (beyond the &amp;rsquo;tech enthusiasts&amp;rsquo; world),&lt;/li&gt;&#xA;&lt;li&gt;unrealiability and instability are still unsolved issues,&lt;/li&gt;&#xA;&lt;li&gt;they primarily profit big — and often unreliable — companies,&lt;/li&gt;&#xA;&lt;li&gt;they consume excessive energy,&lt;/li&gt;&#xA;&lt;li&gt;ethical and legal challenges are not a concern for big companies.&#xA;&amp;quot;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;h2 class=&#34;heading&#34; id=&#34;now-the-content&#34;&gt;&#xA;  Now, the content&#xA;  &lt;a class=&#34;anchor&#34; href=&#34;#now-the-content&#34;&gt;#&lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;There&amp;rsquo;s not a day goes by when I don&amp;rsquo;t hear, or see, the term “Artificial Intelligence” (AI) somewhere.&#xA;AI is everywhere, is the &amp;ldquo;new trend&amp;rdquo; - or &amp;ldquo;tech bubble&amp;rdquo; - in the Tech Industry, and here to stay for a while.&lt;/p&gt;</description>
    </item>
    <item>
      <title>The state of Vulkan apps in 2024</title>
      <link>https://carette.xyz/posts/state_of_vulkan_2024/</link>
      <pubDate>Tue, 28 May 2024 20:30:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/state_of_vulkan_2024/</guid>
      <description>&lt;p&gt;&lt;strong&gt;UPDATE 2TH OF JUNE 2024&lt;/strong&gt;&lt;br&gt;&#xA;Removed typos (thanks Geoffrey! :) )&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;p&gt;As a game engine developer, I always ask myself the same question working on new features or bug fixes: &amp;ldquo;&lt;strong&gt;What are the targets of my game engine?&lt;/strong&gt;&amp;rdquo;.&lt;br&gt;&#xA;Excluding the consoles, this question mostly implies which &lt;strong&gt;operating system&lt;/strong&gt; - or platform - is targeted: Windows,&#xA;Linux (or GNU/Linux, but I will keep &amp;ldquo;Linux&amp;rdquo; for the rest of the article), or macOS.&lt;/p&gt;</description>
    </item>
    <item>
      <title>The Terrible Situation of Windows (Professional) Laptops</title>
      <link>https://carette.xyz/posts/the_terrible_situation_of_windows_laptops/</link>
      <pubDate>Sun, 19 May 2024 17:25:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/the_terrible_situation_of_windows_laptops/</guid>
      <description>&lt;p&gt;Last Saturday, after logging on &lt;del&gt;Twitter&lt;/del&gt; X, I came across two tweets from two great programmers I follow.&lt;/p&gt;&#xA;&lt;blockquote class=&#34;twitter-tweet&#34;&gt;&lt;p lang=&#34;en&#34; dir=&#34;ltr&#34;&gt;*** Deeply Negative Tweet Alert!!!!!! ***&lt;br&gt;&lt;br&gt;My ASUS Rog Strix G16 super hyper gaming laptop has lasted approximately 1 year before destroying itself.&lt;br&gt;&lt;br&gt;For about a month it has been in a mode where it&amp;#39;s impossible to sleep it (and there is no Hibernate option in Windows any more,…&lt;/p&gt;&amp;mdash; Jonathan Blow (@Jonathan_Blow) &lt;a href=&#34;https://twitter.com/Jonathan_Blow/status/1791925515281899810?ref_src=twsrc%5Etfw&#34;&gt;May 18, 2024&lt;/a&gt;&lt;/blockquote&gt;&#xA;&lt;script async src=&#34;https://platform.twitter.com/widgets.js&#34; charset=&#34;utf-8&#34;&gt;&lt;/script&gt;&#xA;&#xA;&#xA;&lt;blockquote class=&#34;twitter-tweet&#34;&gt;&lt;p lang=&#34;en&#34; dir=&#34;ltr&#34;&gt;I bought a Macbook a third of the price of my expensive Windows 11 Dell, and everything feels smoother and nicer (aside from the fact I&amp;#39;m not really used to the OS, and learning vscode is going to be a thing).&lt;/p&gt;</description>
    </item>
    <item>
      <title>The disastrous communication from Apple to apps developers</title>
      <link>https://carette.xyz/posts/dont_be_evil_apple/</link>
      <pubDate>Tue, 30 Jan 2024 17:30:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/dont_be_evil_apple/</guid>
      <description>&lt;p&gt;This blog post reflects my thoughts as a (European) software / apps developer, after the response of Apple about the EU&amp;rsquo;s DMA.&lt;br&gt;&#xA;My blog is followed by tech people, and I suppose everyone here knows the subject and just want to read my old thoughts about &amp;ldquo;what iz goin&amp;rsquo; on in da&amp;rsquo;techie world?!&amp;rdquo;, but let me summarize briefly what happened recently in the latest episode of &amp;ldquo;Apple and the DMA&amp;rdquo;&amp;hellip;&lt;/p&gt;</description>
    </item>
    <item>
      <title>We are doomed</title>
      <link>https://carette.xyz/posts/we_are_doomed/</link>
      <pubDate>Sun, 14 Jan 2024 20:00:00 +0100</pubDate>
      <guid>https://carette.xyz/posts/we_are_doomed/</guid>
      <description>&lt;p&gt;I wanted to write about modern graphics APIs at first, how exclusive they are depending of the platform you are&#xA;developing on (and for), and how difficult to use they are.&#xA;However, after (over-)thinking about this blog post, I came to the conclusion that this problem could&#xA;be generalized to all software.&lt;/p&gt;&#xA;&lt;p&gt;This is a &lt;strong&gt;very&lt;/strong&gt; pessimistic view of some people call &amp;ldquo;modern software engineering&amp;rdquo;, observed by a 10 years professinal&#xA;experience engineer and 20 years programmer.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Gaming on mac in 2023</title>
      <link>https://carette.xyz/posts/crossover_mac_retro_games/</link>
      <pubDate>Tue, 26 Dec 2023 12:00:00 +0100</pubDate>
      <guid>https://carette.xyz/posts/crossover_mac_retro_games/</guid>
      <description>&lt;p&gt;If you know me since a while you know my love for the macintosh and the Apple Silicon chips.&#xA;Actually my main daily driver is an Macbook Air M2 and I have a Steam Deck next to me which I bought to play Windows games in an handheld format.&#xA;But, sometimes, I just want to play &amp;ldquo;old&amp;rdquo; games on the mac device, which may not be compatible with macOS x86/64, so no Rosetta 2 translation available&amp;hellip;&lt;/p&gt;</description>
    </item>
    <item>
      <title>2023, in a nutshell</title>
      <link>https://carette.xyz/posts/2023_in_a_nutshell/</link>
      <pubDate>Mon, 25 Dec 2023 12:16:16 +0100</pubDate>
      <guid>https://carette.xyz/posts/2023_in_a_nutshell/</guid>
      <description>&lt;p&gt;In my last year&amp;rsquo;s blog post I wrote&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;2022 was a strange year for everyone I think.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;I do think, as game developers (or just computer developers), we can agree that 2023 was way worst than 2022,&#xA;maybe one of the worst year since a long time actually.&lt;br&gt;&#xA;Despite records sales in the video game industry, and record earnings, the number of layoffs in the field &lt;a href=&#34;https://www.gamesindustry.biz/over-6000-games-industry-jobs-lost-in-2023-so-far&#34;&gt;was incredibly high&lt;/a&gt;&#xA;(more than 6000 jobs lost in 2023 only so far, recorded from January to November 2023).&#xA;Also, E3 communicated a few weeks ago they are definitely closing their doors, sounding the death knell of an era of&#xA;physical celebration for the video game industry.&lt;br&gt;&#xA;I am very sad for all developers who lost their jobs this year, and I sincerely hope that the industry will recover&#xA;quickly from this.&lt;/p&gt;</description>
    </item>
    <item>
      <title>The Tunnel Effect</title>
      <link>https://carette.xyz/posts/the_tunnel_effect_demoscene/</link>
      <pubDate>Mon, 28 Aug 2023 22:45:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/the_tunnel_effect_demoscene/</guid>
      <description>&lt;h2 class=&#34;heading&#34; id=&#34;the-demoscene&#34;&gt;&#xA;  The demoscene&#xA;  &lt;a class=&#34;anchor&#34; href=&#34;#the-demoscene&#34;&gt;#&lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;The tunnel effect is a pretty old-school effect in graphics programming, coming directly from the demoscene.&#xA;If you take a look at &lt;a href=&#34;https://www.pouet.net&#34;&gt;pouet.net&lt;/a&gt; you may find many (many many) examples of a Tunnel effect&#xA;for different hardware configurations, like &lt;a href=&#34;https://www.pouet.net/prod.php?which=78044&#34;&gt;this one&lt;/a&gt; using 3D raycasting.&lt;/p&gt;&#xA;&lt;p&gt;In this collection of web demo effects you can find and experiment with this effect:&#xA;&lt;a href=&#34;https://seancode.com/demofx/&#34;&gt;https://seancode.com/demofx/&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;In one of the most well-known demos ever, &lt;a href=&#34;https://www.pouet.net/prod.php?which=63&#34;&gt;&amp;ldquo;Second Reality&amp;rdquo; from Future Crew&lt;/a&gt;,&#xA;the team presented a very nice Tunnel effect in&amp;hellip; &lt;strong&gt;1993&lt;/strong&gt;, &lt;em&gt;&lt;strong&gt;years&lt;/strong&gt;&lt;/em&gt; before any graphics card in a personal computer.&#xA;You can take a look at this effect, running on the CPU, &lt;a href=&#34;https://youtu.be/8G_aUxbbqWU?si=hRY4tsqnsgZA2Z4p&amp;amp;t=143&#34;&gt;on YouTube&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Update on Frame engine (2/x)</title>
      <link>https://carette.xyz/posts/frame_engine_advances_2023/</link>
      <pubDate>Sun, 13 Aug 2023 15:00:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/frame_engine_advances_2023/</guid>
      <description>&lt;p&gt;Almost one year ago &lt;a href=&#34;https://carette.xyz/posts/frame_engine_advances_2022&#34;&gt;I posted my advances&lt;/a&gt; on &amp;ldquo;&lt;code&gt;Frame&lt;/code&gt;&amp;rdquo;, a custom game engine wrote in Swift with SwiftUI, and Metal as a backend.&lt;/p&gt;&#xA;&lt;p&gt;From August 2022 to August 2023, I made a &lt;strong&gt;journey&lt;/strong&gt; into two different graphics libraries: &lt;em&gt;Vulkan&lt;/em&gt;, and &lt;em&gt;Metal&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;h2 class=&#34;heading&#34; id=&#34;the-new-project&#34;&gt;&#xA;  The new project&#xA;  &lt;a class=&#34;anchor&#34; href=&#34;#the-new-project&#34;&gt;#&lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;I definitely wanted to take a deep look into Vulkan for multiple different reasons: i) it is cross-platform, and ii) Vulkan begins to be widely used as a &amp;ldquo;standard&amp;rdquo; for game engines rendering backend, iii) I needed to get deeper for my work.&#xA;Indeed, since July 2023, I port at RedArtGames a Vulkan game engine for all the modern consoles, and it made me curious to learn more, more, and more and this graphics library.&lt;/p&gt;</description>
    </item>
    <item>
      <title>The weird unreachable code</title>
      <link>https://carette.xyz/posts/the_unreachable_code_bug/</link>
      <pubDate>Sun, 12 Feb 2023 23:03:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/the_unreachable_code_bug/</guid>
      <description>&lt;p&gt;Last week I heard about a weird behaviour of a C++ program on Twitter.&lt;br&gt;&#xA;The code is:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-c++&#34; data-lang=&#34;c++&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#888;font-weight:bold&#34;&gt;#include&lt;/span&gt; &lt;span style=&#34;color:#888;font-weight:bold&#34;&gt;&amp;lt;iostream&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#888;font-weight:bold&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;font-weight:bold;text-decoration:underline&#34;&gt;int&lt;/span&gt; &lt;span style=&#34;color:#666;font-weight:bold;font-style:italic&#34;&gt;main&lt;/span&gt;() {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;font-weight:bold;text-decoration:underline&#34;&gt;while&lt;/span&gt; (1);&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;font-weight:bold;text-decoration:underline&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#666;font-weight:bold;font-style:italic&#34;&gt;unreachable&lt;/span&gt;() {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    std::cout &amp;lt;&amp;lt; &lt;span style=&#34;color:#666;font-style:italic&#34;&gt;&amp;#34;wait... WHAT?!&amp;#34;&lt;/span&gt; &amp;lt;&amp;lt; std::endl;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Pretty simple, right? Two functions, one infinite loop, and the &lt;code&gt;unreachable&lt;/code&gt; function that is never called&amp;hellip;&lt;br&gt;&#xA;As you might expect the program will run until the user forces the program to quit, without any standard output,&#xA;no catch at all.&lt;/p&gt;</description>
    </item>
    <item>
      <title>2022, in a nutshell</title>
      <link>https://carette.xyz/posts/2022_in_a_nutshell/</link>
      <pubDate>Tue, 27 Dec 2022 12:00:00 +0100</pubDate>
      <guid>https://carette.xyz/posts/2022_in_a_nutshell/</guid>
      <description>&lt;p&gt;2022 was a strange year for everyone I think.&#xA;To me, it was a year full of reconsideration, of reflection on myself, the World, and my family&amp;rsquo;s future.&#xA;People tend to think that 2020 was the worst year to live recently, I don&amp;rsquo;t agree at all as I think the&#xA;worst may come &amp;ldquo;soon&amp;rdquo;&amp;hellip;&lt;/p&gt;&#xA;&lt;p&gt;Anyway.&lt;/p&gt;&#xA;&lt;h2 class=&#34;heading&#34; id=&#34;the-blog-posts-statement&#34;&gt;&#xA;  The blog posts statement&#xA;  &lt;a class=&#34;anchor&#34; href=&#34;#the-blog-posts-statement&#34;&gt;#&lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;I published nine posts this year (10 if you include the one you are reading):&lt;/p&gt;</description>
    </item>
    <item>
      <title>Fun with data alignment</title>
      <link>https://carette.xyz/posts/fun_with_data_alignment/</link>
      <pubDate>Fri, 18 Nov 2022 21:30:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/fun_with_data_alignment/</guid>
      <description>&lt;p&gt;Whoever worked on system programming know that data alignment is very important to save memory space,&#xA;or avoid runtime crashes casting from a specific type to another.&lt;br&gt;&#xA;After some months on porting games to console systems, I noticed how data alignment could be, sometimes,&#xA;a source of errors and a lack of knowledge.&lt;br&gt;&#xA;I wanted to discuss about data alignment in this technical article.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt;: This is the technical stack I used for this article:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Update on Frame engine (1/x)</title>
      <link>https://carette.xyz/posts/frame_engine_advances_2022/</link>
      <pubDate>Wed, 17 Aug 2022 19:20:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/frame_engine_advances_2022/</guid>
      <description>&lt;p&gt;Today I wanted to share my advancements on &lt;code&gt;Frame&lt;/code&gt;, a game engine I began almost two years ago, for Apple devices&#xA;only.&lt;/p&gt;&#xA;&lt;p&gt;In December 2020 I played a bit with Swift, SwiftUI, and Metal, on a custom game engine called &amp;ldquo;&lt;code&gt;Frame&lt;/code&gt;&amp;rdquo;.&lt;br&gt;&#xA;At that time I was not yet a father, and I had a lot of spare time (too much maybe) to spend on this project.&lt;br&gt;&#xA;I dropped the project a year after, in December 2021, as it became very difficult for me to focus and spend my&#xA;spare time on this kind of difficult project.&lt;/p&gt;</description>
    </item>
    <item>
      <title>How to publish a bad programming article</title>
      <link>https://carette.xyz/posts/how_to_make_a_bad_article/</link>
      <pubDate>Tue, 09 Aug 2022 23:48:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/how_to_make_a_bad_article/</guid>
      <description>&lt;p&gt;&lt;em&gt;&lt;strong&gt;[10th of August 2022 - Article Update]&lt;/strong&gt;&lt;/em&gt;&lt;br&gt;&#xA;A friend of mine told me he would not used the word &amp;ldquo;instructions&amp;rdquo; talking&#xA;about the size of a binary program, as there are not only instructions but the ELF structure, the imports, etc.&lt;br&gt;&#xA;After its careful review, I removed the word &amp;ldquo;instructions&amp;rdquo; for &amp;ldquo;lines&amp;rdquo; (even if I don&amp;rsquo;t really like the word &amp;ldquo;lines&amp;rdquo;&amp;hellip;).&lt;br&gt;&#xA;Thanks Eric for the review! :)&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;p&gt;After going to &lt;a href=&#34;https://news.ycombinator.com&#34;&gt;famous orange website&lt;/a&gt; I noticed an article claiming that &amp;lsquo;&lt;a href=&#34;https://lemire.me/blog/2022/08/09/hello-world-is-slower-in-c-than-in-c-linux/&#34;&gt;“Hello world” is slower in C++ than in C (Linux)&lt;/a&gt;&amp;rsquo;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>The demoscene</title>
      <link>https://carette.xyz/posts/the_demoscene/</link>
      <pubDate>Wed, 27 Jul 2022 20:25:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/the_demoscene/</guid>
      <description>&lt;p&gt;Among all the computer subcultures that exist, the demoscene subculture is, without a doubt, the one that impresses me&#xA;the most.&lt;br&gt;&#xA;The demoscene is composed by demomakers, a worldwide network of very creative minds involved in the making of&#xA;(non-commercial) &lt;strong&gt;demos&lt;/strong&gt;, just for fun.&lt;/p&gt;&#xA;&lt;p&gt;But was is a &lt;em&gt;demo&lt;/em&gt;?&#xA;A demo is a technical and/or aesthetic achievement made by demomakers - most of the time by groups of demomakers -, to show off their programming, visual and musical skills through an innovative computer program.&lt;br&gt;&#xA;There are many demoscene productions: games, graphics, music, &amp;hellip; all with an idea of solving a challenge,&#xA;making a new big technical achievement, innovating, while having a lot fun.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Changes are coming</title>
      <link>https://carette.xyz/posts/changes_are_coming/</link>
      <pubDate>Sat, 19 Mar 2022 21:30:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/changes_are_coming/</guid>
      <description>&lt;p&gt;Working in a creative work environment is what I wanted to get into, since I was a kid.&lt;/p&gt;&#xA;&lt;p&gt;First, I wanted to be a movie director (and a screenwriter), writing my own movies screenplays and directing actors to translate the words into images.&#xA;But, then, I discovered Computer Science and something I would not imagine possible before 2005: I could make money programming video-games&amp;hellip;&lt;/p&gt;&#xA;&lt;p&gt;Video-games have seen me grow up, from my first console (the &lt;a href=&#34;https://en.wikipedia.org/wiki/Game_Gear&#34;&gt;sega game gear&lt;/a&gt;) to the last one I bought (the &lt;a href=&#34;https://en.wikipedia.org/wiki/Nintendo_Switch&#34;&gt;nintendo switch&lt;/a&gt;), I was able to play many games that helped me define my personality, with books and movies I read / watched at this time.&lt;br&gt;&#xA;And I was always blown away how the video-games and consoles were working, asking me all the time &amp;ldquo;How the creative people imagined this terrific sequence?!&amp;rdquo;, rave about a game with an innovative gameplay, or just magnificient graphics (Quake was a revelation early 2000s for me, as I discovered it very lately).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Old games on m1 macs, natively</title>
      <link>https://carette.xyz/posts/mac_source_ports/</link>
      <pubDate>Wed, 09 Mar 2022 09:30:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/mac_source_ports/</guid>
      <description>&lt;p&gt;Apple Silicon chips on the mac changed &lt;strong&gt;everything&lt;/strong&gt;&amp;hellip; except the gaming industry (yet).&lt;br&gt;&#xA;Even though M1 chips (M1, , M1 Pro, and M1 Max) have been sold a lot (+25% this January compared to January 2021, which had already broke all the records for mac sales), a very few companies updated their actual games to run on M1 chips.&lt;/p&gt;&#xA;&lt;p&gt;Even if a few solutions exist to run windows games on the M1 mac, running a windows VM using &lt;a href=&#34;https://www.parallels.com/fr/products/desktop/&#34;&gt;Parallels&lt;/a&gt;, or translating at runtime all the API calls via &lt;a href=&#34;https://www.codeweavers.com/crossover&#34;&gt;Crossover&lt;/a&gt;, those products are expensive to run - in terms of both money and computer resources -, still labeled as &amp;ldquo;experimental&amp;rdquo;, and there is a high risk to not run all your games.&lt;/p&gt;</description>
    </item>
    <item>
      <title>The case of OpenGL, in C&#43;&#43;, on m1 mac</title>
      <link>https://carette.xyz/posts/opengl_and_cpp_on_m1_mac/</link>
      <pubDate>Mon, 07 Mar 2022 16:45:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/opengl_and_cpp_on_m1_mac/</guid>
      <description>&lt;p&gt;Since a long time now I was interested in learning computer graphics and &amp;ldquo;do stuff&amp;rdquo; with computer graphics APIs.&lt;br&gt;&#xA;I began to work on a very simple Game engine in Swift / Metal last year but I began to switch to a Windows machine&#xA;a few months ago, and Swift / Metal is not compatible with Windows (and will never be I think).&lt;/p&gt;&#xA;&lt;p&gt;Here, I wanted to go further in exploring OpenGL and / or Vulkan, for multi-platform GL.&lt;br&gt;&#xA;I choosed OpenGL because I am prototyping with GameMaker Studio 2, and writing shaders for it.&lt;br&gt;&#xA;Shaders in GMS2 use [GLSL](&lt;a href=&#34;https://www.khronos.org/opengl/wiki/Core_Language_(GLSL)&#34;&gt;https://www.khronos.org/opengl/wiki/Core_Language_(GLSL)&lt;/a&gt;, the &lt;em&gt;OpenGL Shading Language&lt;/em&gt;,&#xA;for OpenGL.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Burned out</title>
      <link>https://carette.xyz/posts/burned_out/</link>
      <pubDate>Fri, 04 Feb 2022 15:30:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/burned_out/</guid>
      <description>&lt;h2 class=&#34;heading&#34; id=&#34;warning&#34;&gt;&#xA;  Warning&#xA;  &lt;a class=&#34;anchor&#34; href=&#34;#warning&#34;&gt;#&lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;This post contains very toxic and negative thoughts about software and &amp;ldquo;the Industry&amp;rdquo; in general&amp;hellip;&lt;/p&gt;&#xA;&lt;h2 class=&#34;heading&#34; id=&#34;content&#34;&gt;&#xA;  Content&#xA;  &lt;a class=&#34;anchor&#34; href=&#34;#content&#34;&gt;#&lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;Last week, I was &amp;ldquo;congratuled&amp;rdquo; &lt;strong&gt;for having done shit&lt;/strong&gt;: making a project with a few human resources, a very very very short deadline, no tests &lt;em&gt;at all&lt;/em&gt; (because &lt;strong&gt;testing is failing&lt;/strong&gt; &amp;ldquo;lol&amp;rdquo;), and a few extra hours to spend in weekends and public holidays to &amp;ldquo;make it done&amp;rdquo;.&lt;br&gt;&#xA;The project does not run well, developers and project managers are all burned out&amp;hellip; and this is what the company called &amp;ldquo;a success&amp;rdquo;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>The disastrous consequences of a bad leader(ship)</title>
      <link>https://carette.xyz/posts/the_disastrous_consequences_of_a_bad_leadership/</link>
      <pubDate>Mon, 25 Oct 2021 12:00:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/the_disastrous_consequences_of_a_bad_leadership/</guid>
      <description>&lt;p&gt;People tend to critize developers &lt;strong&gt;a lot&lt;/strong&gt;, but it is not (always) their fault when something goes wrong.&lt;/p&gt;&#xA;&lt;p&gt;I experienced recently very bad adventures with leadership… not me as a leader, but me as a follower.&lt;/p&gt;&#xA;&lt;p&gt;After years and years as a software developer, and a few small experiences in leading interns and a very few software engineers, I would like to draw up a list of advices to beginners / young leaders, not only in software engineering but in overall.&lt;/p&gt;</description>
    </item>
    <item>
      <title>macOS hidden features</title>
      <link>https://carette.xyz/posts/macos_cmdline_hidden_features/</link>
      <pubDate>Sat, 20 Mar 2021 12:00:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/macos_cmdline_hidden_features/</guid>
      <description>&lt;p&gt;I just discovered a very good dotfiles that contains a lot of hidden features in macOS, or to manage you system through the console.&lt;br&gt;&#xA;Please check it out &lt;a href=&#34;https://github.com/mathiasbynens/dotfiles/blob/master/.macos&#34;&gt;here&lt;/a&gt; if you are interested in.&#xA;Thanks to &lt;a href=&#34;https://github.com/mathiasbynens&#34;&gt;Mathias Bynens&lt;/a&gt; for this!&lt;/p&gt;</description>
    </item>
    <item>
      <title>Conditional compilation and optin dependencies with Rust &#39;features&#39;</title>
      <link>https://carette.xyz/posts/rust_features/</link>
      <pubDate>Fri, 12 Mar 2021 00:45:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/rust_features/</guid>
      <description>&lt;p&gt;I am a long time Rust user/fan - since 2014 - and I still have some troubles to follow the community in terms of RFCs, or accepted features to be included in an upcoming version of the language.&#xA;Most of the time, checking for the new features, I have the feeling that I don&amp;rsquo;t need to use them for my current &amp;amp; past projects&amp;hellip; like a purist C / C++ developer who uses the strict minimum of the features to make something great.&lt;br&gt;&#xA;And sometimes I am wrong.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Do you trust your FOSS?</title>
      <link>https://carette.xyz/posts/do-you-trust-your-foss/</link>
      <pubDate>Sat, 02 Jan 2021 16:07:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/do-you-trust-your-foss/</guid>
      <description>&lt;p&gt;People tend to believe that free and open source softwares (&lt;em&gt;FOSS&lt;/em&gt;) are &lt;strong&gt;way more trustable&lt;/strong&gt; than proprietary softwares&amp;hellip; and &lt;strong&gt;I want to believe this idea&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Unfortunately, the idea behind this blog post is that it is not because a software has a free or open source licence that someone already checked and validated its &lt;strong&gt;full&lt;/strong&gt; source code (including the dependencies)!&lt;br&gt;&#xA;As an example, how many times did you put a star on a github project without checking the code at 100%?&#xA;Doing this, you can unfortunately promote a vulnerable library, which could be shared to your github followers who can believe that, as you trusted this library enough to star it is &lt;strong&gt;obviously trustable&lt;/strong&gt;&amp;hellip;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Anyway, thanks Flash...</title>
      <link>https://carette.xyz/posts/anyway_thanks_flash/</link>
      <pubDate>Thu, 31 Dec 2020 21:20:00 +0100</pubDate>
      <guid>https://carette.xyz/posts/anyway_thanks_flash/</guid>
      <description>&lt;p&gt;This is truly the end of some good indie games&amp;hellip; and a security threat.&lt;/p&gt;&#xA;&lt;blockquote class=&#34;twitter-tweet&#34;&gt;&lt;p lang=&#34;en&#34; dir=&#34;ltr&#34;&gt;Even with the effort to preserve flash projects, Flash on it&amp;#39;s own was a stepping stone for a lot of people, And it paved way for content creation on the internet pre-youtube days. &lt;br&gt;&lt;br&gt;Thanks Flash &lt;a href=&#34;https://t.co/iBRMvHHAIT&#34;&gt;pic.twitter.com/iBRMvHHAIT&lt;/a&gt;&lt;/p&gt;&amp;mdash; FABINO (@KinoFabino) &lt;a href=&#34;https://twitter.com/KinoFabino/status/1344723932243488770?ref_src=twsrc%5Etfw&#34;&gt;December 31, 2020&lt;/a&gt;&lt;/blockquote&gt;&#xA;&lt;script async src=&#34;https://platform.twitter.com/widgets.js&#34; charset=&#34;utf-8&#34;&gt;&lt;/script&gt;</description>
    </item>
    <item>
      <title>Know your threat model</title>
      <link>https://carette.xyz/posts/know_your_threat_model/</link>
      <pubDate>Thu, 31 Dec 2020 18:00:00 +0100</pubDate>
      <guid>https://carette.xyz/posts/know_your_threat_model/</guid>
      <description>&lt;p&gt;Last week, a &lt;a href=&#34;https://madaidans-insecurities.github.io/guides/linux-hardening.html&#34;&gt;very good blog post&lt;/a&gt; has been published about how Linux &lt;strong&gt;by default&lt;/strong&gt; is &amp;ldquo;not a secure operating system&amp;rdquo;&amp;hellip; (kernel actually).&lt;br&gt;&#xA;I agree with most of the ideas and methods explained in it, &lt;strong&gt;but&lt;/strong&gt; this article has a big issue: the target is absolutely not defined.&#xA;Unfortunately, this has been posted on hackernews (&lt;em&gt;oops&lt;/em&gt;) this morning (&lt;em&gt;iich&lt;/em&gt;) and, as expected (&lt;em&gt;ouuh&lt;/em&gt;), it has created a lot of comments and criticisms (&lt;em&gt;oh my&amp;hellip;&lt;/em&gt;).&lt;/p&gt;</description>
    </item>
    <item>
      <title>The end of a decade</title>
      <link>https://carette.xyz/posts/end_of_a_decade/</link>
      <pubDate>Thu, 31 Dec 2020 10:09:00 +0100</pubDate>
      <guid>https://carette.xyz/posts/end_of_a_decade/</guid>
      <description>&lt;p&gt;2020 is nearly over, finally! And what an awful year&amp;hellip;&lt;/p&gt;&#xA;&lt;p&gt;The end of 2020 is going to mark a new decade, which often comes with the assessment of the previous decade, but also the common list of soft and strong desires (and illusions) for the next ten years.&lt;/p&gt;&#xA;&lt;p&gt;I have been thinking about what the young me (let&amp;rsquo;s call him &amp;ldquo;&lt;em&gt;Young Me&lt;/em&gt;&amp;rdquo;) imagined of 2020 ten years ago&amp;hellip;&lt;/p&gt;&#xA;&lt;p&gt;&lt;em&gt;Young Me&lt;/em&gt; was in college at this time, in Biology classes, 100% sure that he will spend the rest of his life in a&#xA;BioComputing research laboratory, doing some researches after a PhD in Biology &amp;amp; Computer Science.&lt;br&gt;&#xA;Sorry kiddo, I am now a Machine Learning engineer, and I stopped my PhD after one year of strong desillusions, failures, and bad directions from my supervisors.&lt;br&gt;&#xA;Don&amp;rsquo;t get me wrong, I am happy with this failure, and I am strongly convinced that stopping my PhD was the best decision I made in the last five years.&lt;/p&gt;</description>
    </item>
    <item>
      <title>AlphaFold 2: a new AI achievement</title>
      <link>https://carette.xyz/posts/alphafold/</link>
      <pubDate>Thu, 03 Dec 2020 23:22:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/alphafold/</guid>
      <description>&lt;p&gt;The last 30th of November, &lt;a href=&#34;https://deepmind.com/&#34;&gt;DeepMind&lt;/a&gt; published on their website&#xA;&lt;a href=&#34;https://deepmind.com/blog/article/alphafold-a-solution-to-a-50-year-old-grand-challenge-in-biology&#34;&gt;an article about &lt;em&gt;AlphaFold&lt;/em&gt; 2&lt;/a&gt;,&#xA;an Artificial Intelligence that solves with 92.4 &lt;em&gt;GDT&lt;/em&gt;, on simple protein structure, a 50 years old grand challenge: the &lt;strong&gt;protein folding problem&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;DeepMind released the first version of &lt;em&gt;AlphaFold&lt;/em&gt; in 2018.&lt;br&gt;&#xA;This first version achieved a score of 58 in the Global Distance Test (&lt;em&gt;GDT&lt;/em&gt;) at the Critical Assessment of Structure Prediction (&lt;em&gt;CASP&lt;/em&gt;) competitions, which was the highest score at that time.&lt;br&gt;&#xA;For this occasion, an article &lt;a href=&#34;https://www.nature.com/articles/s41586-019-1923-7.epdf?author_access_token=Z_KaZKDqtKzbE7Wd5HtwI9RgN0jAjWel9jnR3ZoTv0MCcgAwHMgRx9mvLjNQdB2TlQQaa7l420UCtGo8vYQ39gg8lFWR9mAZtvsN_1PrccXfIbc6e-tGSgazNL_XdtQzn1PHfy21qdcxV7Pw-k3htw%3D%3D&#34;&gt;has been published on Nature&lt;/a&gt;, and the source code publicly available on &lt;a href=&#34;https://github.com/deepmind/deepmind-research/tree/master/alphafold_casp13&#34;&gt;Github&lt;/a&gt;.&#xA;With version 2, DeepMind&amp;rsquo;s dedicated team performed a median score of &lt;strong&gt;92.4&lt;/strong&gt; &lt;em&gt;GDT&lt;/em&gt; overall across all targets on the same competition dataset, and a median score of &lt;strong&gt;87.0&lt;/strong&gt; &lt;em&gt;GDT&lt;/em&gt; for the very hardest protein targets.&lt;br&gt;&#xA;Almost 30 more &lt;em&gt;GDT&lt;/em&gt; in two years, a &lt;em&gt;&lt;strong&gt;huge&lt;/strong&gt;&lt;/em&gt; improvement between those two years.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Slow... for your safety!</title>
      <link>https://carette.xyz/posts/macos_big_fail/</link>
      <pubDate>Fri, 13 Nov 2020 17:30:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/macos_big_fail/</guid>
      <description>&lt;p&gt;&lt;strong&gt;EDIT (15th of November 2020)&lt;/strong&gt;&lt;br&gt;&#xA;I made a mistake in explaining that OCSP send in its request the hash binary, which is not correct, and I am sorry for that.&lt;br&gt;&#xA;Indeed, OCSP send out the hash of the app developer certificate, as explained &lt;a href=&#34;https://blog.jacopo.io/en/post/apple-ocsp/&#34;&gt;in this great blog post&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;p&gt;Apple released it&amp;rsquo;s new mac operating system update - macOS Big Sur - yesterday night, a version that introduces a new design, closer to the iOS / iPadOS interface, new security updates (goodbye hacky kernel extensions&amp;hellip;), new features &amp;amp; apps via Catalyst and&amp;hellip; an optimized version of macOS for Apple Silicon devices.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Macintoshgarden</title>
      <link>https://carette.xyz/posts/macintoshgarden/</link>
      <pubDate>Mon, 05 Oct 2020 20:00:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/macintoshgarden/</guid>
      <description>&lt;p&gt;if &amp;ldquo;macintoshgarden&amp;rdquo; doesn&amp;rsquo;t give you a smile on your face, I&amp;rsquo;m pretty sure you don&amp;rsquo;t know this site&amp;hellip;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://macintoshgarden.org&#34;&gt;macintoshgarden&lt;/a&gt; is an abandonware archive dedicated to supporting the Macintosh computer platform, from the&#xA;&lt;a href=&#34;https://macintoshgarden.org/apps/think-c&#34;&gt;Symantec THINK C 5.0&lt;/a&gt; compiler, to &lt;a href=&#34;https://macintoshgarden.org/games/quake-ii&#34;&gt;Quake II&lt;/a&gt; and&#xA;&lt;a href=&#34;https://macintoshgarden.org/apps/snow-leopard-powerpc&#34;&gt;the original Snow Leopard build for PowerPC&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;This website is organized into different categories, according to the categories of softwares you are looking for&#xA;(&lt;a href=&#34;https://macintoshgarden.org/apps/development-tools&#34;&gt;development tools&lt;/a&gt;, &lt;a href=&#34;https://macintoshgarden.org/apps/utilities&#34;&gt;utilities&lt;/a&gt;,&#xA;&lt;a href=&#34;https://macintoshgarden.org/apps/visual-arts-graphics&#34;&gt;visual arts graphics&lt;/a&gt;, &lt;a href=&#34;https://macintoshgarden.org/games/all&#34;&gt;games&lt;/a&gt;, etc&amp;hellip;), or&#xA;the guide you are looking for, like &lt;a href=&#34;https://macintoshgarden.org/guides&#34;&gt;an introduction to emulation for Macintosh softwares&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Books recommendation (1/x)</title>
      <link>https://carette.xyz/posts/recommended_books_1/</link>
      <pubDate>Thu, 16 Jul 2020 00:00:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/recommended_books_1/</guid>
      <description>&lt;p&gt;In 2019, I read an average of three books a month, including comic books.&lt;/p&gt;&#xA;&lt;p&gt;Unfortunately, during the lockdown since March, it was difficult to read new interesting books, due to several reasons:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;no new release;&lt;/li&gt;&#xA;&lt;li&gt;physical bookstores close their doors;&lt;/li&gt;&#xA;&lt;li&gt;people ordered a lot of books to avoid boredom, which has sharply reduced stocks (and the choice of books as well);&lt;/li&gt;&#xA;&lt;li&gt;parcel and mail delivery has been greatly impacted too, and delays have been extended from two days to one month.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;This strange situation gave me the opportunity to read again some books I like(d), and to make a short list of books I recommend.&lt;/p&gt;</description>
    </item>
    <item>
      <title>The state of memory safety in Chromium</title>
      <link>https://carette.xyz/posts/memory_safety_chromium/</link>
      <pubDate>Sun, 24 May 2020 00:00:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/memory_safety_chromium/</guid>
      <description>&lt;p&gt;As &lt;a href=&#34;https://medium.com/tadaweb/security-by-design-a-brief-introduction-to-rust-378060e45038&#34;&gt;Microsoft last year&lt;/a&gt;, the Chromium project team, responsible for the Chromium browser (which is the base of many open source and proprietary projects like Chrome, Brave, or Visual Studio Code), released a blog post last week about &lt;a href=&#34;https://www.chromium.org/Home/chromium-security/memory-safety&#34;&gt;memory bugs in Chromium&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;h2 class=&#34;heading&#34; id=&#34;the-analysis&#34;&gt;&#xA;  The analysis&#xA;  &lt;a class=&#34;anchor&#34; href=&#34;#the-analysis&#34;&gt;#&lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;The analysis has been based on both past and present 912 high or critical severity security issues, since 2015.&lt;br&gt;&#xA;Based on those bugs, the observation is clear:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Setup video and sound for WSL2</title>
      <link>https://carette.xyz/posts/setup_sound_video_wsl2/</link>
      <pubDate>Tue, 05 May 2020 00:00:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/setup_sound_video_wsl2/</guid>
      <description>&lt;p&gt;+++&#xA;draft = false&#xA;categories = [&amp;ldquo;wsl2&amp;rdquo;, &amp;ldquo;linux&amp;rdquo;, &amp;ldquo;windows&amp;rdquo;, &amp;ldquo;development&amp;rdquo;, &amp;ldquo;hack&amp;rdquo;]&#xA;disqus = false&#xA;+++&lt;/p&gt;&#xA;&lt;p&gt;WSL, or &lt;a href=&#34;https://docs.microsoft.com/en-US/windows/wsl/about&#34;&gt;Windows Subsystem for Linux&lt;/a&gt;, was, in my opinion, a game changer for developers, in order to run GNU/Linux utilities on Windows 10.&lt;/p&gt;&#xA;&lt;p&gt;In 2019, Microsoft released a new version of WSL (in insiders builds): WSL2.&lt;/p&gt;&#xA;&lt;p&gt;WSL2 changed a lot of things: instead of emulating Linux system calls, WSL2 proposes a real Linux kernel in a light and very optimized virtual machine running on hyper-V.&#xA;This enables great file system performance (at least, better than first version of WSL), as well as full system call compatibility.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Developers are not superheroes</title>
      <link>https://carette.xyz/posts/developers_not_superheroes/</link>
      <pubDate>Sat, 25 Apr 2020 19:00:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/developers_not_superheroes/</guid>
      <description>&lt;p&gt;There is a myth in IT.&lt;br&gt;&#xA;The myth of the &amp;ldquo;super code monkey&amp;rdquo;.&lt;/p&gt;&#xA;&lt;p&gt;The &amp;ldquo;super code monkey&amp;rdquo; is an expert in everything, in every situation.&lt;br&gt;&#xA;The &amp;ldquo;super code monkey&amp;rdquo; does not introduce bugs when he writes code.&lt;br&gt;&#xA;The &amp;ldquo;super code monkey&amp;rdquo; sleeps at least eight hours every day.&lt;br&gt;&#xA;The &amp;ldquo;super code monkey&amp;rdquo; is young, has a social life, and practice sport each day to keep in shape.&lt;br&gt;&#xA;The &amp;ldquo;super code monkey&amp;rdquo; is an expert in Android and iOS apps development, he knows how to write excellent code in, at least, C, C++, and Java.&lt;br&gt;&#xA;The &amp;ldquo;super code monkey&amp;rdquo; studied Data Science in three weeks, and became an expert on Python, R, Matlab, Octave, and Julia in less than a month.&lt;br&gt;&#xA;The &amp;ldquo;super code monkey&amp;rdquo; has strong knowledge in Docker and Kubernetes, and masterized 10 different Javascript frameworks the last six months.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Zero-cost abstractions in Rust</title>
      <link>https://carette.xyz/posts/zero_cost_abstraction/</link>
      <pubDate>Sat, 08 Feb 2020 23:10:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/zero_cost_abstraction/</guid>
      <description>&lt;p&gt;Last week, &lt;a href=&#34;https://idursun.com/&#34;&gt;Ibrahim Dursun&lt;/a&gt; published &lt;a href=&#34;https://idursun.com/posts/Rust_zero_cost_abstractions_in_action/&#34;&gt;an article about zero-cost abstractions in Rust&lt;/a&gt;.&lt;br&gt;&#xA;Unfortunately, except for a subpart of the article, this article did not reflect, in my own opinion, correctly what are zero-cost abstractions.&lt;/p&gt;&#xA;&lt;p&gt;Indeed, zero-cost abstractions, or &amp;ldquo;zero-overhead&amp;rdquo;, can be difficult to understand and to separate from other compiler optimizations, and can be easily misunderstood.&lt;/p&gt;&#xA;&lt;p&gt;In this blog article, I discuss about this specific feature, and give you an example of how Rust is using it to deliver optimized code of your abstracted projects.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Dealing everyday with anxiety, impostor syndrome, and mental depression</title>
      <link>https://carette.xyz/posts/dealing-with-depression/</link>
      <pubDate>Fri, 24 Jan 2020 20:00:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/dealing-with-depression/</guid>
      <description>&lt;p&gt;This is for sure the most intimate blog post I ever made on this website, and this blog post was absolutely necessary.&lt;/p&gt;&#xA;&lt;p&gt;Since I was in middle school, I suffered a few years from anxiety, mental depression, but also impostor syndrome.&#xA;The path was hard, but thanks to my family and my friends, I am feeling a lot better now.&lt;/p&gt;&#xA;&lt;p&gt;Recently, after talking with people in real life or in the internet, reading blog posts, or simply scrolling on Twitter, I do feel that anxiety,&#xA;depression and impostor syndrome is taking more and more place in our society, with this sentiment that all of those belong to what&#xA;I will call in this post &amp;ldquo;the pain of the century&amp;rdquo;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>A strange strings comparison problem, in Go</title>
      <link>https://carette.xyz/posts/go_untyped_constants/</link>
      <pubDate>Sun, 15 Sep 2019 02:00:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/go_untyped_constants/</guid>
      <description>&lt;p&gt;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&lt;figure class=&#34; img-small&#34;&gt;&#xA;&#xA;    &lt;div class=&#34;img-container&#34; &gt;&#xA;        &lt;img loading=&#34;lazy&#34; alt=&#34;&#34; src=&#34;https://carette.xyz/images/go_implicit_conversions_1.png#small&#34; &gt;&#xA;    &lt;/div&gt;&#xA;&#xA;    &#xA;    &lt;div class=&#34;caption-container&#34;&gt;&#xA;        &lt;figcaption&gt; Thanks to &lt;a href=&#34;https://github.com/egonelbre/gophers&#34;&gt;https://github.com/egonelbre/gophers&lt;/a&gt; for this sketch &lt;/figcaption&gt;&#xA;    &lt;/div&gt;&#xA;    &#xA;&lt;/figure&gt;&#xA;&lt;/p&gt;&#xA;&lt;p&gt;Go is known for it&amp;rsquo;s strong type system, and explicit type conversion.&lt;/p&gt;&#xA;&lt;p&gt;For example, if you have to compare two different values of different types, you will have a compiler error:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-golang&#34; data-lang=&#34;golang&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;font-weight:bold;text-decoration:underline&#34;&gt;package&lt;/span&gt; main&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;font-weight:bold;text-decoration:underline&#34;&gt;import&lt;/span&gt; &lt;span style=&#34;color:#666;font-style:italic&#34;&gt;&amp;#34;fmt&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;font-weight:bold;font-style:italic;text-decoration:underline&#34;&gt;func&lt;/span&gt; &lt;span style=&#34;color:#666;font-weight:bold;font-style:italic&#34;&gt;main&lt;/span&gt;() {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;   &lt;span style=&#34;font-weight:bold;font-style:italic;text-decoration:underline&#34;&gt;var&lt;/span&gt; x &lt;span style=&#34;font-weight:bold;text-decoration:underline&#34;&gt;int&lt;/span&gt; = 0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;   &lt;span style=&#34;font-weight:bold;font-style:italic;text-decoration:underline&#34;&gt;var&lt;/span&gt; y &lt;span style=&#34;font-weight:bold;text-decoration:underline&#34;&gt;int32&lt;/span&gt; = 0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;   fmt.&lt;span style=&#34;color:#666;font-weight:bold;font-style:italic&#34;&gt;Printf&lt;/span&gt;(&lt;span style=&#34;color:#666;font-style:italic&#34;&gt;&amp;#34;%+v&amp;#34;&lt;/span&gt;, x == y) &#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;If you try to compile this code sample, you will have to deal with the following error, reached during compilation:&lt;/p&gt;</description>
    </item>
    <item>
      <title>(Un)marshal complex JSON objects, in Go</title>
      <link>https://carette.xyz/posts/go_unmarshal_complex_structure/</link>
      <pubDate>Tue, 16 Apr 2019 20:03:16 +0200</pubDate>
      <guid>https://carette.xyz/posts/go_unmarshal_complex_structure/</guid>
      <description>&lt;p&gt;If you work a lot with APIs in Go, it may happen you have to work with complex&#xA;JSON responses&amp;hellip;&lt;/p&gt;&#xA;&lt;p&gt;Ok, let&amp;rsquo;s talk about that using a simple example.&lt;/p&gt;&#xA;&lt;p&gt;Imagine you have to work with the following data structure, which represents a&#xA;&lt;code&gt;Person&lt;/code&gt; data structure (like a real person, no trap) with the following&#xA;characteristics:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;the name of a Person object: a string;&lt;/li&gt;&#xA;&lt;li&gt;the dog&amp;rsquo;s name of the Person object (if it exists): a Dog structure that&#xA;contains only a string, which is its name;&lt;/li&gt;&#xA;&lt;li&gt;the age of the Person object: an integer;&lt;/li&gt;&#xA;&lt;li&gt;the last time the data structure has been updated: a datetime type.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;First, we try to implement the associated Go structure, which is very simple:&lt;/p&gt;</description>
    </item>
    <item>
      <title>2019, as minimalistic</title>
      <link>https://carette.xyz/posts/2019_as_minimalistic/</link>
      <pubDate>Wed, 20 Feb 2019 10:11:49 +0100</pubDate>
      <guid>https://carette.xyz/posts/2019_as_minimalistic/</guid>
      <description>&lt;p&gt;I became fed up with my electronic materials.&lt;/p&gt;&#xA;&lt;p&gt;The way we evolve, as city dwellers, implies sometimes to adopt a non-minimalistic approach to live:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;to have one device to make only one thing,&lt;/li&gt;&#xA;&lt;li&gt;to have different devices that can be used to make the same thing,&lt;/li&gt;&#xA;&lt;li&gt;to buy expensive things based on good ads,&lt;/li&gt;&#xA;&lt;li&gt;to buy expensive things based on what you can do (and finally things you will never do), &amp;hellip;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;In 2019, I want to adopt a new approach in my life, which can be simply resumed as: &lt;strong&gt;do more, with less&lt;/strong&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Struct embedding trick to avoid duplicate code</title>
      <link>https://carette.xyz/posts/struct_embedding_trick/</link>
      <pubDate>Tue, 06 Nov 2018 21:50:24 +0100</pubDate>
      <guid>https://carette.xyz/posts/struct_embedding_trick/</guid>
      <description>&lt;p&gt;When you are writing go code, and try to make it more flexible, most of the time you are looking for interfaces.&#xA;A go interface is a good solution to make your code more flexible, or scalable,&#xA;and is also a way to achieve polymorphism.&lt;/p&gt;&#xA;&lt;p&gt;As the official go documentation discusses about interfaces, interfaces are &amp;ldquo;named collections of method signatures&amp;rdquo;.&#xA;So, to implement an interface on different structs, you have to implement&#xA;each interface&amp;rsquo;s method for a given struct.&lt;/p&gt;</description>
    </item>
    <item>
      <title>`go mod`: manage all your dep as a single unit</title>
      <link>https://carette.xyz/posts/go_module_feature/</link>
      <pubDate>Sat, 03 Nov 2018 20:04:54 +0100</pubDate>
      <guid>https://carette.xyz/posts/go_module_feature/</guid>
      <description>&lt;p&gt;Generally, when you want to package your go app, you are creating different&#xA;packages, inside the same project.&#xA;The problem is, if you want to use a single internal package, you simply can&amp;rsquo;t,&#xA;because you have to import the &lt;em&gt;entire&lt;/em&gt; package in order to user a single and&#xA;very simple feature inside.&lt;/p&gt;&#xA;&lt;p&gt;But, sometimes, you don&amp;rsquo;t want to use a single extenal package.&#xA;Indeed, you just want to use a certain number of packages to do a task, and all compatible between them.&#xA;And this become more complex&amp;hellip;&#xA;Also, do not forget that, when importing a Go project using &lt;code&gt;go get&lt;/code&gt;, it will&#xA;not check the package dependencies, or the package versions&amp;hellip;&#xA;So, you need an external tool to define and &lt;em&gt;save&lt;/em&gt; the package versions your&#xA;Go app is using.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Medium posts</title>
      <link>https://carette.xyz/posts/medium_posts/</link>
      <pubDate>Sat, 27 Oct 2018 01:23:11 +0200</pubDate>
      <guid>https://carette.xyz/posts/medium_posts/</guid>
      <description>&lt;p&gt;** Update 16th of February 2025 **&lt;/p&gt;&#xA;&lt;p&gt;Unfortunately two articles from DernierCri are now pointing to 404 pages:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&amp;ldquo;Déployer une app Phoenix sur Heroku, sans connaître Phoenix&amp;rdquo;,&lt;/li&gt;&#xA;&lt;li&gt;and &amp;ldquo;Cinq fausses idées sur le Big Data&amp;rdquo;.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;The article about the Julia programming language is still available, but it might be outdated.&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;p&gt;I wrote a few articles for DernierCri about Big Data and Software Development &lt;a href=&#34;https://blog.derniercri.io/@k0pernicus&#34;&gt;on Medium&lt;/a&gt; in 2016 and 2018.&lt;/p&gt;&#xA;&lt;p&gt;Those blog articles has been written in French.&lt;br&gt;&#xA;This is the list of the blog posts I wrote:&lt;/p&gt;</description>
    </item>
    <item>
      <title>The `go build` constraints</title>
      <link>https://carette.xyz/posts/go_build_feature/</link>
      <pubDate>Fri, 26 Oct 2018 18:56:18 +0200</pubDate>
      <guid>https://carette.xyz/posts/go_build_feature/</guid>
      <description>&lt;p&gt;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&lt;figure class=&#34; img-small&#34;&gt;&#xA;&#xA;    &lt;div class=&#34;img-container&#34; &gt;&#xA;        &lt;img loading=&#34;lazy&#34; alt=&#34;&#34; src=&#34;https://carette.xyz/images/go_build_constraint.png#small&#34; &gt;&#xA;    &lt;/div&gt;&#xA;&#xA;    &#xA;    &lt;div class=&#34;caption-container&#34;&gt;&#xA;        &lt;figcaption&gt; Credits to @ashleymcnamara &lt;/figcaption&gt;&#xA;    &lt;/div&gt;&#xA;    &#xA;&lt;/figure&gt;&#xA;&lt;/p&gt;&#xA;&lt;p&gt;Recently, I started to use &lt;a href=&#34;https://github.com/gizak/termui&#34;&gt;termui&lt;/a&gt; in order to build and run&#xA;a modular dashboard on the terminal.&#xA;This dashboard will display my daily todo list, some informations about my git projects/repositories,&#xA;some daily news, etc&amp;hellip;&lt;/p&gt;&#xA;&lt;p&gt;I use everyday: a macbook pro, and a GNU/Linux laptop - so, two different operating systems.&lt;/p&gt;&#xA;&lt;p&gt;Even if macOS and GNU/Linux share similar parts, those systems are strictly differents, and&#xA;I will have to compile the dashboard for each one.&#xA;No problem with cross-compilation, Go can handle that very quickly and simply via a compiler built-in option.&#xA;Nice!&lt;/p&gt;</description>
    </item>
    <item>
      <title>The &#39;intelligence&#39; problem in &#39;artificial intelligence&#39;</title>
      <link>https://carette.xyz/posts/the_intelligence_problem/</link>
      <pubDate>Sat, 22 Sep 2018 13:38:34 +0200</pubDate>
      <guid>https://carette.xyz/posts/the_intelligence_problem/</guid>
      <description>&lt;p&gt;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&lt;figure class=&#34; img-small&#34;&gt;&#xA;&#xA;    &lt;div class=&#34;img-container&#34; &gt;&#xA;        &lt;img loading=&#34;lazy&#34; alt=&#34;&#34; src=&#34;https://carette.xyz/images/intelligence_problem.png#small&#34; &gt;&#xA;    &lt;/div&gt;&#xA;&#xA;    &#xA;    &lt;div class=&#34;caption-container&#34;&gt;&#xA;        &lt;figcaption&gt; XKCD - Artificial Intelligence &lt;/figcaption&gt;&#xA;    &lt;/div&gt;&#xA;    &#xA;&lt;/figure&gt;&#xA;&lt;/p&gt;&#xA;&lt;p&gt;The more I listen AI enthousiastic people, the more I can differenciate them in &amp;lsquo;10&amp;rsquo; very different groups:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;people who think that AI is a synonym of &amp;ldquo;strong black magic&amp;rdquo;;&lt;/li&gt;&#xA;&lt;li&gt;people who are amazed by AI because &amp;ldquo;come on dude&amp;hellip; it&amp;rsquo;s just maths!&amp;rdquo;.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;There is something wrong with &amp;ldquo;Artificial Intelligence&amp;rdquo;&amp;hellip;&#xA;I don&amp;rsquo;t speak about some tech, just the term.&lt;/p&gt;&#xA;&lt;p&gt;Let me explain why, in three different points.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Pyenv</title>
      <link>https://carette.xyz/posts/pyenv/</link>
      <pubDate>Sun, 22 Jul 2018 14:01:43 +0200</pubDate>
      <guid>https://carette.xyz/posts/pyenv/</guid>
      <description>&lt;p&gt;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&lt;figure class=&#34; img-small&#34;&gt;&#xA;&#xA;    &lt;div class=&#34;img-container&#34; &gt;&#xA;        &lt;img loading=&#34;lazy&#34; alt=&#34;&#34; src=&#34;https://carette.xyz/images/pyenv_cover.png#small&#34; &gt;&#xA;    &lt;/div&gt;&#xA;&#xA;    &#xA;    &lt;div class=&#34;caption-container&#34;&gt;&#xA;        &lt;figcaption&gt; Credits to XKCD &lt;/figcaption&gt;&#xA;    &lt;/div&gt;&#xA;    &#xA;&lt;/figure&gt;&#xA;&lt;/p&gt;&#xA;&lt;p&gt;I write Python code each day, for personal and professional projects.&#xA;As I am working on multiple Python projects, old and fresh ones, I have to use different Python versions for those projects, from &lt;code&gt;2.7.2&lt;/code&gt; to &lt;code&gt;3.7.0&lt;/code&gt;.&#xA;Also, I want to switch the Python version of my projects very easily and quickly, in case of we have to upgrade the Python version of the software.&lt;/p&gt;&#xA;&lt;p&gt;I am a macOS user, and I use &lt;em&gt;a lot&lt;/em&gt; &lt;a href=&#34;https://brew.sh/&#34;&gt;HomeBrew&lt;/a&gt;.&#xA;Unfortunately, HomeBrew is not a great solution to keep a trace of multiple versions of a given build (especially the interpreters)&amp;hellip;&#xA;I can take a look at each source code in &lt;a href=&#34;https://python.org&#34;&gt;python.org&lt;/a&gt;, download the one a want, build it, and set manually all my paths in order to retrieve the Python version I want for a given project.&#xA;But, we are in 2018, and I figured that someone already automatized this thing.&lt;/p&gt;</description>
    </item>
    <item>
      <title>It&#39;s all about community</title>
      <link>https://carette.xyz/posts/its_all_about_community/</link>
      <pubDate>Mon, 15 Jan 2018 00:00:00 +0200</pubDate>
      <guid>https://carette.xyz/posts/its_all_about_community/</guid>
      <description>&lt;p&gt;It&amp;rsquo;s on - my first blog post for 2018!&lt;/p&gt;&#xA;&lt;p&gt;All my best wishes for this new year, about love, health, and love (quoting Patrick Sebastien, &amp;ldquo;&lt;em&gt;love is everything&lt;/em&gt;&amp;rdquo;).&lt;/p&gt;&#xA;&lt;p&gt;Ok, let&amp;rsquo;s talk about something more serious&amp;hellip;&#xA;Today, I want to talk about &lt;em&gt;Rust&lt;/em&gt;. Yes, &lt;em&gt;Rust&lt;/em&gt;, again. But this time it&amp;rsquo;s not about something I discovered, implemented or anything along the lines&amp;hellip;&#xA;You know, during the two last years, I tried to &amp;ldquo;promote&amp;rdquo; this programming language everywhere, because I strongly believe in &lt;em&gt;Rust&lt;/em&gt;. I made two different talks at two meetups in Lille, attended to several &lt;em&gt;Rust&lt;/em&gt; events and conferences, and each time I was thinking about how awesome the &lt;em&gt;Rust&lt;/em&gt; community is. And now it&amp;rsquo;s time to make a blog post for this.&#xA;So, I want to talk from the heart about the &lt;em&gt;Rust&lt;/em&gt; community, and how it is awesome to see people building an awesome project together.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Rustfest, an amazing experience</title>
      <link>https://carette.xyz/posts/rustfest_an_amazing_experience/</link>
      <pubDate>Sun, 01 Oct 2017 09:09:11 +0200</pubDate>
      <guid>https://carette.xyz/posts/rustfest_an_amazing_experience/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://zurich.rustfest.eu/&#34;&gt;RustFest&lt;/a&gt; is an European event to attempt general talks about Rust, and to meet people from the Rust community.&lt;/p&gt;&#xA;&lt;p&gt;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&lt;figure class=&#34;&#34;&gt;&#xA;&#xA;    &lt;div class=&#34;img-container&#34; &gt;&#xA;        &lt;img loading=&#34;lazy&#34; alt=&#34;&#34; src=&#34;https://carette.xyz/images/rustfest-badge.jpg&#34; &gt;&#xA;    &lt;/div&gt;&#xA;&#xA;    &#xA;    &lt;div class=&#34;caption-container&#34;&gt;&#xA;        &lt;figcaption&gt; Rustfest 2017 badge &lt;/figcaption&gt;&#xA;    &lt;/div&gt;&#xA;    &#xA;&lt;/figure&gt;&#xA;&lt;/p&gt;&#xA;&lt;p&gt;&lt;em&gt;RustFest&lt;/em&gt; is a two-days event.&#xA;The first day is a series of talks from the Rust team (in Mozilla) and, predominantly, the Rust community about: the past and the future of the programming language, POCs, how to deal with macros, awesome new projects like 3D games, a gently introduction for developing 2D games (and how easy is it), why a company choosed to move their tech stack to Rust, etc.&#xA;Each talk was a lesson: how to deal with a &amp;ldquo;rust-matic&amp;rdquo; problem, how to manage your project, how to deal with this feature, or how to present a complex subject to a various auditory.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Is research innovation still belongs to Universities ?</title>
      <link>https://carette.xyz/posts/is_research_innovation_still_belongs_to_universities/</link>
      <pubDate>Sat, 24 Jun 2017 08:02:35 +0000</pubDate>
      <guid>https://carette.xyz/posts/is_research_innovation_still_belongs_to_universities/</guid>
      <description>&lt;p&gt;I started my PhD two months ago, on automated ways to classify documents, and I begin to be depressed&amp;hellip;&lt;/p&gt;&#xA;&lt;p&gt;Since I started University in Computer Science, I wanted to do a PhD in biocomputing, combinatorial optimization, or machine learning.&#xA;In CS class, Machine learning was the area I enjoyed the most - so it was natural to look for a PhD in ML.&#xA;For me, research activities conduct to new innovative techniques, or tools, which have to be tested on real world examples.&lt;/p&gt;</description>
    </item>
    <item>
      <title>My new year&#39;s resolutions</title>
      <link>https://carette.xyz/posts/my_new_years_resolutions/</link>
      <pubDate>Mon, 02 Jan 2017 19:32:13 +0100</pubDate>
      <guid>https://carette.xyz/posts/my_new_years_resolutions/</guid>
      <description>&lt;p&gt;Happy new year !&lt;/p&gt;&#xA;&lt;p&gt;I hope that 2016 has been great for you.&#xA;For me, 2016 was mixed: good (my internship at Montreal, my graduation and a pretty cool job) and bad times (many assassination attempts and, obviously, the election of Trump).&lt;/p&gt;&#xA;&lt;p&gt;This year, we increment (again) the counter, and pass from 2016 to 2017, and&#xA;I hope that this new year will be full of &lt;strong&gt;love&lt;/strong&gt;, &lt;strong&gt;tolerance&lt;/strong&gt; and &lt;strong&gt;respect&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;In this blog post, I show you my personal resolutions for 2017.&#xA;Because, as you know, a new year comes new resolutions !&lt;/p&gt;</description>
    </item>
    <item>
      <title>I&#39;m finished with you, Charlemagne!</title>
      <link>https://carette.xyz/posts/school_is_now_over/</link>
      <pubDate>Sun, 25 Sep 2016 01:37:28 +0200</pubDate>
      <guid>https://carette.xyz/posts/school_is_now_over/</guid>
      <description>&lt;p&gt;I&amp;rsquo;m wondering myself about the title of this post, 2 days ago&amp;hellip; The first title I chosen was &amp;ldquo;&lt;em&gt;I&amp;rsquo;m finished school&amp;hellip; and I&amp;rsquo;m scared!&lt;/em&gt;&amp;rdquo;, but it was not really geeky, and pretty pessimistic. The next I chosen was &amp;ldquo;&lt;em&gt;The Legend of k0pernicus: A New Scary Adventure&lt;/em&gt;&amp;rdquo;, which was pretty geeky but also pessimistic (again). Finally, &amp;ldquo;&lt;em&gt;I&amp;rsquo;m finished with you, Charlemagne!&lt;/em&gt;&amp;rdquo; refers to the end of my school period and, depending on who is reading this post, might be felt as a pretty good thing, or just pretty scary thing&amp;hellip;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Why I can&#39;t back to a GNU/Linux distribution again</title>
      <link>https://carette.xyz/posts/why_i_cant_back_to_gnulinux_again/</link>
      <pubDate>Sat, 10 Sep 2016 03:20:49 +0200</pubDate>
      <guid>https://carette.xyz/posts/why_i_cant_back_to_gnulinux_again/</guid>
      <description>&lt;p&gt;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&lt;figure class=&#34;&#34;&gt;&#xA;&#xA;    &lt;div class=&#34;img-container&#34; &gt;&#xA;        &lt;img loading=&#34;lazy&#34; alt=&#34;&#34; src=&#34;https://carette.xyz/images/macbook_air_picture.jpeg&#34; &gt;&#xA;    &lt;/div&gt;&#xA;&#xA;    &#xA;&lt;/figure&gt;&#xA;&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;m a programmer.&#xA;I use in daily life four main programming languages: &lt;em&gt;Python&lt;/em&gt;, &lt;em&gt;Rust&lt;/em&gt;, &lt;em&gt;Golang&lt;/em&gt; and &lt;em&gt;Ocaml&lt;/em&gt;, and I&amp;rsquo;m very happy to use my Macbook to develop softwares everyday.&#xA;As text editor, I use &lt;em&gt;NeoVim&lt;/em&gt; everyday, and I hate programming languages with dedicated GUIs (like Pharo for example).&#xA;As daily softwares, I use a lot &lt;em&gt;Docker&lt;/em&gt;, &lt;em&gt;Opera&lt;/em&gt;, &lt;em&gt;Keybase&lt;/em&gt;, &lt;em&gt;AirMail&lt;/em&gt;, &lt;em&gt;Dropbox&lt;/em&gt; and &lt;em&gt;Flux&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;I use &lt;em&gt;The Evil&lt;/em&gt; (little tribute to trolls&amp;hellip;) everyday: a beautiful early-2013 Macbook Air, 8Gbytes of RAM, 128Gbytes SSD and a dual core to code almost and surf the web 11 hours a day.&#xA;And, you know what? I. LOVE. IT.&lt;/p&gt;</description>
    </item>
    <item>
      <title>The Hot-Pepper approach</title>
      <link>https://carette.xyz/posts/the_hotpepper_approach/</link>
      <pubDate>Thu, 01 Sep 2016 13:41:55 +0200</pubDate>
      <guid>https://carette.xyz/posts/the_hotpepper_approach/</guid>
      <description>&lt;p&gt;&lt;em&gt;Note: These observations are reported in my research report &lt;a href=&#34;https://carette.xyz/m2-mocad-internship.pdf&#34;&gt;here&lt;/a&gt;, and a research paper is currently drafted on this. The source code of this approach is visible in &lt;a href=&#34;https://github.com/SOMCA&#34;&gt;Github&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;During my final internship at &lt;a href=&#34;http://www.latece.uqam.ca&#34;&gt;LATECE&lt;/a&gt; in Montreal, I developed an approach, supported by a Python framework, to evaluate the energy consumption of Android bad practices, using the source code of the app.&#xA;This approach is called &lt;em&gt;&lt;strong&gt;Hot-Pepper&lt;/strong&gt;&lt;/em&gt;.&#xA;&lt;em&gt;&lt;strong&gt;Hot-Pepper&lt;/strong&gt;&lt;/em&gt; helped us to find that 3 popular Android code smells may be considered as energy code smells: &lt;em&gt;HashMap Usage&lt;/em&gt;, &lt;em&gt;Internal Getter/Setter&lt;/em&gt; and &lt;em&gt;Member Ignoring Method&lt;/em&gt;.&#xA;Also, it permits to evaluate picture practices, in terms of energy consumption, like formats (PNG vs JPEG), picture size (original JPEG and compressed JPEG, without degrading the quality of the picture) and picture bitmap formats to use (ARGB_8888 vs RGB_565).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Five advices to future research interns</title>
      <link>https://carette.xyz/posts/5_advices_to_future_research_interns/</link>
      <pubDate>Wed, 10 Aug 2016 10:36:51 -0400</pubDate>
      <guid>https://carette.xyz/posts/5_advices_to_future_research_interns/</guid>
      <description>&lt;p&gt;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&lt;figure class=&#34;&#34;&gt;&#xA;&#xA;    &lt;div class=&#34;img-container&#34; &gt;&#xA;        &lt;img loading=&#34;lazy&#34; alt=&#34;&#34; src=&#34;https://carette.xyz/images/5_advices_to_future_research_interns_cover.jpg&#34; &gt;&#xA;    &lt;/div&gt;&#xA;&#xA;    &#xA;&lt;/figure&gt;&#xA;&lt;/p&gt;&#xA;&lt;p&gt;During undergraduate school, I completed 4 research internships and one research project.&#xA;I learned a lot during those, especially how to reason in order to resolve a science problem.&#xA;Most of my friends are continuing in PhD. I don&amp;rsquo;t. Not because I&amp;rsquo;m fed up but unfortunately for personal motives.&lt;/p&gt;&#xA;&lt;p&gt;Research projects are great for major things like: diversity, creativity, no pressure to develop a working prototype, to be part of the dynamic and awesome scientist community&amp;hellip;&#xA;Really guys, &lt;strong&gt;research is awesome&lt;/strong&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Display text easily in arOS, using a Rust macro</title>
      <link>https://carette.xyz/posts/a_simple_vga_display/</link>
      <pubDate>Wed, 27 Jul 2016 18:46:01 -0400</pubDate>
      <guid>https://carette.xyz/posts/a_simple_vga_display/</guid>
      <description>&lt;p&gt;In my previous post, I talk about my joy to program my first operating system from scratch (arOS), using assembly and rust code.&lt;/p&gt;&#xA;&lt;p&gt;Steve Klabnik, initiator of the &lt;a href=&#34;https://github.com/intermezzOS&#34;&gt;intermezzOS&lt;/a&gt; project, hasn&amp;rsquo;t explain his own solution to&#xA;display some text on screen, easily and using Rust.&lt;/p&gt;&#xA;&lt;p&gt;The current code to display some text on the screen is the get the address of the VGA buffer (&lt;code&gt;0xb8000&lt;/code&gt;), and to add manually&#xA;our characters, one by one&amp;hellip;&lt;/p&gt;</description>
    </item>
    <item>
      <title>I am writing my own OS</title>
      <link>https://carette.xyz/posts/im_writing_my_own_os/</link>
      <pubDate>Tue, 26 Jul 2016 00:01:00 -0400</pubDate>
      <guid>https://carette.xyz/posts/im_writing_my_own_os/</guid>
      <description>&lt;p&gt;My fascination with computers turned faster as an obsession.&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;m obsessed with my machine.&#xA;Really, I&amp;rsquo;m not feeling all right if I don&amp;rsquo;t clean up my machine physically&#xA;every week, and if I don&amp;rsquo;t reinstall a new clean operating system each 6 months.&#xA;Obviously, before each &lt;em&gt;clean install&lt;/em&gt;, I overwrite my entire hard drive with&#xA;zeros&amp;hellip; which takes me a full day for a 1 TB hard drive.&lt;/p&gt;&#xA;&lt;p&gt;When I was using a GNU/Linux OS, and before installing a new operating system on my computer, I always look up on&#xA;&lt;a href=&#34;https://distrowatch.com&#34;&gt;distrowatch&lt;/a&gt; what&amp;rsquo;s new in the GNU/Linux world.&#xA;What is the new fashion OS, new version of my favourite OSs, new forks,&#xA;new OSs, etc&amp;hellip;&#xA;So, it happened (a lot) that I install a new operating system each 6 months, just&#xA;to test it, see what&amp;rsquo;s new, the stability&amp;hellip; and reinstall an ArchLinux maybe 3 days&#xA;after.&lt;/p&gt;</description>
    </item>
    <item>
      <title>List comprehension in Nim</title>
      <link>https://carette.xyz/posts/undestand_list_comprehension_in_nim/</link>
      <pubDate>Thu, 19 May 2016 01:32:21 -0400</pubDate>
      <guid>https://carette.xyz/posts/undestand_list_comprehension_in_nim/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://nim-lang.org&#34;&gt;Nim&lt;/a&gt; is a powerful programming language, developed by a strong and skillful community.&#xA;Since &lt;a href=&#34;https://twitter.com/k0pernicus/status/732358457567780864&#34;&gt;my post on Twitter&lt;/a&gt; 2 days ago, I wrote between 2 and 4 hours a day to program in Nim, and it&amp;rsquo;s wonderful!&lt;/p&gt;&#xA;&lt;p&gt;I love Python - especially since I discovered the book &lt;a href=&#34;http://shop.oreilly.com/product/0636920032519.do&#34;&gt;&amp;ldquo;Fluent Python&amp;rdquo;&lt;/a&gt; &lt;!-- raw HTML omitted --&gt;by &lt;!-- raw HTML omitted --&gt;&lt;!-- raw HTML omitted --&gt;&lt;a href=&#34;https://github.com/ramalho&#34;&gt;Luciano Ramalho&lt;/a&gt;.&#xA;Python is a great programming language when you understand how it works, and some useful tricks like &lt;a href=&#34;http://www.secnetix.de/olli/Python/list_comprehensions.hawk&#34;&gt;list comprehensions&lt;/a&gt;.&lt;!-- raw HTML omitted --&gt; Nim inherited the syntax of Python and the performance of C.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Computer science facts, in movies</title>
      <link>https://carette.xyz/posts/computer_science_facts_in_movies/</link>
      <pubDate>Sun, 08 May 2016 01:34:34 -0400</pubDate>
      <guid>https://carette.xyz/posts/computer_science_facts_in_movies/</guid>
      <description>&lt;p&gt;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&lt;figure class=&#34; img-small&#34;&gt;&#xA;&#xA;    &lt;div class=&#34;img-container&#34; &gt;&#xA;        &lt;img loading=&#34;lazy&#34; alt=&#34;&#34; src=&#34;https://carette.xyz/images/computer_science_facts_in_movies.png#small&#34; &gt;&#xA;    &lt;/div&gt;&#xA;&#xA;    &#xA;&lt;/figure&gt;&#xA;&lt;/p&gt;&#xA;&lt;p&gt;I love watching movies.&#xA;I see almost four of five movies per week, without any subject restriction.&#xA;One of my favorite movie director is &lt;a href=&#34;https://en.wikipedia.org/wiki/David_Fincher&#34;&gt;David Fincher&lt;/a&gt;.&#xA;He is the director of &lt;a href=&#34;http://www.imdb.com/title/tt0114369/&#34;&gt;&lt;em&gt;Se7en&lt;/em&gt;&lt;/a&gt;, &lt;a href=&#34;http://www.imdb.com/title/tt0258000/?ref_=nv_sr_1&#34;&gt;&lt;em&gt;Panic Room&lt;/em&gt;&lt;/a&gt;, &lt;a href=&#34;http://www.imdb.com/title/tt0137523/?ref_=fn_al_tt_1&#34;&gt;&lt;em&gt;Fight Club&lt;/em&gt;&lt;/a&gt; or &lt;a href=&#34;http://www.imdb.com/title/tt2267998/?ref_=fn_al_tt_1&#34;&gt;&lt;em&gt;Gone Girl&lt;/em&gt;&lt;/a&gt;.&#xA;But, above those ones, for me, David Fincher is the director of &lt;a href=&#34;http://www.imdb.com/title/tt1285016/?ref_=nv_sr_1&#34;&gt;&lt;em&gt;The Social Network&lt;/em&gt;&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;em&gt;The Social Network&lt;/em&gt; takes part of my ten prefered movies ever.&#xA;The direction is awesome, actors are awesome, music is awesome and&amp;hellip; it talk about tech!&#xA;I love movies which talk about technologies, especially how the director has represented the computer science&amp;rsquo;s complexity, and see if facts are true or not.&lt;/p&gt;</description>
    </item>
    <item>
      <title>I have (not) failed</title>
      <link>https://carette.xyz/posts/i_have_not_failed/</link>
      <pubDate>Wed, 27 Apr 2016 01:35:41 -0400</pubDate>
      <guid>https://carette.xyz/posts/i_have_not_failed/</guid>
      <description>&lt;p&gt;In my personal life, I am very inquisitive, and I try to contribute a maximum to free and open source projects.&#xA;Since I was 15 years old, I&amp;rsquo;m contributing to a few Mozilla&amp;rsquo;s projects, like the Firefox web browser, the Firefox operating system or the Rust programming language.&#xA;I was a free translator (English to French), motivated to make the best documentation as possible, web and software developer, beta-tester, etc&amp;hellip; and it was just awesome!&#xA;So, as I am studying software optimization and data mining, I applied for a data engineering job, in Mozilla, last month.&#xA;I successed the first three job tests, but I &lt;em&gt;failed&lt;/em&gt; during the fourth test.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Contributing in maintaining free and open source projects</title>
      <link>https://carette.xyz/posts/maintaining_open_source_projects/</link>
      <pubDate>Sun, 24 Apr 2016 01:37:32 -0400</pubDate>
      <guid>https://carette.xyz/posts/maintaining_open_source_projects/</guid>
      <description>&lt;p&gt;We, computer developers, have to develop our knowledge ourselves every day.&#xA;This practice allows developers to keep ourselves informed about new technologies, new solutions and security issues.&#xA;For the majority of developers, this &amp;ldquo;update&amp;rdquo; is not a pain.&#xA;We have choosen to work with computers due to our passion with these awesome machines, and this &amp;ldquo;update&amp;rdquo; thing is just the best thing to do to maintaining this passion.&lt;/p&gt;&#xA;&lt;p&gt;You can, every day, consult some great tech news like &lt;a href=&#34;http://thehackernews.com/&#34;&gt;HackerNews&lt;/a&gt;, &lt;a href=&#34;http://techcrunch.com/&#34;&gt;TechCrunch&lt;/a&gt;, &lt;a href=&#34;http://www.theverge.com/tech&#34;&gt;The Verge&lt;/a&gt;, &lt;a href=&#34;http://www.wired.co.uk/news&#34;&gt;Wired&lt;/a&gt; or &lt;a href=&#34;http://korben.info/&#34;&gt;Korben&lt;/a&gt; (for French guys) - and that&amp;rsquo;s already a good step.&#xA;But these news not allows you to practice and to test these technologies.&#xA;To do that, you have to program some things, to practice to a new programming language, or to maintain your system!&lt;/p&gt;</description>
    </item>
    <item>
      <title>Is Skynet on his way?</title>
      <link>https://carette.xyz/posts/is_skynet_on_his_way/</link>
      <pubDate>Sat, 23 Apr 2016 01:38:33 -0400</pubDate>
      <guid>https://carette.xyz/posts/is_skynet_on_his_way/</guid>
      <description>&lt;h2 class=&#34;heading&#34; id=&#34;abstract&#34;&gt;&#xA;  Abstract&#xA;  &lt;a class=&#34;anchor&#34; href=&#34;#abstract&#34;&gt;#&lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://en.wikipedia.org/wiki/Skynet_(Terminator)&#34;&gt;Skynet&lt;/a&gt; is a technology reached by the &lt;a href=&#34;https://en.wikipedia.org/wiki/Terminator_(franchise)&#34;&gt;Terminator franchise&lt;/a&gt;.&#xA;In this saga, Skynet is an artificial intelligence which thought that the &lt;em&gt;Human race&lt;/em&gt; is malicious, and has to be exterminated (pretty optimistic&amp;hellip;).&#xA;This &lt;a href=&#34;https://en.wikipedia.org/wiki/Artificial_intelligence&#34;&gt;artificial intelligence&lt;/a&gt; has been developed by engineers to help Humans for some difficult situations but, obviously (we are in a science-fiction movie), the artificial intelligence has developed itself and became aware of itself.&#xA;People who are afraid of artificial intelligence always bring up this example, whenever there is an artificial intelligence success.&#xA;But, is Skynet staying at the state of fiction, or this technology can be realize today?&lt;/p&gt;</description>
    </item>
    <item>
      <title>Is Tay just a modern teen?</title>
      <link>https://carette.xyz/posts/is_tay_just_a_modern_teen/</link>
      <pubDate>Fri, 01 Apr 2016 01:39:20 -0400</pubDate>
      <guid>https://carette.xyz/posts/is_tay_just_a_modern_teen/</guid>
      <description>&lt;p&gt;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&lt;figure class=&#34; img-small&#34;&gt;&#xA;&#xA;    &lt;div class=&#34;img-container&#34; &gt;&#xA;        &lt;img loading=&#34;lazy&#34; alt=&#34;&#34; src=&#34;https://carette.xyz/images/is_tay_just_a_modern_teen.jpeg#small&#34; &gt;&#xA;    &lt;/div&gt;&#xA;&#xA;    &#xA;&lt;/figure&gt;&#xA;&lt;/p&gt;&#xA;&lt;h2 class=&#34;heading&#34; id=&#34;abstract&#34;&gt;&#xA;  Abstract&#xA;  &lt;a class=&#34;anchor&#34; href=&#34;#abstract&#34;&gt;#&lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://www.tay.ai/&#34;&gt;Tay&lt;/a&gt; is a teen-talking chat bot, built to discuss with people on the internet, specifically on Twitter.&#xA;This bot is a creation of Microsoft&amp;rsquo;s Technology &amp;amp; Research and Bing teams, and was released eight days ago.&#xA;A few hours after the release, this bot has been known as a &lt;a href=&#34;http://gizmodo.com/here-are-the-microsoft-twitter-bot-s-craziest-racist-ra-1766820160&#34;&gt;crazy and racist bot&lt;/a&gt;, an &lt;a href=&#34;http://www.techrepublic.com/article/why-microsofts-tay-ai-bot-went-wrong/&#34;&gt;Hitler-loving&lt;/a&gt; and &lt;a href=&#34;http://www.techrepublic.com/article/why-microsofts-tay-ai-bot-went-wrong/&#34;&gt;a feminist-bashing troll&lt;/a&gt;.&#xA;Tay &lt;a href=&#34;https://blogs.microsoft.com/blog/2016/03/25/learning-tays-introduction/#sm.00008atg4txete24t6h2gryv9wa0x&#34;&gt;is now off&lt;/a&gt; for several days/weeks or maybe months.&lt;/p&gt;&#xA;&lt;p&gt;First, I&amp;rsquo;m not agree to injure and make some troubles on social networks, or everywhere else in the real life or on the internet. Also, to see a technology just says some horrible things makes me really sad.&#xA;But, is this bot really been mad, or is it a huge success in modern teen imitation?&lt;/p&gt;</description>
    </item>
    <item>
      <title>Choose the one</title>
      <link>https://carette.xyz/posts/choose_the_one/</link>
      <pubDate>Wed, 30 Mar 2016 01:40:25 -0400</pubDate>
      <guid>https://carette.xyz/posts/choose_the_one/</guid>
      <description>&lt;p&gt;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&lt;figure class=&#34;&#34;&gt;&#xA;&#xA;    &lt;div class=&#34;img-container&#34; &gt;&#xA;        &lt;img loading=&#34;lazy&#34; alt=&#34;&#34; src=&#34;https://carette.xyz/images/choose_the_one_cover.jpeg&#34; &gt;&#xA;    &lt;/div&gt;&#xA;&#xA;    &#xA;&lt;/figure&gt;&#xA;&lt;/p&gt;&#xA;&lt;h2 class=&#34;heading&#34; id=&#34;abstract&#34;&gt;&#xA;  Abstract&#xA;  &lt;a class=&#34;anchor&#34; href=&#34;#abstract&#34;&gt;#&lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;We, humans, need to communicate to better understand each other, and what we can do together.&#xA;This communication must be mutual.&#xA;Thanks to this one, we can better understand what we want to do, what we have to do and what to be done.&#xA;The communication can be start between 2 persons, or more, using a dialect called &lt;strong&gt;language&lt;/strong&gt;.&#xA;The language contains &lt;strong&gt;words&lt;/strong&gt;, made with at least one &lt;strong&gt;symbol&lt;/strong&gt; (basically, a character).&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
