HNHacker News
TopNewBestAskShowJobs

kardianos

1,490 karma · joined February 21, 2017

submissionscomments
kardianos··on The way CTRL-C in Postgres CLI cancels queries is incredibly hack-y
In general I love postgres. There are to problems with postgresql in my book: the protocol (proto3) and no great way to directly query using a different language.

The protocol has no direct in-protocol cancellation, like TDS has. TDS does this by making a framed protocol, at the application protocol level it can cancel queries. It has two variants (text and binary) and can cause fragmentation, and at the query and protocol level only supports positional parameters, no named parameters.

One a query is on the server, it doesn't support directly acting on a language mode. I don't want to go into SQL mode and create a PL/SQL proc, I just want direct PL/SQL. Can't (really) do that well. Directly returning multiple result sets (eg for a matrxi, separate rows, columns, and fields) or related queries in a single round trip is technically possible, but hard to do. So frustrating.

kardianos··on Show HN: Pgit – A Git-like CLI backed by PostgreSQL
I've already spun up claude to make a POC for this.

I like gerrit, but the server is such a pain to handle (java plus FS). PG would be the only server side component required, though you could have an optional review server that would act like a PG client as well.

The FUSE would be extremely nice for CI/CD for instant cloning with a local resource cache, which is much harder to do with a FS based git.

kardianos··on Show HN: Pgit – A Git-like CLI backed by PostgreSQL
This could be great for larger repos.

If you couple this with an optional FUSE provider, server side user branches, and gerrit like change sets, that would be awesome.

kardianos··on Animation 10k Starlink Satellites
By pollute, you mean "make awesome and useful", right?

You do value human utility, right?

kardianos··on UUID package coming to Go standard library
I would say the same for dec128. I would love a standard TYPE for dec128, with maybe zero cost std lib to transform it into a mutable uint128 or a zero cost conversion to struct{uint64,int64).
kardianos··on Ask HN: How are you all staying sane?
Ask yourself: could I be wrong? In other words, be humble. Maybe the world is getting better, but in your frame of mind, it is getting worse.

For AI: none know the future. The future you thought you saw before was an illusion, as it always is. So be humble, and take things a day at a time.

For Politics: Maybe the US and the US administration isn't the bad guys. Maybe the bad guys sent the murdering dictators cash, and maybe the good guys are taking them out, giving actual democracy and the people a chance. Consider you could be wrong. Be humble.

For Tech in general: choose agency. Take one area where you can try to build or use things which you don't think is slop and is good. Build, use, or support that. Ignore the slop and let it rot. You don't need to control the world. You just need to control you. You are limited. Be humble.

kardianos··on Banned in California
That, and you have to ensure your energy costs (power) are low and you have a secure source of raw materials. I'm not an expert, but from what I've heard, the economic region over there has been doing a poor job on both those fronts. Furthermore, you have to talk about regulation vs safety. The EU has regulation. Maybe too much.

There are also network effects. Your plant that is energy intensive is closing? Now other manufactures must increase their cost as transportation is increased and local contracts harder to get. Your chemical plant, which has operated within good bounds for a decade can't get a permit to expand, or is protested? Your intake products now either go up in price or become unable to attain them at all.

kardianos··on Banned in California
I live in Texas, which is still part of the USA, and we manufacture a great deal.

I have a friend who works as an environmental engineer at a chem plant. They work hard to keep things safe and clean, and rigorously monitor their output.

I'm sure we could do even more if we weren't competing in meany areas against legal jurisdictions which DON'T care about such things. We aren't "priced out". We are regulated out and out competed by jurisdiction which have many fewer labor laws and much more lax environmental monitoring. If we are out-competed on product, then we deserve to loose, which is where libertarians and free-trade have a point. But if we are out-competed on keeping people and the environment reasonably safe? That's when we enact trade barriers.

That is how you actually keep the environment and people safe.

kardianos··on Banned in California
Those are the incorrect choices. You CAN actually do these processes, and still keep the environment clean.

I believe in procedural symmetry: if you ACTUALLY care about people and the environment, then you wouldn't let other poorer do these thing. The USA being richer, can afford to do it right and safer, not through regulation, but through process. There is a difference.

So what would you do if you ACTUALLY cared about the people and environment? Put high tariffs on dangerous process products, reduce regulation (permits, etc), increase standardization and final safety measurements. Then the products we use, we make, safely.

But people don't actually care about the environment. They care about looking like they care about the environment, and sending industrial processes somewhere else. There is a difference.

kardianos··on QRTape – Audio Playback from Paper Tape with Computer Vision (2021)
Cool project.

Though if you are looking at QR codes for something like this (internal, on paper), strongly consider using data matrix codes. They are more compact, same available error correction codes, and actually have a composition story rather then spaces between them.

Do to how datamatrix codes can be composed, you could probably design a code that both fills the height and does a continuous stream of codes with no horizontal white space between them, just a solid bar as per the spec.

