{"version":"https:\/\/jsonfeed.org\/version\/1.1","title":"alienlebarge","home_page_url":"https:\/\/alienlebarge.ch","feed_url":"https:\/\/alienlebarge.ch\/feed.json","description":"","icon":"https:\/\/alienlebarge.ch\/media\/site\/9585e841a5-1748410473\/app-512x512-q80.png","favicon":"https:\/\/alienlebarge.ch\/media\/site\/9585e841a5-1748410473\/app-64x64-q80.png","author":{"name":"alienlebarge","url":"https:\/\/alienlebarge.ch","avatar":"https:\/\/alienlebarge.ch\/media\/site\/9585e841a5-1748410473\/app-512x512-q80.png"},"items":[{"id":"https:\/\/alienlebarge.ch\/@\/page\/5f447fd4-4a67-4d52-9968-c202ba725baa","url":"https:\/\/alienlebarge.ch\/articles\/debloquer-sieges-jogger","title":"D\u00e9bloquer les si\u00e8ges 6 et 7 du Dacia Jogger","content_text":"Le Dacia Jogger cache un petit pi\u00e8ge dans sa troisi\u00e8me rang\u00e9e. Sur chaque si\u00e8ge arri\u00e8re (les places 6 et 7), une languette rouge sert \u00e0 lib\u00e9rer le m\u00e9canisme pour le relever. Le souci, c'est que cette languette peut se d\u00e9tacher.\n\nEt l\u00e0, mauvaise surprise : une fois les si\u00e8ges rabattus, impossible de les relever. On arrive seulement \u00e0 rabattre le dossier, mais le m\u00e9canisme qui permet de relever l'assise reste verrouill\u00e9 et le si\u00e8ge refuse de revenir en position debout.\n\nJ'ai pass\u00e9 une bonne demi-heure \u00e0 tourner autour du probl\u00e8me avant de trouver la bonne astuce. La voici car je sais que (link: https:\/\/communaute.dacia.fr\/forum\/DACIA\/DACIA-JOGGER\/TIRE-SIEGE-3EME-RANGEE-JOGGER\/4939468\/594870 text: je ne suis pas le seul \u00e0 avoir eu ce probl\u00e8me).\n\n## L'astuce\n\nTout se joue depuis le coffre. Il vous faut un objet dont la tige est assez fine pour se glisser dans les encoches, mais suffisamment solide pour supporter une bonne traction. Favoriser un outils coud\u00e9. C'est beacoup plus facile. Dans mon cas, j'ai utilis\u00e9 un manche de rouleau \u00e0 peinture.\n\n(image: file:\/\/12de215f-3daa-4c8a-a4b0-f6ab0e3f9548 srcset: default)\n\n1. Ouvrez le coffre et rep\u00e9rez la pi\u00e8ce en plastique du m\u00e9canisme de verrouillage, avec ses petites encoches.\n2. Glissez l'extr\u00e9mit\u00e9 du manche de rouleau \u00e0 peinture dans ces encoches.\n3. Tirez dessus.\n\n(image: file:\/\/d3910139-72e7-48a8-904d-17d42342eee5 srcset: default)\n\nLe si\u00e8ge se d\u00e9bloque assez facilement et vous pouvez le relever normalement.\n\n## Bon \u00e0 savoir\n\n- N'importe quelle tige solide peut remplacer le manche de rouleau (un long tournevis, une cl\u00e9 Allen de bon diam\u00e8tre\u2026), du moment qu'elle s'engage bien dans les encoches. Mais, c\u2019est beaucoup plus facile avec un outil coud\u00e9.\n- Allez-y avec pr\u00e9caution : les encoches en plastique sont fragiles et peuvent casser si vous forcez trop.\n- Une fois le si\u00e8ge relev\u00e9, pensez \u00e0 r\u00e9cup\u00e9rer et remettre en place la languette rouge si vous l'avez retrouv\u00e9e, pour \u00e9viter de recommencer la prochaine fois.\n\n\n\nImages:\nhttps:\/\/alienlebarge.ch\/media\/pages\/articles\/debloquer-sieges-jogger\/b6a7a72eb2-1785945400\/img_1099-600x.webp\nhttps:\/\/alienlebarge.ch\/media\/pages\/articles\/debloquer-sieges-jogger\/4482931330-1785945399\/img_1100-600x.webp","content_html":"<p>Le Dacia Jogger cache un petit pi\u00e8ge dans sa troisi\u00e8me rang\u00e9e. Sur chaque si\u00e8ge arri\u00e8re (les places 6 et 7), une languette rouge sert \u00e0 lib\u00e9rer le m\u00e9canisme pour le relever. Le souci, c\u2019est que cette languette peut se d\u00e9tacher.<\/p>\n<p>Et l\u00e0, mauvaise surprise\u00a0: une fois les si\u00e8ges rabattus, impossible de les relever. On arrive seulement \u00e0 rabattre le dossier, mais le m\u00e9canisme qui permet de relever l\u2019assise reste verrouill\u00e9 et le si\u00e8ge refuse de revenir en position debout.<\/p>\n<p>J\u2019ai pass\u00e9 une bonne demi-heure \u00e0 tourner autour du probl\u00e8me avant de trouver la bonne astuce. La voici car je sais que <a href=\"https:\/\/communaute.dacia.fr\/forum\/DACIA\/DACIA-JOGGER\/TIRE-SIEGE-3EME-RANGEE-JOGGER\/4939468\/594870\">je ne suis pas le seul &agrave; avoir eu ce probl&egrave;me<\/a>.<\/p>\n<h2>L\u2019astuce<\/h2>\n<p>Tout se joue depuis le coffre. Il vous faut un objet dont la tige est assez fine pour se glisser dans les encoches, mais suffisamment solide pour supporter une bonne traction. Favoriser un outils coud\u00e9. C\u2019est beacoup plus facile. Dans mon cas, j\u2019ai utilis\u00e9 un manche de rouleau \u00e0 peinture.<\/p>\n<figure><img alt=\"Un manche de rouleau de peinture pour d\u00e9bloquer les si\u00e8ges du Dacia Jogger.\" src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/debloquer-sieges-jogger\/b6a7a72eb2-1785945400\/img_1099.jpeg\" srcset=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/debloquer-sieges-jogger\/b6a7a72eb2-1785945400\/img_1099-400x.webp 400w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/debloquer-sieges-jogger\/b6a7a72eb2-1785945400\/img_1099-800x.webp 800w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/debloquer-sieges-jogger\/b6a7a72eb2-1785945400\/img_1099-1200x.webp 1200w\" width=\"5712\"><\/figure>\n<ol>\n<li>Ouvrez le coffre et rep\u00e9rez la pi\u00e8ce en plastique du m\u00e9canisme de verrouillage, avec ses petites encoches.<\/li>\n<li>Glissez l\u2019extr\u00e9mit\u00e9 du manche de rouleau \u00e0 peinture dans ces encoches.<\/li>\n<li>Tirez dessus.<\/li>\n<\/ol>\n<figure><img alt=\"Le manche de rouleau de peinture est gliss\u00e9 dans les encoche du m\u00e9canisme de relevage du dossier.\" src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/debloquer-sieges-jogger\/4482931330-1785945399\/img_1100.jpeg\" srcset=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/debloquer-sieges-jogger\/4482931330-1785945399\/img_1100-400x.webp 400w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/debloquer-sieges-jogger\/4482931330-1785945399\/img_1100-800x.webp 800w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/debloquer-sieges-jogger\/4482931330-1785945399\/img_1100-1200x.webp 1200w\" width=\"5712\"><\/figure>\n<p>Le si\u00e8ge se d\u00e9bloque assez facilement et vous pouvez le relever normalement.<\/p>\n<h2>Bon \u00e0 savoir<\/h2>\n<ul>\n<li>N\u2019importe quelle tige solide peut remplacer le manche de rouleau (un long tournevis, une cl\u00e9 Allen de bon diam\u00e8tre\u2026), du moment qu\u2019elle s\u2019engage bien dans les encoches. Mais, c\u2019est beaucoup plus facile avec un outil coud\u00e9.<\/li>\n<li>Allez-y avec pr\u00e9caution\u00a0: les encoches en plastique sont fragiles et peuvent casser si vous forcez trop.<\/li>\n<li>Une fois le si\u00e8ge relev\u00e9, pensez \u00e0 r\u00e9cup\u00e9rer et remettre en place la languette rouge si vous l\u2019avez retrouv\u00e9e, pour \u00e9viter de recommencer la prochaine fois.<\/li>\n<\/ul><img src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/debloquer-sieges-jogger\/b6a7a72eb2-1785945400\/img_1099-600x.webp\" alt=\"Un manche de rouleau de peinture pour d\u00e9bloquer les si\u00e8ges du Dacia Jogger.\" style=\"max-width: 100%; height: auto; margin: 1rem 0;\" \/><img src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/debloquer-sieges-jogger\/4482931330-1785945399\/img_1100-600x.webp\" alt=\"Le manche de rouleau de peinture est gliss\u00e9 dans les encoche du m\u00e9canisme de relevage du dossier.\" style=\"max-width: 100%; height: auto; margin: 1rem 0;\" \/>","date_published":"2026-08-05T17:55:00+02:00","summary":"","image":"https:\/\/alienlebarge.ch\/media\/pages\/articles\/debloquer-sieges-jogger\/b6a7a72eb2-1785945400\/img_1099-600x.webp"},{"id":"https:\/\/alienlebarge.ch\/@\/page\/5dc5afdd-c0c8-43b8-8f80-32c325388081","url":"https:\/\/alienlebarge.ch\/articles\/smart-menu-bar-management-improvement","title":"Improvement of the Smart Menu Bar Management script","content_text":"I've made a few updates to (link: page:\/\/d56xwmovya9jxhuy text: my Bartender triggers) that allow me to switch configurations depending on whether the screen has a notch or not.\n\nOnly one script is now required.\n\n```bash\n#!\/bin\/zsh\n\n# ==============================================================================\n# Script: detect_main_display.sh\n#\n# Purpose:\n#   Detects whether the MAIN display (the one with the menu bar) is an\n#   EXTERNAL monitor or the INTERNAL MacBook screen.\n#\n# Output:\n#   - Prints \"true\"  and exits 0 if the main display is EXTERNAL (no notch)\n#   - Prints \"false\" and exits 1 if the main display is INTERNAL (has a notch)\n#\n# Notes:\n#   - Works whether the MacBook lid is open or closed (clamshell mode).\n#   - When the lid is closed, macOS doesn't even list the internal screen,\n#     so the internal block simply won't exist in the output.\n#   - LANG=en_US.UTF-8 forces system_profiler to output in English,\n#     regardless of the system's configured language, so the string\n#     matching below stays reliable.\n# ==============================================================================\n\n# Step 1: Get the full display info from macOS, forced to English output.\nDISPLAY_INFO=$(LANG=en_US.UTF-8 system_profiler SPDisplaysDataType 2>\/dev\/null)\n\n# Step 2: Default assumption is \"main display is NOT internal\"\n# (this will be flipped to \"true\" only if proven otherwise below).\nMAIN_IS_INTERNAL=\"false\"\n\n# Step 3: Split the system_profiler output into one \"block\" per display.\n#\n# Each display starts with a line indented by exactly 8 spaces followed by\n# a name and a colon, e.g.:\n#     \"        S34C65xT:\"\n#     \"        Color LCD:\"\n#\n# We can't split on blank lines (system_profiler doesn't always insert one\n# between displays), so instead we use awk to start a new block every time\n# we see a line matching that exact indentation pattern.\n#\n# Each finished block is emitted with a NUL byte (\\0) separator instead of\n# a newline, because display names\/properties could theoretically contain\n# newline-unsafe characters \u2014 NUL is the safest delimiter for `read -d ''`.\nwhile IFS= read -r -d '' BLOCK; do\n    # Step 4: For each display block, check if it is BOTH:\n    #   - the main display (\"Main Display: Yes\")\n    #   - AND an internal display (\"Connection Type: Internal\")\n    # These two lines only appear together in the SAME block for the\n    # internal MacBook screen when it is currently the main display.\n    if [[ \"$BLOCK\" == *\"Main Display: Yes\"* ]] && [[ \"$BLOCK\" == *\"Connection Type: Internal\"* ]]; then\n        MAIN_IS_INTERNAL=\"true\"\n    fi\ndone < <(awk '\n    # Detect the start of a new display block: exactly 8 spaces of\n    # indentation, then a non-space character, ending with a colon.\n    \/^        [^ ].*:$\/ {\n        # If we already accumulated a previous block, flush it out\n        # (separated by a NUL byte) before starting the new one.\n        if (block != \"\") printf \"%s\\0\", block\n        block = \"\"\n    }\n    # Accumulate every line (including the header line) into the\n    # current block.\n    { block = block $0 \"\\n\" }\n\n    # Flush the very last block once the input ends.\n    END { if (block != \"\") printf \"%s\\0\", block }\n' <<< \"$DISPLAY_INFO\")\n\n# Step 5: Output the final result based on what we found.\nif [[ \"$MAIN_IS_INTERNAL\" == \"true\" ]]; then\n    # Main display is the internal MacBook screen (has a notch)\n    echo \"false\"\n    exit 1\nelse\n    # Main display is an external monitor (no notch)\n    echo \"true\"\n    exit 0\nfi\n```","content_html":"<p>I\u2019ve made a few updates to <a href=\"https:\/\/alienlebarge.ch\/articles\/smart-menu-bar-management-adapting-icons-based-on-your-screen-setup-with-bartender\">my Bartender triggers<\/a> that allow me to switch configurations depending on whether the screen has a notch or not.<\/p>\n<p>Only one script is now required.<\/p>\n<pre><code class=\"language-bash\">#!\/bin\/zsh\n\n# ==============================================================================\n# Script: detect_main_display.sh\n#\n# Purpose:\n#   Detects whether the MAIN display (the one with the menu bar) is an\n#   EXTERNAL monitor or the INTERNAL MacBook screen.\n#\n# Output:\n#   - Prints \"true\"  and exits 0 if the main display is EXTERNAL (no notch)\n#   - Prints \"false\" and exits 1 if the main display is INTERNAL (has a notch)\n#\n# Notes:\n#   - Works whether the MacBook lid is open or closed (clamshell mode).\n#   - When the lid is closed, macOS doesn't even list the internal screen,\n#     so the internal block simply won't exist in the output.\n#   - LANG=en_US.UTF-8 forces system_profiler to output in English,\n#     regardless of the system's configured language, so the string\n#     matching below stays reliable.\n# ==============================================================================\n\n# Step 1: Get the full display info from macOS, forced to English output.\nDISPLAY_INFO=$(LANG=en_US.UTF-8 system_profiler SPDisplaysDataType 2&gt;\/dev\/null)\n\n# Step 2: Default assumption is \"main display is NOT internal\"\n# (this will be flipped to \"true\" only if proven otherwise below).\nMAIN_IS_INTERNAL=\"false\"\n\n# Step 3: Split the system_profiler output into one \"block\" per display.\n#\n# Each display starts with a line indented by exactly 8 spaces followed by\n# a name and a colon, e.g.:\n#     \"        S34C65xT:\"\n#     \"        Color LCD:\"\n#\n# We can't split on blank lines (system_profiler doesn't always insert one\n# between displays), so instead we use awk to start a new block every time\n# we see a line matching that exact indentation pattern.\n#\n# Each finished block is emitted with a NUL byte (\\0) separator instead of\n# a newline, because display names\/properties could theoretically contain\n# newline-unsafe characters \u2014 NUL is the safest delimiter for `read -d ''`.\nwhile IFS= read -r -d '' BLOCK; do\n    # Step 4: For each display block, check if it is BOTH:\n    #   - the main display (\"Main Display: Yes\")\n    #   - AND an internal display (\"Connection Type: Internal\")\n    # These two lines only appear together in the SAME block for the\n    # internal MacBook screen when it is currently the main display.\n    if [[ \"$BLOCK\" == *\"Main Display: Yes\"* ]] &amp;&amp; [[ \"$BLOCK\" == *\"Connection Type: Internal\"* ]]; then\n        MAIN_IS_INTERNAL=\"true\"\n    fi\ndone &lt; &lt;(awk '\n    # Detect the start of a new display block: exactly 8 spaces of\n    # indentation, then a non-space character, ending with a colon.\n    \/^        [^ ].*:$\/ {\n        # If we already accumulated a previous block, flush it out\n        # (separated by a NUL byte) before starting the new one.\n        if (block != \"\") printf \"%s\\0\", block\n        block = \"\"\n    }\n    # Accumulate every line (including the header line) into the\n    # current block.\n    { block = block $0 \"\\n\" }\n\n    # Flush the very last block once the input ends.\n    END { if (block != \"\") printf \"%s\\0\", block }\n' &lt;&lt;&lt; \"$DISPLAY_INFO\")\n\n# Step 5: Output the final result based on what we found.\nif [[ \"$MAIN_IS_INTERNAL\" == \"true\" ]]; then\n    # Main display is the internal MacBook screen (has a notch)\n    echo \"false\"\n    exit 1\nelse\n    # Main display is an external monitor (no notch)\n    echo \"true\"\n    exit 0\nfi<\/code><\/pre>","date_published":"2026-07-12T14:00:00+02:00","summary":"","image":null},{"id":"https:\/\/alienlebarge.ch\/@\/page\/809a2a4c-4fdd-40b5-a584-b3969dcdab11","url":"https:\/\/alienlebarge.ch\/articles\/bellroy-venture-camera-bag-review","title":"Bellroy Venture Camera Mag, my review after a few months","content_text":"(image: file:\/\/ff5213ac-185e-4da7-9831-92f2d83a9b7f)\n\nThe Bellroy Venture Camera Mag is a 10-liter camera sling bag, sold for around 200 CHF, but you can find some deals if you dig around. It targets photographers who want to carry their gear without looking like a cameraman on the go.\n\n## Why I chose this bag\n\nI was looking for a discreet, simple, and comfortable camera bag for everyday use. Not something that screams \"camera gear\" on every street corner. I wanted a minimalist, sturdy, and elegant enough item to take with me everywhere without drawing attention.\n\n## My first impressions\n\nAt first touch, the bag really inspires confidence. The finishes are neat, the construction feels robust, and the whole thing remains flexible without feeling fragile. It's exactly the kind of object you're happy to hold in your hands.\n\n## Everyday organization\n\nThis is where the bag stands out, and here is how I organized it. \nThe large main pocket contains two sewn-in dividers, so they are fixed but can be moved laterally, allowing you to create up to three compartments depending on the setup. I currently store my Fujifilm X\u2011E5 in it, along with a Polaroid Flip and one or two extra pancake lenses. On the sides, two elastic pockets hold my cleaning cloths, straps, or AirTag. A small interior zippered pocket is perfect for SD cards and other small accessories.\n\nOn the outside, a front zippered pocket gives me quick access to spare batteries, pens, or small everyday items. Everything has its place, and you eventually stop thinking about it. That's the sign that the organization works.\n\n(image: file:\/\/8a141096-c055-4c03-b5e6-ae1353a81d3a srcset:default)\n\n(image: file:\/\/3635bd0d-8257-445e-9c6d-6db1b5d268fb srcset:default)\n\n## The downsides\n\nThe dividers, actually, are a double-edged sword. Since they are sewn to the bottom of the bag, it's impossible to remove them completely. An A5 notebook that I use for my bullet journal doesn't fit without juggling their position. And when you push them aside to make room, the devices risk touching each other. A full-width space would have been welcome.\n\n(image: file:\/\/6dc7cd2a-519e-4e7e-ad07-d282c1322fc6 srcset:default)\n\nThe other point worth raising: the advertised 10-liter capacity seems generous to me.\nIt's a compact bag. But if you go in with the idea of a \"spacious\" bag, you might be surprised.\n\nThis bag is often criticized for the lack of a top handle. I understand the criticism, but personally, I don't share it. The two side handles are perfectly sufficient to grab the bag quickly. And adding a top handle would, in my opinion, detract from what makes the design so charming.\n\n## My verdict\n\nIt's a bag I really appreciate for its style, quality, and practicality. But you have to see it for what it is: an everyday companion designed to carry the essentials, not to take everything with you. If you're looking for a minimalist, well-built, and comfortable camera bag, it checks a lot of boxes. If you want space above all else, look elsewhere.\n\nImages:\nhttps:\/\/alienlebarge.ch\/media\/pages\/articles\/bellroy-venture-camera-bag-review\/6c15a7c62a-1781436545\/img_0421-600x.webp\nhttps:\/\/alienlebarge.ch\/media\/pages\/articles\/bellroy-venture-camera-bag-review\/d9ba602646-1781435958\/img_0422-600x.webp\nhttps:\/\/alienlebarge.ch\/media\/pages\/articles\/bellroy-venture-camera-bag-review\/379c15e039-1781435958\/img_0423-600x.webp\nhttps:\/\/alienlebarge.ch\/media\/pages\/articles\/bellroy-venture-camera-bag-review\/552d934f0a-1781435958\/img_0425-600x.webp","content_html":"<figure><img alt=\"Front view of a closed Bellroy Venture Camera Mag in black, laid flat, showing the minimalist design, the Bellroy logo, the front zipper pocket, and the shoulder strap.\" src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/bellroy-venture-camera-bag-review\/552d934f0a-1781435958\/img_0425.jpeg\" width=\"1280\"><\/figure>\n<p>The Bellroy Venture Camera Mag is a 10-liter camera sling bag, sold for around 200 CHF, but you can find some deals if you dig around. It targets photographers who want to carry their gear without looking like a cameraman on the go.<\/p>\n<h2>Why I chose this bag<\/h2>\n<p>I was looking for a discreet, simple, and comfortable camera bag for everyday use. Not something that screams \u201ccamera gear\u201d on every street corner. I wanted a minimalist, sturdy, and elegant enough item to take with me everywhere without drawing attention.<\/p>\n<h2>My first impressions<\/h2>\n<p>At first touch, the bag really inspires confidence. The finishes are neat, the construction feels robust, and the whole thing remains flexible without feeling fragile. It\u2019s exactly the kind of object you\u2019re happy to hold in your hands.<\/p>\n<h2>Everyday organization<\/h2>\n<p>This is where the bag stands out, and here is how I organized it.<br \/>\nThe large main pocket contains two sewn-in dividers, so they are fixed but can be moved laterally, allowing you to create up to three compartments depending on the setup. I currently store my Fujifilm X\u2011E5 in it, along with a Polaroid Flip and one or two extra pancake lenses. On the sides, two elastic pockets hold my cleaning cloths, straps, or AirTag. A small interior zippered pocket is perfect for SD cards and other small accessories.<\/p>\n<p>On the outside, a front zippered pocket gives me quick access to spare batteries, pens, or small everyday items. Everything has its place, and you eventually stop thinking about it. That\u2019s the sign that the organization works.<\/p>\n<figure><img alt=\"Top view of an empty Bellroy Venture Camera Mag showing two padded fixed dividers creating three compartments inside the main pocket.\" src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/bellroy-venture-camera-bag-review\/379c15e039-1781435958\/img_0423.jpeg\" srcset=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/bellroy-venture-camera-bag-review\/379c15e039-1781435958\/img_0423-400x.webp 400w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/bellroy-venture-camera-bag-review\/379c15e039-1781435958\/img_0423-800x.webp 800w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/bellroy-venture-camera-bag-review\/379c15e039-1781435958\/img_0423-1200x.webp 1200w\" width=\"1280\"><\/figure>\n<figure><img alt=\"Top view of an open Bellroy Venture Camera Mag showing a Fujifilm camera with lens, a Polaroid Flip instant camera with an orange wrist strap, and a second lens, organized in three compartments with fixed dividers.\" src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/bellroy-venture-camera-bag-review\/6c15a7c62a-1781436545\/img_0421.jpeg\" srcset=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/bellroy-venture-camera-bag-review\/6c15a7c62a-1781436545\/img_0421-400x.webp 400w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/bellroy-venture-camera-bag-review\/6c15a7c62a-1781436545\/img_0421-800x.webp 800w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/bellroy-venture-camera-bag-review\/6c15a7c62a-1781436545\/img_0421-1200x.webp 1200w\" width=\"1280\"><\/figure>\n<h2>The downsides<\/h2>\n<p>The dividers, actually, are a double-edged sword. Since they are sewn to the bottom of the bag, it\u2019s impossible to remove them completely. An A5 notebook that I use for my bullet journal doesn\u2019t fit without juggling their position. And when you push them aside to make room, the devices risk touching each other. A full-width space would have been welcome.<\/p>\n<figure><img alt=\"Top view of an open Bellroy Venture Camera Mag containing a Fujifilm camera, a white Polaroid Flip camera with an orange strap, a cleaning cloth, and an A5 notebook with a pen resting on top.\" src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/bellroy-venture-camera-bag-review\/d9ba602646-1781435958\/img_0422.jpeg\" srcset=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/bellroy-venture-camera-bag-review\/d9ba602646-1781435958\/img_0422-400x.webp 400w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/bellroy-venture-camera-bag-review\/d9ba602646-1781435958\/img_0422-800x.webp 800w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/bellroy-venture-camera-bag-review\/d9ba602646-1781435958\/img_0422-1200x.webp 1200w\" width=\"1280\"><\/figure>\n<p>The other point worth raising: the advertised 10-liter capacity seems generous to me.<br \/>\nIt\u2019s a compact bag. But if you go in with the idea of a \u201cspacious\u201d bag, you might be surprised.<\/p>\n<p>This bag is often criticized for the lack of a top handle. I understand the criticism, but personally, I don\u2019t share it. The two side handles are perfectly sufficient to grab the bag quickly. And adding a top handle would, in my opinion, detract from what makes the design so charming.<\/p>\n<h2>My verdict<\/h2>\n<p>It\u2019s a bag I really appreciate for its style, quality, and practicality. But you have to see it for what it is: an everyday companion designed to carry the essentials, not to take everything with you. If you\u2019re looking for a minimalist, well-built, and comfortable camera bag, it checks a lot of boxes. If you want space above all else, look elsewhere.<\/p><img src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/bellroy-venture-camera-bag-review\/6c15a7c62a-1781436545\/img_0421-600x.webp\" alt=\"Top view of an open Bellroy Venture Camera Mag showing a Fujifilm camera with lens, a Polaroid Flip instant camera with an orange wrist strap, and a second lens, organized in three compartments with fixed dividers.\" style=\"max-width: 100%; height: auto; margin: 1rem 0;\" \/><img src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/bellroy-venture-camera-bag-review\/d9ba602646-1781435958\/img_0422-600x.webp\" alt=\"Top view of an open Bellroy Venture Camera Mag containing a Fujifilm camera, a white Polaroid Flip camera with an orange strap, a cleaning cloth, and an A5 notebook with a pen resting on top.\" style=\"max-width: 100%; height: auto; margin: 1rem 0;\" \/><img src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/bellroy-venture-camera-bag-review\/379c15e039-1781435958\/img_0423-600x.webp\" alt=\"Top view of an empty Bellroy Venture Camera Mag showing two padded fixed dividers creating three compartments inside the main pocket.\" style=\"max-width: 100%; height: auto; margin: 1rem 0;\" \/><img src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/bellroy-venture-camera-bag-review\/552d934f0a-1781435958\/img_0425-600x.webp\" alt=\"Front view of a closed Bellroy Venture Camera Mag in black, laid flat, showing the minimalist design, the Bellroy logo, the front zipper pocket, and the shoulder strap.\" style=\"max-width: 100%; height: auto; margin: 1rem 0;\" \/>","date_published":"2026-06-14T13:15:00+02:00","summary":"","image":"https:\/\/alienlebarge.ch\/media\/pages\/articles\/bellroy-venture-camera-bag-review\/6c15a7c62a-1781436545\/img_0421-600x.webp"},{"id":"https:\/\/alienlebarge.ch\/@\/page\/40e08463-15ce-4280-b489-4abe2516bbab","url":"https:\/\/alienlebarge.ch\/articles\/perspective-photo-competition","title":"Alan Schaller liked one of my photos!","content_text":"(link: https:\/\/www.alanschaller.com text: Alan Schaller) has (link: https:\/\/patreon.com\/AlanSchaller text: a Patreon page) where he shares his knowledge of the art of photography. If, like me, you love his work and street photography, I highly recommend subscribing to it.\n\nEvery month he runs a competition on this page based on a theme, which he judges himself.\n(link: https:\/\/www.patreon.com\/posts\/perspective-156589760?utm_medium=clipboard_copy&utm_source=copyLink&utm_campaign=postshare_fan&utm_content=web_share text: The last one was on _perspective_ and I was lucky enough to be among the 10 winners!) That's awesome!\n\n(image: file:\/\/d21225fe-aa6b-4333-b857-b117848067d1 srcset: default)\n\nIt is a huge honour, as this community has so many talented photographers.\n\nAnd it motivates me to keep learning and improving. Bearing in mind that I got back into photography 4 months ago after a hiatus of about ten years.\n\n## The nominated photo\n\n(image: file:\/\/73b47a39-7d08-4b2f-a207-3ccd9e3c71c8 srcset: default)\n\nThis photo was taken during a family gathering. We were throwing Easter eggs in our garden. One of my daughters, along with one of her cousins and their grandfather, were throwing eggs at each other. I placed myself in the middle, sitting on the ground, and the photo was taken looking upwards as they were throwing them. I was a bit worried about taking one on the head.\n\n## Alan's comment\n\n> ### Perspective Competition Winners\n> \n> Druuummm roll please... the winners of the perspective competition are (in no particular order):\n> \n> Evan\n> @evangoldbergphoto\n> \n> Andy Davies\n> @one_camera_one_lense\n> \n> Martin Wong\n> @maw_camera_roll\n> \n> John Barnes\n> @malvernphoto\n> \n> Thomas Fritz\n> \n> Alienlebarge\n> \n> Saman Amin\n> @saman_m_a\n> \n> Christian Cyfus\n> IG: @christiancyfus IRYS : Christian_Cyfus\n> \n> Romain L\u00e9ger\n> \n> Jed Best\n> \n> I was really impressed with the entries for this one, there were some real stunners - but the ones that really stood out were these winners, they all captured perspectives in different ways, looking down, looking through, looking up, finding some very unique frames in locations etc. I thought they each had their own uniqueness, and quite a few made me really look twice and try to work out what I was looking at, which is something fun to see in a competition on perspective in particular.\n> \n> (I couldn't find a full name or instagram for some of you, so please comment below if you'd like me to update them).\n> \n> My next competition is going to be on light: hard light, soft light, backlight... front light for that matter. To enter, just head to the chat section and look out for \"Light Competition\", and 10 winners will be selected to appear at the end of our next YouTube episode.\n> \n> Well done again to the winners, and thanks to everyone for their submissions - you got involved!\n> \n> Alan\n\nThe photos of the winners are featured in (link: https:\/\/youtu.be\/2ZKkhVTc1hk?si=ir8MNE1ztQNJPmsR&t=797 text: his latest video).\n(youtube:https:\/\/youtu.be\/2ZKkhVTc1hk?si=e1NLQX7hFxBKPhGR&t=798)\n\nImages:\nhttps:\/\/alienlebarge.ch\/media\/pages\/articles\/perspective-photo-competition\/9448e419e7-1777316888\/easter-eggs-600x.webp\nhttps:\/\/alienlebarge.ch\/media\/pages\/articles\/perspective-photo-competition\/c288654bd4-1777317787\/little-mix-fangirl-gif-600x.webp","content_html":"<p><a href=\"https:\/\/www.alanschaller.com\">Alan Schaller<\/a> has <a href=\"https:\/\/patreon.com\/AlanSchaller\">a Patreon page<\/a> where he shares his knowledge of the art of photography. If, like me, you love his work and street photography, I highly recommend subscribing to it.<\/p>\n<p>Every month he runs a competition on this page based on a theme, which he judges himself.<br \/>\n<a href=\"https:\/\/www.patreon.com\/posts\/perspective-156589760?utm_medium=clipboard_copy&amp;utm_source=copyLink&amp;utm_campaign=postshare_fan&amp;utm_content=web_share\">The last one was on <em>perspective<\/em> and I was lucky enough to be among the 10 winners!<\/a> That\u2019s awesome!<\/p>\n<figure><img alt=\"A groupe of girls fangirling\" src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/perspective-photo-competition\/c288654bd4-1777317787\/little-mix-fangirl-gif.gif\" srcset=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/perspective-photo-competition\/c288654bd4-1777317787\/little-mix-fangirl-gif-400x.webp 400w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/perspective-photo-competition\/c288654bd4-1777317787\/little-mix-fangirl-gif-800x.webp 800w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/perspective-photo-competition\/c288654bd4-1777317787\/little-mix-fangirl-gif-1200x.webp 1200w\" width=\"245\"><figcaption>Me when I discovered that Alan Schaller liked one of my photos<\/figcaption><\/figure>\n<p>It is a huge honour, as this community has so many talented photographers.<\/p>\n<p>And it motivates me to keep learning and improving. Bearing in mind that I got back into photography 4 months ago after a hiatus of about ten years.<\/p>\n<h2>The nominated photo<\/h2>\n<figure><img alt=\"Low-angle view of three people's arms and hands reaching up toward the sky, throwing and catching Easter eggs. A child in a white t-shirt is visible on the left. Two eggs are mid-air at the center of the image. The background is a clear, uniform blue sky.\" src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/perspective-photo-competition\/9448e419e7-1777316888\/easter-eggs.jpg\" srcset=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/perspective-photo-competition\/9448e419e7-1777316888\/easter-eggs-400x.webp 400w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/perspective-photo-competition\/9448e419e7-1777316888\/easter-eggs-800x.webp 800w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/perspective-photo-competition\/9448e419e7-1777316888\/easter-eggs-1200x.webp 1200w\" width=\"2047\"><\/figure>\n<p>This photo was taken during a family gathering. We were throwing Easter eggs in our garden. One of my daughters, along with one of her cousins and their grandfather, were throwing eggs at each other. I placed myself in the middle, sitting on the ground, and the photo was taken looking upwards as they were throwing them. I was a bit worried about taking one on the head.<\/p>\n<h2>Alan\u2019s comment<\/h2>\n<blockquote>\n<h3>Perspective Competition Winners<\/h3>\n<p>Druuummm roll please\u2026 the winners of the perspective competition are (in no particular order):<\/p>\n<p>Evan<br \/>\n@evangoldbergphoto<\/p>\n<p>Andy Davies<br \/>\n@one_camera_one_lense<\/p>\n<p>Martin Wong<br \/>\n@maw_camera_roll<\/p>\n<p>John Barnes<br \/>\n@malvernphoto<\/p>\n<p>Thomas Fritz<\/p>\n<p>Alienlebarge<\/p>\n<p>Saman Amin<br \/>\n@saman_m_a<\/p>\n<p>Christian Cyfus<br \/>\nIG: @christiancyfus IRYS\u00a0: Christian_Cyfus<\/p>\n<p>Romain L\u00e9ger<\/p>\n<p>Jed Best<\/p>\n<p>I was really impressed with the entries for this one, there were some real stunners - but the ones that really stood out were these winners, they all captured perspectives in different ways, looking down, looking through, looking up, finding some very unique frames in locations etc. I thought they each had their own uniqueness, and quite a few made me really look twice and try to work out what I was looking at, which is something fun to see in a competition on perspective in particular.<\/p>\n<p>(I couldn\u2019t find a full name or instagram for some of you, so please comment below if you\u2019d like me to update them).<\/p>\n<p>My next competition is going to be on light: hard light, soft light, backlight\u2026 front light for that matter. To enter, just head to the chat section and look out for \u201cLight Competition\u201d, and 10 winners will be selected to appear at the end of our next YouTube episode.<\/p>\n<p>Well done again to the winners, and thanks to everyone for their submissions - you got involved!<\/p>\n<p>Alan<\/p>\n<\/blockquote>\n<p>The photos of the winners are featured in <a href=\"https:\/\/youtu.be\/2ZKkhVTc1hk?si=ir8MNE1ztQNJPmsR&amp;t=797\">his latest video<\/a>.<\/p>\n<figure class=\"o-frame\"><iframe allow=\"fullscreen\" allowfullscreen src=\"https:\/\/www.youtube.com\/embed\/2ZKkhVTc1hk?si=e1NLQX7hFxBKPhGR&amp;start=798\"><\/iframe><\/figure><img src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/perspective-photo-competition\/9448e419e7-1777316888\/easter-eggs-600x.webp\" alt=\"Low-angle view of three people's arms and hands reaching up toward the sky, throwing and catching Easter eggs. A child in a white t-shirt is visible on the left. Two eggs are mid-air at the center of the image. The background is a clear, uniform blue sky.\" style=\"max-width: 100%; height: auto; margin: 1rem 0;\" \/><img src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/perspective-photo-competition\/c288654bd4-1777317787\/little-mix-fangirl-gif-600x.webp\" alt=\"A groupe of girls fangirling\" style=\"max-width: 100%; height: auto; margin: 1rem 0;\" \/>","date_published":"2026-04-27T21:05:00+02:00","summary":"","image":"https:\/\/alienlebarge.ch\/media\/pages\/articles\/perspective-photo-competition\/9448e419e7-1777316888\/easter-eggs-600x.webp"},{"id":"https:\/\/alienlebarge.ch\/@\/page\/b6e65cbe-dc3a-4a50-999b-6a5100f551d6","url":"https:\/\/alienlebarge.ch\/articles\/no-more-youtube-algorithm","title":"No more YouTube algorithm","content_text":"I have to admit, YouTube eats up a good chunk of my day.\n\nWhen I watch one video, I get sucked in by the suggestions, and instead of just staying for a 15-minute video, I always find myself still glued to the screen 30 minutes later.\n\nLet's start a little experiment. Since I have no self-control, I need technology to help me out.\n\nFor the next few days, I've configured my apps to avoid being subjected to the YouTube algorithm.\n\nTo do this, I'm relying on three essential building blocks:\n\n1. (link: https:\/\/kagi.com text: Kagi rel:external), an ad-free search engine\n2. (link: https:\/\/redirectweb.net text: RedirectWeb rel:external), a browser extension that redirects URLs based on custom rules\n3. (link: https:\/\/skipcut.com text: Skipcut rel:external), a website that blocks ads and suggestions\n\nThis setup allows me to do two things:\n\n## Watch Videos in Skipcut\n\n(image: skipcut.png srcset: default)\n\nSkipcut is a website that removes all ads and suggestions. This will prevent me from clicking on the video that YouTube is suggesting on the same topic (or not).\n\nTo make this work, I apply the following rules:\n\n### In RedirectWeb\n\nWhenever I want to access a video link, RedirectWeb redirects me to Skipcut:\n\n- Redirect from `https:\/\/www\\.youtube\\.com\/(.+)`\n- Redirect to `https:\/\/skipcut.com\/$1`\n\n### In Kagi\n\nFrom Kagi's video search results page, I want to be redirected to Skipcut when I click on a video. In Kagi's advanced preferences, you can configure redirects. Just use the following: `^https:\/\/www.youtube.com|https:\/\/skipcut.com`\n\n## Use Kagi's video search instead of YouTube's homepage\n\n(image: kagi-video-search.png srcset: default)\n\nInstead of going to the YouTube homepage, I want to land on the video search page of the Kagi search engine. This will require me to be more deliberate in choosing the videos I want to watch by conducting targeted searches.\n\nTo do this, I use the following rule:\n\n- Redirect from `https:\/\/www\\.youtube\\.com\/?$`\n- Redirect to `https:\/\/kagi.com\/videos?q=`\n\nImages:\nhttps:\/\/alienlebarge.ch\/media\/pages\/articles\/no-more-youtube-algorithm\/42d06185ea-1770757491\/kagi-video-search-600x.webp\nhttps:\/\/alienlebarge.ch\/media\/pages\/articles\/no-more-youtube-algorithm\/6828b16841-1770757668\/skipcut-600x.webp","content_html":"<p>I have to admit, YouTube eats up a good chunk of my day.<\/p>\n<p>When I watch one video, I get sucked in by the suggestions, and instead of just staying for a 15-minute video, I always find myself still glued to the screen 30 minutes later.<\/p>\n<p>Let\u2019s start a little experiment. Since I have no self-control, I need technology to help me out.<\/p>\n<p>For the next few days, I\u2019ve configured my apps to avoid being subjected to the YouTube algorithm.<\/p>\n<p>To do this, I\u2019m relying on three essential building blocks:<\/p>\n<ol>\n<li><a href=\"https:\/\/kagi.com\" rel=\"external\">Kagi<\/a>, an ad-free search engine<\/li>\n<li><a href=\"https:\/\/redirectweb.net\" rel=\"external\">RedirectWeb<\/a>, a browser extension that redirects URLs based on custom rules<\/li>\n<li><a href=\"https:\/\/skipcut.com\" rel=\"external\">Skipcut<\/a>, a website that blocks ads and suggestions<\/li>\n<\/ol>\n<p>This setup allows me to do two things:<\/p>\n<h2>Watch Videos in Skipcut<\/h2>\n<figure><img alt=\"Skipcut.com interface displaying a Polaroid Flip review video without ads or suggested content, showing a clean viewing experience\" src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/no-more-youtube-algorithm\/6828b16841-1770757668\/skipcut.png\" srcset=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/no-more-youtube-algorithm\/6828b16841-1770757668\/skipcut-400x.webp 400w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/no-more-youtube-algorithm\/6828b16841-1770757668\/skipcut-800x.webp 800w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/no-more-youtube-algorithm\/6828b16841-1770757668\/skipcut-1200x.webp 1200w\" width=\"3120\"><\/figure>\n<p>Skipcut is a website that removes all ads and suggestions. This will prevent me from clicking on the video that YouTube is suggesting on the same topic (or not).<\/p>\n<p>To make this work, I apply the following rules:<\/p>\n<h3>In RedirectWeb<\/h3>\n<p>Whenever I want to access a video link, RedirectWeb redirects me to Skipcut:<\/p>\n<ul>\n<li>Redirect from <code>https:\/\/www\\.youtube\\.com\/(.+)<\/code><\/li>\n<li>Redirect to <code>https:\/\/skipcut.com\/$1<\/code><\/li>\n<\/ul>\n<h3>In Kagi<\/h3>\n<p>From Kagi\u2019s video search results page, I want to be redirected to Skipcut when I click on a video. In Kagi\u2019s advanced preferences, you can configure redirects. Just use the following: <code>^https:\/\/www.youtube.com|https:\/\/skipcut.com<\/code><\/p>\n<h2>Use Kagi\u2019s video search instead of YouTube\u2019s homepage<\/h2>\n<figure><img alt=\"Kagi video search results page showing Polaroid Flip camera reviews with thumbnails and view counts, demonstrating an ad-free alternative to YouTube's homepage\" src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/no-more-youtube-algorithm\/42d06185ea-1770757491\/kagi-video-search.png\" srcset=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/no-more-youtube-algorithm\/42d06185ea-1770757491\/kagi-video-search-400x.webp 400w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/no-more-youtube-algorithm\/42d06185ea-1770757491\/kagi-video-search-800x.webp 800w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/no-more-youtube-algorithm\/42d06185ea-1770757491\/kagi-video-search-1200x.webp 1200w\" width=\"3120\"><\/figure>\n<p>Instead of going to the YouTube homepage, I want to land on the video search page of the Kagi search engine. This will require me to be more deliberate in choosing the videos I want to watch by conducting targeted searches.<\/p>\n<p>To do this, I use the following rule:<\/p>\n<ul>\n<li>Redirect from <code>https:\/\/www\\.youtube\\.com\/?$<\/code><\/li>\n<li>Redirect to <code>https:\/\/kagi.com\/videos?q=<\/code><\/li>\n<\/ul><img src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/no-more-youtube-algorithm\/42d06185ea-1770757491\/kagi-video-search-600x.webp\" alt=\"Kagi video search results page showing Polaroid Flip camera reviews with thumbnails and view counts, demonstrating an ad-free alternative to YouTube's homepage\" style=\"max-width: 100%; height: auto; margin: 1rem 0;\" \/><img src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/no-more-youtube-algorithm\/6828b16841-1770757668\/skipcut-600x.webp\" alt=\"Skipcut.com interface displaying a Polaroid Flip review video without ads or suggested content, showing a clean viewing experience\" style=\"max-width: 100%; height: auto; margin: 1rem 0;\" \/>","date_published":"2026-02-10T22:20:00+01:00","summary":"","image":"https:\/\/alienlebarge.ch\/media\/pages\/articles\/no-more-youtube-algorithm\/42d06185ea-1770757491\/kagi-video-search-600x.webp"},{"id":"https:\/\/alienlebarge.ch\/@\/page\/4ee6336e-59a5-4882-8e39-2c4a8a77dc8e","url":"https:\/\/alienlebarge.ch\/articles\/jamuray-2026-05","title":"Jamuary 2026 #5: The loss","content_text":"Here's a short piece recorded live, born from the frustration following Switzerland's loss to Slovenia in the European Handball Championship. \n\nThe entire track is built around a small sample, heavily processed by the Ectocore module.\n\n(audio: jamuary-2026-05.mp3 caption: Jamuary 2026 #05)","content_html":"<p>Here\u2019s a short piece recorded live, born from the frustration following Switzerland\u2019s loss to Slovenia in the European Handball Championship. <\/p>\n<p>The entire track is built around a small sample, heavily processed by the Ectocore module.<\/p>\n<figure class=\"c-audio-player o-stack\" style=\"--stack-space: var(--space-xs);\"><audio controls class=\"c-audio-player__element\" aria-label=\"Jamuary 2026 #05\"><source src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/jamuray-2026-05\/3c49d7febd-1768773083\/jamuary-2026-05.mp3\" type=\"audio\/mpeg\">Votre navigateur ne supporte pas l\u2019\u00e9l\u00e9ment audio.<\/source><\/audio><figcaption class=\"o-stack\" style=\"--stack-space: var(--space-2xs);\"><span class=\"u-reference\">Jamuary 2026 #05<\/span><\/figcaption><\/figure>","date_published":"2026-01-18T22:50:00+01:00","summary":"","image":null},{"id":"https:\/\/alienlebarge.ch\/@\/page\/130d57e8-d48a-42f7-a185-003fd127384a","url":"https:\/\/alienlebarge.ch\/articles\/defaults-apps-2025","title":"My defaults app end of 2025","content_text":"A little behind schedule this year. Following (link: page:\/\/7ghvidymacgnjjgn text: 2023) (and admitting I missed 2024), these are the apps I used throughout 2025.\n\n## Communication\n\nMail\n: (link: https:\/\/www.hey.com\/ text: HEY rel: external)\n\nChat\n: iMessage\n: WhatsApp (because everybody uses it \ud83e\udd2e)\n:(link: https:\/\/discord.com\/ text: Discord rel: external)\n\nMastodon server\n: (link: https:\/\/home.omg.lol\/referred-by\/alienlebarge text: omg.lol rel: external)\n\nMastodon client\n: (link: https:\/\/tapbots.com\/ivory\/ text: Ivory rel: external)\n\n## Productivity\n\nTasks & Notes\n: (link: https:\/\/workflowy.com\/ text: Workflowy rel: external)\n\nShopping list\n: (link: https:\/\/apps.apple.com\/us\/app\/reminders\/id1108187841 text: Reminders app rel: external)\n\nCalendar\n: (link: https:\/\/flexibits.com\/fantastical text: Fantastical rel: external)\n\nContacts\n: (link: https:\/\/flexibits.com\/cardhop text: Cardhop rel: external)\n\nMarkdown editor\n: (link: https:\/\/ia.net\/writer text: iA Writer rel: external)\n\n## Reading & Media\n\nRSS service\n: (link: https:\/\/miniflux.app text: Miniflux rel: external) (self hosted)\n\nRSS client\n: (link: https:\/\/reederapp.com\/ text: Reeder rel: external) on iOS and web client elsewhere.\n\nReading\n: (link: https:\/\/readwise.io\/read text: Readwise Read rel: external)\n\nPodcasts\n: (link: https:\/\/castro.fm\/ text: Castro rel: external)\n\nMusic\n: (link: https:\/\/www.spotify.com text: Spotify rel: external)\n: (link: https:\/\/www.navidrome.org text: Navidrome rel: external) (self hosted)\n\n## Photography\n\nPhoto library\n: iCloud\n\nPhoto editing\n: (link: https:\/\/darkroom.co\/ text: Darkroom rel: external)\n\nCamera app\n: Leica LUX\n\n## Development\n\nCode editor\n: (link: https:\/\/nova.app\/ text: Nova rel: external)\n\nTerminal\n: (link: https:\/\/ghostty.org\/ text: Ghostty rel: external)\n\nAI code assistant\n: (link: https:\/\/claude.com\/product\/claude-code text: Claude Code rel: external)\n\n## System Utilities\n\nLauncher, Clipboard manager & AI assistant\n: (link: https:\/\/www.raycast.com\/ text: Raycast rel: external)\n\nAutomation\n: (link: https:\/\/www.keyboardmaestro.com\/ text: Keyboard Maestro rel: external)\n\nScreenshots\n: (link: https:\/\/cleanshot.com\/ text: CleanShot X rel: external)\n\nPasswords\n: (link: https:\/\/1password.com\/ text: 1Password rel: external)\n\nVPN\n: (link: https:\/\/www.expressvpn.com\/ text: ExpressVPN rel: external)\n\nDictation\n: (link: https:\/\/goodsnooze.gumroad.com\/l\/macwhisper text: MacWhisper rel: external)\n\n## Internet\n\nWeb browser\n: (link: https:\/\/orionbrowser.com text: Orion rel: external)\n\nSearch\n: (link: https:\/\/kagi.com\/ text: Kagi rel: external)\n\n## Cloud Storage\n\nPhotos\n: iCloud\n\nFiles\n: (link: https:\/\/www.infomaniak.com\/en\/kdrive text: kDrive rel: external)\n\n## Daily Life\n\nMap\n: (link: https:\/\/www.swisstopo.admin.ch\/en\/swisstopo-application text: Swisstopo rel: external)\n: (link: https:\/\/maps.apple.com text: Apple Maps rel: external)\n\nWeather\n: (link: https:\/\/www.meteoswiss.admin.ch\/services-and-publications\/service\/weather-and-climate-products\/meteoswiss-app.html text: MeteoSwiss App rel: external)","content_html":"<p>A little behind schedule this year. Following <a href=\"https:\/\/alienlebarge.ch\/articles\/apps-and-services-i-like\">2023<\/a> (and admitting I missed 2024), these are the apps I used throughout 2025.<\/p>\n<h2>Communication<\/h2>\n<dl>\n<dt>Mail<\/dt>\n<dd><a href=\"https:\/\/www.hey.com\/\" rel=\"external\">HEY<\/a><\/dd>\n<dt>Chat<\/dt>\n<dd>iMessage<\/dd>\n<dd>WhatsApp (because everybody uses it \ud83e\udd2e)<\/dd>\n<dd><a href=\"https:\/\/discord.com\/\" rel=\"external\">Discord<\/a><\/dd>\n<dt>Mastodon server<\/dt>\n<dd><a href=\"https:\/\/home.omg.lol\/referred-by\/alienlebarge\" rel=\"external\">omg.lol<\/a><\/dd>\n<dt>Mastodon client<\/dt>\n<dd><a href=\"https:\/\/tapbots.com\/ivory\/\" rel=\"external\">Ivory<\/a><\/dd>\n<\/dl>\n<h2>Productivity<\/h2>\n<dl>\n<dt>Tasks &amp; Notes<\/dt>\n<dd><a href=\"https:\/\/workflowy.com\/\" rel=\"external\">Workflowy<\/a><\/dd>\n<dt>Shopping list<\/dt>\n<dd><a href=\"https:\/\/apps.apple.com\/us\/app\/reminders\/id1108187841\" rel=\"external\">Reminders app<\/a><\/dd>\n<dt>Calendar<\/dt>\n<dd><a href=\"https:\/\/flexibits.com\/fantastical\" rel=\"external\">Fantastical<\/a><\/dd>\n<dt>Contacts<\/dt>\n<dd><a href=\"https:\/\/flexibits.com\/cardhop\" rel=\"external\">Cardhop<\/a><\/dd>\n<dt>Markdown editor<\/dt>\n<dd><a href=\"https:\/\/ia.net\/writer\" rel=\"external\">iA Writer<\/a><\/dd>\n<\/dl>\n<h2>Reading &amp; Media<\/h2>\n<dl>\n<dt>RSS service<\/dt>\n<dd><a href=\"https:\/\/miniflux.app\" rel=\"external\">Miniflux<\/a> (self hosted)<\/dd>\n<dt>RSS client<\/dt>\n<dd><a href=\"https:\/\/reederapp.com\/\" rel=\"external\">Reeder<\/a> on iOS and web client elsewhere.<\/dd>\n<dt>Reading<\/dt>\n<dd><a href=\"https:\/\/readwise.io\/read\" rel=\"external\">Readwise Read<\/a><\/dd>\n<dt>Podcasts<\/dt>\n<dd><a href=\"https:\/\/castro.fm\/\" rel=\"external\">Castro<\/a><\/dd>\n<dt>Music<\/dt>\n<dd><a href=\"https:\/\/www.spotify.com\" rel=\"external\">Spotify<\/a><\/dd>\n<dd><a href=\"https:\/\/www.navidrome.org\" rel=\"external\">Navidrome<\/a> (self hosted)<\/dd>\n<\/dl>\n<h2>Photography<\/h2>\n<dl>\n<dt>Photo library<\/dt>\n<dd>iCloud<\/dd>\n<dt>Photo editing<\/dt>\n<dd><a href=\"https:\/\/darkroom.co\/\" rel=\"external\">Darkroom<\/a><\/dd>\n<dt>Camera app<\/dt>\n<dd>Leica LUX<\/dd>\n<\/dl>\n<h2>Development<\/h2>\n<dl>\n<dt>Code editor<\/dt>\n<dd><a href=\"https:\/\/nova.app\/\" rel=\"external\">Nova<\/a><\/dd>\n<dt>Terminal<\/dt>\n<dd><a href=\"https:\/\/ghostty.org\/\" rel=\"external\">Ghostty<\/a><\/dd>\n<dt>AI code assistant<\/dt>\n<dd><a href=\"https:\/\/claude.com\/product\/claude-code\" rel=\"external\">Claude Code<\/a><\/dd>\n<\/dl>\n<h2>System Utilities<\/h2>\n<dl>\n<dt>Launcher, Clipboard manager &amp; AI assistant<\/dt>\n<dd><a href=\"https:\/\/www.raycast.com\/\" rel=\"external\">Raycast<\/a><\/dd>\n<dt>Automation<\/dt>\n<dd><a href=\"https:\/\/www.keyboardmaestro.com\/\" rel=\"external\">Keyboard Maestro<\/a><\/dd>\n<dt>Screenshots<\/dt>\n<dd><a href=\"https:\/\/cleanshot.com\/\" rel=\"external\">CleanShot X<\/a><\/dd>\n<dt>Passwords<\/dt>\n<dd><a href=\"https:\/\/1password.com\/\" rel=\"external\">1Password<\/a><\/dd>\n<dt>VPN<\/dt>\n<dd><a href=\"https:\/\/www.expressvpn.com\/\" rel=\"external\">ExpressVPN<\/a><\/dd>\n<dt>Dictation<\/dt>\n<dd><a href=\"https:\/\/goodsnooze.gumroad.com\/l\/macwhisper\" rel=\"external\">MacWhisper<\/a><\/dd>\n<\/dl>\n<h2>Internet<\/h2>\n<dl>\n<dt>Web browser<\/dt>\n<dd><a href=\"https:\/\/orionbrowser.com\" rel=\"external\">Orion<\/a><\/dd>\n<dt>Search<\/dt>\n<dd><a href=\"https:\/\/kagi.com\/\" rel=\"external\">Kagi<\/a><\/dd>\n<\/dl>\n<h2>Cloud Storage<\/h2>\n<dl>\n<dt>Photos<\/dt>\n<dd>iCloud<\/dd>\n<dt>Files<\/dt>\n<dd><a href=\"https:\/\/www.infomaniak.com\/en\/kdrive\" rel=\"external\">kDrive<\/a><\/dd>\n<\/dl>\n<h2>Daily Life<\/h2>\n<dl>\n<dt>Map<\/dt>\n<dd><a href=\"https:\/\/www.swisstopo.admin.ch\/en\/swisstopo-application\" rel=\"external\">Swisstopo<\/a><\/dd>\n<dd><a href=\"https:\/\/maps.apple.com\" rel=\"external\">Apple Maps<\/a><\/dd>\n<dt>Weather<\/dt>\n<dd><a href=\"https:\/\/www.meteoswiss.admin.ch\/services-and-publications\/service\/weather-and-climate-products\/meteoswiss-app.html\" rel=\"external\">MeteoSwiss App<\/a><\/dd>\n<\/dl>","date_published":"2026-01-13T23:00:00+01:00","summary":"","image":null},{"id":"https:\/\/alienlebarge.ch\/@\/page\/6c2a298a-4897-4e34-9e73-e2ecfb0b8d57","url":"https:\/\/alienlebarge.ch\/articles\/jamuray-2026-04","title":"Jamuary 2026 #4: House life","content_text":"Tonight, during our family dinner, I recorded sounds of pots, forks, plates, glasses, etc. on my iPhone. Then, using (link: https:\/\/www.xlnaudio.com\/products\/life text: XLN Audio's Life rel: external), my favorite program on Mac, I mixed all of that to create breaks using the recorded sounds. All of this was then recorded in the (link: https:\/\/infinitedigits.myshopify.com\/products\/ectocore text: Ectocore rel: external) module, which further mixes and manipulates the sounds.\n\nThe result is a kind of deconstructed house with syncopated rhythms. Everything I love!\n\n(audio: jamuary-2026-04.mp3 caption: Jamuary 2026 #04)","content_html":"<p>Tonight, during our family dinner, I recorded sounds of pots, forks, plates, glasses, etc. on my iPhone. Then, using <a href=\"https:\/\/www.xlnaudio.com\/products\/life\" rel=\"external\">XLN Audio&#039;s Life<\/a>, my favorite program on Mac, I mixed all of that to create breaks using the recorded sounds. All of this was then recorded in the <a href=\"https:\/\/infinitedigits.myshopify.com\/products\/ectocore\" rel=\"external\">Ectocore<\/a> module, which further mixes and manipulates the sounds.<\/p>\n<p>The result is a kind of deconstructed house with syncopated rhythms. Everything I love!<\/p>\n<figure class=\"c-audio-player o-stack\" style=\"--stack-space: var(--space-xs);\"><audio controls class=\"c-audio-player__element\" aria-label=\"Jamuary 2026 #04\"><source src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/jamuray-2026-04\/354a378a2d-1768339754\/jamuary-2026-04.mp3\" type=\"audio\/mpeg\">Votre navigateur ne supporte pas l\u2019\u00e9l\u00e9ment audio.<\/source><\/audio><figcaption class=\"o-stack\" style=\"--stack-space: var(--space-2xs);\"><span class=\"u-reference\">Jamuary 2026 #04<\/span><\/figcaption><\/figure>","date_published":"2026-01-13T22:25:00+01:00","summary":"","image":null},{"id":"https:\/\/alienlebarge.ch\/@\/page\/80e0f256-2404-4c28-8687-3a1128969f62","url":"https:\/\/alienlebarge.ch\/articles\/jamuray-2026-03","title":"Jamuary 2026 #3: Extrem bassline","content_text":"Since Bohm is mainly in charge of the kicks, it was a good opportunity to use Ultra Kick to try and generate a bassline. And I think it turned out pretty well. It's very dark and heavy, so I really like it.\n\n(audio: jamuary-2026-03.mp3 caption: Jamuary 2026 #03)","content_html":"<p>Since Bohm is mainly in charge of the kicks, it was a good opportunity to use Ultra Kick to try and generate a bassline. And I think it turned out pretty well. It\u2019s very dark and heavy, so I really like it.<\/p>\n<figure class=\"c-audio-player o-stack\" style=\"--stack-space: var(--space-xs);\"><audio controls class=\"c-audio-player__element\" aria-label=\"Jamuary 2026 #03\"><source src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/jamuray-2026-03\/67f7cb9b5c-1767968474\/jamuary-2026-03.mp3\" type=\"audio\/mpeg\">Votre navigateur ne supporte pas l\u2019\u00e9l\u00e9ment audio.<\/source><\/audio><figcaption class=\"o-stack\" style=\"--stack-space: var(--space-2xs);\"><span class=\"u-reference\">Jamuary 2026 #03<\/span><\/figcaption><\/figure>","date_published":"2026-01-09T20:05:00+01:00","summary":"","image":null},{"id":"https:\/\/alienlebarge.ch\/@\/page\/f8d5cea1-de43-4409-aca9-f3592e78bab1","url":"https:\/\/alienlebarge.ch\/articles\/jamuray-2026-02","title":"Jamuary 2026 #2: Atlantix","content_text":"Running short on time, this is the same patch as the (link: page:\/\/e7f3d18d-0296-4101-9dd2-ff9366ea7f3a text: last jam), except this time the main voice is the Intellijel Atlantix module.\n\nYou can enjoy over 2 minutes of intro where I'm looking for a decent sequence to play with the Atlantix. \ud83e\udee0\n\n(audio: jamuary-2026-02.mp3 caption: Jamuary 2026 #02)","content_html":"<p>Running short on time, this is the same patch as the <a href=\"https:\/\/alienlebarge.ch\/articles\/jamuray-2026-01\">last jam<\/a>, except this time the main voice is the Intellijel Atlantix module.<\/p>\n<p>You can enjoy over 2 minutes of intro where I\u2019m looking for a decent sequence to play with the Atlantix. \ud83e\udee0<\/p>\n<figure class=\"c-audio-player o-stack\" style=\"--stack-space: var(--space-xs);\"><audio controls class=\"c-audio-player__element\" aria-label=\"Jamuary 2026 #02\"><source src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/jamuray-2026-02\/bf3e44d1db-1767734321\/jamuary-2026-02.mp3\" type=\"audio\/mpeg\">Votre navigateur ne supporte pas l\u2019\u00e9l\u00e9ment audio.<\/source><\/audio><figcaption class=\"o-stack\" style=\"--stack-space: var(--space-2xs);\"><span class=\"u-reference\">Jamuary 2026 #02<\/span><\/figcaption><\/figure>","date_published":"2026-01-06T22:15:00+01:00","summary":"","image":null},{"id":"https:\/\/alienlebarge.ch\/@\/page\/e7f3d18d-0296-4101-9dd2-ff9366ea7f3a","url":"https:\/\/alienlebarge.ch\/articles\/jamuray-2026-01","title":"Jamuary 2026 #1: Bishop's melody","content_text":"A new year means a new series of jams for the month of January. And yes, it's the traditional Jamuary. \n\nFor this first session, I decided to use the \"Bishop Miscellany\" by Shakmat to generate the melody. I just got it, so it was the perfect opportunity to get the hang of it. The sounds are generated by the Plaits module running through the Blades filter, with a bit of reverb, a good kick, some drums, and this is what it sounds like. I hope you'll like it.\n\n(audio: jamuary-2026-01.mp3 caption: Jamuary 2026 #01)\n\nYou may have noticed; this year, there's no video. I'm going to try to release audio only, using the 8TR module, which allows me to record directly from my Eurorack setup. This will make my work a bit easier and allow me to publish this content a little faster, since family life doesn't let me spend hours on it.","content_html":"<p>A new year means a new series of jams for the month of January. And yes, it\u2019s the traditional Jamuary. <\/p>\n<p>For this first session, I decided to use the \u201cBishop Miscellany\u201d by Shakmat to generate the melody. I just got it, so it was the perfect opportunity to get the hang of it. The sounds are generated by the Plaits module running through the Blades filter, with a bit of reverb, a good kick, some drums, and this is what it sounds like. I hope you\u2019ll like it.<\/p>\n<figure class=\"c-audio-player o-stack\" style=\"--stack-space: var(--space-xs);\"><audio controls class=\"c-audio-player__element\" aria-label=\"Jamuary 2026 #01\"><source src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/jamuray-2026-01\/2b13f1e491-1767469259\/jamuary-2026-01.mp3\" type=\"audio\/mpeg\">Votre navigateur ne supporte pas l\u2019\u00e9l\u00e9ment audio.<\/source><\/audio><figcaption class=\"o-stack\" style=\"--stack-space: var(--space-2xs);\"><span class=\"u-reference\">Jamuary 2026 #01<\/span><\/figcaption><\/figure>\n<p>You may have noticed; this year, there\u2019s no video. I\u2019m going to try to release audio only, using the 8TR module, which allows me to record directly from my Eurorack setup. This will make my work a bit easier and allow me to publish this content a little faster, since family life doesn\u2019t let me spend hours on it.<\/p>","date_published":"2026-01-03T20:40:00+01:00","summary":"","image":null},{"id":"https:\/\/alienlebarge.ch\/@\/page\/0249a51b-da79-4547-84c2-a5eda171689d","url":"https:\/\/alienlebarge.ch\/articles\/aerospace-config-qwertz","title":"My AeroSpace setup for QWERTZ layout","content_text":"In (link: https:\/\/youtu.be\/Ls-6VSMlkGk?t=2810 text: a previous episode of the Comfort Zone podcast), Nilean proposed a challenge: use (link: https:\/\/github.com\/nikitabobko\/AeroSpace text: AeroSpace) for a week. This application automatically reorganizes your application windows. Unlike classic window managers, you don't decide where to place your windows with keyboard shortcuts. The program automatically resizes them as soon as they appear.\n\nSo, I tried to take on this challenge by installing the application, and I fell in love with it instantly.\n\nThe only small snag in all this is that I'm in Switzerland and therefore use (link: https:\/\/en.wikipedia.org\/wiki\/QWERTZ text: a Swiss French keyboard, aka QWERTZ).\n(image: beeb1d7b-46fb-495f-ac8a-ef11a3b36a7f)\n\nAeroSpace offers shortcuts by combining the <kbd>ALT<\/kbd> key and numbers. On Swiss French and French keyboards, the number keys are also used to type special characters. As a result, many key combinations don't work because they are already used.. So, I had to rework the AeroSpace configuration a bit to be able to use it.\n\nTo use this configuration, it's essential to use a hyper key. In my case, it's (link: https:\/\/raycast.com text: Raycast) that allows me to have a hyper key. Specifically, when I press the <kbd>Caps Lock<\/kbd> key, it simulates pressing <kbd>Control<\/kbd> + <kbd>Option<\/kbd> + <kbd>Command<\/kbd> simultaneously. Usually, hyper keys also include the Shift combination, but in my case, I prefer to have two possibilities, namely <kbd>Caps Lock<\/kbd> and <kbd>Shift<\/kbd> + <kbd>Caps Lock<\/kbd>.\n\nHere is the configuration I use.\n\n```toml\n# Place a copy of this config to ~\/.aerospace.toml\n# After that, you can edit ~\/.aerospace.toml to your liking\n\n# This configuration is optimized for use with a hyper key\n# (ctrl-alt-cmd modifier combination)\n\n# Config version for compatibility and deprecations\n# Fallback value (if you omit the key): config-version = 1\nconfig-version = 2\n\n# You can use it to add commands that run after AeroSpace startup.\n# Available commands : https:\/\/nikitabobko.github.io\/AeroSpace\/commands\nafter-startup-command = []\n\n# Start AeroSpace at login\nstart-at-login = true\n\n# Normalizations. See: https:\/\/nikitabobko.github.io\/AeroSpace\/guide#normalization\nenable-normalization-flatten-containers = true\nenable-normalization-opposite-orientation-for-nested-containers = true\n\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/guide#layouts\n# The 'accordion-padding' specifies the size of accordion padding\n# You can set 0 to disable the padding feature\naccordion-padding = 30\n\n# Possible values: tiles|accordion\ndefault-root-container-layout = 'tiles'\n\n# Possible values: horizontal|vertical|auto\n# 'auto' means: wide monitor (anything wider than high) gets horizontal orientation,\n#               tall monitor (anything higher than wide) gets vertical orientation\ndefault-root-container-orientation = 'auto'\n\n# Mouse follows focus when focused monitor changes\n# Drop it from your config, if you don't like this behavior\n# See https:\/\/nikitabobko.github.io\/AeroSpace\/guide#on-focus-changed-callbacks\n# See https:\/\/nikitabobko.github.io\/AeroSpace\/commands#move-mouse\n# Fallback value (if you omit the key): on-focused-monitor-changed = []\non-focused-monitor-changed = ['move-mouse monitor-lazy-center']\n\n# You can effectively turn off macOS \"Hide application\" (cmd-h) feature by toggling this flag\n# Useful if you don't use this macOS feature, but accidentally hit cmd-h or cmd-alt-h key\n# Also see: https:\/\/nikitabobko.github.io\/AeroSpace\/goodies#disable-hide-app\nautomatically-unhide-macos-hidden-apps = false\n\n# List of wspaces that should stay alive even when they contain no windows,\n# even when they are invisible.\n# This config version is only available since 'config-version = 2'\n# Fallback value (if you omit the key): persistent-workspaces = []\npersistent-workspaces = [\"1\", \"2\", \"3\", \"4\", \"5\", \"6\", \"7\", \"8\", \"9\"]\n\n# A callback that runs every time binding mode changes\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/guide#binding-modes\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/commands#mode\non-mode-changed = []\n\n# Possible values: (qwerty|dvorak|colemak)\n# See https:\/\/nikitabobko.github.io\/AeroSpace\/guide#key-mapping\n[key-mapping]\npreset = 'qwerty'\n\n[key-mapping.key-notation-to-key-code]\n# Cr\u00e9er des alias pour que les notations correspondent aux \u00e9tiquettes Swiss-French\n# Syntaxe: alias = 'notation-standard' (la notation standard r\u00e9f\u00e8re \u00e0 la position US)\n\n# Inverser Y et Z pour correspondre aux \u00e9tiquettes physiques\ny = 'z' # La touche \u00e9tiquet\u00e9e Y (position US de Z)\nz = 'y' # La touche \u00e9tiquet\u00e9e Z (position US de Y)\n\n# Gaps between windows (inner-*) and between monitor edges (outer-*).\n# Possible values:\n# - Constant:     gaps.outer.top = 8\n# - Per monitor:  gaps.outer.top = [{ monitor.main = 16 }, { monitor.\"some-pattern\" = 32 }, 24]\n#                 In this example, 24 is a default value when there is no match.\n#                 Monitor pattern is the same as for 'workspace-to-monitor-force-assignment'.\n#                 See:\n#                 https:\/\/nikitabobko.github.io\/AeroSpace\/guide#assign-workspaces-to-monitors\n\n[gaps]\ninner.horizontal = 10\ninner.vertical = 10\nouter.left = 10\nouter.bottom = 10\nouter.top = 10\nouter.right = 10\n\n# 'main' binding mode declaration\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/guide#binding-modes\n# 'main' binding mode must be always presented\n# Fallback value (if you omit the key): mode.main.binding = {}\n[mode.main.binding]\n\n# All possible keys:\n# - Letters.        a, b, c, ..., z\n# - Numbers.        0, 1, 2, ..., 9\n# - Keypad numbers. keypad0, keypad1, keypad2, ..., keypad9\n# - F-keys.         f1, f2, ..., f20\n# - Special keys.   minus, equal, period, comma, slash, backslash, quote, semicolon,\n#                   backtick, leftSquareBracket, rightSquareBracket, space, enter, esc,\n#                   backspace, tab, pageUp, pageDown, home, end, forwardDelete,\n#                   sectionSign (ISO keyboards only, european keyboards only)\n# - Keypad special. keypadClear, keypadDecimalMark, keypadDivide, keypadEnter, keypadEqual,\n#                   keypadMinus, keypadMultiply, keypadPlus\n# - Arrows.         left, down, up, right\n\n# All possible modifiers: cmd, alt, ctrl, shift\n\n# All possible commands: https:\/\/nikitabobko.github.io\/AeroSpace\/commands\n\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/commands#exec-and-forget\n# You can uncomment the following lines to open up terminal with alt + enter shortcut\n# (like in i3)\n# alt-enter = '''exec-and-forget osascript -e '\n# tell application \"Terminal\"\n#     do script\n#     activate\n# end\n# '''\n\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/commands#layout\nalt-shift-comma = 'layout tiles horizontal vertical'\nalt-shift-period = 'layout accordion horizontal vertical'\n\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/commands#focus\nalt-h = 'focus left'\nalt-j = 'focus down'\nalt-k = 'focus up'\nalt-l = 'focus right'\n\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/commands#move\nalt-shift-h = 'move left'\nalt-shift-j = 'move down'\nalt-shift-k = 'move up'\nalt-shift-l = 'move right'\n\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/commands#resize\nctrl-alt-cmd-k = 'resize smart -50'\nctrl-alt-cmd-j = 'resize smart +50'\n\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/commands#workspace\nctrl-alt-cmd-1 = 'workspace 1'\nctrl-alt-cmd-2 = 'workspace 2'\nctrl-alt-cmd-3 = 'workspace 3'\nctrl-alt-cmd-4 = 'workspace 4'\nctrl-alt-cmd-5 = 'workspace 5'\nctrl-alt-cmd-6 = 'workspace 6'\nctrl-alt-cmd-7 = 'workspace 7'\nctrl-alt-cmd-8 = 'workspace 8'\nctrl-alt-cmd-9 = 'workspace 9'\n\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/commands#move-node-to-workspace\nctrl-alt-cmd-shift-1 = 'move-node-to-workspace 1'\nctrl-alt-cmd-shift-2 = 'move-node-to-workspace 2'\nctrl-alt-cmd-shift-3 = 'move-node-to-workspace 3'\nctrl-alt-cmd-shift-4 = 'move-node-to-workspace 4'\nctrl-alt-cmd-shift-5 = 'move-node-to-workspace 5'\nctrl-alt-cmd-shift-6 = 'move-node-to-workspace 6'\nctrl-alt-cmd-shift-7 = 'move-node-to-workspace 7'\nctrl-alt-cmd-shift-8 = 'move-node-to-workspace 8'\nctrl-alt-cmd-shift-9 = 'move-node-to-workspace 9'\n\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/commands#fullscreen\nctrl-alt-cmd-space = 'fullscreen'\n\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/commands#workspace-back-and-forth\nctrl-alt-cmd-tab = 'workspace-back-and-forth'\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/commands#move-workspace-to-monitor\nctrl-alt-cmd-shift-tab = 'move-workspace-to-monitor --wrap-around next'\n\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/commands#mode\nctrl-alt-cmd-s = 'mode service'\n\n# 'service' binding mode declaration.\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/guide#binding-modes\n[mode.service.binding]\nesc = ['reload-config', 'mode main']\nr = ['flatten-workspace-tree', 'mode main'] # reset layout\nf = [\n  'layout floating tiling',\n  'mode main',\n] # Toggle between floating and tiling layout\nbackspace = ['close-all-windows-but-current', 'mode main']\n\n# sticky is not yet supported https:\/\/github.com\/nikitabobko\/AeroSpace\/issues\/2\n#s = ['layout sticky tiling', 'mode main']\n\nalt-shift-h = ['join-with left', 'mode main']\nalt-shift-j = ['join-with down', 'mode main']\nalt-shift-k = ['join-with up', 'mode main']\nalt-shift-l = ['join-with right', 'mode main']\n```\n\nI hope this article has been able to help people who want to use AeroSpace and don't have a compatible keyboard.\n\nThis configuration may change over time. You can find the latest updated version (link: https:\/\/github.com\/alienlebarge\/dotfiles\/blob\/main\/aerospace\/.config\/aerospace\/aerospace.toml text: on GitHub).\n\nImages:\nhttps:\/\/alienlebarge.ch\/media\/pages\/articles\/aerospace-config-qwertz\/5b46780f2a-1764922910\/kb_swiss.svg-600x.webp","content_html":"<p>In <a href=\"https:\/\/youtu.be\/Ls-6VSMlkGk?t=2810\">a previous episode of the Comfort Zone podcast<\/a>, Nilean proposed a challenge: use <a href=\"https:\/\/github.com\/nikitabobko\/AeroSpace\">AeroSpace<\/a> for a week. This application automatically reorganizes your application windows. Unlike classic window managers, you don\u2019t decide where to place your windows with keyboard shortcuts. The program automatically resizes them as soon as they appear.<\/p>\n<p>So, I tried to take on this challenge by installing the application, and I fell in love with it instantly.<\/p>\n<p>The only small snag in all this is that I\u2019m in Switzerland and therefore use <a href=\"https:\/\/en.wikipedia.org\/wiki\/QWERTZ\">a Swiss French keyboard, aka QWERTZ<\/a>.<\/p>\n<figure><img alt=\"\" src=\"https:\/\/alienlebarge.ch\/beeb1d7b-46fb-495f-ac8a-ef11a3b36a7f\" width=\"auto\"><\/figure>\n<p>AeroSpace offers shortcuts by combining the <kbd>ALT<\/kbd> key and numbers. On Swiss French and French keyboards, the number keys are also used to type special characters. As a result, many key combinations don\u2019t work because they are already used.. So, I had to rework the AeroSpace configuration a bit to be able to use it.<\/p>\n<p>To use this configuration, it\u2019s essential to use a hyper key. In my case, it\u2019s <a href=\"https:\/\/raycast.com\">Raycast<\/a> that allows me to have a hyper key. Specifically, when I press the <kbd>Caps Lock<\/kbd> key, it simulates pressing <kbd>Control<\/kbd> + <kbd>Option<\/kbd> + <kbd>Command<\/kbd> simultaneously. Usually, hyper keys also include the Shift combination, but in my case, I prefer to have two possibilities, namely <kbd>Caps Lock<\/kbd> and <kbd>Shift<\/kbd> + <kbd>Caps Lock<\/kbd>.<\/p>\n<p>Here is the configuration I use.<\/p>\n<pre><code class=\"language-toml\"># Place a copy of this config to ~\/.aerospace.toml\n# After that, you can edit ~\/.aerospace.toml to your liking\n\n# This configuration is optimized for use with a hyper key\n# (ctrl-alt-cmd modifier combination)\n\n# Config version for compatibility and deprecations\n# Fallback value (if you omit the key): config-version = 1\nconfig-version = 2\n\n# You can use it to add commands that run after AeroSpace startup.\n# Available commands : https:\/\/nikitabobko.github.io\/AeroSpace\/commands\nafter-startup-command = []\n\n# Start AeroSpace at login\nstart-at-login = true\n\n# Normalizations. See: https:\/\/nikitabobko.github.io\/AeroSpace\/guide#normalization\nenable-normalization-flatten-containers = true\nenable-normalization-opposite-orientation-for-nested-containers = true\n\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/guide#layouts\n# The 'accordion-padding' specifies the size of accordion padding\n# You can set 0 to disable the padding feature\naccordion-padding = 30\n\n# Possible values: tiles|accordion\ndefault-root-container-layout = 'tiles'\n\n# Possible values: horizontal|vertical|auto\n# 'auto' means: wide monitor (anything wider than high) gets horizontal orientation,\n#               tall monitor (anything higher than wide) gets vertical orientation\ndefault-root-container-orientation = 'auto'\n\n# Mouse follows focus when focused monitor changes\n# Drop it from your config, if you don't like this behavior\n# See https:\/\/nikitabobko.github.io\/AeroSpace\/guide#on-focus-changed-callbacks\n# See https:\/\/nikitabobko.github.io\/AeroSpace\/commands#move-mouse\n# Fallback value (if you omit the key): on-focused-monitor-changed = []\non-focused-monitor-changed = ['move-mouse monitor-lazy-center']\n\n# You can effectively turn off macOS \"Hide application\" (cmd-h) feature by toggling this flag\n# Useful if you don't use this macOS feature, but accidentally hit cmd-h or cmd-alt-h key\n# Also see: https:\/\/nikitabobko.github.io\/AeroSpace\/goodies#disable-hide-app\nautomatically-unhide-macos-hidden-apps = false\n\n# List of wspaces that should stay alive even when they contain no windows,\n# even when they are invisible.\n# This config version is only available since 'config-version = 2'\n# Fallback value (if you omit the key): persistent-workspaces = []\npersistent-workspaces = [\"1\", \"2\", \"3\", \"4\", \"5\", \"6\", \"7\", \"8\", \"9\"]\n\n# A callback that runs every time binding mode changes\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/guide#binding-modes\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/commands#mode\non-mode-changed = []\n\n# Possible values: (qwerty|dvorak|colemak)\n# See https:\/\/nikitabobko.github.io\/AeroSpace\/guide#key-mapping\n[key-mapping]\npreset = 'qwerty'\n\n[key-mapping.key-notation-to-key-code]\n# Cr\u00e9er des alias pour que les notations correspondent aux \u00e9tiquettes Swiss-French\n# Syntaxe: alias = 'notation-standard' (la notation standard r\u00e9f\u00e8re \u00e0 la position US)\n\n# Inverser Y et Z pour correspondre aux \u00e9tiquettes physiques\ny = 'z' # La touche \u00e9tiquet\u00e9e Y (position US de Z)\nz = 'y' # La touche \u00e9tiquet\u00e9e Z (position US de Y)\n\n# Gaps between windows (inner-*) and between monitor edges (outer-*).\n# Possible values:\n# - Constant:     gaps.outer.top = 8\n# - Per monitor:  gaps.outer.top = [{ monitor.main = 16 }, { monitor.\"some-pattern\" = 32 }, 24]\n#                 In this example, 24 is a default value when there is no match.\n#                 Monitor pattern is the same as for 'workspace-to-monitor-force-assignment'.\n#                 See:\n#                 https:\/\/nikitabobko.github.io\/AeroSpace\/guide#assign-workspaces-to-monitors\n\n[gaps]\ninner.horizontal = 10\ninner.vertical = 10\nouter.left = 10\nouter.bottom = 10\nouter.top = 10\nouter.right = 10\n\n# 'main' binding mode declaration\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/guide#binding-modes\n# 'main' binding mode must be always presented\n# Fallback value (if you omit the key): mode.main.binding = {}\n[mode.main.binding]\n\n# All possible keys:\n# - Letters.        a, b, c, ..., z\n# - Numbers.        0, 1, 2, ..., 9\n# - Keypad numbers. keypad0, keypad1, keypad2, ..., keypad9\n# - F-keys.         f1, f2, ..., f20\n# - Special keys.   minus, equal, period, comma, slash, backslash, quote, semicolon,\n#                   backtick, leftSquareBracket, rightSquareBracket, space, enter, esc,\n#                   backspace, tab, pageUp, pageDown, home, end, forwardDelete,\n#                   sectionSign (ISO keyboards only, european keyboards only)\n# - Keypad special. keypadClear, keypadDecimalMark, keypadDivide, keypadEnter, keypadEqual,\n#                   keypadMinus, keypadMultiply, keypadPlus\n# - Arrows.         left, down, up, right\n\n# All possible modifiers: cmd, alt, ctrl, shift\n\n# All possible commands: https:\/\/nikitabobko.github.io\/AeroSpace\/commands\n\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/commands#exec-and-forget\n# You can uncomment the following lines to open up terminal with alt + enter shortcut\n# (like in i3)\n# alt-enter = '''exec-and-forget osascript -e '\n# tell application \"Terminal\"\n#     do script\n#     activate\n# end\n# '''\n\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/commands#layout\nalt-shift-comma = 'layout tiles horizontal vertical'\nalt-shift-period = 'layout accordion horizontal vertical'\n\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/commands#focus\nalt-h = 'focus left'\nalt-j = 'focus down'\nalt-k = 'focus up'\nalt-l = 'focus right'\n\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/commands#move\nalt-shift-h = 'move left'\nalt-shift-j = 'move down'\nalt-shift-k = 'move up'\nalt-shift-l = 'move right'\n\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/commands#resize\nctrl-alt-cmd-k = 'resize smart -50'\nctrl-alt-cmd-j = 'resize smart +50'\n\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/commands#workspace\nctrl-alt-cmd-1 = 'workspace 1'\nctrl-alt-cmd-2 = 'workspace 2'\nctrl-alt-cmd-3 = 'workspace 3'\nctrl-alt-cmd-4 = 'workspace 4'\nctrl-alt-cmd-5 = 'workspace 5'\nctrl-alt-cmd-6 = 'workspace 6'\nctrl-alt-cmd-7 = 'workspace 7'\nctrl-alt-cmd-8 = 'workspace 8'\nctrl-alt-cmd-9 = 'workspace 9'\n\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/commands#move-node-to-workspace\nctrl-alt-cmd-shift-1 = 'move-node-to-workspace 1'\nctrl-alt-cmd-shift-2 = 'move-node-to-workspace 2'\nctrl-alt-cmd-shift-3 = 'move-node-to-workspace 3'\nctrl-alt-cmd-shift-4 = 'move-node-to-workspace 4'\nctrl-alt-cmd-shift-5 = 'move-node-to-workspace 5'\nctrl-alt-cmd-shift-6 = 'move-node-to-workspace 6'\nctrl-alt-cmd-shift-7 = 'move-node-to-workspace 7'\nctrl-alt-cmd-shift-8 = 'move-node-to-workspace 8'\nctrl-alt-cmd-shift-9 = 'move-node-to-workspace 9'\n\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/commands#fullscreen\nctrl-alt-cmd-space = 'fullscreen'\n\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/commands#workspace-back-and-forth\nctrl-alt-cmd-tab = 'workspace-back-and-forth'\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/commands#move-workspace-to-monitor\nctrl-alt-cmd-shift-tab = 'move-workspace-to-monitor --wrap-around next'\n\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/commands#mode\nctrl-alt-cmd-s = 'mode service'\n\n# 'service' binding mode declaration.\n# See: https:\/\/nikitabobko.github.io\/AeroSpace\/guide#binding-modes\n[mode.service.binding]\nesc = ['reload-config', 'mode main']\nr = ['flatten-workspace-tree', 'mode main'] # reset layout\nf = [\n  'layout floating tiling',\n  'mode main',\n] # Toggle between floating and tiling layout\nbackspace = ['close-all-windows-but-current', 'mode main']\n\n# sticky is not yet supported https:\/\/github.com\/nikitabobko\/AeroSpace\/issues\/2\n#s = ['layout sticky tiling', 'mode main']\n\nalt-shift-h = ['join-with left', 'mode main']\nalt-shift-j = ['join-with down', 'mode main']\nalt-shift-k = ['join-with up', 'mode main']\nalt-shift-l = ['join-with right', 'mode main']<\/code><\/pre>\n<p>I hope this article has been able to help people who want to use AeroSpace and don\u2019t have a compatible keyboard.<\/p>\n<p>This configuration may change over time. You can find the latest updated version <a href=\"https:\/\/github.com\/alienlebarge\/dotfiles\/blob\/main\/aerospace\/.config\/aerospace\/aerospace.toml\">on GitHub<\/a>.<\/p><img src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/aerospace-config-qwertz\/5b46780f2a-1764922910\/kb_swiss.svg-600x.webp\" alt=\"Swiss keyboard layout\" style=\"max-width: 100%; height: auto; margin: 1rem 0;\" \/>","date_published":"2025-12-04T22:05:00+01:00","summary":"","image":"https:\/\/alienlebarge.ch\/media\/pages\/articles\/aerospace-config-qwertz\/5b46780f2a-1764922910\/kb_swiss.svg-600x.webp"},{"id":"https:\/\/alienlebarge.ch\/@\/page\/3a855a38-c76b-4814-bf1f-d7d6736837e4","url":"https:\/\/alienlebarge.ch\/articles\/back-into-photography","title":"Getting Back into Photography with a Polaroid 660","content_text":"This isn't about the latest piece of tech or some camera fresh off the assembly line. Nope, it's just a 1981 Polaroid Sun 660 that I hunted down for my birthday.\n\n## Why I gave up on photography\nI'd dropped photography a few years back, tired of everything that came with it: lugging gear around, endless technical fiddling, post-production, sorting, and filing thousands of images... The whole digital routine had completely killed the joy of the moment for me.\nThen I saw the ad for the new (link: https:\/\/www.polaroid.com\/en_ch\/cameras\/flip-camera text: Polaroid Flip), and that instant gratification thing immediately caught my eye. The idea of just pressing a button and having a photo develop right before your eyes... sure, it takes a few minutes, but it's still something analog, something tangible.\n\n## The purchase: 20 <abbr title=\"Swiss francs\">CHF<\/abbr> to get the magic back\nBefore splurging on the new model (the Flip), I thought to myself: why not try out an old one first? They're easy to find on resale sites. And that's how I scored this Polaroid Sun 660 for about twenty <abbr title=\"Swiss francs\">CHF<\/abbr>.\n(image: img_8557.jpeg width: 400 srcset: default)\n\n## The experience: Lomography all over again\nUsing this camera threw me back twenty years, to when I was obsessed with (link: https:\/\/www.lomography.com text: lomography) and those quirky cameras that produced imperfect but oh-so-charismatic results. That's exactly what I found again with this Polaroid: photos that are sometimes dark (often very dark, actually), never technically perfect, but with an authenticity that gives them a soul.\nEmbracing that imperfection is what makes the camera so charming. Every shot is unique, with flaws that become its best features.\n(image: img_8390.jpeg srcset: default)\n(image: img_8303.jpeg srcset: default)\n\n## Making people smile\nA bonus is that this camera makes people smile. Everyone laughs and everyone absolutely wants to have their picture taken with it, which is quite an advantage.\n(image: img_8546.jpeg srcset: default)\n(image: img_8240.jpeg srcset: default)\n\n## The \"flaw\" that becomes a strength: The price\nLet's be real: at almost **2 <abbr title=\"Swiss francs\">CHF<\/abbr> per shot**, every photo has a price tag. But is that really a flaw? This financial constraint forces you to think, to take your time framing the shot, to ask yourself if the moment is truly worth capturing. Gone are the days of compulsively shooting 20 photos of the same thing. Here, every click of the shutter counts. \nIt forces you to think before the shot and not after..\n\n## A lesson for my kids\nWhat I love most is showing this camera to my kids, who are used to the instant gratification of digital. With the Polaroid, you have to **wait 15 to 20 minutes** for the photo to develop properly. If you want to share it, you have to scan it first. But most importantly, you have something **real in your hands**, something you can touch and feel without needing a screen.\nThis different approach to photography is opening their eyes to a less connected but more tangible world, and from talking with them, I can tell it fascinates them.\n\n## Verdict\nThe Polaroid Sun 660 has made me fall back in love with photography by bringing back its contemplative and precious side. It's a camera that slows you down in a good way, makes you savor every moment, and produces memories that are as imperfect as they are unforgettable.\n\nImages:\nhttps:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/03168e3fdf-1755586810\/img_8240-600x.webp\nhttps:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/57247b11bc-1755586770\/img_8303-600x.webp\nhttps:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/2fbdb7cf9e-1755586738\/img_8390-600x.webp\nhttps:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/cdbad4fc3f-1755586700\/img_8546-600x.webp\nhttps:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/e35313650f-1755586650\/img_8557-600x.webp","content_html":"<p>This isn\u2019t about the latest piece of tech or some camera fresh off the assembly line. Nope, it\u2019s just a 1981 Polaroid Sun 660 that I hunted down for my birthday.<\/p>\n<h2>Why I gave up on photography<\/h2>\n<p>I\u2019d dropped photography a few years back, tired of everything that came with it: lugging gear around, endless technical fiddling, post-production, sorting, and filing thousands of images\u2026 The whole digital routine had completely killed the joy of the moment for me.<br \/>\nThen I saw the ad for the new <a href=\"https:\/\/www.polaroid.com\/en_ch\/cameras\/flip-camera\">Polaroid Flip<\/a>, and that instant gratification thing immediately caught my eye. The idea of just pressing a button and having a photo develop right before your eyes\u2026 sure, it takes a few minutes, but it\u2019s still something analog, something tangible.<\/p>\n<h2>The purchase: 20\u00a0<abbr title=\"Swiss francs\">CHF<\/abbr> to get the magic back<\/h2>\n<p>Before splurging on the new model (the Flip), I thought to myself: why not try out an old one first? They\u2019re easy to find on resale sites. And that\u2019s how I scored this Polaroid Sun 660 for about twenty <abbr title=\"Swiss francs\">CHF<\/abbr>.<\/p>\n<figure><img alt=\"Self-portrait in a bright yellow t-shirt holding a vintage Polaroid Sun 660 AutoFocus instant camera up to my face. I have a beard, sunglasses resting on top of my head, and I stand in front of lush green evergreen shrubs under a clear blue sky. The image captures a playful meta moment of documenting the very camera used to take the vintage Polaroid photographs, shot in bright natural outdoor lighting.\" src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/e35313650f-1755586650\/img_8557.jpeg\" srcset=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/e35313650f-1755586650\/img_8557-400x.webp 400w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/e35313650f-1755586650\/img_8557-800x.webp 800w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/e35313650f-1755586650\/img_8557-1200x.webp 1200w\" width=\"400\"><\/figure>\n<h2>The experience: Lomography all over again<\/h2>\n<p>Using this camera threw me back twenty years, to when I was obsessed with <a href=\"https:\/\/www.lomography.com\">lomography<\/a> and those quirky cameras that produced imperfect but oh-so-charismatic results. That\u2019s exactly what I found again with this Polaroid: photos that are sometimes dark (often very dark, actually), never technically perfect, but with an authenticity that gives them a soul.<br \/>\nEmbracing that imperfection is what makes the camera so charming. Every shot is unique, with flaws that become its best features.<\/p>\n<figure><img alt=\"Vintage Polaroid landscape photograph showing a serene mountain lake surrounded by dramatic peaks and rocky outcrops. Cloudy sky reflects in the still water, with weathered rocks in the foreground. The image has the characteristic faded color tones and white border typical of instant film photography.\" src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/2fbdb7cf9e-1755586738\/img_8390.jpeg\" srcset=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/2fbdb7cf9e-1755586738\/img_8390-400x.webp 400w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/2fbdb7cf9e-1755586738\/img_8390-800x.webp 800w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/2fbdb7cf9e-1755586738\/img_8390-1200x.webp 1200w\" width=\"1579\"><\/figure>\n<figure><img alt=\"Heavily saturated and overexposed Polaroid photograph dominated by warm red and orange tones. The image appears to show a mountainous landscape or rock formation, but is heavily affected by light leaks and color shifts, creating an abstract, dreamlike quality typical of aged or heat-damaged instant film.\" src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/57247b11bc-1755586770\/img_8303.jpeg\" srcset=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/57247b11bc-1755586770\/img_8303-400x.webp 400w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/57247b11bc-1755586770\/img_8303-800x.webp 800w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/57247b11bc-1755586770\/img_8303-1200x.webp 1200w\" width=\"1437\"><\/figure>\n<h2>Making people smile<\/h2>\n<p>A bonus is that this camera makes people smile. Everyone laughs and everyone absolutely wants to have their picture taken with it, which is quite an advantage.<\/p>\n<figure><img alt=\"Polaroid group portrait of six friends posing outdoors on a sunny day. Five women stand in the back row wearing summer clothes and sunglasses, while one person in a light purple shirt and sunglasses sits in front. The photo has a warm, nostalgic quality with natural lighting and the classic instant film aesthetic.\" src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/cdbad4fc3f-1755586700\/img_8546.jpeg\" srcset=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/cdbad4fc3f-1755586700\/img_8546-400x.webp 400w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/cdbad4fc3f-1755586700\/img_8546-800x.webp 800w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/cdbad4fc3f-1755586700\/img_8546-1200x.webp 1200w\" width=\"1537\"><\/figure>\n<figure><img alt=\"Polaroid snapshot of a person doing a handstand in a grassy field. The subject is silhouetted against an overcast sky, wearing dark clothing with legs spread in a V-shape. Wild grass and small flowers are visible in the foreground, captured with the soft, muted colors characteristic of vintage instant photography.\" src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/03168e3fdf-1755586810\/img_8240.jpeg\" srcset=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/03168e3fdf-1755586810\/img_8240-400x.webp 400w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/03168e3fdf-1755586810\/img_8240-800x.webp 800w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/03168e3fdf-1755586810\/img_8240-1200x.webp 1200w\" width=\"1450\"><\/figure>\n<h2>The \u201cflaw\u201d that becomes a strength: The price<\/h2>\n<p>Let\u2019s be real: at almost <strong>2\u00a0<abbr title=\"Swiss francs\">CHF<\/abbr> per shot<\/strong>, every photo has a price tag. But is that really a flaw? This financial constraint forces you to think, to take your time framing the shot, to ask yourself if the moment is truly worth capturing. Gone are the days of compulsively shooting 20 photos of the same thing. Here, every click of the shutter counts.<br \/>\nIt forces you to think before the shot and not after..<\/p>\n<h2>A lesson for my kids<\/h2>\n<p>What I love most is showing this camera to my kids, who are used to the instant gratification of digital. With the Polaroid, you have to <strong>wait 15 to 20 minutes<\/strong> for the photo to develop properly. If you want to share it, you have to scan it first. But most importantly, you have something <strong>real in your hands<\/strong>, something you can touch and feel without needing a screen.<br \/>\nThis different approach to photography is opening their eyes to a less connected but more tangible world, and from talking with them, I can tell it fascinates them.<\/p>\n<h2>Verdict<\/h2>\n<p>The Polaroid Sun 660 has made me fall back in love with photography by bringing back its contemplative and precious side. It\u2019s a camera that slows you down in a good way, makes you savor every moment, and produces memories that are as imperfect as they are unforgettable.<\/p><img src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/03168e3fdf-1755586810\/img_8240-600x.webp\" alt=\"Polaroid snapshot of a person doing a handstand in a grassy field. The subject is silhouetted against an overcast sky, wearing dark clothing with legs spread in a V-shape. Wild grass and small flowers are visible in the foreground, captured with the soft, muted colors characteristic of vintage instant photography.\" style=\"max-width: 100%; height: auto; margin: 1rem 0;\" \/><img src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/57247b11bc-1755586770\/img_8303-600x.webp\" alt=\"Heavily saturated and overexposed Polaroid photograph dominated by warm red and orange tones. The image appears to show a mountainous landscape or rock formation, but is heavily affected by light leaks and color shifts, creating an abstract, dreamlike quality typical of aged or heat-damaged instant film.\" style=\"max-width: 100%; height: auto; margin: 1rem 0;\" \/><img src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/2fbdb7cf9e-1755586738\/img_8390-600x.webp\" alt=\"Vintage Polaroid landscape photograph showing a serene mountain lake surrounded by dramatic peaks and rocky outcrops. Cloudy sky reflects in the still water, with weathered rocks in the foreground. The image has the characteristic faded color tones and white border typical of instant film photography.\" style=\"max-width: 100%; height: auto; margin: 1rem 0;\" \/><img src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/cdbad4fc3f-1755586700\/img_8546-600x.webp\" alt=\"Polaroid group portrait of six friends posing outdoors on a sunny day. Five women stand in the back row wearing summer clothes and sunglasses, while one person in a light purple shirt and sunglasses sits in front. The photo has a warm, nostalgic quality with natural lighting and the classic instant film aesthetic.\" style=\"max-width: 100%; height: auto; margin: 1rem 0;\" \/><img src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/e35313650f-1755586650\/img_8557-600x.webp\" alt=\"Self-portrait in a bright yellow t-shirt holding a vintage Polaroid Sun 660 AutoFocus instant camera up to my face. I have a beard, sunglasses resting on top of my head, and I stand in front of lush green evergreen shrubs under a clear blue sky. The image captures a playful meta moment of documenting the very camera used to take the vintage Polaroid photographs, shot in bright natural outdoor lighting.\" style=\"max-width: 100%; height: auto; margin: 1rem 0;\" \/>","date_published":"2025-08-19T21:15:00+02:00","summary":"","image":"https:\/\/alienlebarge.ch\/media\/pages\/articles\/back-into-photography\/03168e3fdf-1755586810\/img_8240-600x.webp"},{"id":"https:\/\/alienlebarge.ch\/@\/page\/f60c1f51-434c-439b-a47c-ba8b3dbbb15d","url":"https:\/\/alienlebarge.ch\/articles\/dj-mix-2025-08-13","title":"Dj mix - 2025-08-13","content_text":"An impromptu DJ mix featuring a bunch of tracks from minimal to electro.\n\nI hadn't really prepped for this mix, but I remembered to hit record this time to share these few tunes.\n\n(video: https:\/\/vimeo.com\/1109880618)\n\n(link: https:\/\/music.alienlebarge.ch\/share\/1KFiUgLRKu text: You can listen to the audio version here).","content_html":"<p>An impromptu DJ mix featuring a bunch of tracks from minimal to electro.<\/p>\n<p>I hadn\u2019t really prepped for this mix, but I remembered to hit record this time to share these few tunes.<\/p>\n<figure class=\"o-frame\"><iframe allow=\"fullscreen\" allowfullscreen src=\"https:\/\/player.vimeo.com\/video\/1109880618\"><\/iframe><\/figure>\n<p><a href=\"https:\/\/music.alienlebarge.ch\/share\/1KFiUgLRKu\">You can listen to the audio version here<\/a>.<\/p>","date_published":"2025-08-13T23:45:00+02:00","summary":"","image":null},{"id":"https:\/\/alienlebarge.ch\/@\/page\/tvngbt7hgljbjim5","url":"https:\/\/alienlebarge.ch\/articles\/dj-mix-2025-05-31","title":"Dj mix - 2025-05-31","content_text":"This mix was put together spontaneously. I just dug through my vinyl collection without a clear idea of what to play, going from label to label, rummaging here and there. That's how I ended up with this. \n\n(link: https:\/\/music.alienlebarge.ch\/share\/J8h7o2JLp6 text: You can listen to it here)\u2014hope you enjoy.\n\n## Track list\n\n- Lenka Clayton - A - My [Accidental 14 - 2004]\n- The Matthew Herbert Big Band - Caf\u00e9 de Flore [Accidental 06 - 2003]\n- Doctor Rockit - A Camera and Rocks [Accidental 08 - 2004]\n- Herbert - You Saw It All (DJ Koze Mix) [Accidental 61 2012]\n- Herbet - Her Face [Accidental 82 2015]\n- Beckett & Taylor - Let\u2019s Smash Up Our Love [Soundslike 19 - 2005]\n- Herbert - Fantasy (Floating Points Remix) [Accidental 194 -2023]\n- Luciano and Matthew Johnson - Alpine Rocket [Perlon 32 - 2003]\n- Matt John - The Rising Scope [Perlon 49 - 2005]\n- Pantytec - Moriomelo [Perlon 53 - 2006]\n- Horror Inc. - I Plead Guilty [Perlon 42 - 2004]\n- Murat Tepeli feat Prosumer - Work it [Playhouse 110 - 2005]\n- Martinez - Solar Beams [Players Paradise 02 -2005]\n- Coburn vs. Dumb Blonde - Sugar Lips (Beatsport Remix) [H\u00f6rspielmusik 47 - 2005]\n- The Field - Thought vs Action [Kompakt 116 - 2005]\n- Rework - Psych Doll [Playhouse 118 - 2005]\n- Art Of Kissing \u2013 Kiss Mountain (Rmx By 100 & Feyerabendt) [BPitch Control 06 - 1999]\n\nI wanted to include the release dates for the tracks in the tracklist. Well, that hurts.","content_html":"<p>This mix was put together spontaneously. I just dug through my vinyl collection without a clear idea of what to play, going from label to label, rummaging here and there. That\u2019s how I ended up with this. <\/p>\n<p><a href=\"https:\/\/music.alienlebarge.ch\/share\/J8h7o2JLp6\">You can listen to it here<\/a>\u2014hope you enjoy.<\/p>\n<h2>Track list<\/h2>\n<ul>\n<li>Lenka Clayton - A - My [Accidental 14 - 2004]<\/li>\n<li>The Matthew Herbert Big Band - Caf\u00e9 de Flore [Accidental 06 - 2003]<\/li>\n<li>Doctor Rockit - A Camera and Rocks [Accidental 08 - 2004]<\/li>\n<li>Herbert - You Saw It All (DJ Koze Mix) [Accidental 61\u00a02012]<\/li>\n<li>Herbet - Her Face [Accidental 82\u00a02015]<\/li>\n<li>Beckett &amp; Taylor - Let\u2019s Smash Up Our Love [Soundslike 19 - 2005]<\/li>\n<li>Herbert - Fantasy (Floating Points Remix) [Accidental 194 -2023]<\/li>\n<li>Luciano and Matthew Johnson - Alpine Rocket [Perlon 32 - 2003]<\/li>\n<li>Matt John - The Rising Scope [Perlon 49 - 2005]<\/li>\n<li>Pantytec - Moriomelo [Perlon 53 - 2006]<\/li>\n<li>Horror Inc. - I Plead Guilty [Perlon 42 - 2004]<\/li>\n<li>Murat Tepeli feat Prosumer - Work it [Playhouse 110 - 2005]<\/li>\n<li>Martinez - Solar Beams [Players Paradise 02 -2005]<\/li>\n<li>Coburn vs. Dumb Blonde - Sugar Lips (Beatsport Remix) [H\u00f6rspielmusik 47 - 2005]<\/li>\n<li>The Field - Thought vs Action [Kompakt 116 - 2005]<\/li>\n<li>Rework - Psych Doll [Playhouse 118 - 2005]<\/li>\n<li>Art Of Kissing \u2013 Kiss Mountain (Rmx By 100 &amp; Feyerabendt) [BPitch Control 06 - 1999]<\/li>\n<\/ul>\n<p>I wanted to include the release dates for the tracks in the tracklist. Well, that hurts.<\/p>","date_published":"2025-05-31T13:35:00+02:00","summary":"","image":null},{"id":"https:\/\/alienlebarge.ch\/@\/page\/exsegwziguuek95v","url":"https:\/\/alienlebarge.ch\/articles\/quit-instagram","title":"Why I'm Breaking Up with Instagram","content_text":"Today, here's what I posted on Instagram:\n\n> I've decided to remove my posts from Instagram as I no longer feel aligned with the values of this platform. You can still access my photos at (link: page:\/\/bz36n4JgNuvLnZfh text: alienlebarge.ch\/photos). All my active social profiles are listed on my website as well.\n> More info on (link: page:\/\/exsegwziguuek95v text: alienlebarge.ch\/quit-instagram)\n\n(image: file:\/\/lajycsyfpfvg6tor srcset: default)\n\nYes, I've decided to leave Instagram for now. Maybe it's just for a while (which I hope isn't the case), but we'll see.\nThe only thing I find unfortunate is that Instagram is the main communication channel for many companies I'm interested in (I'm looking at you, Eurorack module manufacturers). That's why, for now, I'll keep an account just for browsing. Maybe I'll use services like (link: https:\/\/rss-bridge.github.io\/rss-bridge\/ text: RSS-Bridge). I haven't looked into this yet.\n\nSome of the reasons I'm leaving Instagram are as follows:\n- **Waste of time**: Instagram has never saved me time. It's one of those infinite scroll apps that sucks you in the moment you open it. Try, just once, to identify posts that have actually added value to your life.\n- **No time saved**: I once tried to identify posts that were useful to me, or had any added value or interest for me. Not all of it is fluff, but it's appalling how much useless stuff you find there (or rather, that finds you).\n- **Meta's new \"Hateful Conduct\" policy update**: which now allows posts calling LGBTQ people mentally ill, is a plot twist I didn't see coming\u2014and it's a dealbreaker.\n- **AI Content**: Lately, more and more AI-generated posts were being suggested to me, and I consider many of them to be visual pollution, utterly uninteresting, with very little thought behind the message conveyed.\n- **OnlyFans likes**: I was fed up with constantly getting likes from scantily clad individuals who, in addition to their uncovered body parts, were promoting their OnlyFans accounts.\n- **Data privacy and manipulation**: Instagram collects a vast amount of user data, including personal information, interactions, preferences, and even location data. The goal was to create user profiles for targeted advertising. I see this as an invasion of privacy and information manipulation.\n\n(image: file:\/\/pd5wzoar8rmt4kxl srcset: default)\n\nNow, if you want to keep seeing my photos, you'll need to come (link: page:\/\/bz36n4JgNuvLnZfh text: here).\n\nImages:\nhttps:\/\/alienlebarge.ch\/media\/pages\/articles\/quit-instagram\/5de471fcdd-1753631162\/img_7185-600x.webp\nhttps:\/\/alienlebarge.ch\/media\/pages\/articles\/quit-instagram\/d2edb48aaa-1753631086\/img_7194-600x.webp","content_html":"<p>Today, here\u2019s what I posted on Instagram:<\/p>\n<blockquote>\n<p>I\u2019ve decided to remove my posts from Instagram as I no longer feel aligned with the values of this platform. You can still access my photos at <a href=\"https:\/\/alienlebarge.ch\/photos\">alienlebarge.ch\/photos<\/a>. All my active social profiles are listed on my website as well.<br \/>\nMore info on <a href=\"https:\/\/alienlebarge.ch\/articles\/quit-instagram\">alienlebarge.ch\/quit-instagram<\/a><\/p>\n<\/blockquote>\n<figure><img alt=\"A screenshot of my iPhone with Instagram open on my profile. All the photos have been deleted except for my message saying that I\u2019m leaving the platform.\" src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/quit-instagram\/d2edb48aaa-1753631086\/img_7194.png\" srcset=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/quit-instagram\/d2edb48aaa-1753631086\/img_7194-400x.webp 400w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/quit-instagram\/d2edb48aaa-1753631086\/img_7194-800x.webp 800w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/quit-instagram\/d2edb48aaa-1753631086\/img_7194-1200x.webp 1200w\" width=\"3475\"><\/figure>\n<p>Yes, I\u2019ve decided to leave Instagram for now. Maybe it\u2019s just for a while (which I hope isn\u2019t the case), but we\u2019ll see.<br \/>\nThe only thing I find unfortunate is that Instagram is the main communication channel for many companies I\u2019m interested in (I\u2019m looking at you, Eurorack module manufacturers). That\u2019s why, for now, I\u2019ll keep an account just for browsing. Maybe I\u2019ll use services like <a href=\"https:\/\/rss-bridge.github.io\/rss-bridge\/\">RSS-Bridge<\/a>. I haven\u2019t looked into this yet.<\/p>\n<p>Some of the reasons I\u2019m leaving Instagram are as follows:<\/p>\n<ul>\n<li><strong>Waste of time<\/strong>: Instagram has never saved me time. It\u2019s one of those infinite scroll apps that sucks you in the moment you open it. Try, just once, to identify posts that have actually added value to your life.<\/li>\n<li><strong>No time saved<\/strong>: I once tried to identify posts that were useful to me, or had any added value or interest for me. Not all of it is fluff, but it\u2019s appalling how much useless stuff you find there (or rather, that finds you).<\/li>\n<li><strong>Meta\u2019s new \u201cHateful Conduct\u201d policy update<\/strong>: which now allows posts calling LGBTQ people mentally ill, is a plot twist I didn\u2019t see coming\u2014and it\u2019s a dealbreaker.<\/li>\n<li><strong>AI Content<\/strong>: Lately, more and more AI-generated posts were being suggested to me, and I consider many of them to be visual pollution, utterly uninteresting, with very little thought behind the message conveyed.<\/li>\n<li><strong>OnlyFans likes<\/strong>: I was fed up with constantly getting likes from scantily clad individuals who, in addition to their uncovered body parts, were promoting their OnlyFans accounts.<\/li>\n<li><strong>Data privacy and manipulation<\/strong>: Instagram collects a vast amount of user data, including personal information, interactions, preferences, and even location data. The goal was to create user profiles for targeted advertising. I see this as an invasion of privacy and information manipulation.<\/li>\n<\/ul>\n<figure><img alt=\"A screenshot from my iPhone with the Instagram app about to be deleted\" src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/quit-instagram\/5de471fcdd-1753631162\/img_7185.png\" srcset=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/quit-instagram\/5de471fcdd-1753631162\/img_7185-400x.webp 400w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/quit-instagram\/5de471fcdd-1753631162\/img_7185-800x.webp 800w, https:\/\/alienlebarge.ch\/media\/pages\/articles\/quit-instagram\/5de471fcdd-1753631162\/img_7185-1200x.webp 1200w\" width=\"3475\"><\/figure>\n<p>Now, if you want to keep seeing my photos, you\u2019ll need to come <a href=\"https:\/\/alienlebarge.ch\/photos\">here<\/a>.<\/p><img src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/quit-instagram\/5de471fcdd-1753631162\/img_7185-600x.webp\" alt=\"A screenshot from my iPhone with the Instagram app about to be deleted\" style=\"max-width: 100%; height: auto; margin: 1rem 0;\" \/><img src=\"https:\/\/alienlebarge.ch\/media\/pages\/articles\/quit-instagram\/d2edb48aaa-1753631086\/img_7194-600x.webp\" alt=\"A screenshot of my iPhone with Instagram open on my profile. All the photos have been deleted except for my message saying that I\u2019m leaving the platform.\" style=\"max-width: 100%; height: auto; margin: 1rem 0;\" \/>","date_published":"2025-05-07T19:45:00+02:00","summary":"","image":"https:\/\/alienlebarge.ch\/media\/pages\/articles\/quit-instagram\/5de471fcdd-1753631162\/img_7185-600x.webp"},{"id":"https:\/\/alienlebarge.ch\/@\/page\/ujxnn5nwauu19tp4","url":"https:\/\/alienlebarge.ch\/articles\/handle-plugin","title":"Handle conversion plugin for Kirby","content_text":"I have created (link: https:\/\/github.com\/alienlebarge\/handle text: my first Kirby plugin).\n\nIt transforms handles like `@username@server.xyz` into proper links, such as `<a href=\"https:\/\/server.xyz\/@username\" title=\"@username's profile on server.xyz.\" class=\"...\">@username<\/a>`.\n\nI developed this plugin for personal use, but it may also be useful to others.\n\n## Supported sites:\n- **Fediverse** (Mastodon, etc.) : `@alienlebarge@social.lol` changes to @alienlebarge@social.lol\n- **Bluesky** (bsky.app): `@alienlebarge.bsky.social@bsky.app` changes to @alienlebarge.bsky.social@bsky.app\n- **Flickr**: `@alienlebarge@flickr.com` changes to @alienlebarge@flickr.com\n- **GitHub**: `@alienlebarge@github.com` changes to @alienlebarge@github.com\n- **Instagram**: `@alienlebarge@instagram.com` changes to @alienlebarge@instagram.com\n- **LinkedIn**: `@alienlebarge@linkedin.com` changes to @alienlebarge@linkedin.com\n- **Micro.blog**: `@alienlebarge@micro.blog` changes to @alienlebarge@micro.blog\n- **Reddit**: `@alienlebarge@reddit.com` changes to @alienlebarge@reddit.com\n- **YouTube**: `@alienlebarge@youtube.com` changes to @alienlebarge@youtube.com\n- **Vimeo**: `@alienlebarge@vimeo.com` changes to @alienlebarge@vimeo.com\n\nThis is my first plugin, so I'm open to any advice.","content_html":"<p>I have created <a href=\"https:\/\/github.com\/alienlebarge\/handle\">my first Kirby plugin<\/a>.<\/p>\n<p>It transforms handles like <code>@username@server.xyz<\/code> into proper links, such as <code>&lt;a href=\"https:\/\/server.xyz\/@username\" title=\"@username's profile on server.xyz.\" class=\"...\"&gt;@username&lt;\/a&gt;<\/code>.<\/p>\n<p>I developed this plugin for personal use, but it may also be useful to others.<\/p>\n<h2>Supported sites:<\/h2>\n<ul>\n<li><strong>Fediverse<\/strong> (Mastodon, etc.)\u00a0: <code>@alienlebarge@social.lol<\/code> changes to <a href=\"https:\/\/social.lol\/@alienlebarge\" title=\"@alienlebarge's profile on social.lol\" class=\"handle-link fediverse-link\">@alienlebarge<\/a><\/li>\n<li><strong>Bluesky<\/strong> (bsky.app): <code>@alienlebarge.bsky.social@bsky.app<\/code> changes to <a href=\"https:\/\/bsky.app\/profile\/alienlebarge.bsky.social\" title=\"@alienlebarge.bsky.social's profile on bsky.app\" class=\"handle-link bsky-link\">@alienlebarge.bsky.social<\/a><\/li>\n<li><strong>Flickr<\/strong>: <code>@alienlebarge@flickr.com<\/code> changes to <a href=\"https:\/\/flickr.com\/photos\/alienlebarge\" title=\"@alienlebarge's profile on flickr.com\" class=\"handle-link flickr-link\">@alienlebarge<\/a><\/li>\n<li><strong>GitHub<\/strong>: <code>@alienlebarge@github.com<\/code> changes to <a href=\"https:\/\/github.com\/alienlebarge\" title=\"@alienlebarge's profile on github.com\" class=\"handle-link github-link\">@alienlebarge<\/a><\/li>\n<li><strong>Instagram<\/strong>: <code>@alienlebarge@instagram.com<\/code> changes to <a href=\"https:\/\/instagram.com\/alienlebarge\" title=\"@alienlebarge's profile on instagram.com\" class=\"handle-link instagram-link\">@alienlebarge<\/a><\/li>\n<li><strong>LinkedIn<\/strong>: <code>@alienlebarge@linkedin.com<\/code> changes to <a href=\"https:\/\/linkedin.com\/in\/alienlebarge\" title=\"@alienlebarge's profile on linkedin.com\" class=\"handle-link linkedin-link\">@alienlebarge<\/a><\/li>\n<li><strong>Micro.blog<\/strong>: <code>@alienlebarge@micro.blog<\/code> changes to <a href=\"https:\/\/micro.blog\/alienlebarge\" title=\"@alienlebarge's profile on micro.blog\" class=\"handle-link microblog-link\">@alienlebarge<\/a><\/li>\n<li><strong>Reddit<\/strong>: <code>@alienlebarge@reddit.com<\/code> changes to <a href=\"https:\/\/reddit.com\/user\/alienlebarge\" title=\"@alienlebarge's profile on reddit.com\" class=\"handle-link reddit-link\">@alienlebarge<\/a><\/li>\n<li><strong>YouTube<\/strong>: <code>@alienlebarge@youtube.com<\/code> changes to <a href=\"https:\/\/youtube.com\/alienlebarge\" title=\"@alienlebarge's profile on youtube.com\" class=\"handle-link youtube-link\">@alienlebarge<\/a><\/li>\n<li><strong>Vimeo<\/strong>: <code>@alienlebarge@vimeo.com<\/code> changes to <a href=\"https:\/\/vimeo.com\/alienlebarge\" title=\"@alienlebarge's profile on vimeo.com\" class=\"handle-link vimeo-link\">@alienlebarge<\/a><\/li>\n<\/ul>\n<p>This is my first plugin, so I\u2019m open to any advice.<\/p>","date_published":"2025-04-24T08:40:00+02:00","summary":"","image":null},{"id":"https:\/\/alienlebarge.ch\/@\/page\/xscurnlnpupijpvb","url":"https:\/\/alienlebarge.ch\/articles\/hello-kirby","title":"Hello Kirby","content_text":"Kirby had been on my radar for many years.\n\nA few years back, I went to a workshop with (link: https:\/\/bastianallgeier.com text: Bastian rel:external) at (link: https:\/\/beyondtellerrand.com text: Beyond Tellerand rel:external) in D\u00fcsseldorf. I really dug Kirby, but I never really found the time to get into it. Or maybe it's more accurate to say I never *made* the time.\n\nHaving to start paying to build my Eleventy-based site was what finally pushed me to switch. But there were other reasons too:\n- Being able to just edit stuff through an admin panel and hit publish right away.\n- The community is super active.\n- The fact that it's hosted right here in Switzerland, not just randomly somewhere out there.\n- The fact that (link: https:\/\/www.infomaniak.com\/en\/ecology text: Infomaniak has zero-emission data centers).\n\nAfter plugging away at it for a few weeks, the site is finally live. It's definitely not finished, but I figured I'd launch it once the basics felt solid. But you'll probably find things that aren't quite working yet. No worries.\nExpect the site to change a bit over the next few days.\n\nAlright, here we go!","content_html":"<p>Kirby had been on my radar for many years.<\/p>\n<p>A few years back, I went to a workshop with <a href=\"https:\/\/bastianallgeier.com\" rel=\"external\">Bastian<\/a> at <a href=\"https:\/\/beyondtellerrand.com\" rel=\"external\">Beyond Tellerand<\/a> in D\u00fcsseldorf. I really dug Kirby, but I never really found the time to get into it. Or maybe it\u2019s more accurate to say I never <em>made<\/em> the time.<\/p>\n<p>Having to start paying to build my Eleventy-based site was what finally pushed me to switch. But there were other reasons too:<\/p>\n<ul>\n<li>Being able to just edit stuff through an admin panel and hit publish right away.<\/li>\n<li>The community is super active.<\/li>\n<li>The fact that it\u2019s hosted right here in Switzerland, not just randomly somewhere out there.<\/li>\n<li>The fact that <a href=\"https:\/\/www.infomaniak.com\/en\/ecology\">Infomaniak has zero-emission data centers<\/a>.<\/li>\n<\/ul>\n<p>After plugging away at it for a few weeks, the site is finally live. It\u2019s definitely not finished, but I figured I\u2019d launch it once the basics felt solid. But you\u2019ll probably find things that aren\u2019t quite working yet. No worries.<br \/>\nExpect the site to change a bit over the next few days.<\/p>\n<p>Alright, here we go!<\/p>","date_published":"2025-04-17T16:45:00+02:00","summary":"","image":null},{"id":"https:\/\/alienlebarge.ch\/@\/page\/d56xwmovya9jxhuy","url":"https:\/\/alienlebarge.ch\/articles\/smart-menu-bar-management-adapting-icons-based-on-your-screen-setup-with-bartender","title":"Smart Menu Bar Management: Adapting Icons Based on Your Screen Setup with Bartender","content_text":"Today, I listened to the latest episode of Apptories: \"[Return of the Utility Grab Bag](https:\/\/appstories.net\/episodes\/430)\". @viticci@macstories.net was wondering how to show or hide icons in the menu bar depending on which screen was being used. Here's how I do it with Bartender to hide icons when I'm only using the MacBook Pro screen, and to show them all when I'm on my large screen, at home or at work.\r\n\r\n## Disclaimer\r\n\r\nNot being very comfortable with hardware-related bash scripts, I admit that these were generated with the help of artificial intelligence. But it does the job for me. There may still be some errors and adaptations may be necessary.\r\n\r\n## The triggers\r\n\r\nI have two triggers: one that detects if only the MacBook Pro screen is active and another that detects if an additional screen is connected to the computer.\r\n\r\n### Detection script if only the MacBook Pro screen is being used.\r\n\r\n```bash\r\n#!\/bin\/zsh\r\n\r\n# Script to detect if ONLY the built-in MacBook Pro screen is being used\r\n# Returns \"true\" if only the built-in screen is active, \"false\" if an external monitor is connected\r\n\r\n# Get complete information about the screens\r\nDISPLAY_INFO=$(system_profiler SPDisplaysDataType 2>\/dev\/null)\r\n\r\n# Count the total number of active screens\r\nACTIVE_DISPLAYS=$(echo \"$DISPLAY_INFO\" | grep -c \"Resolution:\")\r\n\r\n# Count internal screens\r\nINTERNAL_DISPLAYS=$(echo \"$DISPLAY_INFO\" | grep -c \"Connection Type: Internal\")\r\n\r\n# Check if ONLY the built-in screen is being used\r\nif [[ $ACTIVE_DISPLAYS -eq 1 ]] && [[ $INTERNAL_DISPLAYS -eq 1 ]]; then\r\n    echo \"true\"\r\n    exit 0\r\nelse\r\n    echo \"false\"\r\n    exit 1\r\nfi\r\n```\r\n\r\n### Detection script if an additional screen is connected.\r\n\r\n```bash\r\n#!\/bin\/zsh\r\n\r\n# Script to detect if an external screen is being used\r\n# Returns \"true\" if at least one external screen is being used, \"false\" otherwise\r\n\r\n# Get complete information about the screens\r\nDISPLAY_INFO=$(system_profiler SPDisplaysDataType 2>\/dev\/null)\r\n\r\n# Count the total number of active screens\r\nACTIVE_DISPLAYS=$(echo \"$DISPLAY_INFO\" | grep -c \"Resolution:\")\r\n\r\n# Count internal screens\r\nINTERNAL_DISPLAYS=$(echo \"$DISPLAY_INFO\" | grep -c \"Connection Type: Internal\")\r\n\r\n# Calculate the number of external screens (total - internal)\r\nEXTERNAL_DISPLAYS=$((ACTIVE_DISPLAYS - INTERNAL_DISPLAYS))\r\n\r\n# For debugging (comment these lines for normal use)\r\n# echo \"ACTIVE_DISPLAYS: $ACTIVE_DISPLAYS\"\r\n# echo \"INTERNAL_DISPLAYS: $INTERNAL_DISPLAYS\"\r\n# echo \"EXTERNAL_DISPLAYS: $EXTERNAL_DISPLAYS\"\r\n\r\n# Check if at least one external screen is being used\r\nif [[ $EXTERNAL_DISPLAYS -gt 0 ]]; then\r\n    echo \"true\"\r\n    exit 0\r\nelse\r\n    echo \"false\"\r\n    exit 1\r\nfi\r\n```\r\n\r\n### The presets\r\n\r\nThe two scripts mentioned above activate two presets depending on whether screens are connected or not. There is a preset that I called \"Small screen\" which hides all icons and another preset that I called \"Big screen\" which displays everything by default.","content_html":"<p>Today, I listened to the latest episode of Apptories: \u201c<a href=\"https:\/\/appstories.net\/episodes\/430\">Return of the Utility Grab Bag<\/a>\u201d. <a href=\"https:\/\/macstories.net\/@viticci\" title=\"@viticci's profile on macstories.net\" class=\"handle-link fediverse-link\">@viticci<\/a> was wondering how to show or hide icons in the menu bar depending on which screen was being used. Here\u2019s how I do it with Bartender to hide icons when I\u2019m only using the MacBook Pro screen, and to show them all when I\u2019m on my large screen, at home or at work.<\/p>\n<h2>Disclaimer<\/h2>\n<p>Not being very comfortable with hardware-related bash scripts, I admit that these were generated with the help of artificial intelligence. But it does the job for me. There may still be some errors and adaptations may be necessary.<\/p>\n<h2>The triggers<\/h2>\n<p>I have two triggers: one that detects if only the MacBook Pro screen is active and another that detects if an additional screen is connected to the computer.<\/p>\n<h3>Detection script if only the MacBook Pro screen is being used.<\/h3>\n<pre><code class=\"language-bash\">#!\/bin\/zsh\n\n# Script to detect if ONLY the built-in MacBook Pro screen is being used\n# Returns \"true\" if only the built-in screen is active, \"false\" if an external monitor is connected\n\n# Get complete information about the screens\nDISPLAY_INFO=$(system_profiler SPDisplaysDataType 2&gt;\/dev\/null)\n\n# Count the total number of active screens\nACTIVE_DISPLAYS=$(echo \"$DISPLAY_INFO\" | grep -c \"Resolution:\")\n\n# Count internal screens\nINTERNAL_DISPLAYS=$(echo \"$DISPLAY_INFO\" | grep -c \"Connection Type: Internal\")\n\n# Check if ONLY the built-in screen is being used\nif [[ $ACTIVE_DISPLAYS -eq 1 ]] &amp;&amp; [[ $INTERNAL_DISPLAYS -eq 1 ]]; then\n    echo \"true\"\n    exit 0\nelse\n    echo \"false\"\n    exit 1\nfi<\/code><\/pre>\n<h3>Detection script if an additional screen is connected.<\/h3>\n<pre><code class=\"language-bash\">#!\/bin\/zsh\n\n# Script to detect if an external screen is being used\n# Returns \"true\" if at least one external screen is being used, \"false\" otherwise\n\n# Get complete information about the screens\nDISPLAY_INFO=$(system_profiler SPDisplaysDataType 2&gt;\/dev\/null)\n\n# Count the total number of active screens\nACTIVE_DISPLAYS=$(echo \"$DISPLAY_INFO\" | grep -c \"Resolution:\")\n\n# Count internal screens\nINTERNAL_DISPLAYS=$(echo \"$DISPLAY_INFO\" | grep -c \"Connection Type: Internal\")\n\n# Calculate the number of external screens (total - internal)\nEXTERNAL_DISPLAYS=$((ACTIVE_DISPLAYS - INTERNAL_DISPLAYS))\n\n# For debugging (comment these lines for normal use)\n# echo \"ACTIVE_DISPLAYS: $ACTIVE_DISPLAYS\"\n# echo \"INTERNAL_DISPLAYS: $INTERNAL_DISPLAYS\"\n# echo \"EXTERNAL_DISPLAYS: $EXTERNAL_DISPLAYS\"\n\n# Check if at least one external screen is being used\nif [[ $EXTERNAL_DISPLAYS -gt 0 ]]; then\n    echo \"true\"\n    exit 0\nelse\n    echo \"false\"\n    exit 1\nfi<\/code><\/pre>\n<h3>The presets<\/h3>\n<p>The two scripts mentioned above activate two presets depending on whether screens are connected or not. There is a preset that I called \u201cSmall screen\u201d which hides all icons and another preset that I called \u201cBig screen\u201d which displays everything by default.<\/p>","date_published":"2025-04-08T21:55:00+02:00","summary":"","image":null},{"id":"https:\/\/alienlebarge.ch\/@\/page\/ocbzayd9lk1mabm5","url":"https:\/\/alienlebarge.ch\/articles\/state-of-the-feeds","title":"State of the feeds","content_text":"RSS feeds are my main source of information. \r\n\r\nI always find it interesting to discover feeds from other people. Perhaps you might uncover sources that you are not familiar with, which you can add to your subscriptions.\r\n\r\n## The feeds\r\n\r\nThe list often changes, but as of today, here are the feeds I consume:\r\n\r\n### Apps & Technology\r\n- [Anytype Blog](https:\/\/blog.anytype.io\/)\r\n- [AppAddict](https:\/\/appaddict.app)\r\n- [Basic Apple Guy](https:\/\/basicappleguy.com\/)\r\n- [Birchtree](https:\/\/birchtree.me\/)\r\n- [Feedbin](https:\/\/feedbin.com)\r\n- [Flexibits](https:\/\/flexibits.com\/blog)\r\n- [Kagi HQ](https:\/\/mastodon.social\/@kagihq)\r\n- [MacStories](https:\/\/www.macstories.net)\r\n- [Obsidian Blog](https:\/\/obsidian.md\/)\r\n- [Raycast](https:\/\/www.youtube.com\/channel\/UCPvOHaaP9E6FqSqG1NMV_Hw)\r\n- [Workflowy](https:\/\/blog.workflowy.com)\r\n- [yet another app](https:\/\/apps.icymi.lol)\r\n\r\n### Gaming\r\n- [EthosLab](https:\/\/www.youtube.com\/channel\/UCFKDEp9si4RmHFWJW1vYsMA)\r\n- [Grian](https:\/\/www.youtube.com\/channel\/UCR9Gcq0CMm6YgTzsDxAxjOQ)\r\n- [Mumbo Jumbo](https:\/\/www.youtube.com\/channel\/UChFur_NwVSbUozOcF_F2kMg)\r\n\r\n### Music & Modular Synthesis\r\n- [ANDREW HUANG](https:\/\/www.youtube.com\/channel\/UCdcemy56JtVTrsFIOoqvV8g)\r\n- [Blush Response](https:\/\/www.youtube.com\/channel\/UCCLYMSnnC4C31Ocr2BZta3g)\r\n- [BoBeats](https:\/\/www.youtube.com\/channel\/UCFTK8Oiiny_vt4tzZkM4X0A)\r\n- [DivKid](https:\/\/www.youtube.com\/channel\/UC1zIiKvJIi7aYl2N68pWF8g)\r\n- [HAINBACH](https:\/\/www.youtube.com\/channel\/UCeovElJP0n0i8ADaPsRSd8g)\r\n- [loopop](https:\/\/www.youtube.com\/channel\/UC-RA5BzE_BnZhf5iVdNF1hA)\r\n- [Modbap Modular](https:\/\/www.youtube.com\/channel\/UCy93plXWtUHT85ehlc8xdlA)\r\n- [mylarmelodies](https:\/\/www.youtube.com\/channel\/UCz0l5LJhNQkktxKWcGUtWxg)\r\n- [Red Means Recording](https:\/\/www.youtube.com\/channel\/UChnxLLvzviaR5NeKOevB8iQ)\r\n- [theneedledrop](https:\/\/www.youtube.com\/channel\/UCt7fwAhXDy3oNFTAzF2o8Pw)\r\n- [True Cuckoo](https:\/\/www.youtube.com\/channel\/UCOojfmX4Wq3Ww-XP_IkvviQ)\r\n\r\n### News & Government\r\n- [Actualit\u00e9s de l'\u00c9tat de Vaud](https:\/\/www.vd.ch\/)\r\n- [Communiqu\u00e9s de presse de l'\u00c9tat de Vaud](https:\/\/www.vd.ch\/)\r\n- [Police cantonale vaudoise](https:\/\/www.vd.ch\/djes\/polcant\/communiques-de-presse)\r\n- [Toute l'info - RTS Un \/ RTS Deux](https:\/\/www.rts.ch\/info\/?rts_source=rss)\r\n\r\n### Personal Blogs\r\n- [alienlebarge](https:\/\/alienlebarge.ch)\r\n- [Daring Fireball](https:\/\/daringfireball.net\/)\r\n- [David Heinemeier Hansson](https:\/\/world.hey.com\/dhh)\r\n- [Jason Fried](https:\/\/world.hey.com\/jason)\r\n- [Robb Knight](https:\/\/rknight.me\/)\r\n- [The Dent](https:\/\/thedent.net)\r\n- [The Hiro Report](https:\/\/www.hiro.report)\r\n\r\n### Social & Community\r\n- [@capacities.bsky.social](https:\/\/bsky.app\/profile\/capacities.bsky.social)\r\n- [@jjbbllkk.bsky.social - Aphox Twin](https:\/\/bsky.app\/profile\/jjbbllkk.bsky.social)\r\n- [Ethan Marcotte](https:\/\/follow.ethanmarcotte.com\/@beep)\r\n- [Manuel Matuzovi\u0107](https:\/\/front-end.social\/@matuzo)\r\n\r\n### Sports\r\n- [SwissHabs posts](http:\/\/www.swisshabs.ch)\r\n\r\n### UI\/UX Design\r\n- [Adam Argyle](https:\/\/nerdy.dev)\r\n- [Adam Silver](https:\/\/adamsilver.io)\r\n- [Dense Discovery](https:\/\/www.densediscovery.com)\r\n- [Piccalilli](https:\/\/piccalil.li\/)\r\n\r\n### Web Development\r\n- [11ty Rocks!](https:\/\/11ty.rocks)\r\n- [A List Apart](https:\/\/alistapart.com)\r\n- [Andy Bell](https:\/\/andy-bell.co.uk\/)\r\n- [Chris Coyier](https:\/\/chriscoyier.net)\r\n- [CSS In Real Life](https:\/\/css-irl.info\/)\r\n- [CSS-Tricks](https:\/\/css-tricks.com)\r\n- [daverupert.com](https:\/\/daverupert.com)\r\n- [Eric Bailey](https:\/\/ericwbailey.website)\r\n- [HTMHell](https:\/\/htmhell.dev)\r\n- [Max B\u00f6ck](https:\/\/mxb.dev)\r\n- [Smashing Magazine](https:\/\/www.smashingmagazine.com\/)\r\n- [Zach Leatherman](https:\/\/www.zachleat.com\/)\r\n\r\n[The OPML file is available](https:\/\/gist.github.com\/alienlebarge\/051ef5a1a110aaa6c4dd169577ed9e9b).\r\n\r\nI consume them with Miniflux, an application that I host on a small VPS server.\r\n\r\nEither I read them directly on [Miniflux](https:\/\/miniflux.app), or I use the [Reeder Classic](https:\/\/reederapp.com\/classic\/) application.\r\n\r\n## Social feeds\r\n\r\nTo follow social streams such as Mastodon or Bluesky, I use [Tapestry](https:\/\/usetapestry.com) or [Reeder](https:\/\/reederapp.com). (I have a slight preference for Reeder). Using a timeline view feels more natural to me than a traditional feed reader.","content_html":"<p>RSS feeds are my main source of information. <\/p>\n<p>I always find it interesting to discover feeds from other people. Perhaps you might uncover sources that you are not familiar with, which you can add to your subscriptions.<\/p>\n<h2>The feeds<\/h2>\n<p>The list often changes, but as of today, here are the feeds I consume:<\/p>\n<h3>Apps &amp; Technology<\/h3>\n<ul>\n<li><a href=\"https:\/\/blog.anytype.io\/\">Anytype Blog<\/a><\/li>\n<li><a href=\"https:\/\/appaddict.app\">AppAddict<\/a><\/li>\n<li><a href=\"https:\/\/basicappleguy.com\/\">Basic Apple Guy<\/a><\/li>\n<li><a href=\"https:\/\/birchtree.me\/\">Birchtree<\/a><\/li>\n<li><a href=\"https:\/\/feedbin.com\">Feedbin<\/a><\/li>\n<li><a href=\"https:\/\/flexibits.com\/blog\">Flexibits<\/a><\/li>\n<li><a href=\"https:\/\/mastodon.social\/@kagihq\">Kagi HQ<\/a><\/li>\n<li><a href=\"https:\/\/www.macstories.net\">MacStories<\/a><\/li>\n<li><a href=\"https:\/\/obsidian.md\/\">Obsidian Blog<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/channel\/UCPvOHaaP9E6FqSqG1NMV_Hw\">Raycast<\/a><\/li>\n<li><a href=\"https:\/\/blog.workflowy.com\">Workflowy<\/a><\/li>\n<li><a href=\"https:\/\/apps.icymi.lol\">yet another app<\/a><\/li>\n<\/ul>\n<h3>Gaming<\/h3>\n<ul>\n<li><a href=\"https:\/\/www.youtube.com\/channel\/UCFKDEp9si4RmHFWJW1vYsMA\">EthosLab<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/channel\/UCR9Gcq0CMm6YgTzsDxAxjOQ\">Grian<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/channel\/UChFur_NwVSbUozOcF_F2kMg\">Mumbo Jumbo<\/a><\/li>\n<\/ul>\n<h3>Music &amp; Modular Synthesis<\/h3>\n<ul>\n<li><a href=\"https:\/\/www.youtube.com\/channel\/UCdcemy56JtVTrsFIOoqvV8g\">ANDREW HUANG<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/channel\/UCCLYMSnnC4C31Ocr2BZta3g\">Blush Response<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/channel\/UCFTK8Oiiny_vt4tzZkM4X0A\">BoBeats<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/channel\/UC1zIiKvJIi7aYl2N68pWF8g\">DivKid<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/channel\/UCeovElJP0n0i8ADaPsRSd8g\">HAINBACH<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/channel\/UC-RA5BzE_BnZhf5iVdNF1hA\">loopop<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/channel\/UCy93plXWtUHT85ehlc8xdlA\">Modbap Modular<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/channel\/UCz0l5LJhNQkktxKWcGUtWxg\">mylarmelodies<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/channel\/UChnxLLvzviaR5NeKOevB8iQ\">Red Means Recording<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/channel\/UCt7fwAhXDy3oNFTAzF2o8Pw\">theneedledrop<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/channel\/UCOojfmX4Wq3Ww-XP_IkvviQ\">True Cuckoo<\/a><\/li>\n<\/ul>\n<h3>News &amp; Government<\/h3>\n<ul>\n<li><a href=\"https:\/\/www.vd.ch\/\">Actualit\u00e9s de l\u2019\u00c9tat de Vaud<\/a><\/li>\n<li><a href=\"https:\/\/www.vd.ch\/\">Communiqu\u00e9s de presse de l\u2019\u00c9tat de Vaud<\/a><\/li>\n<li><a href=\"https:\/\/www.vd.ch\/djes\/polcant\/communiques-de-presse\">Police cantonale vaudoise<\/a><\/li>\n<li><a href=\"https:\/\/www.rts.ch\/info\/?rts_source=rss\">Toute l\u2019info - RTS Un \/ RTS Deux<\/a><\/li>\n<\/ul>\n<h3>Personal Blogs<\/h3>\n<ul>\n<li><a href=\"https:\/\/alienlebarge.ch\">alienlebarge<\/a><\/li>\n<li><a href=\"https:\/\/daringfireball.net\/\">Daring Fireball<\/a><\/li>\n<li><a href=\"https:\/\/world.hey.com\/dhh\">David Heinemeier Hansson<\/a><\/li>\n<li><a href=\"https:\/\/world.hey.com\/jason\">Jason Fried<\/a><\/li>\n<li><a href=\"https:\/\/rknight.me\/\">Robb Knight<\/a><\/li>\n<li><a href=\"https:\/\/thedent.net\">The Dent<\/a><\/li>\n<li><a href=\"https:\/\/www.hiro.report\">The Hiro Report<\/a><\/li>\n<\/ul>\n<h3>Social &amp; Community<\/h3>\n<ul>\n<li><a href=\"https:\/\/bsky.app\/profile\/capacities.bsky.social\">@capacities.bsky.social<\/a><\/li>\n<li><a href=\"https:\/\/bsky.app\/profile\/jjbbllkk.bsky.social\">@jjbbllkk.bsky.social - Aphox Twin<\/a><\/li>\n<li><a href=\"https:\/\/follow.ethanmarcotte.com\/@beep\">Ethan Marcotte<\/a><\/li>\n<li><a href=\"https:\/\/front-end.social\/@matuzo\">Manuel Matuzovi\u0107<\/a><\/li>\n<\/ul>\n<h3>Sports<\/h3>\n<ul>\n<li><a href=\"http:\/\/www.swisshabs.ch\">SwissHabs posts<\/a><\/li>\n<\/ul>\n<h3>UI\/UX Design<\/h3>\n<ul>\n<li><a href=\"https:\/\/nerdy.dev\">Adam Argyle<\/a><\/li>\n<li><a href=\"https:\/\/adamsilver.io\">Adam Silver<\/a><\/li>\n<li><a href=\"https:\/\/www.densediscovery.com\">Dense Discovery<\/a><\/li>\n<li><a href=\"https:\/\/piccalil.li\/\">Piccalilli<\/a><\/li>\n<\/ul>\n<h3>Web Development<\/h3>\n<ul>\n<li><a href=\"https:\/\/11ty.rocks\">11ty Rocks!<\/a><\/li>\n<li><a href=\"https:\/\/alistapart.com\">A List Apart<\/a><\/li>\n<li><a href=\"https:\/\/andy-bell.co.uk\/\">Andy Bell<\/a><\/li>\n<li><a href=\"https:\/\/chriscoyier.net\">Chris Coyier<\/a><\/li>\n<li><a href=\"https:\/\/css-irl.info\/\">CSS In Real Life<\/a><\/li>\n<li><a href=\"https:\/\/css-tricks.com\">CSS-Tricks<\/a><\/li>\n<li><a href=\"https:\/\/daverupert.com\">daverupert.com<\/a><\/li>\n<li><a href=\"https:\/\/ericwbailey.website\">Eric Bailey<\/a><\/li>\n<li><a href=\"https:\/\/htmhell.dev\">HTMHell<\/a><\/li>\n<li><a href=\"https:\/\/mxb.dev\">Max B\u00f6ck<\/a><\/li>\n<li><a href=\"https:\/\/www.smashingmagazine.com\/\">Smashing Magazine<\/a><\/li>\n<li><a href=\"https:\/\/www.zachleat.com\/\">Zach Leatherman<\/a><\/li>\n<\/ul>\n<p><a href=\"https:\/\/gist.github.com\/alienlebarge\/051ef5a1a110aaa6c4dd169577ed9e9b\">The OPML file is available<\/a>.<\/p>\n<p>I consume them with Miniflux, an application that I host on a small VPS server.<\/p>\n<p>Either I read them directly on <a href=\"https:\/\/miniflux.app\">Miniflux<\/a>, or I use the <a href=\"https:\/\/reederapp.com\/classic\/\">Reeder Classic<\/a> application.<\/p>\n<h2>Social feeds<\/h2>\n<p>To follow social streams such as Mastodon or Bluesky, I use <a href=\"https:\/\/usetapestry.com\">Tapestry<\/a> or <a href=\"https:\/\/reederapp.com\">Reeder<\/a>. (I have a slight preference for Reeder). Using a timeline view feels more natural to me than a traditional feed reader.<\/p>","date_published":"2025-02-11T07:08:00+01:00","summary":"","image":null}],"next_url":"https:\/\/alienlebarge.ch\/feed\/2.json"}