<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hi, it's Barim. on Barim's blog · ابراهيم</title><link>https://barim.us/</link><description>Recent content in Hi, it's Barim. on Barim's blog · ابراهيم</description><generator>Hugo</generator><language>en</language><atom:link href="https://barim.us/index.xml" rel="self" type="application/rss+xml"/><item><title>Fixing Firefox Error - cairo_xlib_surface_get_display</title><link>https://barim.us/post/2026-01-06-firefox-cairo-undefined-symbol/</link><pubDate>Tue, 06 Jan 2026 00:00:00 +0000</pubDate><guid>https://barim.us/post/2026-01-06-firefox-cairo-undefined-symbol/</guid><description>&lt;h2 id="problem">Problem&lt;/h2>
&lt;p>Firefox fails to start with the following error:&lt;/p>
&lt;pre tabindex="0">&lt;code>/lib/x86_64-linux-gnu/libgdk-3.so.0: undefined symbol: cairo_xlib_surface_get_display
&lt;/code>&lt;/pre>&lt;h2 id="cause">Cause&lt;/h2>
&lt;p>Firefox loads libraries from &lt;code>/usr/local/lib&lt;/code> instead of &lt;code>/usr/lib/x86_64-linux-gnu/&lt;/code>. The &lt;code>/usr/local/lib&lt;/code> directory contains an outdated version of Cairo that is incompatible with the installed version of libgdk-3.&lt;/p></description></item><item><title>Displaying Images in lf with Kitty and Tmux</title><link>https://barim.us/post/2026-01-03-kitty-tmux-et-lf/</link><pubDate>Sat, 03 Jan 2026 00:00:00 +0000</pubDate><guid>https://barim.us/post/2026-01-03-kitty-tmux-et-lf/</guid><description>&lt;p>&lt;img src="./animation-kitty-tmux-et-lf.gif" alt="Animation of lf terminal file manager displaying images">&lt;/p>
&lt;h2 id="the-problem">The Problem&lt;/h2>
&lt;p>When using lf (the terminal file manager) with Kitty and Tmux, image preview display often causes issues: graphical artifacts remain on screen when switching from one preview to another, making the interface unreadable.&lt;/p></description></item><item><title>CSS Hack: Let Code Blocks Break Free From Container Width</title><link>https://barim.us/post/2025-06-25-code-block-bigger-than-parent/</link><pubDate>Wed, 25 Jun 2025 10:36:51 +0100</pubDate><guid>https://barim.us/post/2025-06-25-code-block-bigger-than-parent/</guid><description>&lt;p>Text prose and code have fundamentally different width requirements.&lt;/p>
&lt;p>Prose benefits from restricted width because lines of 50-75 characters are the fastest to read, reduce eye strain and movement, and let you track easily from line end to next line start.&lt;/p></description></item><item><title>YouTube thumbnails and uBlock Origin</title><link>https://barim.us/post/2025-06-02-youtube/</link><pubDate>Mon, 02 Jun 2025 11:35:55 +0100</pubDate><guid>https://barim.us/post/2025-06-02-youtube/</guid><description>&lt;p>It is possible to modify YouTube&amp;rsquo;s appearance using uBlock Origin.&lt;/p>
&lt;p>For example, to display smaller video thumbnails and get rid of &amp;ldquo;shorts&amp;rdquo; and of avatars :&lt;/p></description></item><item><title>Understanding Svelte Component Lifecycle and Reactivity</title><link>https://barim.us/post/2025-03-01-svelte-component-lifecycle-reactivity/</link><pubDate>Sat, 01 Mar 2025 20:26:21 +0100</pubDate><guid>https://barim.us/post/2025-03-01-svelte-component-lifecycle-reactivity/</guid><description>&lt;p>Svelte&amp;rsquo;s component system features a specific approach to reactivity and component initialization. This article explores a common misconception about how props, variables, and component initialization work in Svelte.&lt;/p></description></item><item><title>Tutorial: Dynamic Svelte Components</title><link>https://barim.us/post/2024-12-14-tuto-svelte-dynamic-components/</link><pubDate>Sat, 14 Dec 2024 20:36:32 +0100</pubDate><guid>https://barim.us/post/2024-12-14-tuto-svelte-dynamic-components/</guid><description>&lt;p>Svelte offers remarkable flexibility for creating dynamic components.
In this tutorial, we&amp;rsquo;ll explore how to instantiate components on the fly
and pass properties to them in an elegant and efficient manner.&lt;/p></description></item><item><title>Business web application</title><link>https://barim.us/post/2024-09-29-business-web-app/</link><pubDate>Sun, 29 Sep 2024 00:00:00 +0000</pubDate><guid>https://barim.us/post/2024-09-29-business-web-app/</guid><description>&lt;p>A business web application is a specialized software solution designed to help companies manage their operations effectively. Unlike generic apps such as e-commerce platforms (like Shopify) or booking management tools (like Doctolib), a business web app typically processes client-provided information, applies business-specific logic, and returns a result that helps achieve the companies goals.&lt;/p></description></item><item><title>Change screen input programatically on Linux</title><link>https://barim.us/post/2024-02-20-kvm-screen-input/</link><pubDate>Tue, 20 Feb 2024 16:50:40 +0100</pubDate><guid>https://barim.us/post/2024-02-20-kvm-screen-input/</guid><description>&lt;p>I have a keyboard/mouse/screen switch to connect 2 PCs: one running Linux and one running Windows.&lt;/p>
&lt;p>When I connect all the ports, it works, but every time I switch to the Windows laptop, the screen reconfigures, my windows are moved, and it annoys me. The switch behaves as if I had physically unplugged/replugged the screen, and Windows feels compelled to adjust the entire layout!&lt;/p></description></item><item><title>Use LanguageTool with neovim</title><link>https://barim.us/post/2023-12-24-neovim-languagetool/</link><pubDate>Sun, 24 Dec 2023 18:50:26 +0100</pubDate><guid>https://barim.us/post/2023-12-24-neovim-languagetool/</guid><description>&lt;p>I do a lot of mistakes when typing. The use of a spellchecker in neovim is easy but not enough : I mostly do grammar mistakes.&lt;/p></description></item><item><title>Create tabs in Svelte</title><link>https://barim.us/post/2023-10-29-svelte-tabs/</link><pubDate>Sun, 29 Oct 2023 18:40:02 +0100</pubDate><guid>https://barim.us/post/2023-10-29-svelte-tabs/</guid><description>&lt;p>I often need to code some way to have multiple pages rendered in the same location : think about a configuration panel with several sub panels. The natural way to code this is using tabs.&lt;/p></description></item><item><title>Tuto: Password Creation in Svelte</title><link>https://barim.us/post/2023-10-07-svelte-password-creation/</link><pubDate>Sat, 07 Oct 2023 08:09:11 +0100</pubDate><guid>https://barim.us/post/2023-10-07-svelte-password-creation/</guid><description>&lt;p>So, a few days ago, I saw a &lt;a href="https://youtu.be/1VZPw6VPNaU?list=PLCn4TabsxtHYEmIeSsO1lcX5OHlamuMya&amp;amp;t=589">video showing a password creation form&lt;/a>.&lt;/p>
&lt;p>&lt;img src="https://barim.us/img/password-chooser.gif" alt="Password chooser UI">&lt;/p>
&lt;p>Each time the user types anything, there is an instant validation with icons
indicating which constraint is fulfilled.&lt;/p></description></item><item><title>Go Learning Resources</title><link>https://barim.us/post/2023-10-04-go-learning-ressources/</link><pubDate>Wed, 04 Oct 2023 10:24:43 +0100</pubDate><guid>https://barim.us/post/2023-10-04-go-learning-ressources/</guid><description>&lt;p>This is a list of useful resources you can access freely on the web, to learn Go :&lt;/p>
&lt;ul>
&lt;li>
&lt;p>&lt;a href="https://go.dev/play/">Go Playground&lt;/a> : Try Go without installing nothing on your computer.&lt;/p></description></item><item><title>Tuto: Setup a Svelte project using esbuild</title><link>https://barim.us/post/2023-09-29-esbuild-svelte-setup/</link><pubDate>Fri, 29 Sep 2023 13:35:05 +0100</pubDate><guid>https://barim.us/post/2023-09-29-esbuild-svelte-setup/</guid><description>&lt;p>This article will show you how to set up a new Svelte project to develop a custom tag, using esbuild, with live reloading.&lt;/p></description></item><item><title>Tuto: Tags in Svelte</title><link>https://barim.us/post/2023-07-26-svelte-tag-input/</link><pubDate>Tue, 25 Jul 2023 14:36:06 +0100</pubDate><guid>https://barim.us/post/2023-07-26-svelte-tag-input/</guid><description>&lt;p>&lt;img src="https://barim.us/img/svelte-tagsinput.gif" alt="Tags input">&lt;/p>
&lt;p>I want to code a simple tags input component in Svelte like the animation above.&lt;/p>
&lt;ul>
&lt;li>An input text where I can type words.&lt;/li>
&lt;li>As soon as I type a comma or Enter, the input turns into a &amp;ldquo;tag&amp;rdquo;.&lt;/li>
&lt;li>The tag appears next to the input text with a small cross to delete it.&lt;/li>
&lt;/ul>
&lt;p>I can retrieve the list of tags in an easy-to-use data structure: for example, an array of string.&lt;/p></description></item><item><title>Is Go Object Oriented ?</title><link>https://barim.us/post/2023-03-31-go-is-object/</link><pubDate>Fri, 31 Mar 2023 00:17:07 +0100</pubDate><guid>https://barim.us/post/2023-03-31-go-is-object/</guid><description>&lt;p>During a discussion on a Discord channel, a message puzzled me: Go is not an object-oriented language.&lt;/p>
&lt;p>I knew Go didn&amp;rsquo;t have an inheritance mechanism. But, was that enough to disqualify it as an object language ?&lt;/p></description></item><item><title>Make Microsoft Edge coexist with i386</title><link>https://barim.us/post/2023-02-01-microsoft-edge-linux-i386/</link><pubDate>Wed, 01 Feb 2023 17:37:39 +0100</pubDate><guid>https://barim.us/post/2023-02-01-microsoft-edge-linux-i386/</guid><description>&lt;p>On my workstation, I manage both amd64 and i386 architecture.&lt;/p>
&lt;p>When I try to install Microsoft Edge on my Linux, after the apt update, I have this message:&lt;/p></description></item><item><title>Firefox tab less</title><link>https://barim.us/post/2022-12-09-firefox-tab-less/</link><pubDate>Fri, 09 Dec 2022 10:23:51 +0100</pubDate><guid>https://barim.us/post/2022-12-09-firefox-tab-less/</guid><description>&lt;p>We can customize Firefox interface to hide the tabs bar :&lt;/p>
&lt;ol>
&lt;li>
&lt;p>First, we have to tell Firefox that we want to customize its interface.&lt;/p></description></item><item><title>Sqlite Pure Go</title><link>https://barim.us/post/2022-11-06-sqlite-pure-go/</link><pubDate>Sun, 06 Nov 2022 03:31:21 +0200</pubDate><guid>https://barim.us/post/2022-11-06-sqlite-pure-go/</guid><description>&lt;p>Would it be possible to embed a database to avoid managing a MySQL or Postgres
instance?&lt;/p>
&lt;p>Even better, can this database be queried in SQL? I don&amp;rsquo;t want to learn another
way to query data.&lt;/p></description></item><item><title>Experiment Nebula Mesh - Part 2</title><link>https://barim.us/post/2022-08-02-experimenter-nebula-mesh-partie-2/</link><pubDate>Sat, 10 Sep 2022 00:59:53 +0200</pubDate><guid>https://barim.us/post/2022-08-02-experimenter-nebula-mesh-partie-2/</guid><description>&lt;p>&lt;a href="https://barim.us/post/2022-07-13-experimenter-nebula-mesh-partie-1/">In my previous post&lt;/a>, I used Nebula to setup a secured network between 2 virtual machines.&lt;/p>
&lt;p>This time, I&amp;rsquo;ll try to make a MySQL client and server communicate through a Nebula tunnel. And to make it a little bit more difficult, I&amp;rsquo;ll use podman to run the client and the server in containers.&lt;/p></description></item><item><title>Experiment Nebula Mesh - Part 1</title><link>https://barim.us/post/2022-07-13-experimenter-nebula-mesh-partie-1/</link><pubDate>Sat, 16 Jul 2022 13:38:36 +0100</pubDate><guid>https://barim.us/post/2022-07-13-experimenter-nebula-mesh-partie-1/</guid><description>&lt;p>Is it possible to use the public network, namely Internet, to make 2 machines communicate securely ? And if possible something easier to install and configure than OpenVpn ?&lt;/p></description></item><item><title>Udev Webcam</title><link>https://barim.us/post/2022-04-01-udev-webcam/</link><pubDate>Fri, 01 Apr 2022 11:37:22 +0200</pubDate><guid>https://barim.us/post/2022-04-01-udev-webcam/</guid><description>&lt;p>You can change the device link so your webcam will be always accessible at the same location /dev/video99. You can also persist some settings via the v4l-ctl command.&lt;/p></description></item><item><title>Console Font Size</title><link>https://barim.us/post/2022-03-20-console-font-size/</link><pubDate>Tue, 29 Mar 2022 17:50:41 +0200</pubDate><guid>https://barim.us/post/2022-03-20-console-font-size/</guid><description>&lt;p>This days, with 4K monitors, the linux console is unreadable : the font is too small. So how can we scale the font size in the console after boot ?&lt;/p></description></item><item><title>Git Rebase From Upstream</title><link>https://barim.us/post/2020-11-08-appliquer-les-modifications-depuis-le-depot-git-parent/</link><pubDate>Sun, 08 Nov 2020 15:59:00 +0000</pubDate><guid>https://barim.us/post/2020-11-08-appliquer-les-modifications-depuis-le-depot-git-parent/</guid><description>&lt;p>How to apply new commits in your forked repo from the parent (upstream) repo ?&lt;/p></description></item><item><title>Big clock in a terminal</title><link>https://barim.us/post/2020-10-14-horloge-geante-dans-le-terminal/</link><pubDate>Wed, 14 Oct 2020 20:35:00 +0000</pubDate><guid>https://barim.us/post/2020-10-14-horloge-geante-dans-le-terminal/</guid><description>&lt;p>How to show a big clock on Linux without using an application or having a browser opened on &lt;code>time.is&lt;/code> ?&lt;/p></description></item><item><title>Change local ownCloud sync directory</title><link>https://barim.us/post/2020-09-12-changer-le-nom-du-dossier-owncloud/</link><pubDate>Sat, 12 Sep 2020 15:47:33 +0000</pubDate><guid>https://barim.us/post/2020-09-12-changer-le-nom-du-dossier-owncloud/</guid><description>&lt;p>To change the name of ownCloud main folder, there is a little trick you can do on Linux (may work as well on other platforms).&lt;/p></description></item><item><title>Local git</title><link>https://barim.us/post/2019-12-02-git-local/</link><pubDate>Mon, 02 Dec 2019 08:05:58 +0000</pubDate><guid>https://barim.us/post/2019-12-02-git-local/</guid><description>&lt;p>Define a repo somewhere in your file system with a bare init&lt;/p>
&lt;div class="highlight full-width-content">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="ln">1&lt;/span>&lt;span class="cl">mkdir -p /somewhere/repo/test_project
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="ln">2&lt;/span>&lt;span class="cl">&lt;span class="nb">cd&lt;/span> /somewhere/repo/test_project
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="ln">3&lt;/span>&lt;span class="cl">git init --bare
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Now create a local folder for your work with init only&lt;/p></description></item><item><title>Mysql prompt tip</title><link>https://barim.us/post/2019-11-25-astuce-mysql-prompt-personnalise/</link><pubDate>Mon, 25 Nov 2019 08:14:27 +0000</pubDate><guid>https://barim.us/post/2019-11-25-astuce-mysql-prompt-personnalise/</guid><description>&lt;p>You can change the mysql prompt client so you know where you are.&lt;br>
Very usefull when you manage a lot of mysql databases and you forget which one :-)&lt;/p></description></item><item><title>Disable tabs in Firefox</title><link>https://barim.us/post/2019-11-18-disable-tabs-in-firefox/</link><pubDate>Mon, 18 Nov 2019 17:30:56 +0000</pubDate><guid>https://barim.us/post/2019-11-18-disable-tabs-in-firefox/</guid><description>&lt;p>If you use a tiled window manager like me, Suckless DWM for example, and have Firefox as your browser, you may be interested by not showing the tabs.&lt;/p></description></item><item><title>Make your ubuntu LTS kernel up to date</title><link>https://barim.us/post/2019-10-27-make-your-ubuntu-lts-kernel-up-to-date/</link><pubDate>Sun, 27 Oct 2019 08:10:02 +0000</pubDate><guid>https://barim.us/post/2019-10-27-make-your-ubuntu-lts-kernel-up-to-date/</guid><description>&lt;p>Install &lt;a href="https://wiki.ubuntu.com/Kernel/LTSEnablementStack">LTS Hardware Enablement Stack&lt;/a>&lt;/p>
&lt;div class="highlight full-width-content">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="ln">1&lt;/span>&lt;span class="cl">sudo apt-get install --install-recommends linux-generic-hwe-18.04 xserver-xorg-hwe-18.04
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Clean&lt;/p>
&lt;div class="highlight full-width-content">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="ln">1&lt;/span>&lt;span class="cl">sudo apt purge --autoremove
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Reboot to load new kernel&lt;/p></description></item><item><title>Install iso on USB key using #Linux console only</title><link>https://barim.us/post/2018-11-08-installer-un-iso-sur-une-cle-usb-dans-une-console-linux/</link><pubDate>Thu, 08 Nov 2018 13:12:26 +0000</pubDate><guid>https://barim.us/post/2018-11-08-installer-un-iso-sur-une-cle-usb-dans-une-console-linux/</guid><description>&lt;p>How to flash any iso (think about your favorite distro) on an USB key without graphical IHM ?&lt;/p>
&lt;div class="highlight full-width-content">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="ln">1&lt;/span>&lt;span class="cl">sudo dd &lt;span class="k">if&lt;/span>&lt;span class="o">=&lt;/span>/path/to/image.iso &lt;span class="nv">of&lt;/span>&lt;span class="o">=&lt;/span>/dev/sda &lt;span class="nv">status&lt;/span>&lt;span class="o">=&lt;/span>progress
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;ul>
&lt;li>&amp;ldquo;/path/to/image.iso&amp;rdquo; is the path to the ISO file&lt;/li>
&lt;li>/dev/sda is your USB key device (see below to get yours) : note that it is the whole device, not a partition (e.g. /dev/sda and not /dev/sda1)&lt;/li>
&lt;li>status=progress show flashing progression&lt;/li>
&lt;/ul>
&lt;p>How to know wich device to use ?&lt;/p></description></item><item><title>Force #wifi interface name on #Ubuntu 18.04</title><link>https://barim.us/post/2018-09-07-forcer-le-nom-de-linterface-wifi-sous-ubuntu-18-04/</link><pubDate>Fri, 07 Sep 2018 16:31:00 +0000</pubDate><guid>https://barim.us/post/2018-09-07-forcer-le-nom-de-linterface-wifi-sous-ubuntu-18-04/</guid><description>&lt;p>Using Udev, you can change the wifi interface name.&lt;/p>
&lt;p>First, you need to get the mac address.&lt;/p></description></item><item><title>VS Code loses Go autocompletion on Linux</title><link>https://barim.us/post/2018-03-27-vs-code-loses-go-autocompletion-on-linux/</link><pubDate>Tue, 27 Mar 2018 00:15:38 +0000</pubDate><guid>https://barim.us/post/2018-03-27-vs-code-loses-go-autocompletion-on-linux/</guid><description>&lt;p>On my Linux, just after upgrading Go to version 1.9, I lost autompletion functionality in VS Code.&lt;/p>
&lt;p>:&lt;a href="https://barim.us/img/vscode_completion_not_working.png">vscode_completion_not_working&lt;/a>&lt;/p>
&lt;p>&lt;a href="https://github.com/Microsoft/vscode-go/issues/441">This tip&lt;/a> did not work for me.&lt;/p></description></item><item><title>Docker from scratch, Go and Multipart upload</title><link>https://barim.us/post/2018-01-26-minimal-docker-golang-et-le-televersement-multipart/</link><pubDate>Fri, 26 Jan 2018 14:25:23 +0000</pubDate><guid>https://barim.us/post/2018-01-26-minimal-docker-golang-et-le-televersement-multipart/</guid><description>&lt;p>&lt;img src="https://barim.us/img/gophers-small.png" alt="">&lt;/p>
&lt;p>To reduce docker container size we can built the image from scratch instead of using bloated images, like debian or worse ubuntu.&lt;/p></description></item><item><title>Samba public share</title><link>https://barim.us/post/2018-01-10-samba-public-share/</link><pubDate>Wed, 10 Jan 2018 17:48:35 +0000</pubDate><guid>https://barim.us/post/2018-01-10-samba-public-share/</guid><description>&lt;p>How to configure a Debian based Linux distribution to share a folder with anyone on the network, with read and write access ?&lt;/p></description></item><item><title>Convert PDF to PNG with enough resolution</title><link>https://barim.us/post/2017-03-28-convert-pdf-to-png-with-enough-resolution/</link><pubDate>Tue, 28 Mar 2017 01:06:02 +0000</pubDate><guid>https://barim.us/post/2017-03-28-convert-pdf-to-png-with-enough-resolution/</guid><description>&lt;p>&lt;img src="https://barim.us/img/t%C3%A9l%C3%A9chargement.png" alt="ImageMagick logo">&lt;/p>
&lt;p>As &amp;lsquo;man convert&amp;rsquo; states :&lt;/p>
&lt;blockquote>
&lt;p>The convert program is a member of the ImageMagick suite of tools. Use it to convert between image formats as well as resize an image, blur, crop, despeckle, dither, draw on, flip, join, re-sample, and much more.&lt;/p></description></item><item><title>Don't forget master infos in your MySQL dump</title><link>https://barim.us/post/2017-02-20-dont-forget-master-infos-in-your-mysql-dump/</link><pubDate>Mon, 20 Feb 2017 18:54:46 +0000</pubDate><guid>https://barim.us/post/2017-02-20-dont-forget-master-infos-in-your-mysql-dump/</guid><description>&lt;p>&lt;img src="https://barim.us/img/512px-Database-mysql-replication.png" alt="MySQL">&lt;/p>
&lt;p>I tried to resync a slave MySQL after it disconnected from the master. But the binary log was already deleted on master, so the only solution was to restore from the last backup. To avoid lock tables on the master and remember the binary log name and position to put them on the slave configuration, there is a tip to take care of all that : the &amp;ldquo;- master-data&amp;rdquo; option in mysqldump.&lt;/p></description></item><item><title>Eve-style clock demo in Red, livecoded!</title><link>https://barim.us/post/2017-01-04-red-programming-language-eve-style-clock-demo-in-red-livecoded/</link><pubDate>Wed, 04 Jan 2017 18:56:06 +0000</pubDate><guid>https://barim.us/post/2017-01-04-red-programming-language-eve-style-clock-demo-in-red-livecoded/</guid><description>&lt;p>&lt;a href="http://www.red-lang.org/2016/07/eve-style-clock-demo-in-red-livecoded.html">&lt;strong>Red&lt;/strong>&lt;/a> is a next-gen programming language, strongly inspired by &lt;a href="http://rebol.com/">REBOL&lt;/a>.&lt;/p></description></item><item><title>Consul 0.7.1 | HashiCorp</title><link>https://barim.us/post/2017-01-04-consul-0-7-1-hashicorp/</link><pubDate>Wed, 04 Jan 2017 16:58:37 +0000</pubDate><guid>https://barim.us/post/2017-01-04-consul-0-7-1-hashicorp/</guid><description>&lt;blockquote>
&lt;p>&lt;a href="https://www.hashicorp.com/blog/consul-0.7.1.html">Consul&lt;/a> is a critical infrastructure service for organizations that rely on it for service discovery, key/value storage, and health checks.&lt;/p></description></item><item><title>Docker - Build, Ship, and Run Any App, Anywhere</title><link>https://barim.us/post/2017-01-04-docker-build-ship-and-run-any-app-anywhere/</link><pubDate>Wed, 04 Jan 2017 16:02:36 +0000</pubDate><guid>https://barim.us/post/2017-01-04-docker-build-ship-and-run-any-app-anywhere/</guid><description>&lt;blockquote>
&lt;p>&lt;a href="https://barim.us/img/docker-150x150.png">&lt;/a> Docker is an open platform for developers and sysadmins to build, ship, and run distributed applications, whether on laptops, data center VMs, or the cloud.&lt;/p></description></item><item><title>MySQL import from csv</title><link>https://barim.us/post/2016-10-12-mysql-import-from-csv/</link><pubDate>Wed, 12 Oct 2016 14:36:56 +0000</pubDate><guid>https://barim.us/post/2016-10-12-mysql-import-from-csv/</guid><description>&lt;p>To import a local CSV file into MySQL, use the syntax below :&lt;/p>
&lt;pre>&lt;code>LOAD DATA LOW_PRIORITY LOCAL INFILE '/path/tofile.csv'
INTO TABLE database.table
FIELDS TERMINATED BY ';' OPTIONALLY ENCLOSED BY '&amp;quot;' ESCAPED BY '&amp;quot;' LINES TERMINATED BY '\n' IGNORE 1 LINES
(`field1`,`field2`,...)
&lt;/code>&lt;/pre></description></item><item><title>MySQL export to csv</title><link>https://barim.us/post/2016-10-12-mysql-export-to-csv/</link><pubDate>Wed, 12 Oct 2016 14:32:05 +0000</pubDate><guid>https://barim.us/post/2016-10-12-mysql-export-to-csv/</guid><description>&lt;p>To export a mysql results in CSV format, use the syntax below :&lt;/p>
&lt;pre>&lt;code>SELECT field1, field2, ...
FROM table
WHERE condition
INTO OUTFILE '/tmp/toto.csv'
FIELDS TERMINATED BY ';'
ENCLOSED BY '&amp;quot;'
LINES TERMINATED BY '\n' ;
&lt;/code>&lt;/pre></description></item><item><title>Cheyenne server and POST size limit</title><link>https://barim.us/post/2016-10-03-cheyenne-server-and-post-size-limit/</link><pubDate>Mon, 03 Oct 2016 15:49:50 +0000</pubDate><guid>https://barim.us/post/2016-10-03-cheyenne-server-and-post-size-limit/</guid><description>&lt;p>By default, in Cheyenne, the header size limit for a post request is 102'400.&lt;br>
If you want to ajust this limit you can define the post-mem-limit parameter in the global context or in a specific webapp.&lt;br>
For example, to double the initial limit in the httpd.cfg, :&lt;/p></description></item><item><title>Boot Linux in text console</title><link>https://barim.us/post/2016-08-29-demarrer-linux-sur-la-console-texte/</link><pubDate>Mon, 29 Aug 2016 10:41:27 +0000</pubDate><guid>https://barim.us/post/2016-08-29-demarrer-linux-sur-la-console-texte/</guid><description>&lt;p>Get rid of graphic boot on Linux with a few modifications in grub configuration :&lt;/p>
&lt;div class="highlight full-width-content">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="ln">1&lt;/span>&lt;span class="cl">&lt;span class="c1"># edit your grub config&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="ln">2&lt;/span>&lt;span class="cl">sudo vi /etc/default/grub
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="ln">3&lt;/span>&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="ln">4&lt;/span>&lt;span class="cl">&lt;span class="c1"># remove splash, quiet, ... from GRUB_CMDLINE_LINUX_DEFAULT&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="ln">5&lt;/span>&lt;span class="cl">&lt;span class="nv">GRUB_CMDLINE_LINUX_DEFAULT&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s2">&amp;#34;text&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="ln">6&lt;/span>&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="ln">7&lt;/span>&lt;span class="cl">&lt;span class="c1"># save the file and update grub&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="ln">8&lt;/span>&lt;span class="cl">sudo update-grub
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div></description></item><item><title>French Git Log</title><link>https://barim.us/post/2016-06-07-french-git-log/</link><pubDate>Tue, 07 Jun 2016 11:25:33 +0000</pubDate><guid>https://barim.us/post/2016-06-07-french-git-log/</guid><description>&lt;p>Git log in colors.&lt;/p></description></item><item><title>mysql client : don't show columns names and grid</title><link>https://barim.us/post/2016-05-30-mysql-client-ne-pas-afficher-le-nom-des-colonnes-et-les-tirets-du-tableau/</link><pubDate>Mon, 30 May 2016 10:33:23 +0000</pubDate><guid>https://barim.us/post/2016-05-30-mysql-client-ne-pas-afficher-le-nom-des-colonnes-et-les-tirets-du-tableau/</guid><description>&lt;p>Default mysql client behaviour is to show column names and grid when returning results  but how to get rid of this decorations ? &lt;/p></description></item><item><title>Allow invalid date in MySQL</title><link>https://barim.us/post/2016-05-23-autoriser-les-dates-invalides-dans-mysql/</link><pubDate>Mon, 23 May 2016 15:55:55 +0000</pubDate><guid>https://barim.us/post/2016-05-23-autoriser-les-dates-invalides-dans-mysql/</guid><description>&lt;p>Just in case you absolutely have to insert a date in MySQL that does&amp;rsquo;nt exist, eg 2014-02-30, you can run MySQL server in a special mode that authorizes such dates :&lt;/p></description></item><item><title>screencast with byzance on linux</title><link>https://barim.us/post/2015-10-27-screencast-with-byzance-on-linux/</link><pubDate>Tue, 27 Oct 2015 17:28:23 +0000</pubDate><guid>https://barim.us/post/2015-10-27-screencast-with-byzance-on-linux/</guid><description>&lt;blockquote>
&lt;p>byzanz-record -c - duration=60 - x=80 - y=310 - width=800 - height=600 out.gif&lt;/p>&lt;/blockquote></description></item><item><title>Not permitted to mount disk ?</title><link>https://barim.us/post/2015-09-07-not-permitted-to-mount-disk/</link><pubDate>Mon, 07 Sep 2015 07:30:59 +0000</pubDate><guid>https://barim.us/post/2015-09-07-not-permitted-to-mount-disk/</guid><description>&lt;p>A few days ago, I started to have a very disturbing &amp;ldquo;Not permitted&amp;rdquo; message when trying to mount a usb disk from &lt;a href="http://en.wikipedia.org/wiki/Thunar">Thunar&lt;/a> . The only way I found was to pmount the disk : not as intuitive as just clicking the disk on Thunar.&lt;/p></description></item><item><title>How To Forward Outlook Emails With VB Script</title><link>https://barim.us/post/2015-08-31-how-to-forward-outlook-emails-with-vb-script/</link><pubDate>Mon, 31 Aug 2015 07:30:05 +0000</pubDate><guid>https://barim.us/post/2015-08-31-how-to-forward-outlook-emails-with-vb-script/</guid><description>&lt;ol>
&lt;li>In Windows, create a certificate via Start &amp;gt; All Programs &amp;gt; Microsoft Office &amp;gt; Microsoft Office Tools &amp;gt; Digital Certificate for VBA Projects&lt;/li>
&lt;li>In Microsoft Outlook, open the VB editor and copy/paste the code below&lt;/li>
&lt;li>Replace &lt;strong>&lt;a href="mailto:your@email.here">your@email.here&lt;/a>&lt;/strong> and save&lt;/li>
&lt;li>Click on Tools &amp;gt; Digital Signature&lt;/li>
&lt;li>Click on [Choose] and select your certificate&lt;/li>
&lt;li>Click OK, then save and close the VB editor&lt;/li>
&lt;li>Create the Outlook rule with [run a script] as action and select your macro&lt;/li>
&lt;li>That&amp;rsquo;s all folks !&lt;/li>
&lt;/ol>
&lt;pre>&lt;code>Private Const TO_EMAIL As String = &amp;quot;your@email.here&amp;quot;
Sub ForwardAllEmail(theMail As MailItem)
	On Error GoTo EndSub
	Dim mailObj As Outlook.MailItem
	Dim item As Outlook.MailItem
	Set mailObj = Application.Session.GetItemFromID(theMail.EntryID)
	Set item = mailObj.Forward
	item.Recipients.Add (TO_EMAIL)
	item.Send
	Set item = Nothing      ' Set variables to null to prevent memory leaks
	Set mailObj = Nothing
	Exit Sub
