• 1 Post
  • 21 Comments
Joined 1 year ago
cake
Cake day: June 17th, 2023

help-circle





  • It only does not have a significant adverse effect because enough people actually do pay for the media that they are able to make a profit off of it. If no one paid for it then they would lose all of their revenue from selling copies, which would definitely be a significant adverse effect on their profits.

    I mean, maybe you don’t consider that to be a problem. Maybe you think that copying media should be free and that instead of making money selling copies people should live off of the money they make from performances and/or patronage, even if this means that there is less money available to create media so in practice there is less of it around. I don’t agree with this position, but I also don’t think it is an inherently unreasonable one as long as you are being honest about it.

    The point is, though, that whatever moral position you take on piracy, you cannot justify it with a claim that only holds as long as other people act differently from you.




  • I can’t speak for other distributions, but Pop!_OS has had a “Refresh Install” option for a while now that does exactly this. This hasn’t happened often, but there have been a couple of times when something borked my system to the point of making it no longer boot, and re-running the installer in “Refresh Install” mode got everything back and running within 30 minutes while preserving all of my non-system files; in particular this meant that I didn’t have to re-download my Steam and other locally installed games, which is significant because they are the largest apps on my system.









  • It can be nice not to have to worry about types when you are doing exploratory programming. For example, I once started by writing a function that did a computation and then returned another function constructed from the result of that computation, and then realized that I’d actually like to attach some metadata to that function. In Python, that is super-easy: you just add a new attribute to the object and you’re done. At some point I wanted to tag it with an attribute that was itself a function, and that was easy as well. Eventually I got to the point where I was tagging it with a zillion functions and realized that I was being silly and replaced it with a proper class with methods. If I’d known in advance that this is where I was going to end up then I would have started with the class, but it was only after messing around that I got a solid notion of what the shape of the thing I was constructing should be, and it helped that I was able to mess around with things in arbitrary ways until I figured out what I really wanted without the language getting in my way at intermediate points.

    Just to be clear, I am not saying that this is the only or best way to program, just that there are situations where having this level of flexibility available in the language can be incredibly freeing.

    And don’t get me wrong, I also love types for two reasons. First, because they let you create a machine-checked specification of what your code is doing, and the more powerful the type system, the better you can do at capturing important invariants in the types. Second, because powerful type systems enable their own kind of exploratory programming where instead of experimenting with code until it does what you want you instead experiment with the types until they express how you want your program to behave, after which writing the implementation is often very straightforward because it is so heavily constrained by the types (and the compiler will tell you when you screwed up).




  • As I understand it, there are two kinds of costs that need to be considered: the cost of viewing content, and the cost of receiving content. The first is incurred every time you access your instance and is limited to your instance, whereas the latter is incurred every time something you’ve subscribed to has received an update, and is incurred not only by your instance but also by the server hosting the community. My concern is that, while hosting my own instance would reduce the load on other servers by absorbing the first kind of cost, it would also increase the load on other servers by increasing the second kind of cost.