HNHacker News
TopNewBestAskShowJobs

mxey

429 karma · joined April 1, 2012

submissionscomments
mxey··on Deprecate like you mean it
> especially if readers don't read to the bottom.

That note at the bottom was only added after the article was posted.

mxey··on Deprecate like you mean it
> We’ve discussed doing brownouts where we fail everything for an hour with clear error messages as to what is happening.

That sounds like the best option. People are used to the idea that a service might be down, so if that happens, they’ll look at what the error is.

mxey··on Deprecate like you mean it
The article has a new note at the bottom:

> In case the sarcasm isn’t clear, it’s better to leave the warts.

mxey··on Deprecate like you mean it
So existing binaries will keep working?
mxey··on Deprecate like you mean it
glibc, which has had ABI compatibility for decades?
mxey··on Deprecations via warnings don't work for Python libraries
Go does deprecate stuff. It just never removes it.
mxey··on Deprecations via warnings don't work for Python libraries
> If you develop a useful library and give it away for free then all power to you if you want to rearrange the furniture every 6 months.

That would make it no longer a useful library

mxey··on Deprecate like you mean it
Actually this is the reason why Win32 is the stable ABI for Linux.

https://blog.hiler.eu/win32-the-only-stable-abi/

mxey··on Deprecate like you mean it
> Not that it is always trivial to avoid breaking backwards compatibility, but there are so many times that it would be.

In this case it was 2 functions with 1 line of code each. https://github.com/urllib3/urllib3/pull/3732/files

mxey··on Deprecate like you mean it
It is wild to realize that this is the same author as https://entropicthoughts.com/you-want-technology-with-warts
mxey··on Deprecations via warnings don't work for Python libraries
It’s like 5 lines of code https://github.com/urllib3/urllib3/pull/3732/files
mxey··on CSS now has an if() conditional function
Haven’t seen this mentioned yet, but this means you can do media queries in inline styles, right?
mxey··on Uncloud - Tool for deploying containerised apps across servers without k8s
I’ve run Kubernetes since 2018 and I can count on one hand the times there were major issues with an upgrade. Have sensible change management and read the release notes for breaking changes. The amount of breaking changes has also gone way down in recent years.
mxey··on Show HN: Identifiy test coverage gaps in your Go projects
> Misplacement Detection: A test is misplaced if it primarily calls functions from a different source file

There is no need for a 1:1 relationship between code files and test files in Go.

mxey··on Stopping bad guys from using my open source project (feedback wanted)
Terrible article. The whole style is annoying but let me just quote two things.

> The funniest thing is when Cuck Licensers complain that people are abiding by their licenses. They will complain that people took their code and made money off of it. They will complain when they don't get some social credit they feel like they deserve when their code is used in a project. They will complain if people fork their project and it becomes more popular than the original. They will complain when some tech giant takes their code and makes spyware out of it.

None of these things are prevented by making your code GPL. GPL only means that if they distribute the software, they also have to distribute the source. There is no requirement to provide “social capital”, to not make money or to not put spyware in it.

> With Cuck Licenses, you get the worst of two worlds: You get no credit for your work, […]

BSD-style licenses require attribution when distributing the software. So if Intel distributed MINIX, they had to put the license and Andrew Tanenbaum’s copyright notice somewhere in their documentation. That’s why we get all those screenshots of curl being in things.

mxey··on GitLab discovers widespread NPM supply chain attack
On disk, it’s encrypted. The running service, at least on macOS, only hands the item out to specific apps, based on their code signing identity.
mxey··on GitLab discovers widespread NPM supply chain attack
> And worst thing, afaik there is no way do do it correctly in MacOS for example. I'd like to be corrected though.

https://developer.apple.com/documentation/security/keychain-...

And similar services exist on Linux desktops. There are libraries that will automatically pick the right backend.

mxey··on Go's Sweet 16
how would that look with type inference?

You can write

var x = 5

how would that work if the type had to be first? Languages that added inference later tend to have “auto” as the type which looks terrible.

mxey··on Go's Sweet 16
> don't know if they've ever told anybody why they went with the Pascal style

I don’t know if this is the reason but Robert Griesemer, one of the three original guys, comes from a Pascal/Modula background.

mxey··on SSL Configuration Generator
Proper configuration of cryptography should not be abdicated to application developers or operators: https://go.dev/blog/tls-cipher-suites

> The Mozilla SSL Configuration Generator is great, and it should not exist.

mxey··on Kafka is Fast – I'll use Postgres
I just read the post and didn’t find it contrived at all. The point is to simulate a) network isolation and b) loss of recent writes.
mxey··on Kafka is Fast – I'll use Postgres
> while manually corrupting the log file

To be fair, since without fsync you don't have any ordering guarantees for your writes, a crash has a good chance of corrupting your data, not just losing recent writes.

That's why in PostgreSQL it's feasible to disable https://www.postgresql.org/docs/18/runtime-config-wal.html#G... but not to disable https://www.postgresql.org/docs/18/runtime-config-wal.html#G....

mxey··on Kafka is Fast – I'll use Postgres
The context was somebody doing this on their laptop.
mxey··on Kafka is Fast – I'll use Postgres
Only replication is built-in, you need to add a cluster manager like Patroni to make it highly-available.
mxey··on Kafka is Fast – I'll use Postgres
If I don’t actually want durable and consistent data, I could also turn off fsync in Postgres …
mxey··on Kafka is Fast – I'll use Postgres
Doesn’t Kafka/Redpanda have to fsync for every message?
mxey··on Apple will phase out Rosetta 2 in macOS 28
Linux is by far the OS with the highest amount of churn.
mxey··on Apple will phase out Rosetta 2 in macOS 28
I cannot tell you about implementation difference but what I mean is that this only talks about Rosetta 2 for Mac apps. Rosetta for Linux is a feature of the Virtualization framework that’s documented in a completely different place. And this message says a part of Rosetta for macOS will stick around, so I would be surprised if they removed the Linux part.

On the Linux side, Rosetta is an executable that you hook up with binfmt to run AMD64 binaries, like how you might use Wine for windows binaries

mxey··on Apple will phase out Rosetta 2 in macOS 28
How do you build multi-arch in CI? Do you cross-compile or do you have arm64 runners?
mxey··on Apple will phase out Rosetta 2 in macOS 28
The OP says nothing about Rosetta for Linux.
← PreviousPage 3 of 6Next →