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

help-circle







  • I pay about £2.50 for 700+ GB storage, with about 2-10 GB of ingress every month. Storage alone is only £1.40. That’s using OVH’s “Cloud Archive” product; they also have a product called Cold Storage which is a smidge cheaper but doesn’t offer updating of existing data, so according to my projections based on the class of data I am archiving it wouldn’t be cheaper in the long term.




  • I’ve used backblaze for years and regularly run recovery exercises. Never had a problem.

    However, to avoid any fears, I store remote backups in two locations (the other one being OVH, a large French cloud provider).

    My data retention regime:

    • Mirrored disks in local NAS.
    • Continually (every night) copy to Backblaze(US) and OVH (DE).
    • Once/year, copy all local NAS data to offline disks (ie disks that are plugged into a tray only during the copy) to avoid a file locking/encryption infection that could spread to the online files.



  • The challenge is, in a real org of some size, you’ll suddenly get marketing or customer success asking you for commitments that are very far out, because ad slots have to be booked or a very large customer renewal is coming up.

    And some of the normal coping mechanism (beta-branch that spins off stable feature to the general release branch) don’t work for all those requests.

    Try as you might, you are going to get far off deadlines that you have to work towards. Not for everything but for more than you’d like.




  • I do think Zig is better for this kind of thing.

    const ret = try do_thing();
    
    if( ret ) | result | {
       do_something_with_result(result);
    }
    

    The try keyword returns any error up; the if-unwrap works with what came out of a successful call. Normally you wouldn’t have both, of course.

    do_thing would be defined as a union of an error (a distinct kind of type, so it can be reasoned about with try, catch and unwrapping) and the wrapped return value.