kardianos··on Anthropic tries to hide Claude's AI actions. Devs hate it
I've liked opencode+glm5 quite a bit so far.
kardianos··on The Human in the Loop
> My worry isn't that software development is dying. It's that we'll build a culture where "I didn't review it, the AI wrote it" becomes an acceptable excuse.

I try to review 100% of my dependencies. My criticism of the npm ecosystem is they say "I didn't review it, someone else wrote it" and everyone thinks that is an acceptable excuse.

kardianos··on Why German Strings Are Everywhere?
This is actually really similar to how SQL Server has long encoded it's varchar(max) format as I understand it. Short text is stored on the row page, but longer text is bumped to a different page.
kardianos··on The Post-American Internet
> That's where Trump came from: a coalition of billionaires, white nationalists, Christian bigots, authoritarians, conspiratorialists, imperialists,

Uh, no.

I've been told my entire life it is good for me to ship jobs overseas and for the country I live in, to be a "service" industry. I thought it was crazy then, as I do now.

The Trump coalition is the ONLY administration who has meaningfully reversed policies that push jobs away from my own country.

kardianos··on FracturedJson
I had a need to put all array data on single lines, but otherwise normal JSON: https://github.com/kardianos/json
kardianos··on Go away Python
True, but major versions are locked in through the import path and should be compatible.
kardianos··on Scaling Go Testing with Contract and Scenario Mocks
My DB heavy app, when I run a Go unit test, it spins up a DB instance, populates it, runs the tests, and drops the DB. Never ever any mocks. The best part about unit tests isn't testing the Go code. It is testing the SQL.

Yes, it takes longer to run your tests. So be it.

kardianos··on Inside CECOT – 60 Minutes [video]
Bari Weiss had editorial comments that forced a delay. If you want to read her comments, look for them:

https://x.com/thesimonetti/status/2003142908854313225

They seem reasonable. The person doing this 60 minute segment has also pushed false stories in the past, which make her concern more relevant.

kardianos··on Full Unicode Search at 50× ICU Speed with AVX‑512
Looks neat. What are all the genomic sequence comparisons in there for? Is this a grab bag of interesting string methods or is there a motivation for this?
kardianos··on Full Unicode Search at 50× ICU Speed with AVX‑512
In a real (not "normal") world, trade-offs exist and Go choose a specific set of design points that are consequential.
kardianos··on Sending DMARC reports is somewhat hazardous
Google's DMARC report's seem just fine. Microsoft's DMARC reports routinely report broken delivery, BUT the breakage is on their end. They forward to a custom domain, then their DMARC report says, look your email is broken. It is SO frustrating.

That being said, when I had some IPv4/IPv6 trouble on the email server, I did get good reports that helped my discover, diagnose, and fix the problem. So I like DMARC reports. Microsoft's support of custom domains appear to be lacking to say the least.

kardianos··on X Just Accidentally Exposed a Covert Influence Network Targeting Americans
It isn't bigger news because it would expose many of the targets they like to throw things at (eg Groypers) are not American, but foreign agents masquerading as such.
kardianos··on X begins rolling out 'About this account' location feature to users' profiles
No, it exposed the groypers and racists masquerading as MAGA or conservatives who are from foreign countries.
kardianos··on Calculus for Mathematicians, Computer Scientists, and Physicists [pdf]
I agree with this. But I don't see the students rejecting this, but the education degreed peoples who choose texts and the publishers want to make all learning for all people. This is foolish. Most people don't need to know calculus. And if you do learn it, do so with rigor so you actually learn it and not just the appearance of it, which is much much worse.
kardianos··on X.com is gonna snitch you out to the public if you use a VPN
I agree it is a good thing.

These so-called "America First" and "MEGA" accounts have been driving a wedge within the conservative party for a while. Many speculated that these were largely foreign accounts, but it was hard to prove, until now.

Many of the racist "conservative" voices are being shown to be from Iran or other countries.

kardianos··on Kubernetes Ingress Nginx is retiring
Traefik has an Nginx compatibility for annotations as well to make it easy to switch.
kardianos··on FyneDesk: A full desktop environment for Linux written in Go
Generally agree. All changes for me are cherry-picked to master only.
kardianos··on Immich v2.0.0 – First stable release
Sure, but SQL Server DB protocol (TD) has a dedicated Bulk Insert specific for that functionality. TDS isn't perfect, but it is much better then the postgresql wire protocol v3.

Sometime I want to build a DB front-end that you send up some type of iceberg/parquet or similar, and return a similar file format over a quic protocol. Like quic, persistent connections could be virtualized, and bulk insert could be sane and normalized: eg insert these rows into a table or temp table, then execute this script referencing it. While I'm at it, I'll normalize PL/SQL so even brain-dead back-ends (sqlite) could use procedural statements and in-database logic.

kardianos··on Traefik's 10-year anniversary
I use traefik quite a bit. Easy to use, easy to understand. Optional dashboard for understanding the current state of the configuration.
kardianos··on Qwen3-VL
Wait a moment... It gave you BOUNDING BOXES? That is awesome! That is a missing link I need for models.
← PreviousPage 2 of 13Next →