Aussie living in the San Francisco Bay Area.
Coding since 1998.
.NET Foundation member. C# fan
https://d.sb/
Mastodon: @dan@d.sb

  • 7 Posts
  • 2.26K Comments
Joined 3 years ago
cake
Cake day: June 14th, 2023

help-circle
  • Oops, I didn’t know about the SX line, and didn’t know they had auction servers with large amounts of disk space. Thanks!! I’m not familiar with all of Hetzner’a products.

    For pure file storage (ie you’re only using SFTP, Borgbackup, restic, NFS, Samba, etc) I still think the storage boxes are a good deal, as you don’t have to worry about server maintenance (since it’s a shared environment). I’m not sure if supports encryption though, which is probably where a dedicated server would be useful.



  • SQLite is underrated. I’ve used it for high traffic systems with no issues. If your system has a large number of readers and a small number of writers, it performs very well. It’s not as good for high-concurrency write-heavy use cases, but that’s not common (most apps read far more than they write).

    My use case was a DB that was created during the build process, then read on every page load.


  • MariaDB is not always a drop-in replacement. There’s several features that MySQL has that MariaDB doesn’t, especially related to the optimizer (for some types of queries, MySQL will give you a more optimized execution plan compared to MariaDB). It’s also missing some newer data types, like JSON (which indexes the individual fields in JSON objects to make filtering on them more efficient).

    MariaDB and MySQL are both fine. Even though MySQL doesn’t receive as much development any more, it doesn’t really need it. It works fine. If you want a better database system, switch to PostgreSQL, not MariaDB.


  • AWS Glacier would be about $200/mo, PLUS bandwidth transfer charges, which would be something like $500. R2 would be about $750/mo

    50TB on a Hetzner storage box would be $116/month, with unlimited traffic. It’d have to be split across three storage boxes though, since 20TB is the max per box. 10TB is $24/month and 20TB is $46/month.

    They’re only available in Germany and Finland, but data transfer from elsewhere in the world would still be faster than AWS Glacier.

    Another option with Herzner is a dedicated server. Unfortunately the max storage they let you add is 2 x 22TB SATA HDDs, which would only let you store 22TB of stuff (assuming RAID1), for over double the cost of a 20TB storage box.


  • Do you mean 12600K, or do you really mean 2600K? These days, I wouldn’t use anything older than 9th gen, especially if you plan on doing any video transcoding with Jellyfin (transcoding means converting the video to a different format while streaming, usually to reduce bandwidth usage when watching videos away from home).

    See if there’s any e-waste recyclers in your area. A lot of companies are throwing out systems that don’t officially run Windows 11, so you can sometimes find systems with 8th and 9th gen Intel Core processors for very cheap.




  • If you’re not getting 100% full strength signal, it is literally unwatchable.

    It depends… Sometimes it’s terrible, while other times even low signal strength is fine. I only get around 65% signal strength and 75% signal quality for one channel (ABC, I think?), and it still works fine with no stuttering.

    I use a HDHomeRun TV tuner, so I can place the antenna where I get the best signal, and the HDHomeRun transmits it over my LAN.





  • Rewriting existing systems is one of the riskiest things a company can do, so old codebases are going to be around for a long time.

    Those old COBOL codebases likely contain 50 years of bug fixes for every possible edge case. It’d take a long time to rewrite everything and ensure feature parity, and there’s usually not a significant business reason to rewrite it (after all, a successful end result is just that the system behaves exactly the same as the old one).

    The COBOL language is still getting updates, too.


  • dan@upvote.autoSelfhosted@lemmy.worldWhere are you running your wireguard endpoint?
    link
    fedilink
    English
    arrow-up
    7
    arrow-down
    1
    ·
    edit-2
    13 days ago

    Both of those documents agree with me? RedHat are just using the terms “client” and “server” to make it easier for people to understand, but they explicitly say that all hosts are “peers”.

    Note that all hosts that participate in a WireGuard VPN are peers. This documentation uses the terms client to describe hosts that establish a connection and server to describe the host with the fixed hostname or IP address that the clients connect to and, optionally, route all traffic through this server.

    Everything else is a client of that server because they can’t independently do much else in this configuration.

    All you need to do is add an extra peer to the WireGuard config on any one of the “clients”, and it’s no longer just a client, and can connect directly to that peer without using the “server”.


  • dan@upvote.autoSelfhosted@lemmy.worldWhere are you running your wireguard endpoint?
    link
    fedilink
    English
    arrow-up
    6
    arrow-down
    2
    ·
    edit-2
    13 days ago

    There’s no such thing as a client or server with Wireguard. All systems with Wireguard installed are “nodes”. Wireguard is peer-to-peer, not client-server.

    You can configure nftables rules to route through a particular node, but that doesn’t really make it a server. You could configure all nodes to allow routing traffic through them if you wanted to.

    If you run Wireguard on every device, you can configure a mesh VPN, where every device can directly reach any other device, without needing to route through an intermediary node. This is essentially what Tailscale does.


  • Setting up typescript takes an hour or two if you have no clue what you’re doing

    Modern versions of Node.js have native TypeScript support. For scripts, you can just write the script then run it. That’s it. No build process needed. A beginner could just rely on type checking in their editor (I think VS Code has the TypeScript tooling installed by default?)

    For web apps, just use something like Bun or Deno. Bun gives you practically all the tooling you’d need (JS runtime, TypeScript, package manager, test runner, bundler, and framework for building web apps) out-of-the-box. It doesn’t have a formatter, but you can just use your editor’s formatter.





  • you can also do the exact same thing with any other HikVision camera too

    Most people that install security cameras don’t directly connect them to the internet like this. A company that’s installing them at scale should be aware of this.

    using default credentials

    Modern Hikvision and Dahua cameras don’t have a default password. They require you to set a strong password during initial setup.

    In general, a lot of electronics have moved away from generic default passwords, as many jurisdictions ban them now. Any modern device should either require you to set the password during initial setup, or have a randomly-generated password printed on a sticker under the device.

    The device you found was either a very old one, or one where the owner intentionally set a basic password.