HN user

endgame

5,540 karma

I care a lot about build systems, because nobody else seems to.

Posts17
Comments1,216
View on HN

Ashley is the canonical list of knots, so it's good for people who haven't heard of ABOK to hear about it since we're talking knots today.

Probably time to drop another coin in Ian's tip jar too.

Childhood Computing 2 months ago

Yeah, I spent more time than I cared to admit fiddling with DEVICE(HIGH) lines, tweaking FILES= and BUFFERS=, running MEMMAKER.EXE over and over as if that would do something, but it was never the real thing. The real thing is making the machine do something I wanted instead of what the manufacturer wanted. For a kid of this generation, I'd look for games with reasonable modding APIs, perhaps something like Lua, and ideally something where playing multiplayer lets him show his creations off to his friends.

From there, look to packages like LÖVE which still use Lua but give full control over the whole game, and help him explore and wrangle the things he needs to understand to make his programming real. And if the lower levels interest him, help him dig deeper. But I think modding and scripting is probably the best place to start.

Do_not_track 3 months ago

No. It shouldn't be an opt-out, and it is bad practice to write conditional settings in the negative.

And the Parliamentary Joint Committee on Intelligence and Security definitely gave the literal thousands of submissions due consultation before recommending the original, un-split bill pass.

Nobody. Nobody at all could have seen it. Microsoft is cool now, haven't you seen VSCode? They do Open Source, they run Linux, they've joined the fold, the tiger shed its stripes.

Yes. Here's a 2014 BBC article about that:

https://www.bbc.com/news/uk-politics-26487418

The article quotes one Mr Richard Mawrey QC:

"Postal voting on demand, however many safeguards you build into it, is wide open to fraud… on a scale that will make election rigging a possibility and indeed in some areas a probability."

"Now I know that there is a very strong political desire to keep the present system. What I'm saying is that if you keep the present system, then however many safeguards you create, fraud and serious fraud is inevitably going to continue because that is built into the system."

There are some really clever systems that let you prove that you voted without leaking how you voted.

Unfortunately, explaining them to Joe Q. Public in such a way that he's going to trust your election is a very tough sell, whereas counting paper is a much easier process to explain.

And that's before you begin worrying that the developer of your whizz-bang mathematically-provable voting system is a) going to win the bid to build it for the government, b) implements it correctly, and c) isn't subverted while doing so.

Of course they aren't. If they were actually helping kids, they would be going after algorithmic feeds in general and the most predatory platforms like Roblox (especially given its recent scandals), doing something about kids being exposed to gambling advertising, etc.

The bill was put up for public comment for less than one business day before being rammed through Parliament. Australia is just sending out one of the horsemen of the infocalypse so that other countries have an excuse to follow suit. Like how our "Assistance And Access" Act was a test run of the UK's "snooper's charter".

This law will just lead to:

1. kids pretending to be adults so they sneak through these filters

2. platforms winding back their (meagre) child safety efforts since "children are banned anyway"

3. everyone being forced to prove their age via e.g. uploading ID (which will inevitably get leaked)

I've used Nix for at least seven years, and I firmly believe that the language is a large part of the problem. Yes, the Nix language is "just another lazily-evaluated pure FP language in the ML tradition" and "it's like a lazily-evaluated JSON", but it has several large footguns. The biggest one is that spaces are use to separate elements in list literals as well as for function application. The second is the lack of a usable type system, in the sense that the programmer cannot assert the types of values in a useful way. Instead, you have to rely on comments and convention to know what a function's arguments are.

These two design warts also interact with each other really badly: If you try to put a function application into a list and forget to enclose it in parentheses, you instead insert the function as one element in the list and its arguments as successive elements. The usual result is "expected an X but got a function" error in some completely unrelated part of the code.

[dead] 8 months ago

Do you care about people _now_, even though their existence is finite and at some point anything you may or may not have done to affect them will cease mattering?

This article and video might be good for you, but they are more about a conceptual overview of what the fundamental parts of Nix are and how they interact.

https://shopify.engineering/shipit-presents-how-shopify-uses...

https://www.youtube.com/watch?v=6iVXaqUfHi4

Flakes are a dependency-pinning and hermetic evaluation feature baked into the Nix tool itself.

Overlays are an idiom that uses lazy evaluation to build up larger attribute sets in a modular and composable way (e.g., package collections for a particular programming language).

[dead] 8 months ago

Why would it matter if there is no life after this one? If there is no life after this one, maybe you should just "get over it".

Because for as long as we are capable of caring, we should care that other people have to live with the consequences of our actions.