EndSub:
 MsgBox &amp;quot;Error: &amp;quot; &amp;amp; Err.Description
End Sub
&lt;/code>&lt;/pre></description></item><item><title>Invisible code sticks forever</title><link>https://barim.us/post/2015-08-24-invisible-code-sticks-forever/</link><pubDate>Mon, 24 Aug 2015 07:30:57 +0000</pubDate><guid>https://barim.us/post/2015-08-24-invisible-code-sticks-forever/</guid><description>&lt;p>A few months ago, I read &lt;a href="https://www.nytimes.com/2014/07/16/opinion/16alexander.html">an article about brain training by learning a new language&lt;/a> : very interesting story about William Alexander who failed to learn french but strenghten his brain trying to.&lt;/p></description></item><item><title>Tmux for the impatient</title><link>https://barim.us/post/2015-07-08-tmux-for-the-impatient/</link><pubDate>Wed, 08 Jul 2015 13:46:33 +0000</pubDate><guid>https://barim.us/post/2015-07-08-tmux-for-the-impatient/</guid><description>&lt;p>Key shortcuts&lt;/p></description></item><item><title>Wireless auto configuration with guessnet on Linux</title><link>https://barim.us/post/2015-05-17-wireless-auto-configuration-with-guessnet-on-linux/</link><pubDate>Sun, 17 May 2015 18:52:51 +0000</pubDate><guid>https://barim.us/post/2015-05-17-wireless-auto-configuration-with-guessnet-on-linux/</guid><description>&lt;p>&lt;img src="https://barim.us/img/eiffel-wireless-150x150.png" alt="The wireless tour eiffel">&lt;/p>
&lt;p>Assume we have access to the wifi at work and at home. How can I configure my laptop to automatically connect to the right network without using a graphical network manager ? Welcome guessnet !&lt;/p></description></item><item><title>If ssh client disconnect and freeze</title><link>https://barim.us/post/2015-01-14-if-ssh-client-disconnect-and-freeze/</link><pubDate>Wed, 14 Jan 2015 18:55:18 +0000</pubDate><guid>https://barim.us/post/2015-01-14-if-ssh-client-disconnect-and-freeze/</guid><description>&lt;p>Add in your ~/.ssh/config :&lt;/p>
&lt;pre>&lt;code>Host *
ServerAliveInterval 240
&lt;/code>&lt;/pre>
&lt;p>src = &lt;a href="http://superuser.com/questions/98562/way-to-avoid-ssh-connection-timeout-freezing-of-terminal-tab">superuser.com&lt;/a>&lt;/p></description></item><item><title>Git delete remote branch/tag</title><link>https://barim.us/post/2015-01-07-git-delete-remote-branch/</link><pubDate>Wed, 07 Jan 2015 10:38:14 +0000</pubDate><guid>https://barim.us/post/2015-01-07-git-delete-remote-branch/</guid><description>&lt;p>As of &lt;a href="https://github.com/gitster/git/blob/master/Documentation/RelNotes/1.7.0.txt">Git v1.7.0&lt;/a>,
you can delete a &lt;strong>&lt;em>remote&lt;/em>&lt;/strong> branch using :&lt;/p>
&lt;pre>&lt;code>git push origin --delete &amp;lt;branchName&amp;gt;
&lt;/code>&lt;/pre>
&lt;p>And you can do exactly the same with a tag&lt;/p></description></item><item><title>Horizontal rule in zsh prompt</title><link>https://barim.us/post/2014-12-26-horizontal-rule-in-zsh-prompt/</link><pubDate>Fri, 26 Dec 2014 17:58:41 +0000</pubDate><guid>https://barim.us/post/2014-12-26-horizontal-rule-in-zsh-prompt/</guid><description>&lt;p>&lt;img src="https://barim.us/img/zsh-horizontal-rule-prompt.png" alt="zsh-horizontal-rule-prompt">&lt;/p>
&lt;p>Put in your ~/.zshrc :&lt;/p>
&lt;div class="highlight full-width-content">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="ln">1&lt;/span>&lt;span class="cl">&lt;span class="nv">PS1&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s1">$&amp;#39;%U${(r:$COLUMNS:: :)}%u&amp;#39;&lt;/span>&lt;span class="nv">$PS1&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>_src = &lt;a href="http://superuser.com/questions/845744/how-to-draw-a-line-between-commands-in-zsh-shell">superuser.com&lt;/a> _&lt;/p></description></item><item><title>Increase wordpress max file upload size</title><link>https://barim.us/post/2014-12-05-increase-wordpress-max-file-upload-size/</link><pubDate>Fri, 05 Dec 2014 15:42:56 +0000</pubDate><guid>https://barim.us/post/2014-12-05-increase-wordpress-max-file-upload-size/</guid><description>&lt;p>On Ubuntu/Debian distro, edit the /etc/wordpress/htaccess and add this lines :&lt;/p>
&lt;div class="highlight full-width-content">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="ln">1&lt;/span>&lt;span class="cl">php_value upload_max_filesize 50M
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="ln">2&lt;/span>&lt;span class="cl">php_value post_max_size 50M
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="ln">3&lt;/span>&lt;span class="cl">php_value memory_limit 50M
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div></description></item><item><title>Substitute a text only in files where it appears</title><link>https://barim.us/post/2014-12-03-substitute-a-text-only-in-files-where-it-appears/</link><pubDate>Wed, 03 Dec 2014 19:12:31 +0000</pubDate><guid>https://barim.us/post/2014-12-03-substitute-a-text-only-in-files-where-it-appears/</guid><description>&lt;p>For example, to substitute foo with bar&lt;/p>
&lt;pre>&lt;code>for f in `grep -lR foo`; do
 echo -n &amp;quot;&amp;gt;&amp;gt; $f&amp;quot;;
 sed 's/foo/bar/g' $f &amp;gt; $f.2;
 mv $f.2 $f;
 echo &amp;quot; done.&amp;quot;;
