{"version":"https://jsonfeed.org/version/1","title":"Micro.blog - Rickard Lindberg","home_page_url":"https://micro.blog","feed_url":"https://micro.blog/posts/rickardlindberg","_microblog":{"about":"https://micro.blog/about/api","id":"1642215","username":"rickardlindberg","bio":"Hi! I'm Rickard from Sweden. I like programming. I like both the craft of it and also to write software that solves problems. I also like running.","pronouns":"he/him","is_following":false,"is_you":false,"following_count":6,"discover_count":0},"author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://avatars.micro.blog/avatars/2024/32/1642215.jpg"},"items":[{"id":"63484116","content_html":"<p>Newsletter April 2025: projects2: <a href=\"https://rickardlindberg.me/2025/05/02/newsletter-april-projects.html\">rickardlindberg.me</a></p>","summary":"","url":"https://rickardlindberg.me/2025/05/02/newsletter-april-projects.html","date_published":"2025-05-02T09:42:17+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2025-05-02 09:42","date_timestamp":1746178937,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":true,"is_mention":false,"note":"","syndication":["https://hachyderm.io/@rickardlindberg/114437583670584750"]}},{"id":"61261231","content_html":"<p>Newsletter March 2025: Snowboarding <img src=\"https://micro.blog/photos/50/https://cdn.uploads.micro.blog/173380/2025/snowboard-are.jpg\" width=\"20\" height=\"20\" class=\"mini_thumbnail\" alt=\"Me standing on a snowboard in the mountains of\nÅre.\"> : <a href=\"https://rickardlindberg.me/2025/04/02/newsletter-march-snowboarding.html\">rickardlindberg.me</a></p>","summary":"","url":"https://rickardlindberg.me/2025/04/02/newsletter-march-snowboarding.html","date_published":"2025-04-02T04:50:07+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2025-04-02 04:50","date_timestamp":1743569407,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":true,"is_mention":false,"note":"","syndication":[]}},{"id":"60146948","content_html":"<p>Newsletter February 2025: A New Code Hosting Platform? <a href=\"https://rickardlindberg.me/2025/03/19/newsletter-february-a-new-code.html\">rickardlindberg.me</a></p>","summary":"","url":"https://rickardlindberg.me/2025/03/19/newsletter-february-a-new-code.html","date_published":"2025-03-19T06:28:56+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2025-03-19 06:28","date_timestamp":1742365736,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":true,"is_mention":false,"note":"","syndication":["https://hachyderm.io/@rickardlindberg/114187681845470347"]}},{"id":"56480130","content_html":"<p>Newsletter January 2025: Inspired and Motivated by New Laptop and Reading: <a href=\"https://rickardlindberg.me/2025/02/01/newsletter-january-inspired-and-motivated.html\">rickardlindberg.me</a></p>","summary":"","url":"https://rickardlindberg.me/2025/02/01/newsletter-january-inspired-and-motivated.html","date_published":"2025-02-01T05:08:21+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2025-02-01 05:08","date_timestamp":1738386501,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":true,"is_mention":false,"note":"","syndication":["https://hachyderm.io/@rickardlindberg/113926898077374735"]}},{"id":"55377453","content_html":"<p>Replacing Ctrl-R in Bash without TIOCSTI: <a href=\"https://rickardlindberg.me/2025/01/19/replacing-ctrlr-in-bash-without.html\">rickardlindberg.me</a></p>","summary":"","url":"https://rickardlindberg.me/2025/01/19/replacing-ctrlr-in-bash-without.html","date_published":"2025-01-19T05:11:50+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2025-01-19 05:11","date_timestamp":1737263510,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":true,"is_mention":false,"note":"","syndication":[]}},{"id":"54944328","content_html":"Today’s realization is that you can get important things done by consistently working on them for 15 minutes at the start of every day.\n\nBy doing it at the start of the day, you ensure that it gets done. And the rest of the day you don’t need to be stressed about not working on your important thing, becaus... <a href=\"https://rickardlindberg.me/2025/01/13/todays-realization-is-that-you.html\">rickardlindberg.me</a>","summary":"","url":"https://rickardlindberg.me/2025/01/13/todays-realization-is-that-you.html","date_published":"2025-01-13T20:37:56+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2025-01-13 20:37","date_timestamp":1736800676,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}},{"id":"54840509","content_html":"<p>Newsletter December 2024: Advent of Code: <a href=\"https://rickardlindberg.me/2025/01/12/newsletter-december-advent-of-code.html\">rickardlindberg.me</a></p>","summary":"","url":"https://rickardlindberg.me/2025/01/12/newsletter-december-advent-of-code.html","date_published":"2025-01-12T11:45:36+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2025-01-12 11:45","date_timestamp":1736682336,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":true,"is_mention":false,"note":"","syndication":[]}},{"id":"51560881","content_html":"<p>Newsletter November 2024: A New Project <img src=\"https://micro.blog/photos/50/https://cdn.uploads.micro.blog/173380/2024/running-nov23.jpg\" width=\"20\" height=\"20\" class=\"mini_thumbnail\" alt=\"Me running in a snow-covered landscape with the\nsun setting in the background.\"> : <a href=\"https://rickardlindberg.me/2024/12/08/newsletter-november-a.html\">rickardlindberg.me</a></p>","summary":"","url":"https://rickardlindberg.me/2024/12/08/newsletter-november-a.html","date_published":"2024-12-08T06:36:43+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-12-08 06:36","date_timestamp":1733639803,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":true,"is_mention":false,"note":"","syndication":["https://hachyderm.io/@rickardlindberg/113615820161544625"]}},{"id":"51232458","content_html":"<p>Today I ran part of the way to work. It was a cold, beautiful winter morning in Stockholm.</p>\n<img src=\"https://cdn.uploads.micro.blog/173380/2024/running-dec04-m.jpg\" width=\"600\" height=\"337\" alt=\"Me running with water and Stockholm City Hall in the background.\" loading=\"lazy\">\n","summary":"","url":"https://rickardlindberg.me/2024/12/04/today-i-ran.html","date_published":"2024-12-04T21:37:47+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-12-04 21:37","date_timestamp":1733348267,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":["https://hachyderm.io/@rickardlindberg/113596712795978420"]}},{"id":"50718041","content_html":"<p><span class=\"h-card\"><a href=\"https://micro.blog/akkartik@merveilles.town\" class=\"u-url mention\">@akkartik</a></span> Nice! It’s interesting how paper is still such a powerful tool.</p>\n","url":"https://micro.blog/rickardlindberg/50718041","date_published":"2024-11-29T06:28:41+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-11-29 06:28","date_timestamp":1732861721,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"50633345","content_html":"<p>Sometimes, I solve programming problems by coding on paper. A few days ago, it looked like this:</p>\n<img src=\"https://cdn.uploads.micro.blog/173380/2024/code-on-paper-nov28.png\" width=\"600\" height=\"512\" alt=\"A piece of paper with source code written on it with annotations.\" loading=\"lazy\">\n","summary":"","url":"https://rickardlindberg.me/2024/11/28/sometimes-i-solve.html","date_published":"2024-11-28T06:40:09+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-11-28 06:40","date_timestamp":1732776009,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":false,"note":"","syndication":["https://hachyderm.io/@rickardlindberg/113559209055491816"]}},{"id":"50633053","content_html":"<p>I’ve started working on a code editor that is a mix of a text editor and a structured editor. It is all text, but parsers and pretty printers allow you to work with a tree structure and not think too much about syntax. It is a work in progress. Code is <a href=\"https://github.com/rickardlindberg/rleditor\">here</a>.</p>\n<img src=\"https://cdn.uploads.micro.blog/173380/2024/rledit-nov28.png\" width=\"478\" height=\"333\" alt=\"Screenshot of rledit editing a JSON document with a selection.\" loading=\"lazy\">\n","summary":"","url":"https://rickardlindberg.me/2024/11/28/ive-started-working.html","date_published":"2024-11-28T06:31:39+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-11-28 06:31","date_timestamp":1732775499,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":["https://hachyderm.io/@rickardlindberg/113559175622531494"]}},{"id":"50280834","content_html":"<p>We got some more snow. I like running in the winter. Especially when there is snow and the sun is shining.</p>\n<img src=\"https://cdn.uploads.micro.blog/173380/2024/running-nov23-m.jpg\" width=\"600\" height=\"337\" alt=\"Me running in a snow-covered landscape with the sun setting in the background.\" loading=\"lazy\">\n","summary":"","url":"https://rickardlindberg.me/2024/11/23/we-got-some.html","date_published":"2024-11-23T19:54:13+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-11-23 19:54","date_timestamp":1732391653,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":["https://hachyderm.io/@rickardlindberg/113534019772067427"]}},{"id":"50065183","content_html":"I needed to submit some heic photos to a service that only accepted jpg. I didn’t know about the heic format, but a little searching gave me a solution:\n$ heif-convert\nbash: heif-convert: command not found...\nInstall package 'libheif' to provide command 'heif-convert'? [N/y] y\n...\n$ find . -iname '*.heic' ... <a href=\"https://rickardlindberg.me/2024/11/20/i-needed-to.html\">rickardlindberg.me</a>","summary":"","url":"https://rickardlindberg.me/2024/11/20/i-needed-to.html","date_published":"2024-11-20T20:35:41+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-11-20 20:35","date_timestamp":1732134941,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":["https://hachyderm.io/@rickardlindberg/113517195942386405"]}},{"id":"50064117","content_html":"<p>Today was the first day of snow this season. Not much. I’m looking forward to many more runs on a white trail.</p>\n<img src=\"https://cdn.uploads.micro.blog/173380/2024/running-nov20-m.jpg\" width=\"600\" height=\"337\" alt=\"Me running on a trail with a little snow.\" loading=\"lazy\">\n","summary":"","url":"https://rickardlindberg.me/2024/11/20/today-was-the.html","date_published":"2024-11-20T20:17:43+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-11-20 20:17","date_timestamp":1732133863,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":["https://hachyderm.io/@rickardlindberg/113517125662055421"]}},{"id":"49780866","content_html":"<p>I was researching how to run <a href=\"https://pypi.org/project/black/\">Black</a> (and possibly other formatters) from Vim and found <a href=\"https://phelipetls.github.io/posts/code-formatting-vim/\">Ergonomic mappings for code formatting in Vim</a>. It was very helpful.</p>\n","summary":"","url":"https://rickardlindberg.me/2024/11/16/i-was-researching.html","date_published":"2024-11-16T13:08:23+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-11-16 13:08","date_timestamp":1731762503,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":["https://hachyderm.io/@rickardlindberg/113492787671840799"]}},{"id":"48825407","content_html":"<p>How would you improve this code?</p>\n<div><pre><code><span>def</span> <span>update_r_users</span>(service)\n    r_users <span>=</span> []\n    <span>for</span> user <span>in</span> service<span>.</span>get_all_users():\n        <span>if</span> <span>\"r\"</span> <span>in</span> user:\n            r_users<span>.</span>append(user)\n    service<span>.</span>set_users_in_group(<span>\"users_with_r_in_name\"</span>, r_users)\n</code></pre></div><p>Find out what I did it in my latest <a href=\"https://rickardlindberg.me/2024/11/03/newsletter-october-primitive.html\">newsletter</a>.</p>\n","summary":"","url":"https://rickardlindberg.me/2024/11/03/how-would-you.html","date_published":"2024-11-03T07:56:01+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-11-03 07:56","date_timestamp":1730620561,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":["https://hachyderm.io/@rickardlindberg/113417949297839474"]}},{"id":"48824936","content_html":"<p>Newsletter October 2024: Primitive Obsession? <a href=\"https://rickardlindberg.me/2024/11/03/newsletter-october-primitive.html\">rickardlindberg.me</a></p>","summary":"","url":"https://rickardlindberg.me/2024/11/03/newsletter-october-primitive.html","date_published":"2024-11-03T07:33:04+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-11-03 07:33","date_timestamp":1730619184,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":true,"is_mention":false,"note":"","syndication":["https://hachyderm.io/@rickardlindberg/113417859253861949"]}},{"id":"48794957","content_html":"<p>Today I learned about the <a href=\"https://github.com/Nanonid/rison\">Rison</a> data serialization format. I wrote a function to convert a Python value to Rison format. It was an elegant recursive function with partial support for the format.</p>\n","summary":"","url":"https://rickardlindberg.me/2024/11/02/today-i-learned.html","date_published":"2024-11-02T17:50:36+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-11-02 17:50","date_timestamp":1730569836,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":["https://hachyderm.io/@rickardlindberg/113414626085470185"]}},{"id":"48792826","content_html":"<p>I’ve used <a href=\"https://www.jamesshore.com/v2/projects/nullables/testing-without-mocks\">testing without mocks</a> quite extensively now. I’ve also used it in a work project for more than a year. My experience is that it’s the <strong>best testing strategy</strong> that I’ve ever used. I’ve never felt more <strong>confident</strong> that my code works. I refactor code without fear of it breaking. It’s so good.</p>\n","summary":"","url":"https://rickardlindberg.me/2024/11/02/ive-used-testing.html","date_published":"2024-11-02T17:05:13+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-11-02 17:05","date_timestamp":1730567113,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":["https://hachyderm.io/@rickardlindberg/113414446738823591"]}},{"id":"48441686","content_html":"<p>It’s getting dark. It gives variation to the running.</p>\n<img src=\"https://cdn.uploads.micro.blog/173380/2024/running-oct28-m.jpg\" width=\"600\" height=\"337\" alt=\"Me running in the dark.\" loading=\"lazy\">\n","summary":"","url":"https://rickardlindberg.me/2024/10/28/its-getting-dark.html","date_published":"2024-10-28T17:51:08+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-10-28 17:51","date_timestamp":1730137868,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":["https://hachyderm.io/@rickardlindberg/113386315771947480"]}},{"id":"47622697","content_html":"<p>Various things have kept me from running for a while. Today I had enough. I just had to go for a short run. It was the first run with warmer clothes. The weather was nice. I reclaimed some energy.</p>\n<img src=\"https://cdn.uploads.micro.blog/173380/2024/running-oct16-m.jpg\" width=\"600\" height=\"337\" alt=\"Me running.\" loading=\"lazy\">\n","summary":"","url":"https://rickardlindberg.me/2024/10/16/various-things-have.html","date_published":"2024-10-16T18:08:48+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-10-16 18:08","date_timestamp":1729102128,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}},{"id":"47475576","content_html":"<p>Newsletter September 2024: Bash Redirects and Reading: <a href=\"https://rickardlindberg.me/2024/10/14/newsletter-september-bash.html\">rickardlindberg.me</a></p>","summary":"","url":"https://rickardlindberg.me/2024/10/14/newsletter-september-bash.html","date_published":"2024-10-14T17:11:59+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-10-14 17:11","date_timestamp":1728925919,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":true,"is_mention":false,"note":"","syndication":[]}},{"id":"44890774","content_html":"<p>Pull requests discourage experiments because changes can only propagate after approval. The idea behind PRs is to only approve “good” changes.</p>\n<p>First, the learning opportunities of mistakes are gone. Second, you might loose interest in experimenting because you are afraid of making mistakes.</p>\n","summary":"","url":"https://rickardlindberg.me/2024/09/05/pull-requests-discourage.html","date_published":"2024-09-05T19:05:39+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-09-05 19:05","date_timestamp":1725563139,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":["https://hachyderm.io/@rickardlindberg/113086506090654452"]}},{"id":"44887318","content_html":"<p>Today I just needed to run. I had not run since I hurt my achilles tendon almost a month ago. I wanted to see if it still hurt. I felt something, but not too much. I think I still need to take it easy with running, but man it felt good moving again.</p>\n<img src=\"https://cdn.uploads.micro.blog/173380/2024/gh011321-1725547111030-m.jpg\" width=\"600\" height=\"337\" alt=\"Me running.\" loading=\"lazy\">\n","summary":"","url":"https://rickardlindberg.me/2024/09/05/today-i-just.html","date_published":"2024-09-05T18:20:45+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-09-05 18:20","date_timestamp":1725560445,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":["https://hachyderm.io/@rickardlindberg/113086329894869123"]}},{"id":"44844102","content_html":"<p>If you want to know how to implement a Bash-like shell, with support for redirects, in only 31 lines of Python, you should check out my latest blog post <a href=\"https://rickardlindberg.me/2024/09/04/bash-redirects-explained.html\">Bash Redirects Explained</a>.</p>\n","summary":"","url":"https://rickardlindberg.me/2024/09/05/if-you-want.html","date_published":"2024-09-05T04:29:46+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-09-05 04:29","date_timestamp":1725510586,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":["https://hachyderm.io/@rickardlindberg/113083062035371807"]}},{"id":"43677935","content_html":"<p><span class=\"h-card\"><a href=\"https://micro.blog/samuel@social.spejset.org\" class=\"u-url mention\">@samuel</a></span> <a href=\"https://micro.blog/sod\">@sod</a> Lyssnade också in ett avsnitt på träningscykeln efter att jag fick nys om det här. Perfekt kombo!</p>\n","url":"https://micro.blog/rickardlindberg/43677935","date_published":"2024-08-17T16:04:59+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-08-17 16:04","date_timestamp":1723910699,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"43613704","content_html":"<p><a href=\"https://micro.blog/prealpinux\">@prealpinux</a> Thanks! Glad to be here.</p>\n","url":"https://micro.blog/rickardlindberg/43613704","date_published":"2024-08-16T14:58:07+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-08-16 14:58","date_timestamp":1723820287,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"43564697","content_html":"<p><a href=\"https://micro.blog/fabioteixeira\">@fabioteixeira</a> Thanks! I’ve had quite a good experience so far.</p>\n","url":"https://micro.blog/rickardlindberg/43564697","date_published":"2024-08-15T19:57:15+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-08-15 19:57","date_timestamp":1723751835,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"43560993","content_html":"<p><a href=\"https://micro.blog/Mtt\">@Mtt</a> Thanks! Yes, I really like it. :)</p>\n","url":"https://micro.blog/rickardlindberg/43560993","date_published":"2024-08-15T18:44:28+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-08-15 18:44","date_timestamp":1723747468,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"43305374","content_html":"<p><a href=\"https://micro.blog/odd\">@odd</a> I uploaded the original photo on the Micro.blog profile settings page. Perhaps it looks better now?</p>\n","url":"https://micro.blog/rickardlindberg/43305374","date_published":"2024-08-11T13:40:48+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-08-11 13:40","date_timestamp":1723383648,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"43304980","content_html":"<p><a href=\"https://micro.blog/odd\">@odd</a> Thanks! I’m not sure what you mean. I think the profile photo in the timeline has a higher resolution. The profile photo comes from Gravatar.</p>\n","url":"https://micro.blog/rickardlindberg/43304980","date_published":"2024-08-11T13:29:37+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-08-11 13:29","date_timestamp":1723382977,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"43245301","content_html":"<p><a href=\"https://micro.blog/odd\">@odd</a> Yey! Nowadays I’m experimenting with low heart rate training which means a lot of slow runs. I’ve come to enjoy them.</p>\n","url":"https://micro.blog/rickardlindberg/43245301","date_published":"2024-08-10T06:33:12+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-08-10 06:33","date_timestamp":1723271592,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"43244801","content_html":"<p><a href=\"https://micro.blog/rickardlindberg\">@rickardlindberg</a> Glad you enjoyed your run.</p>\n","url":"https://micro.blog/rickardlindberg/43244801","date_published":"2024-08-10T06:13:48+00:00","author":{"name":"Rickard Lindberg","url":"https://rickardlindberg.me/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Favatars.micro.blog%2Favatars%2F2024%2F32%2F1642215.jpg","_microblog":{"username":"rickardlindberg"}},"_microblog":{"date_relative":"2024-08-10 06:13","date_timestamp":1723270428,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}}]}