summaryrefslogtreecommitdiffstats
path: root/blog-import.json
blob: 9f6a416daaa83ac2ad611faf7b19400e80791c6e (plain)
1
{"username":"musicmatze","has_pass":false,"email":"`J\ufffd\ufffd\ufffd\u003e\ufffd\u0014\ufffda\ufffd\ufffd\ufffdw\ufffd\u0007\u00029\ufffdw1;\u000c\ufffdd~\t\ufffdG\u0015\ufffd\ufffd\ufffd\ufffd\r\ufffd\ufffd(hr\ufffd'\ufffd\ufffd\u0000[a\ufffd\ufffd","created":"2021-03-30T13:40:20+02:00","status":0,"collections":[{"alias":"musicmatze","title":"musicmatzes blog","description":"","style_sheet":"","public":false,"views":15656,"url":"https://beyermatthias.de/","total_posts":250,"posts":[{"id":"whddrvckd1","slug":"the-future-im-longing-for","appearance":"norm","language":"en","rtl":false,"created":"2021-11-26T18:51:35+01:00","updated":"2021-11-26T18:51:35+01:00","title":"The future I'm longing for","body":"Some people might have noticed that I like to go hiking from time to time. During my hikes, I normally listen to music, techno or trance most of the time. That kind of music gives me a certain push to walk faster or keep walking, but also gives me enough \"free space\" in my head (is not too distracting for me like for example metal is). That's perfect for thinking about topics that concern my life at the moment.\n\nMost of the things I am day-dreaming about are not too serious. This article is about one of them.\n\n## From a normal daydream...\n\nMy normal daydreams start off at my current situation and goes from there into a future I would like to live. Normally, it is about minimalism, being able to go hiking in other countries, for example the USA or Canada, but also Iceland, Norway or sometimes Spain (I'm more a \"Go-North\" kind of hiker) or having a camper van and exploring countries in Europe with it, all while being able to work while being \"on the road\". That's what (digital) nomadism is, but in a more \"light\" variant, as (digital) nomads normally do not have a home-base (as far as I know, some of them might beg to differ).\n\nOn my last hike, though, I thought about how an utopian future life would look like, how _I_ would like to experience the future. Some of these things might be achievable, but most of them are probably not.\n\nAnd of course, all thoughts were ...\n\n## ... starting with minimalism\n\nThe concept of minimalism is not only an idea that improves your life on a psychological level, but also (and maybe even more so) on a practical one, of course. If you have less things, less things can brake, can go missing or have to be taken care of.\n\nThat's of course nothing new.\n\nBut what if you have _so few_ things that you can enable a whole new lifestyle? I wrote about \"extremist minimalists\" before, and maybe that's the direction these thoughts are going. Having only 100 things is most certainly complete overkill and maybe not even possible in European culture. But having, say, less than one thousand things, enables you to just pack everything you have into a (rental) car and just drive away from your current location, leaving everything behind.\n\nOn the realistic side, though, it is not that easy, is it? One must cancel their rent, must de-register their water supply, power supply, one probably must change their contact settings in their bank account, several insurance accounts. Ones employer must know about their whereabouts, even if it is only for taxes. People are not allowed to be unregistered in Germany (or even in Europe?), so they must notify the Citizens Registration Office somehow about where they are... which might not even be possible if there is no address (think of living in a camper)!\n\nSo being a minimalist is the one thing, but being able to _move_ is a whole other story, save moving ones things around.\n\n## Being able to just move away\n\nBeing able to just hit the road and drive to another country never has been so easy in Europe. The [Schengen-Abkommen](https://en.wikipedia.org/wiki/Schengen_Area) made it possible for millions of Europeans to just sit in their car and drive to their neighbor country for vacation, all without actually having to go through a tedious process at the border! Crossing the border in Europe is the same as crossing from your kitchen to your living-room! Accepting a job in another country is _easy_ in Europe (AFAIK, IANAL). One just has to accept an offer, get a flat nearby (or not, if its a remote position) and that's basically it.  \n\nOr is it? What about insurance? Will my German insurance pay if I fall down the stairs in my Paris apartment? Will my doctor in Vienna be payed by my insurance if I have to visit them? Who pays if I hit a car with my bicycle in Madrid? What if my flat in Bergen burns down, does my german insurance cover that? Probably not!\n\nI don't know the answers to any of these questions, and although they are hypothetical, they bug me whenever I think about (digital) nomadism.\n\nBut the general idea is amazing to me. Having the option to move to Norway for a summer, to southern Spain for a winter, just because you _want to_ is really an awesome idea and I hope I can pursue that idea at some point, maybe with a camper or maybe even without one.\n\n\n","tags":[],"views":57},{"id":"qa8w1aefjy","slug":"dear-recruiters","appearance":"norm","language":"en","rtl":false,"created":"2021-11-13T10:52:43+01:00","updated":"2021-11-13T10:52:43+01:00","title":"Dear recruiters...","body":"From time to time (read: daily), I get messages from recruiters on platforms like LinkedIn or Xing. 99% of them do not even care to read my profile. I don't know whether this is just because they're bots, or because every recruiter uses the shotgun-approach and just sends out invitations like crazy because they actually do not care.\n\nSo here is a bullet point list for you, dear recruiters:\n\n* If you can't pay what my profile says, leave me alone!\n* If you cannot even read what technologies I'm interested in, leave me alone!\n* If you don't want to \"hire me, but win me for your team\", leave me alone!\n* If you cannot provide a 100% remote work position, leave me alone!\n* If you think that \"new opportunities with Microsoft *insert any MS product here*\" would be interesting for me, leave me alone!\n\nAlso: If you read this in 2021 or 2022, **leave me alone** as well! I'm perfectly happy right now!","tags":[],"views":107},{"id":"wu26ry7ay3","slug":"rust-services-on-kubernetes-with-nix","appearance":"norm","language":"en","rtl":false,"created":"2021-10-03T19:52:37+02:00","updated":"2021-10-03T19:52:37+02:00","title":"Rust Services on Kubernetes with Nix","body":"I've been playing with thoughts about kubernetes a lot lately. Today I finally found the courage and motivation to just try out to write some services and deploy them.\n\nThe idea was to write some simple \"hello-world\" style application, deploy it on some kubernetes and serve them locally on my machine - just to get the hang of the ecosystem and how it all works.\n\nAnd because I'm running [NixOS](https://nixos.org) of course, I wanted to leverage the power of the nix package manager to ease my deployment mechanisms as far as possible.\n\nBuilding docker images can be done by [nixpkgs](https://nixos.org/manual/nixpkgs/stable/#sec-pkgs-dockerTools), so that's not an issue at all.\nThere's also the great [kubenix](https://github.com/xtruder/kubenix) project, which can be used to generate kubernetes deployment configuration files using nix.\nPlus we're using [kind](https://kind.sigs.k8s.io/docs/user/quick-start/), which is used to spawn a full kubernetes cluster inside a docker container on my notebook - that's really nice for development!\n\nBut first, we need to implement the\n\n## Services\n\nWriting the service(s) was rather simple (because Rust, yay)! I decided to make it not _completely_ trivial, and to write three services:\n\n1. A [service that serves \"Hello\"](https://git.beyermatthi.as/helloworld-rust-nix-kubernetes-example/tree/service-hello)\n2. A [service that serves \"World\"](https://git.beyermatthi.as/helloworld-rust-nix-kubernetes-example/tree/service-world)\n3. A service that uses the other two services and joins the strings they serve together [and serve the result](https://git.beyermatthi.as/helloworld-rust-nix-kubernetes-example/tree/service-joiner)\n\nThe implementation of these services are rather simple and don't need any explanation for the experienced Rustacean. And because I'm assuming a fair bit of Rust knowledge here, I'm not quoting the source here.\n\nThe \"echo-style\" services are implemented using `actix-web` in version 3, the \"joiner\" service is implemented using it in version 4 (beta 9), because version 3 does not support calling the tokio runtime and I need to do that to be able to query the other services asyncronously without too much hassle.\n\nAll services expect a `HOST` and `PORT` environment variable to be set, which they use to bind to. The \"joiner\" service also expects `HELLO_SERVICE` and `WORLD_SERVICE`, which should point to the services serving the \"Hello\" and \"World\" strings respectively.\n\nAll three binaries are built using the most simple [nix expression](https://git.beyermatthi.as/helloworld-rust-nix-kubernetes-example/tree/service-hello/default.nix):\n\n```nix\n{ pkgs ? import \u003cnixpkgs\u003e {} }:\n\nwith pkgs.stdenv;\nwith pkgs.lib;\n\npkgs.rustPlatform.buildRustPackage rec {\n  name = \"hello-service\";\n  src  = pkgs.nix-gitignore.gitignoreSourcePure \"target\\n\" ./.;\n\n  cargoSha256 = \"sha256:0nam3yr99gg0lajdha0s9pijqwblgwggqi94mg7d3wz7vfhj8c31\";\n\n  nativeBuildInputs = with pkgs; [ pkg-config makeWrapper ];\n  buildInputs       = with pkgs; [ openssl ];\n}  \n```\n\n(the other `default.nix` files [look](https://git.beyermatthi.as/helloworld-rust-nix-kubernetes-example/tree/service-world/default.nix) [similar](https://git.beyermatthi.as/helloworld-rust-nix-kubernetes-example/tree/service-joiner/default.nix))\n\n## Deployment\n\nI started learning about how to write the deployment following the great article from [tweag.io - Configuring and Testing Kuberentes Clusters with kubenix and kind](https://www.tweag.io/blog/2019-03-07-configuring-and-testing-kubernetes-clusters/).\n\nThat article is truly the main resource I used and you should definitively read it if you want to reproduce what I did here. It explains some details way better than I could!\n\nOne minor inconveniance though, is that kubenix does only support kuberentes 1.18, but I was using kubernetes 1.22 for this example service. It worked, but my implementation might stop working with kubernetes 1.23!\n\nThat said, `kind` can use older kubernetes versions with the `--image` flag when creating the cluster, which might work to get a kuberentes 1.18 up and running!\n\nThe layout of the repository is as follows:\n\n```\nconfiguration.nix\ndefault.nix\nnix/deploy-to-kind.nix\nnix/kubenix.nix\nservice-hello\nservice-hello/Cargo.lock\nservice-hello/Cargo.toml\nservice-hello/default.nix\nservice-hello/src\nservice-hello/src/main.rs\n...\n```\n\nAs you can see, the service implementation is just a subdirectory. The individual services can be build using `nix-build ./service-hello/` for example.\n\nThe deployment gets generated by `configuration.nix`, whereas `default.nix` is used to orchestrate the whole thing and build some neat helpers.\n\n## Building docker images\n\nNix has awesome tooling in nixpkgs for building docker images. We can use that to build docker images with our binaries without actually pulling in too much:\n\n```nix\n  helloImage = pkgs.dockerTools.buildLayeredImage {\n    name = \"hello-service\";\n    tag = \"latest\";\n    config.Cmd = [ \"${helloService}/bin/service-hello\" ];\n  };\n```\n\nThat goes into our [default.nix](https://git.beyermatthi.as/helloworld-rust-nix-kubernetes-example/tree/default.nix#n11).\n\nThese images are later loaded into the kind cluster (automatically, thanks to nix) when starting the cluster.\n\n## Generating the deployment\n\nLets have a look at the [configuration.nix](https://git.beyermatthi.as/helloworld-rust-nix-kubernetes-example/tree/configuration.nix)! The first few lines of that file are simple definitions about the services. We define their name (`label`), which port they run on, how much CPU the pods may use they are running in and their environment:\n\n```nix\n  helloApp = rec {\n    label = \"hello\";\n    port  = 3000;\n\n    cpu = if type == \"dev\"\n    then \"100m\"\n    else \"1000m\";\n\n    imagePolicy = if type == \"dev\"\n    then \"Never\"\n    else \"IfNotPresent\";\n\n    env = [\n      { name = \"HOST\"; value = \"0.0.0.0\"; }\n      { name = \"PORT\"; value = \"${toString port}\"; }\n    ];\n  };\n```\n\nThese values are later used to write the deployment of the individual services. The neat thing is: The \"joiner\" service needs to know (for example) which ports the other services run on. But we don't need to duplicate that data, because we can re-use it from the definition of said services:\n\n```nix\n  joinerApp = rec {\n    label = \"joiner\";\n    # ...\n    \n    env = [\n      # ...\n      { name = \"HELLO_SERVICE\"; value = \"${helloApp.label}:${toString helloApp.port}\"; }\n      { name = \"WORLD_SERVICE\"; value = \"${worldApp.label}:${toString worldApp.port}\"; }\n    ];\n  };\n```\n\nUsing the values, we can then implement the [deployments of each of the apps](https://git.beyermatthi.as/helloworld-rust-nix-kubernetes-example/tree/configuration.nix#n68) with all the bells and whistles as well as implementing the [services](https://git.beyermatthi.as/helloworld-rust-nix-kubernetes-example/tree/configuration.nix#n131) in the cluster.\n\nLast, but not least, we need to add an [ingress](https://git.beyermatthi.as/helloworld-rust-nix-kubernetes-example/tree/configuration.nix#n148) to route traffic from outside the cluster to the \"joiner\" service.\n\n## Deploying\n\nThat's all nice and dandy, but we also need some mechanism to deploy the whole thing, you mean?\n\nThat's where nix comes in handy! What we can do is, let nix [write a script](https://git.beyermatthi.as/helloworld-rust-nix-kubernetes-example/tree/nix/deploy-to-kind.nix) that handles all the deployment steps for us. That script gets the images we just built using docker as input, and copies them into the kind cluster when run. It also gets the generated configuration for the cluster, which it applies automatically as soon as the cluster is created (it also prints it as JSON for discoverability). Lastly, it ensures that an ingress controller is available in the cluster, which is needed for routing the incoming traffic to our \"joiner\" service.\n\n## Putting it all together\n\nFinally, the [default.nix](https://git.beyermatthi.as/helloworld-rust-nix-kubernetes-example/tree/default.nix) file puts it all together. There are even some more possibilities than the file implements (I never actually tried to run the deploy-and-test shell).\n\nI simply used [the shell implemented by the file](https://git.beyermatthi.as/helloworld-rust-nix-kubernetes-example/tree/default.nix#n57) and ran `deploy-to-kind` to start the kind instance and deploy everything inside.\n\n## Wrapping up\n\nIt took me one whole day to figure out all the details, but finally I got it working. This has been a really nice experience and although kubenix seems to be unmaintained as of two years, it worked and was not too complex to use for that simple usecase.\n\nAs always, nix is a pleasure to work with, as is Rust! I hope to be able to use both professionally at some point - lets see what the future brings ;-)","tags":[],"views":193},{"id":"sw5ezxr3aj","slug":"unlocked","appearance":"norm","language":"en","rtl":false,"created":"2021-08-01T12:09:37+02:00","updated":"2021-08-01T12:09:37+02:00","title":"Unlocked","body":"[\"Unlocked\"](https://en.wikipedia.org/wiki/Unlocked_(2017_film)) is a 2017 British-American action thriller movie starring Noomi Rapace and Orlando Bloom.\n\nI had this movie on my watch list for a rather long time. Too long, to be honest. But first, let me lose some words about the\n\n## Plot\n\nAs always, I am giving away only a bare minimum of the plot so that I do not spoiler you.\n\nCIA officer Alice works undercover at a community center in London. She passes on intel to the security services. The CIA and MI5 learn that radical imam Yazid Khaleel plans a biological attack on an American target on British soil in collaboration with American-born Islamic convert David Mercer.\n\nThat's boiled down from [the plot on wikipedia](https://en.wikipedia.org/wiki/Unlocked_(2017_film)#Plot).\n\n## Reception\n\nOn [rottentomatoes](https://en.wikipedia.org/wiki/Unlocked_(2017_film)#Reception) the movie only has a rating of 4.31/10:\n\n\u003e Unlocked strands an all-star cast in a spy thriller whose embrace of old-school formula might be refreshing if it weren't bogged down in genre clichés and a predictable plot.\n\nI can only partly understand that. Of course the plot is a bit foreseeable, still, I was really well entertained. I did not yet see many movies with Orlando Bloom (safe Lord of the Rings and Pirates of the Caribbean of course) and he has a really nice role in this movie.\n\nI would rate this movie with a solid **7/10**!","tags":[],"views":240},{"id":"lm22kifvhw","slug":"thoughts-13","appearance":"norm","language":"en","rtl":false,"created":"2021-07-30T20:49:09+02:00","updated":"2021-07-30T20:49:09+02:00","title":"Thoughts #13","body":"---\n“Thoughts” is (will be) a weekly roll-up of my mastodon feed with some notable thoughts collected into a long-form blog post. “Long form” is relative here, as I will only expand a little on some selected subjects, not write screens and screens of text on each of these subjects.\n\nIf you think I toot too much to follow, this is an alternative to follow some of my thoughts.\n\n---\n\nThis week (2021-07-24 – 2021-07-30) I experienced, once again, how awesome git is. Plus, how awesome is git-annex!  \nBesides that, nothing interesting happened this week.\n\n## git bisect ftw\n\nI had to merge a bunch of branches this week and although the merge itself worked, it [resulted in a failing build](https://mastodon.technology/@musicmatze/106653056452312596). This was almost a no-brainer, though, because of the awesome git-bisect.\n\nI nothing more to do than  \n\n```\ngit bisect start\ngit bisect bad HEAD\ngit bisect good old-master\ngit bisect run cargo check\n```\n\nand then go back to do something else. After a few minutes, the commit that introduced the issue was found and I was able to fix it within a few minutes.\n\nThat's how awesome git is.\n\n\n## git-annex is awesome, too!\n\nDid I tell you that git is awesome? Yes. But git-annex is awesome, too!\n\nThough, I had the issue that I wanted to diff a pdf file against its own version. Turns out, that's easily possible [with some git configuration](https://mastodon.technology/@musicmatze/106662953185118837), too!\n","tags":[],"views":284},{"id":"bkd615486w","slug":"suicide-squad","appearance":"norm","language":"en","rtl":false,"created":"2021-07-28T20:49:49+02:00","updated":"2021-07-28T20:49:49+02:00","title":"Suicide Squad","body":"[\"Suicide Squad\"](https://en.wikipedia.org/wiki/Suicide_Squad_(film)) is a 2016 American action hero movie based on DC comics.\n\n## Plot\n\nAs always, just a short teaser [from wikipedia](https://en.wikipedia.org/wiki/Suicide_Squad_(film)) here:\n\n\u003e In the film, a secret government agency [...] recruits imprisoned supervillains to execute dangerous black ops missions and save the world from a powerful threat in exchange for reduced sentences. \n\nSo it is basically the default super-hero installment one already knows from Marvel or DC. Nothing special.\n\n## Reception\n\nOn [rottentomatoes](https://en.wikipedia.org/wiki/Suicide_Squad_(film)#Critical_response), the movie scored only 4.9/10. I rather like these kind of action hero movies where one does not have too much to think. The movie was not dumb, with some nice action-scenes and a few funny dialogues. So I would rate it with a 6/10.","tags":[],"views":213},{"id":"i0k46cjd1y","slug":"war-of-the-worlds-2005","appearance":"norm","language":"en","rtl":false,"created":"2021-07-26T11:54:03+02:00","updated":"2021-07-26T11:54:03+02:00","title":"War of the Worlds (2005)","body":"[\"War of the Worlds\"](https://en.wikipedia.org/wiki/War_of_the_Worlds_(2005_film)) from 2005 is a Science-Fiction action movie directed by Steven Spielberg. It features, most prominently, Tom Cruise and Dakota Fanning. The movie is based on the 1897 novel by H. G. Wells and some might know about the radio show that most dramatically broadcasted live in 1938\n\n\u003e causing panic among its listening audience, though the scale of panic is disputed\n\n([wikipedia](https://en.wikipedia.org/wiki/The_War_of_the_Worlds_(1938_radio_drama)))\n\n## Plot\n\nWell, the general plot is nothing new. Aliens invade the earth and want to kill all humans. That's about it, without giving too much away. Though the plot is rather trivial, the execution of it is _really_ good.\n\nThe movie is really exciting, featuring some really nice and thrilling scenes where one could really chew fingernails! At the end it shifts a bit towards a war-movie.\n\n## Reception\n\n[rottentomatoes](https://en.wikipedia.org/wiki/War_of_the_Worlds_(2005_film)#Reception) ranks the movie with a solid 7/10. Tom Cruise is a really good actor and I would even say a 8/10 would be legit for this movie.\n\nI watched it three or four times now and I will most certainly rewatch it again!\n\nIt is a bit gory though, so maybe not the best fit for an evening with your children around! Definitively not with small children.","tags":[],"views":264},{"id":"grqw7vkha3","slug":"thoughts-12","appearance":"norm","language":"en","rtl":false,"created":"2021-07-24T18:23:44+02:00","updated":"2021-07-24T18:23:45+02:00","title":"Thoughts #12","body":"---\n“Thoughts” is (will be) a weekly roll-up of my mastodon feed with some notable thoughts collected into a long-form blog post. “Long form” is relative here, as I will only expand a little on some selected subjects, not write screens and screens of text on each of these subjects.\n\nIf you think I toot too much to follow, this is an alternative to follow some of my thoughts.\n\n---\n\nThis week (2021-07-17– 2021-07-23) I executed more steps toward minimalism and created a profile on a website I do not like.\n\n## More minimalism\n\nThis week I [donated](https://mastodon.technology/@musicmatze/106602844218771276) some clothes I don't need anymore (and haven't used for ... a rather long time). I also removed some [boxes](https://mastodon.technology/@musicmatze/106602858628627319) from my apartment as well, which was also a good feeling.\n\nI also experienced, and I guess that's the same feeling as with the minimalism by removing stuff you don't need, a nice feeling about [my removal of github](https://mastodon.technology/@musicmatze?min_id=106602921706795289) from my everyday websites.\n\n## LinkedIn\n\nThis week, I also [created](https://mastodon.technology/@musicmatze/106623308397527048) a [linkedIn](https://www.linkedin.com/in/matthias-beyer/) profile.\n\nI was always against these kind of data-silo services, but I have to admit that LinkedIn can provide value for ones life and I am now trying it out. Lets see where the journey goes.\n\n## Building a backup solution\n\nI am building a simple (\"off-shore\") backup solution with a RaspberryPi 4B and some external drives. This week I ordered all the parts, and [managed to order the wrong SD card](https://mastodon.technology/@musicmatze/106632402823890856). But besides that, everything is going as planned. Of course I [ordered a new one](https://mastodon.technology/@musicmatze/106634403421588698) right away.","tags":[],"views":214},{"id":"b4rpzyfdf9","slug":"the-old-guard","appearance":"norm","language":"en","rtl":false,"created":"2021-07-20T09:04:57+02:00","updated":"2021-07-20T09:04:58+02:00","title":"The Old Guard","body":"[\"The old Guard\"](https://en.m.wikipedia.org/wiki/The_Old_Guard_(2020_film)) is a 2020 superhero action movie that really got me.\n\n## Plot\n\nThe plot is rather simple overall: four secret super heros that are immortal are being hunted for something (I'm not telling because that'd be a spoiler already). Suddenly, something strange happens.\n\n## Reception\n\nAccording to [wikipedia](https://en.m.wikipedia.org/wiki/The_Old_Guard_(2020_film)), the movie has only a weak 6.5/10 on rottentomatoes. That's really bad, because I would rate it with at least 8.5 or more.\n\nThe movie features great action scenes, is not themed with the clean and sleek (marvelesque) Super-Hero style and has some tension to it. I really liked it and can recommend it!","tags":[],"views":342},{"id":"txz913ubyg","slug":"the-blackout-series","appearance":"norm","language":"en","rtl":false,"created":"2021-07-18T12:25:07+02:00","updated":"2021-07-18T12:25:07+02:00","title":"The Blackout (Series)","body":"\"The Blackout\" (not [the movie](https://en.wikipedia.org/wiki/The_Blackout_(2019_film)), but the series!) is a Russian science-fiction action thriller series (6 episodes in one season so far) that aired in 2020.\n\nWikipedia does not have an article on it, yet.\n\n## Plot\n\nAs always, I don't want to give away too much about the plot of the series.\n\nThe series is about an event that suddenly plunges the entire world into darkness, rapidly destroying life on Earth except for a small area in Eastern Europe.\n\nThis is the same as the plot of the aforementioned [movie](https://en.wikipedia.org/wiki/The_Blackout_(2019_film)), but again: I'm not talking about the movie, but the series!\n\n## Reception\n\nThe general reception of the movie according to [wikipedia](https://en.wikipedia.org/wiki/The_Blackout_(2019_film)#Reception) is rather bad.\n\nIt seems that the series has nothing to do with the series, because the series was _really_ good! I can say that I watched the whole 6 episodes (each about 40 minutes) in one sitting, because it was so exciting. It is, of course, a rather brutal series with a lot of blood and violence, but that's exactly the theme of the series and thus necessary.\n\nI did not find a rating for the series on rottentomatoes, neither did I find a Wikipedia article on it (not even in Russian Wikipedia), so I can only give you my own rating! And I would give this series a solid 8/10 - I really enjoyed watching it and would definitively watch it again!","tags":[],"views":215},{"id":"efh6wg6494","slug":"thoughts-11","appearance":"norm","language":"en","rtl":false,"created":"2021-07-16T12:07:13+02:00","updated":"2021-07-16T12:07:13+02:00","title":"Thoughts #11","body":"---\n“Thoughts” is (will be) a weekly roll-up of my mastodon feed with some notable thoughts collected into a long-form blog post. “Long form” is relative here, as I will only expand a little on some selected subjects, not write screens and screens of text on each of these subjects.\n\nIf you think I toot too much to follow, this is an alternative to follow some of my thoughts.\n\n---\n\nThis week (2021-07-10– 2021-07-16), given my vacation, I thought more about minimalism and the ideal life (yes I was hiking again and was able to let my thoughts just flow), plus I had some thoughts on FLOSS licenses and GitHub copilot.\n\n## Minimalism and the ideal life\n\nI again thought about [minimalism](https://mastodon.technology/@musicmatze/106551989440707276) and what the [perfect life](https://mastodon.technology/@musicmatze/106552515502653464) would look like for me.\nI am actually working on an article for the latter part, dreaming about the future with some more thoughts on minimalism, digital nomadism and just being able to be where I want to be.\n\nI am thinking [a lot](https://mastodon.technology/@musicmatze/106552534253464726) about these more philosophical things lately. Maybe [too much](https://mastodon.technology/@musicmatze/106552536963546645)? But after all, the world around me is changing with rapid speed, so why not thinking about changing my lifestyle as well?\n\n## Liberapay\n\nI [made](https://mastodon.technology/@musicmatze/106556155885082972)  a [liberapay account](https://liberapay.com/musicmatze) last week. Not because I am now the biggest content creator on earth, but because maybe someone would like to show their appreciation for the FLOSS work I've been doing in the past years and continue to do.\n\n## FLOSS Licenses\n\nI also thought about the idea of a FLOSS license that [forbids automatic analysis of the code](https://mastodon.technology/@musicmatze/106556773403132143).\n\nI think such a thing might be useful against the GitHub copilot things of our time (which will most certainly get more). I think it won't be easy to develop such a license, but it might be necessary at some point.","tags":[],"views":189},{"id":"1hjq7ey4s3","slug":"ragnarok","appearance":"norm","language":"en","rtl":false,"created":"2021-07-15T16:27:47+02:00","updated":"2021-07-15T16:27:47+02:00","title":"Ragnarok","body":"[\"Ragnarok\"](https://en.wikipedia.org/wiki/Ragnarok_(TV_series)) is a Norwegian fantasy drama  series from Netflix. It takes place in the present time in a fictional village in Norway, and apparently the original audio is Norwegian, which is really nice.\n\nA friend of mine watched it in the original language with subtitles and said that it was a really nice flair and gave the series even more a touch of \"mysticalness\" (if that's a word).\n\nSo far, two seasons are released and the story is not finished yet. Keep that in mind if you don't like cliff-hangers!\n\n## Plot\nAs always, I don't want to give away too much here. That's why I removed some parts of the following quote:\n\n\u003e [The series] takes place in [...] the fictional Norwegian town of Edda in Hordaland, Western Norway, which is plagued by climate change and the industrial pollution. [...] Magne, a teenage boy [...] begins the fight against those who are destroying the planet.\n\n([wikipedia](https://en.wikipedia.org/wiki/Ragnarok_(TV_series)))\n\n## Reception\nThe series was, according to [wikipedia](https://en.wikipedia.org/wiki/Ragnarok_(TV_series)#Reception) not very well received in Norway. I can understand that one's rather critical if a series takes place in the own country, rather than in some far far away America!\n\nThat said, [rottentomatoes](https://www.rottentomatoes.com/tv/ragnarok) lists an average of 70% for that series.\n\nI must say that I _love_ that series and cannot wait for the third season (I hope they don't mess it up). I'd rate this with a straight **9/10**!","tags":[],"views":186},{"id":"ple6slfspy","slug":"thoughts-on-approaching-minimalism","appearance":"norm","language":"en","rtl":false,"created":"2021-07-13T12:38:45+02:00","updated":"2021-07-13T12:38:45+02:00","title":"Thoughts on approaching Minimalism","body":"I first heard of minimalism because of some documentary on YouTube. I think it was from \"The Minimalists\" although I'm not quite sure.\n\nMinimalism online really is a rabbit hole. You can quickly end up spending a whole night discovering different minimalists online, each giving some insight on how they execute their minimalism. Some are more \"extremist\" than others, but they do have one thing in common: The definition of minimalism is vague enough so everyone could potentially define it for themselves, and still everyone can agree on each others definition.\n\nSounds vague? Let me try to explain. Minimalism in one sentence, for me is\n\n\u003e the idea that material things are not a measurement of value in ones life.\n\nA bit longer explanation would be that the concept of filling ones life with material things, also sometimes deprecatingly called \"stuff\", does not improve your life at all. Some material things do provide value, but only for a short amount of time. And people tend to replace the emptiness that expands after that value runs out with more material things, ending up in a loop of buying things to get value in life.\n\nI one manages to see through that loop and manages to actually break it, _real_ value in life can be established by owning only things that _matter_.\n\nFinding more definitions, examples, opinions and so on online is left as value to the reader. There's a lot. Don't get caught up in a night of research, you've been warned!\n\n## Starting minimalism\n\nI started not only thinking about how these concepts but actually trying to implement them in my life a few weeks, maybe a few months now. I started really slowly by opening one cupboard/wardrobe a week and going through things. Every time I found something where I reacted like \"Ah, I didn't remember I have this\", I put the thing into a dedicated \"give-away-box\". After the box was full, I put things online to give them away.\n\nI gave a handful of clothes to friends and family already and I am giving away more things slowly. Not at a very fast pace, but still noticeable.\n\n## Things improve!\n\nI really love how my life changes for the better right now, I feel the improvement every single time I get rid (selling or giving away for free, not trashing of course) of something that I do not need. And by \"improvement\" I mean not that my life, objectively, improves. But every time I give something away I feel, for a few days, lighter. It might seem strange, but that's what I feel. \n\nAnd albeit my progress is rather slow and small, it is noticeable for me. If you would come to my home and you'd know me, you'd not see any difference (yet?), though!\n\n## Concerns\n\nOne thing that concerns me with the topic of minimalism, is that if you try to get some information about the community and individual minimalists online, you quickly end up irritated because _all_ the minimalists out there are like \"I have one bag full of things, nothing more\" or something like that.\n\nThe impression that minimalism is only minimalism if executed extremely is a false feeling and I hope I can save myself from that. I am clearly threatened by it!\n\nI don't know whether this impression is only a result of \"American minimalism\", which is clearly the majority you'd find online. For example, I can not think of a way where a person from Europe can only have 100 things. At least my documents (bank account documents, tax documents, insurance stuff and other things you _have to have_ in Europe) would qualify as 100 things, if not more. I'm not sure how the \"extremist minimalists\" do this, or whether one even needs these things printed out in america.\n\nEither way, I hope that some day I might be able to pack all my belongings (or almost all, I really don't want to give away my 32 inch screen or my 7.1 sound system!) into a camper and just tour Europe as a digital nomad. The idea of minimalism combined with digital nomadism (is that a word?) is really interesting to me, although I'd like to have a \"home-base\" where I can come back to and stay for several weeks or even months - sometimes one just needs to cuddle into the same bed every night for several consecutive nights!\n\nWhat I really don't want, though, is dropping out. Neither from society nor from my work/industry. My approach towards minimalism is only of philosophical nature - not needing _things_ to define my living standard.","tags":[],"views":215},{"id":"i1bc9d9bna","slug":"deleting-my-github-sources","appearance":"norm","language":"en","rtl":false,"created":"2021-07-11T19:43:55+02:00","updated":"2021-07-11T19:43:55+02:00","title":"Deleting my github sources","body":"I [deleted](https://mastodon.technology/@musicmatze/106527484217736270) the repositories I own(ed) on #github.\n\nAfter it became clear that [Microsoft GitHub Copilot](https://copilot.github.com/) was [trained](https://cybre.space/@tindall/106539167944483388) using open source and GPLed work, keeping my (both public and private) github repositories is just _wrong_. So I deleted all of them, except for the forks I contribute to and maintain (for example [config-rs](https://github.com/mehcode/config-rs) and [shiplift](https://github.com/softprops/shiplift)).\n\nI [hope](https://mastodon.technology/@musicmatze/106544251935596970) that others will follow suit and delete their repositories as well. I can understand if people don't mind the vendor lock that \"discussions\", \"actions\" and other features have created for them. But this (copilot) is pure abuse of free software codebases.\n\n\u003e The \"extend\" phase is over, we're in the \"extinguish\" phase!\n\n([me, on mastodon](https://mastodon.technology/@musicmatze/106544362192261973))\n\nIt [might be legal](https://en.osm.town/@qeef/106538016853397341) for github to do this (IANAL), but nonetheless it is more than just a bad move. If their ToS allows this and we, as a community, can not act upon this because we agreed to these terms, the only sensible thing to do is to move our development away from github to some more open and less abusive services. I'm a big fan of [sourcehut](https://sourcehut.org), of course, but there are others, most prominently [codeberg](https://codeberg.org) and of course, self-hosting.\n\n## Self-hosting and email patches\n\nI am self-hosting all my sources on [git.beyermatthi.as](https://git.beyermatthi.as) plus I host some of these projects on [my sourcehut account](https://sr.ht/~matthiasbeyer/) for more visibility.\nI take patches via mail for all my repositories.\n\nIf you plan on moving away from github, learning how to [send patches via mail](https://git-send-email.io/) and of course also how to accept patches via mail is a [viable skill](https://drewdevault.com/2018/07/02/Email-driven-git.html) that you [will benefit from](https://nasamuffin.github.io/git/open-source/email/code-review/2019/05/22/how-i-learned-to-love-email-patches.html)! Just make sure to [use plain text email](https://useplaintext.email/) instead of [html emails](https://drewdevault.com/2016/04/11/Please-use-text-plain-for-emails.html).\n\nThere are tons and tons of tutorials out there how to work with email patches. Just go and read them, it will make you a better developer, even if you then go to one of the other code forges and don't need the skill, you will start to understand why git works the way it works!\n\nI am using git for over a decade now, over eight years in opensource and over two years professionally (so my whole professional career so far), and it is _the one tool_ I cannot exist without! It amplifies the speed I develop code with by a magnitude!\n\n## If you don't want email...\n\nIf you don't want an email-based workflow for your git repositories, which I can understand (although not approve), and you want a sh