• 2 Posts
  • 9 Comments
Joined 2 years ago
cake
Cake day: July 11th, 2023

help-circle
  • actually you can show that the naturals, integers and rationals all have the the same size.
    for example, to show that there are as many naturals as integers (which you do by making a 1-to-1 mapping (more specifically a bijection, i.e. every natural maps to a unique integer and every integer maps to a unique natural) between them), you can say that every natural, n, maps to (n+1)/2 if it is odd and -n/2 if it is even. so 0 and 1 map to themselves, 2 maps to -1, 3 maps to 2, 4 maps to -2, and so on. this maps every natural number to an integer, and vice-versa. therefore, the cardinality (size) of the naturals and the integers are the same.

    you can do something similar for the rationals (if you want to try your hand at proving this yourself, it can be made a lot easier by noting that if you can find a function that maps every natural to a unique rational (an injection), and another function that maps every rational to a unique natural, you can use those construct a bijection between the naturals and rationals. this is called the schröder-bernstein theorem).

    it turns out that you cannot do this kind of mapping between the naturals (or any other set of that cardinality) and the reals. i won’t recite it here, but cantor’s diagonal argument is a quite elegant proof of this fact.

    now, this raises a question: is there anything between the naturals (and friends) and the reals? it turns out that we don’t actually know. this is called the continuum hypothesis






  • if you just care about listening to mp3s across all your devices then navidrome is a good choice imo. because it supports the subsonic api, there are a lot of good players for it like feishin for desktop and dsub for android and a built-in web player.

    as for sharing music, soulseek is already pretty established for this. it basically allows you to search for and download music from anyone on the network (remember to share some yourself, it’s good manners).

    the setup i use is basically a server (all these programs are pretty light, so you can probably run it on a spare laptop or even a raspberry pi) with:

    • slskd as a constantly running soulseek client, allowing me to download music to my server through the built-in web interface
    • beets, to automatically tag any music i download, based on information from musicbrainz. you can configure slskd to run commands when downloads finish, so i just run beets to import any new music
    • navidrome as the server to actually serve all the music

    the only real gripe i have with this setup is that while navidrome has support for multiple users, so i can easily allow friends to listen to my music collection, slskd doesn’t have that (yet, it’s planned), so if someone wants music added to the server they have to ask me to download it through slskd, which is a bit tedious. it works really well if you’re the only person using it though