done
&lt;/code>&lt;/pre>
&lt;ul>
&lt;li>for loops on all files containing the text “foo”, &lt;em>grep -l&lt;/em> only show the file name with corresponding text inside.&lt;/li>
&lt;li>sed replace foo with bar in all file&lt;/li>
&lt;li>mv save the modification (delete if you don’t want to overwrite the original files, the modified files is named with .2 at the end)&lt;/li>
&lt;/ul></description></item><item><title>Convert multiple files to utf8 using vim</title><link>https://barim.us/post/2014-12-03-convert-multiple-files-to-utf8-using-vim/</link><pubDate>Wed, 03 Dec 2014 18:44:07 +0000</pubDate><guid>https://barim.us/post/2014-12-03-convert-multiple-files-to-utf8-using-vim/</guid><description>&lt;p>The fastest and more efficient way to batch multiple files encoding conversion :&lt;/p>
&lt;div class="highlight full-width-content">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="ln">1&lt;/span>&lt;span class="cl">vim +&lt;span class="s2">&amp;#34;argdo se fileencoding=utf-8 | w | bnext&amp;#34;&lt;/span> +&lt;span class="s2">&amp;#34;q&amp;#34;&lt;/span> &lt;span class="sb">`&lt;/span> find . -type f -name &lt;span class="s2">&amp;#34;*.rsp&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>+&amp;ldquo;argdo&amp;rdquo; : execute the following vim commands for each file (filencode, save and next buffer)&lt;/p></description></item><item><title>GIT - stop tracking files</title><link>https://barim.us/post/2014-11-28-git-stop-tracking-files/</link><pubDate>Fri, 28 Nov 2014 11:19:27 +0000</pubDate><guid>https://barim.us/post/2014-11-28-git-stop-tracking-files/</guid><description>&lt;p>If you have some files that you need to have in your repo but don’t need to have updates, git allows it :&lt;/p></description></item><item><title>ZSH, nohup and background process that lasts...</title><link>https://barim.us/post/2014-11-27-zsh-nohup-and-background-process-that-lasts/</link><pubDate>Thu, 27 Nov 2014 11:58:55 +0000</pubDate><guid>https://barim.us/post/2014-11-27-zsh-nohup-and-background-process-that-lasts/</guid><description>&lt;p>When I switched to ZSH, and let BASH behind, I missed some behaviour : one of them was the ability to quit my terminal while some jobs are still alive.&lt;/p></description></item><item><title>Install minimum php (no apache)</title><link>https://barim.us/post/2014-11-24-install-minimum-php-no-apache/</link><pubDate>Mon, 24 Nov 2014 14:46:42 +0000</pubDate><guid>https://barim.us/post/2014-11-24-install-minimum-php-no-apache/</guid><description>&lt;p>To code with php, no need to install apache and other dependencies, especially as php has a builtin web server.&lt;/p></description></item><item><title>Get rid of the Desktop icon in Nautilus 3.10 side bar</title><link>https://barim.us/post/2014-11-07-get-rid-of-the-desktop-icon-in-nautilus-3-10-side-bar/</link><pubDate>Fri, 07 Nov 2014 16:59:15 +0000</pubDate><guid>https://barim.us/post/2014-11-07-get-rid-of-the-desktop-icon-in-nautilus-3-10-side-bar/</guid><description>&lt;p>Add in ~/.config/gtk-3.0/settings.ini&lt;/p></description></item><item><title>Stretched background with IE8</title><link>https://barim.us/post/2014-07-17-stretched-background-with-ie8/</link><pubDate>Thu, 17 Jul 2014 17:43:54 +0000</pubDate><guid>https://barim.us/post/2014-07-17-stretched-background-with-ie8/</guid><description>&lt;p>&lt;em>Side note : Microsoft has dropped support for IE8 last april 2014 :-(&lt;/em>&lt;/p>
&lt;p>There are still some clients that want their webapp to work perfectly on IE8. They can&amp;rsquo;t make all their clients move to the newest browsers. But some times, it can drive you nuts to achieve simple things. Our problem was about a background image in a div that doesn&amp;rsquo;t want to strech. Just some css will do it for all other browsers, but not for IE8. It needs a special &amp;ldquo;filter&amp;rdquo; like this :&lt;/p></description></item><item><title>Speech Tasks : a voice driven todo webapp</title><link>https://barim.us/post/2014-06-30-speech-tasks-une-webapp-avec-reconnaissance-vocale/</link><pubDate>Mon, 30 Jun 2014 16:58:25 +0000</pubDate><guid>https://barim.us/post/2014-06-30-speech-tasks-une-webapp-avec-reconnaissance-vocale/</guid><description>&lt;p>With the &lt;a href="http://golang.org">Go&lt;/a> http server. (By the way, I love opensource community !)&lt;/p>
&lt;p>&lt;a href="http://barim.us/speechtasks/index.html">Try the demo !&lt;/a>&lt;/p>
&lt;p>&lt;a href="https://github.com/hamdouni/speechtasks">See the code !&lt;/a>&lt;/p></description></item><item><title>usb mount and policykit</title><link>https://barim.us/post/2014-06-18-usb-disk-et-policykit/</link><pubDate>Wed, 18 Jun 2014 22:41:51 +0000</pubDate><guid>https://barim.us/post/2014-06-18-usb-disk-et-policykit/</guid><description>&lt;p>&lt;a href="http://dwm.suckless.org/">DWM&lt;/a> is my tiled window manager. It&amp;rsquo;s fast, flexible and fun. My linux desktop is up and running after a few seconds&amp;hellip; (ok, thanks also to the ssd :-) ).&lt;/p></description></item><item><title>Earth viewed from ISS - Zen moment...</title><link>https://barim.us/post/2014-05-26-earth-viewed-from-iss-zen-moment/</link><pubDate>Mon, 26 May 2014 13:55:19 +0000</pubDate><guid>https://barim.us/post/2014-05-26-earth-viewed-from-iss-zen-moment/</guid><description>&lt;p>src = &lt;a href="http://www.nasa.gov/mission_pages/station/research/experiments/917.html">NASA&lt;/a>&lt;/p></description></item><item><title>Video background</title><link>https://barim.us/post/2014-05-06-video-background/</link><pubDate>Tue, 06 May 2014 14:40:21 +0000</pubDate><guid>https://barim.us/post/2014-05-06-video-background/</guid><description>&lt;blockquote>
&lt;p>Forget large background image for your web site. Now, comes video time.&lt;/p>&lt;/blockquote>
&lt;p>So you want to put a nice video as background of your site but don&amp;rsquo;t know how to do ? &amp;ldquo;Fear you must not&amp;rdquo; said &lt;a href="http://www.youtube.com/watch?v=kFnFr-DOPf8">Yoda&lt;/a> as it&amp;rsquo;s really simple.&lt;/p></description></item><item><title>2048 Gremlins</title><link>https://barim.us/post/2014-04-28-2048-gremlins/</link><pubDate>Mon, 28 Apr 2014 18:17:07 +0000</pubDate><guid>https://barim.us/post/2014-04-28-2048-gremlins/</guid><description>&lt;p>&lt;img src="https://barim.us/img/2048.png" alt="Let&amp;rsquo;s Gremlins play 2048 !">&lt;/p>
&lt;p>&lt;a href="http://gabrielecirulli.github.io/2048/">2048&lt;/a> : a very famous game where you have to slide the numbered tiles to join same numbers, and cumulate them to obtain 2048 !&lt;/p></description></item><item><title/><link>https://barim.us/search/</link><pubDate>Wed, 13 Feb 2002 00:00:00 +0000</pubDate><guid>https://barim.us/search/</guid><description/></item><item><title>404 NOT FOUND</title><link>https://barim.us/404/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://barim.us/404/</guid><description>&lt;p>Page not found :&lt;/p>
&lt;ul>
&lt;li>&lt;a href="https://barim.us/">return to home page&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://barim.us/post">go to the blog&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://barim.us/search">search&lt;/a>&lt;/li>
&lt;/ul></description></item><item><title>About</title><link>https://barim.us/about/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://barim.us/about/</guid><description>&lt;p>I first started using a personal computer around 1983 with the &lt;a href="https://en.wikipedia.org/wiki/ZX81">Sinclair ZX81&lt;/a>. I taught myself BASIC so I could write simple games.&lt;/p></description></item><item><title>List</title><link>https://barim.us/lists/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://barim.us/lists/</guid><description>&lt;h2 id="go">Go&lt;/h2>
&lt;ul>
&lt;li>&lt;a href="https://barim.us/post/2023-10-04-go-learning-ressources/">Go resources&lt;/a>&lt;/li>
&lt;/ul>
&lt;h2 id="videos">Videos&lt;/h2>
&lt;ul>
&lt;li>&lt;a href="https://www.youtube.com/watch?v=Nb2tebYAaOA">Jim Keller: Moore&amp;rsquo;s Law, Microprocessors, and First Principles | Lex Fridman Podcast #70&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://livestream.com/accounts/9197973/events/8286152/videos/178431606/player?autoPlay=false">Micah Lee presents “Qubes OS: The Operating System That Can Protect You Even If You Get Hacked”&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://www.youtube.com/playlist?list=PLB9cXuImwxVWjyxoSFIucpo0itECIPOFh">youtube watch later&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://www.arte.tv/fr/videos/096290-000-A/la-vie-devant-nous/">La vie devant nous&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://www.arte.tv/fr/videos/100750-000-A/disparaitre-sous-les-radars-des-algorithmes/">Disparaître - Sous les radars des algorithmes&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://www.youtube.com/watch?v=GNyQxXw_oMQ">Coffee with Brian Kernighan - Computerphile&lt;/a>&lt;/li>
&lt;/ul></description></item><item><title>Marvel timeline</title><link>https://barim.us/marvel/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://barim.us/marvel/</guid><description>&lt;p>&lt;img src="./marvel_timeline.webp" alt="Marvel timeline">&lt;/p>
&lt;p>&lt;a href="https://www.bbc.com/news/entertainment-arts-47623536">source bbc&lt;/a>&lt;/p></description></item><item><title>Showcase</title><link>https://barim.us/showcase/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://barim.us/showcase/</guid><description>&lt;h2 id="interactive-web-applications">Interactive Web Applications&lt;/h2>
&lt;h3 id="conjugueur">Conjugueur&lt;/h3>
&lt;p>French verb conjugation app built with Svelte. Conjugates over 700 French verbs with their forms, tenses, and moods.&lt;/p></description></item></channel></rss>