• 3 Posts
  • 63 Comments
Joined 1 year ago
cake
Cake day: June 16th, 2023

help-circle
  • Oh, judicial duels have always been bad, tending to favor the wealthy who can afford training. The pistol duel was once considered egalitarian because you were just as likely to miss your opponent regardless of how much you trained. For most of the 20th century (until the 90s) Uruguay had legalized dueling. It was mostly used by politicians and the powerful to muder journalists and lawyers who “defamed” them.

    But if we are already living in a period where the rich act with impunity anyway, I want a world where there’s a nonzero chance that we get to watch Elon Musk take an estoc to the face because of a twitter argument.




  • For backup, maybe a blu-ray drive? I think you would want something that can withstand the salty environment, and maybe resist water. Thing is, even with BDXL discs, you only get a capacity of 100GiB each, so that’s a lot of disks.

    What about an offsite backup? Your media library could live ashore (in a server at a friend’s house). You issue commands from your boat to download media, and then sync those files to your boat when it’s done. If you really need to recover from the backup, have your friend clone a disk and mail it to you.

    Do you even need a backup? Would data redundancy be enough? Sure if your boat catches fire and sinks, your movies are gone, but that’s probably the least of your problems. If you just want to make sure that the salt and water doesn’t destroy your data, how about:

    1. A multi-disk filesystem which can tolerate at least 1 failure
    2. Regular utilities scanning for failure. BTRFS scrubs, for example.
    3. Backup fresh disks kept in a salt and water resistant container (original sealed packaging), to swap any failing disk, and replicate data from any good drives remaining.
    4. Documentation/practice to perform the aforementioned disk replacement, so you’re not googling manpages at sea.

    This would probably be cheapest and have the least complexity.




  • You’ve laid out one potential development cycle: FOSS from the get-go, and open collaboration welcome.

    However, that’s not the only way that a FOSS game might be developed. The code could be freely licensed, but the upstream developers refuse to accept outside patches. In that case, there’s one “original” and then if you don’t like it, build your fork.

    Alternatively, a game could be developed entirely in-house under proprietary licenses, and then only made FOSS upon commercial release. Contributor patches could improve the project, but conception of the game would be entirely the domain of its original developers.



  • As others have said, a reverse proxy is what you need.

    However I will also mention that another tool called macvlan exists, if you’re using containers like podman or docker. Setting up a macvlan network for your containers will trick your server into thinking that the ports exposed by your services belong to a different machine, thus letting them use the same ports at the same time. As far as your LAN is concerned, a container on a macvlan network has its own IP, independent of the host’s IP.

    Macvlan is worth setting up if you plan to expose some of your services outside your local network, or if you want to run a service on a port that your host is already using (eg: you want a container to act as DNS on port 53, but systemd-resolved is already using it on the host).

    You can set up port forwarding at your router to the containers that you want to publicly expose, and any other containers will be inaccessible. Meanwhile with just a reverse proxy, someone could try to send requests to any domain behind it, even if you don’t want to expose it.

    My network is set up such that:

    • Physical host has one IP address that’s only accessible over lan.
    • Containerized web services that I don’t want to expose publicly are behind a reverse proxy container that has its own IP on the macvlan.
    • Containerized web services that I do want to expose publicly have a separate reverse proxy container, which gets a different IP on the macvlan.
    • Router has ports 80 and 443 forwarding only to the IP address for my public proxy









  • I guess it would depend on whether or not the project spawns a dedicated community that lasts for a long time. Without a wide pool of knowledgeable contributors, I think it would be hard for an original team to both support the one design while also developing the next iteration.

    Not to bring it up as a whipping boy, but let’s take the case of Wayland, which is “just” a software protocol. It was started back in 2008, and is still under active development. As more projects support it, more edge cases are coming up, which is why new features are added to the protocol all the time. In those 15 years, they’ve had to adjust to technologies that didn’t exist back in 2008, like widespread adoption of 4k HDR displays, or Vulkan. Now imagine that, but with every aspect of a computer. In 2008, DDR3 RAM was just a year old. Today we’re on DDR5 and you (probably) can’t buy a new machine that takes DDR3. PCIE 2 was the latest shit in 2007. Now I see that PCIE 7 is planned for next year.

    A global corporation can support old products while also developing new technologies because they have unfathomable labor and capital at their beck and call.

    I think that free software can keep up with proprietary offerings because the barrier to entry is relatively low. You just need free time and a source control client. I think it would be different if your project toolchain involved literal tools that cost millions of dollars.


  • I think because such an undertaking would require a wide breadth of extremely specialized knowledge. It would require intense coordination of many experts to work together over many years, all to design something that:

    1. Will eventually be obsolete within a few years
    2. Is outside the realm of replicability for individuals (I never heard of anyone with a nanometer-scale photolithography room in their house)

    Item 1 is OK for hobbyists, who might value open source over new-ness, but item 2 all but guarantees that only big corporations can actually get involved. They don’t care about free and open source. They just want a computing platform that their engineers can develop a product for. As long as there’s enough documentation for their goals, open source is irrelevant.

    The power of modern computing comes partly in how it enables abstraction. You don’t need to understand the physics of electrons through a transistor to write a video game. Overall, the open source community has generally converged on the idea that abstracting away the really hard stuff is an acceptable tradeoff.