HNHacker News
TopNewBestAskShowJobs

ilammy

732 karma · joined December 26, 2017

https://github.com/ilammy

[ my public key: https://keybase.io/ilammy; my proof: https://keybase.io/ilammy/sigs/4IXQQFLXYQQqzbgFmD4CGmxYfNI4scLL2ci6RQB6YF4 ]

submissionscomments
ilammy··on The Aral Sea has shrunk because of the re-routing of its source rivers (2022)
> Incidentally, the "many centuries ago" framing is revealing of a general attitude I've noticed from Americans

They don’t say “in Europe 100 miles is a long way, in America 100 years is a long time” for nothing.

100 years ago WW1 just finished. 200 years ago saw a peak of slave imports into US. 300 years ago thirteen colonies just finished forming. 400 years ago colonization just started. 500 years ago Columbus’ expeditions were still news.

Not to say that nothing happened in Europe in the meantime lol, but this sets a perspective quite well. “100 years ago” is effectively “eternity” for an individual human. Only societies can retain memories at that scale.

ilammy··on Safe deposit boxes aren’t safe (2019)
How do you access the cloud if you lost your laptop? Or even all of your stuff burned down along with your house?

How do you remember a strong passphrase after four months in hospital recovering from a cerebral trauma?

Emergency emergencies. Off-site physical backups are important too.

ilammy··on Cheerful chatbots don’t necessarily improve customer service
Okay, I'm interested, how did one get car fuel back then? Did people have to send one of their servants to a chemist for a mixture?
ilammy··on Sesame allergen labeling law has unintended effect: sesame in more foods
And when you live in a world with 8 billion people, that’s a lot of food to sell.
ilammy··on Becoming financially independent as solo quant
Oh, you can find opportunities. They just don’t have the RoI and scalability that hedge funds are looking for. Sometimes bigger scraps reach the ocean floor and it’s a big day in bottom feeder’s life to stumble upon one.
ilammy··on Early retirement and ageing population causing labour shortages: Lords report
You heathen, how can you even suggest that the number goes down!?
ilammy··on Early retirement and ageing population causing labour shortages: Lords report
It is (mathematically) possible for individual people to work fewer hours with the workstation being manned for exactly the same amount of hours. It just requires paying salary to more people and higher administrative overhead. And slowing down creative types of work.

Whether it’s possible for enterprises to suck up the reductions in profit – that’s a different question. For developed societies being all about The Economy.

ilammy··on I Asked ChatGPT to Explain Some Jokes to Me
An apocryphal one from the Russian-speaking corner of the Internet. I thought it was in the classic Rootless Root, but turns out I misremembered and it’s a different thing. I tracked down the source if you want to read more: [1][2][3][4] (some humor might be lost in translation).

    ----
A sysadmin struggles to choose a strong password for his RADIUS server. He seeks advice from Master Ha Ker Noose.

“Master, in your opinion, is password ‘诺曼底登陆’ a strong one?”

“No”, said Master Ha. “For it is a common dictionary word.”

“But it’s not in the dictionary...”

“‘Dictionary’ means the wordlists used for brute-force attacks. Such lists are compiled from all combinations of letters and symbols ever mentioned on the Internet.”

“Okay... How about ‘шьзщыышиду’?”

“I doubt it. From the dictionary.”

“But how?! it’s—”

“Just google it. See for yourself.”

The sysadmin swiftly navigates the Web.

“You are absolutely right, Master.”

After some time, the sysadmin comes back:

“Master, I have managed to generate a good password which is not present in any dictionary.”

Master Ha nods with approval.

“I checked in Google”, the sysadmin goes on. “This combination does not exist on the Internet.”

“Now it does.”

    ----
[1] https://infowatch.livejournal.com/16359.html

[2] https://infowatch.livejournal.com/16525.html

[3] https://infowatch.livejournal.com/59867.html

[4] https://infowatch.livejournal.com/110897.html

ilammy··on I Asked ChatGPT to Explain Some Jokes to Me
Hence single-use. Like in that koan about checking for your password on the internet.

Humans gotta make up new jokes, while AIs can only rehash the one they know. At least, until AIs generalize the concept of humor, categorize 17 essential joke structures, and amass big enough corpus to generate infinite supply of memes. Then the concept of joke as we know it will cease to exist and lose its meaning. But humans can make up something new.

To be fair, ChatGPT got caught when trying to explain jokes, so that might be used. But I personally think that the best test for humanity is something that cannot be put on the internet, which we humans work increasingly hard to eradicate.

ilammy··on I Asked ChatGPT to Explain Some Jokes to Me
So, jokes are effectively single-use Turing tests?
ilammy··on Mist Showers: Sustainable Decadence? (2019)
What’s with the “water spending” numbers here? It’s not like the water in shower gets “used up”.

Your meter counts 50 liters, but that’s not 50 liters of precious water supply permanently removed from the planet.

ilammy··on Who knew the first AI battles would be fought by artists?
This is like saying that continuously surveilling people when they are outside of their private property and live-reporting it to the internet is not a huge ethical issue. For you are always at risk of being seen when in public and the rest is merely exercising freedom of speech.

Something being currently legal and possible doesn’t mean being morally right.

Technology enables things and sometimes the change is qualitatively different.

ilammy··on EU-wide maximum limit of €10K for cash payments
You don’t need to lower the limit. Just wait for inflation to do its thing. No new legislation or public debate necessary.
ilammy··on US reps urge DOJ to investigate anticompetitive conduct affecting apartment rent
> If you tax second homes, people will not buy these, not put them out for rent

Which is exactly the point of the policy.

If the society recognizes that private landlordship is net negative like smoking, it’s expected to be regulated out of existence.

Why should people wanting to buy a second home be given priority over people wanting to buy their first, from the moral stance?

ilammy··on Act: Run your GitHub Actions locally
If it’s manageable – just don’t. Build from scratch. Make sure your build works from scratch and completes in acceptable timeframe. If it’s painful, treat the root cause and not the symptoms.

If it’s unbearable due to circumstances out of your control, there’s nothing wrong with adding some actions/cache steps to .github/workflows – this goes around the build: fetch previous cache before, update the cache after if needed.

The build is still reproducible outside of GitHub Actions, but a pinch of magic salt makes it go faster sometimes without being an essential part of the build pipeline married to GitHub.

If you need to install a whole host of mostly static dependencies, GitHub Actions support running steps in arbitrary Docker container. Prepare an image beforehand, it can be cached too, now you have a predictable environment. (The only downside is that it doesn’t work on macOS and Windows.)

ilammy··on Act: Run your GitHub Actions locally
This is a lesson that I've learned after going all-out on actions once.

Now my makefiles in addition to the usual "make" and "make test" also support "make prerequisites" to prepare a build environment by installing everything necessary and "make ci" to run everything that CI should check. With actual implementation being scripts placed under "scripts/ci".

The scripts do provide some goodies when they are run by GitHub Actions – like folding the build logs or installing dependencies differently – but these targets also work on the developer machine.

ilammy··on Investor home purchases drop 30%
You can go wherever you want. The house isn’t going anywhere, it’s still registered as yours and you still pay taxes for it, with a discount if you designate it as your primary residence.
ilammy··on Ghana plans to buy oil with gold instead of dollars
Because who knows what’s on the list of excommunicatable offenses. Today it’s war of aggression, 40 years later on not enough diversity and inclusion could qualify, or the eagle knows what else. Hope for the best prepare for the worst.
ilammy··on Ghana plans to buy oil with gold instead of dollars
Oh sweet child, try transferring your “dollars” out of your country first – especially into US – before you claim they are real.
ilammy··on So I lost my OpenBSD FDE password (2016)
Depends on your threat model.

Most people protect against access by whoever stole their laptop, with Microsoft and TLAs not being considered a threat. Those who do probably don't use Windows in the first place.

ilammy··on Sile: A Modern Rewrite of TeX
TeX itself is not really complex. The implementation is fine. The hard part is the ecosystem.

Any contender is going to face a daunting task of explaining why adopters should throw away 50 years of collective work of thousands of people that went into TeX packages in CTAN. Math notation is at best 1% of the reasons why people use TeX. Packages are.

ilammy··on The Perfect Commit
> since PRs usually cover a feature or a fix for a ticket, these frequently involve doing multiple things to implement the feature or fix the bug

Hence the calls to “split changes into multiple smaller PRs” you hear so often, since the scope of the unit of change is actually important.

If your unit of change is a PR, you'd want PRs to have limited scope & nice description, and you would not really mind that a feature requires 10 PRs to implement.

> Your parenthetical clause is not theoretical.

It is absolutely theoretical until it is required in practice.

Your reality is dealing with codebases that span multiple years. Other people might have different circumstances. They might not have come to value the tidy history made of self-contained commits because they never had a need for one. Either perceived, or quite real.

Why would you need git blame if you stay at a company 2 years tops? Why would you need git blame once your feature is effectively rewritten? twice? Why would you need git blame if you’re just an intern and merging & picking is done by senior greybeards? Why would you need git blame if everything is perfectly explained in the ticket linked from a PR? Why would you need git blame if the code is clear and does not require git archaeology to understand it?

There are ways to get things successfully done without git blame or “nice” history. And your output is not history, your output is feature in use by real users.

I called it “commit discipline” because it is discipline: it has benefits but most of them are non-obvious and hard to explain to undisciplined; the discipline requires extra effort to follow; in order to effectively acquire it you need nurturing, training, and reinforcement; after sticking with it for N years it’s just what you do and you do not imagine doing things otherwise. Oh, and you absolutely can get things somehow done without it and do not even realize what you’re missing. Or do things with it and do not realize that you’re wasting time on irrelevant work.

ilammy··on Nobody wants touch-screen glove box latches
> Remind me again why the brake pedal isn't a button buried in a sub-menu?

“Because title 49, subtitle B, chapter III, subchapter B, part 393, subpart C, paragraph 393.40 of Federal Safety Regulations requires us to install brakes as specified by subpart B, paragraph 571.105 of the same regulations, which require a pedal. And if those did not exist, then we absolutely would install some other bullshit, make you pay extra for it, and bear no responsibility for it whatsoever.”

Glove box isn’t a safety feature? Do whatevs, land of the free.

ilammy··on The Perfect Commit
> I care entirely about the context of the developers mind when he committed that specific line of code.

In squash workflow, the PR is the context and the unit of change. It’s shoehorned onto git only because of GitHub.

In some way it’s a self-fulfilling prophecy: if you disregard individual patches then individual patches will be disregarded. It could also be attributed to git being hard to use, with all these “commits” and “patches”. So some developers treat Ctrl-S as the “commit” hotkey, putting whatever state of the codebase into commits, keep stringing them. Then in the end just ship it for review as is, since it’s the path of least resistance, never even expecting anyone to review individual patches, because as far as they are concerned they are not sending in patches, they are sending the PR. Then maintainers are faced with these PRs, and then they have a choice: either enforce the quality of “commits”, or review the PR as a whole and disregard the commits. The choice often falls for the latter, because the former does not provide any practical benefits for the process (rather than theoretical “but we’ll have individual commits when 5 years later someone blames them”), while the latter does provide practical benefits of not alienating developers with subpar commit discipline.

ilammy··on Daemon – Writing and packaging system daemons
> How exactly could a TPM be required for Linux?

Of course it would not be "required" required—so long as you're okay with maintaining your own distro, with forks of everything having essential TPM-based security features excised, working with your own builds of the kernel. Good luck selling this your employer.

ilammy··on GitHub's Missing Merge Option
> It's really hard to track, especially on the CLI.

    git log --first-parent --max-parents=1
Now you don't see merge commits.

Forbid merge commits with conflict resolution, and you're done.

ilammy··on Expanding access to the future of work with crypto payouts
Probably an exaggeration, but caveats apply.

Say, you get paid in USD.

    You got paid: 10000 USD

    Income tax: 15%

    Government exchange rate: 130 ARS per 1 USD
    Unofficial exchange rate: 330 ARS per 1 USD
Now, if you do things like daddy government says and use the official rate, you end up with this amount:

    10000 USD * 130 = 1300000 ARS  and then  1300000 * (1 - 0.15) = 1105000
But if you do what's good for you and still pay taxes to not go to jail:

    10000 USD * 330 = 3300000 ARS  and then  3300000 * (1 - 0.15) = 2805000
Now consider your "effective" tax rate:

    You got paid: 3300000 ARS (fair market value)

    Government rate: (3300000 - 1105000) / 3300000 = 0.66
    Unofficial rate: (3300000 - 2805000) / 3300000 = 0.15
Note that it's before you consider future devaluation of peso. For tax purposes you can say you received 3.3M ARS, but just keep it as 10k USD. Then your effective "government cut" rate over the years could very well be in 90% territory if you do the stupid thing and hold pesos.
ilammy··on Subprime loans for college hiding in plain sight
Moreover, not only you’re not counted as “unemployed” while attaining a degree — after you get your degree, you’re left with a hefty debt: a pretty nice incentive to not stay unemployed!
ilammy··on Kiwi Farms response to CloudFlare
> How do you differentiate between "if enough people demand it on Twitter" and "if our consciences demand that we act"?

Easy: for-profit organizations do not have conscience, in principle.

ilammy··on El Sueño Americano / The American Dream
It's "broken" in the sense that other parts of the society depend on non-enforcement. Start enforcing it more often and the house of cards starts crumbling.
← PreviousPage 2 of 12Next →