News for hackers. Stuff that matters.

piedar

ZFS has

- redundancy

- striping

- compression

- encryption

- mountpoints

- volumes

- quotas

- snapshots

- send/recv backups

- disk error detection (ECC protects memory only)

All built in with consistent well-documented tooling. No futzing around with lvm mdadm fsck luks fuse fstab etc.

> one designated "origin" remote

Git is not limited to a single remote. The default remote is called "origin" but there's nothing particularly special about it.

Re:Should we care about people who need never exist? on Monday January 02, 2023 @05:32PM (#34224627)
If you show a skyscraper to an ant, should he abandon his queen because their little hill is too insignificant to matter? Or should he jump back in and build the best damn nest in the city? I just don't think relative scale is really important - even a galaxy-striding star-snacking titan would grapple with the same problem of meaning.

> Nihilists recognize that meaning is not inherent, but rather ascribed by the person experiencing the feeling.

That sounds reasonable, so here's an attempt at a synthesis. The universe is huge and mostly empty, but here we have a tiny patch full of life and self-ascribed meaning. Does the universe prefer life? The part that's alive certainly does! So don't let it fall to ashes just to appease the void. I think that's the best answer a mere mortal can give.

Re:Should we care about people who need never exist? on Monday January 02, 2023 @03:34PM (#34223277)
As a tiny representative of the universe, yes I do enjoy having feelings, hopes, and dreams. If nihilists find this to be meaningless, perhaps we simply disagree about which of us is the cancer.
Re:Should we care about people who need never exist? on Monday January 02, 2023 @02:57PM (#34222826)
Humans have feelings, hopes, and dreams. Humans are a subset of the universe. Therefore, the universe has feelings, hopes, and dreams.

Now that the universe has manifested we conscious agents of its matter, how dare we squander this gift? Just because it didn't come with an instruction manual? We will find our own purpose.

Re:Being Ridiculed for My Open Source Project (2013) on Monday November 07, 2022 @10:37AM (#33507160)

    grep -o $pattern $filename | wc -l
But yours has better error handling!
Re:Ask HN: How to Monetize Open-Source Software? on Saturday May 07, 2022 @11:36AM (#31295391)
That's a fine idea, but this would not be an open source (https://opensource.org/osd) license.

> 5. No Discrimination Against Persons or Groups

> The license must not discriminate against any person or group of persons.

> 6. No Discrimination Against Fields of Endeavor

> The license must not restrict anyone from making use of the program in a specific field of endeavor. For example, it may not restrict the program from being used in a business, or from being used for genetic research.

Re:Asynchronous Programming in C# on Friday September 24, 2021 @01:13PM (#28645216)
> var myValue = DoSomethingAsync().ConfigureAwait(false).Result;

Came out a decade ago and we still don't know how to use it safely.

This example doesn't compile because there is no Result on ConfiguredTaskAwaitable. Regardless, ConfigureAwait(false) does absolutely nothing here because this Task is not being awaited.

If you're going to block this thread, you must push the work to another thread or it's going to deadlock when the implementation tries to resume a continuation (unless the implementation is 100% perfect and the SynchronizationContext smiles upon you).

var result = Task.Run(() => CalculateAsync()).GetAwaiter().GetResult();

This avoids the deadlock but can lead to other nasty things like thread pool starvation. The only true solution is to go async all the way - https://blog.stephencleary.com/2012/07/dont-block-on-async-c...

Re:KDE Plasma 5.20 on Tuesday October 13, 2020 @04:04PM (#24769712)
That seems like a poor design in apt. Does any other package manager allow such a thing? I know Arch's pacman has no autoremove - you have to gather a list of unneeded packages then remove them as a separate step. And Gentoo's emerge builds a dependency tree rooted in the @world package set, so if kde-plasma/plasma-meta is there it will never be removed by an automatic depclean.
Re:Things I Was Wrong About: Types on Sunday September 27, 2020 @12:46PM (#24607966)
Nominally-typed interfaces are still clumsy in some circumstances. For example, if I consume a library with

    namespace ThirdParty {
      public sealed class Foo { public void Do() { } }
    }
and I want to hide it behind

    namespace MyCode {
      interface IFoo { void Do(); }
    }
the compiler does not accept ThirdParty.Foo as an implementation of MyCode.IFoo so I must define a wrapper

    namespace MyCode {
      sealed class ThirdPartyFooAdapter : IFoo {
        public ThirdPartyFooAdapter(ThirdParty.Foo instance) {
          _instance = instance;
        }
        readonly ThirdParty.Foo _instance;

        public void Do() => _instance.Do();
      }
    }
which only gets more tedious as the number of methods and implementations grows.
The vscode source does have telemetry enabled by default, which is why vscodium exists to patch it out.
Re:TikTok: Cheerfulness and censorship on Sunday November 24, 2019 @12:34PM (#21621898)
Oh come on now - don't pretend that comment was some neutral statement of fact. It was a clear implication of moral failure in your opponent's argument. And it's not really persuasive to then double down on a false dilemma (is my out-group evil, or just stupid?).
...neither of which existed when the question was asked.
A few more:

- Blockada - VPN-style ad blocker

- Drum On! - Drum machine

- Firefox Klar - Small privacy-focused browser

- RedReader - Reddit client

- Shattered Pixel Dungeon - Roguelike dungeon crawler game

- Tuner - Guitar and instrument tuner

Re:The JavaScript Pipeline Operator on Thursday November 08, 2018 @01:58PM (#18408867)
Have you seen https://github.com/labs42io/itiriri? It does lazy queries on iterables, like IEnumerable from C#.

    import { query } from 'itiriri';

    function* fibonacci() {
       let [a, b] = [0, 1];

      while (true) {
        yield a;
        [a, b] = [b, a + b];
      }
    }

    // Finding first 3 Fibonacci numbers that contain 42
    const result = query(fibonacci())
      .filter(x => x.toString().indexOf('42') !== -1)
      .take(3);

    for (const e of result) {
      console.log(e);
    }

    // outputs: 514229, 267914296, 7778742049
Re:How Reddit plans to make money through advertising on Friday July 06, 2018 @12:23PM (#17472672)
It's presented as a software bug report, with the sarcastic implication that having to scroll to the third advertisement is a defect in the design.