Totally random, but I had a guess about the ts error. I hadn't seen kysely before, very cool!
diff --git a/packages/lix-sdk/src/query-utilities/is-in-simulated-branch.ts b/packages/lix-sdk/src/query-utilities/is-in-simulated-branch.ts
index 7d677477e..39502f245 100644
--- a/packages/lix-sdk/src/query-utilities/is-in-simulated-branch.ts
+++ b/packages/lix-sdk/src/query-utilities/is-in-simulated-branch.ts
@@ -21,10 +21,9 @@ export function isInSimulatedCurrentBranch(
// change is not in a conflict
eb("change.id", "not in", (subquery) =>
subquery.selectFrom("conflict").select("conflict.change_id").unionAll(
- // @ts-expect-error - no idea why
subquery
.selectFrom("conflict")
- .select("conflict.conflicting_change_id"),
+ .select("conflict.conflicting_change_id as change_id"),
),
),
// change is in a conflict that has not been resolved
The conversation in some aspect may have tripped the flamewar detection, which removes the reply button iirc. You can manually reply to a specific comment by clicking/tapping on on its timestamp.
In the context of the union query, I think it makes sense. The query takes two different columns (with two different names) from the same table, and combines them together into one column. The TS error happened because the column names didn't match between the two union inputs. But they would never match without the "as".
Firing generally isn't friendly, but no one "took over." The people who had the power exercised it. Maybe they shouldn't have, I feel no compulsion to argue on their behalf, but calling it a "takeover" isn't correct.
I think when people say "takeover" or "coup" it's because they want to convey their view of the moral character of events, that they believe it was an improper decision. But it muddies the waters and I wish they'd be more direct. "It's a coup" is a criticism of how things happened, but the substantive disagreements are actually about that it happened and why it happened.
I see lots of polarized debate any time something AI safety related comes up, so I just don't really believe that most people would feel differently if the same thing happened but the corporate structure was more conventional, or if Brockman's board seat happened to be occupied by someone who was sympathetic to ousting Altman.
Substack’s CEO has denied any improper use of the Twitter APIs. Given Elon’s long and storied history of making things up, this allegation seems likely to be another fabulation.
Well, is scraping Twitter an improper use? Anyone can see tweets and who follows who - that's public. Twitter might consider a nascent competitor trying to scrape a significant fraction of the whole thing unfriendly though.
I worked at a company that was about 150 people when I joined. It's not primarily a software company but the early team had a bunch of ex-google folks, and they chose Bazel. I encountered it for the first time there. We did use React, yes.
I really liked the cross-language aspect of Bazel. Having one command that could compile everything and produce a deployable container in a highly reproducible way is great. It really cut down on "what's your compiler/tool version etc."-type back-and-forth during debugging with other engineers.
The bazel JS/TS rules were tough to work with when we first started using it for JS (2018 I think), especially since we were using create-react-app at the time, and that didn't mesh well with the way bazel wants to work. It's gotten a lot better though.
If I was making the choice from scratch in a new company/codebase, I think it'd really depend on the team. You kind of need broad-based buy-in to get the full benefits IMO.
This is one of those things where Balaji is ahead of the curve - the way to guarantee metadata (e.g. who the speaker is) is to do it cryptographically on-chain.
the voice data signature can be removed, unless you mean something like an audio watermark
> What via hash
audio remuxing will destroy the hash, especially since it's already done by pretty much every social media company. Even with some sort of lossy audio hash, just put some clapping or cheering behind the voice and you've probably created a new audio hash.
> When via timestamp
file timestamps can change
This solves nothing unless your user either doesn't care about sharing the original file, or is malicious but too dumb to ffmpeg -i original.ogg out.mp3.
There's an original, canonical version of the audio, and the hash of that version goes on chain. That establishes who posted it originally, when, and the exact version. Then any subsequent (potentially doctored) version can be compared with the canonical original. The on-chain timestamp and hash can't be changed after the fact, in the same way that past bitcoin blocks can't be changed (without creating a fork).
It could at least address some kinds of misleading editing. In the political use case, maybe the candidate posts all their event audio and records the hashes on chain. Then they can't change the content of any of it without getting caught. And if someone else posts an edited version, the edit will have a later timestamp, and the candidate can point to their original earlier version and prove that it's the original. That lets everyone else determine which version is the original and which version is the edit.