Just your average Reddit refugee.

  • 0 Posts
  • 10 Comments
Joined 1 year ago
cake
Cake day: June 13th, 2023

help-circle

  • This isn’t really correct. Free Open Source Software is very much owned. It is just that the owner doesn’t charge for it, has stated that there are rules for use and modification of the software. FOSS was a clever trick that used copyright against itself. It is was a really brilliant trick, but that trick was only necessary because copyrights exist in the first place. If copyrights didn’t exist then it wouldn’t be illegal to redistribute Adobe Photoshop.

    You may argue that copyrights are necessary for the betterment of society, but that is debatable. The biggest case against copyright being necessary is, in fact, the FOSS movement. It proves we don’t actually need companies like Adobe to make all our stuff and charge a lot for it.


  • The idea of free software isn’t political; ie socialist/communist. Free software is also compatible with free market capitalism. In a capitalist market free of coercion there is nothing that stops one from copying something then changing and/or selling it.

    If you make a microwave and I buy one and reverse engineer it then I could produce and sell it just fine. Similarly, if you created a program called Adobe Photoshop, and I got a hold of the code, then I could copy and resell it. Neither capitalism nor the free market has a concept of patents or copyrights which are a political thing. Everything is free to reproduce.

    Making the software free is just the logical economic price of a product with a marginal cost very close to zero. Give it away and let everyone build on top of it to make increasingly better things because that is the most efficient way to manage those resources. It’s like the progression of science. We give credit for discovery, but encourage all science to happen in the open so others can take the ideas and build on them without being encumbered.

    I hope you don’t think that science is socialist/communist.

    Note: After going through the trouble of writing this I became concerned that my use of the loaded term “free market capitalism” could be misunderstood so I’ve decided to define my terms. Free market capitalism isn’t a form of government. Capitalism just means stuff can be privately owned. A market is how capital is coordinated. The free refers to the market transactions being voluntary/free of coercion. So free market capitalism is the “voluntary coordination of private capital”. That definition can exist under varying forms of government which is why I argue that it isn’t a political system in itself.



  • I feel like this needs to be pushed back on a little bit. Don’t let perfect be the enemy of the good. Having a password manager that provides good passwords and TOTP as a second factor is way better than only using a password.

    Sure, it would be nice if you had two devices. A phone password manager and a usb security key, but for many people it is inconvenient to carry a security key to plug when you need it. I’d rather that person keep a TOTP on their phone in that case rather than not use two factor due to inconvenience.

    Your concern is mostly about “what if someone steals your phone or computer” then they have both factors. However, your average person isn’t getting hacked by someone they know, and random local thieves aren’t typically sophisticated enough to do more than re-sell stolen computer equipment. The average person is getting hacked by some dude in a foreign country who dumped a password database or phished a password. That person isn’t stealing your device so the fact that both factors are in the same place doesn’t really mean anything.

    Also, most password managers are locked by biometrics these days. In that case, it isn’t really the app that is the second factor. It is your fingerprint or face. Someone may steal your device, but if they can’t get into the password manager that needs a password and biometrics then they don’t have anything.


  • You can do that, but there are a couple of things to keep in mind.

    Different apps may only be compatible with certain database products and versions. I could be a real pain if you have to spin up a new version of a database and migrate just for one service that updated their dependencies or have to keep an old database version around for legacy software.

    If you stop using a service then it’s data is still in the database. This will get bloated after a while. If the database is only for one service then wiping it out when you are done isn’t a big deal. However, if you use a shared database then you likely have to go in and remove schemas, tables, and users manually; praying you don’t mess something up for another service.

    When each service has its own database moving it to another instance is as easy as copying all the files. If the database is shared then you need to make sure the database connection is exposed to all the systems that are trying to connect to it. If it’s all local then that’s pretty safe, but if you have services on different cloud providers then you have to be more careful to not expose your database to the world.

    Single use databases don’t typically consume a lot of resources unless the service using it is massive. It typically is easier to allow each service to have its own database.




  • I’m not super concerned. It’s been a little over a week since stuff hit the fan. Contributors need time to learn the code base. People are starting to help with the easy stuff, but the two main devs still need to check everything because they are the only ones that can understand how those changes affect long term visions. Also, the urgent fixes are all somewhat-breaking changes which is why it’s looking like the next release is going to be 0.18 instead of 0.17.5. It makes sense to get as many urgent breaking changes in as they can before publishing, and it’s only been 8 days since the last release to identify, code, and test.


  • For personal projects this is fine, but I’m curious why you feel the need to have every crate be the newest? Once you have it compiling, why upgrade dependencies at all unless you have to? Compiling a new binary is way more work than just running the one that is already compiled. You talk about minimizing build times with this method, but it isn’t clear why recompiling at all with newer dependencies is beneficial.

    Theoretically, every update to a crate is better than the last, but sometimes it’s just adding non-breaking features that you weren’t using anyway. You could just check crate updates every once in a while looking for performance gains or features you would like to make use of.