HN user

piotrkaminski

721 karma

I run https://reviewable.io. You can reach me at piotr at ideanest dot com.

Posts26
Comments260
View on HN
www.bbc.com 11mo ago

Google failed to warn 10M of Turkey earthquake

piotrkaminski
41pts25
www.quantamagazine.org 2y ago

Geometers Engineer New Tools to Wrangle Spacecraft Orbits

piotrkaminski
62pts8
www.fortressofdoors.com 2y ago

Four Magic Words

piotrkaminski
1pts0
foreignpolicy.com 2y ago

Chinese Hospitals Are Housing Another Deadly Outbreak

piotrkaminski
4pts0
psycnet.apa.org 2y ago

Do growth mindset interventions impact students’ academic achievement?

piotrkaminski
2pts1
scitechdaily.com 4y ago

Fighting Covid with Covid: Driving Disease to Extinction with a Defective Virus

piotrkaminski
3pts2
www.forbes.com 6y ago

Elon Musk’s 42,000 StarLink Satellites Could Just Save the World

piotrkaminski
1pts0
www.sciencedaily.com 6y ago

Ketogenic diet helps tame flu virus

piotrkaminski
5pts0
www.theatlantic.com 7y ago

At Work, Expertise Is Falling Out of Favor

piotrkaminski
1pts0
link.springer.com 7y ago

Heritability of Lifetime Earnings

piotrkaminski
2pts1
www.theguardian.com 7y ago

Dutch man, 69, starts legal fight to identify as 20 years younger

piotrkaminski
2pts0
www.theatlantic.com 7y ago

A Warning from Europe: The Worst Is yet to Come

piotrkaminski
16pts2
www.latimes.com 8y ago

With a spacecraft in trouble and the White House watching, SpaceX had to deliver

piotrkaminski
1pts0
www.theage.com.au 8y ago

What sugar does to your brain

piotrkaminski
164pts65
blog.gadflyllc.com 8y ago

Self-Driving RVs, Not Cars, Will Bring About the True Paradigm Shift

piotrkaminski
3pts0
www.huffingtonpost.com 9y ago

The Likely Cause of Addiction Has Been Discovered, and It Is Not What You Think

piotrkaminski
2pts0
www.edsurge.com 9y ago

How One Coding School Hopes to Teach Thousands of Students, Without Professors

piotrkaminski
2pts0
www.nature.com 9y ago

Gates Foundation research can’t be published in top journals

piotrkaminski
5pts0
medium.com 9y ago

The Epic Guide to Bootstrapping a SaaS Startup from Scratch–By Yourself (Part 1)

piotrkaminski
3pts0
www.polygon.com 10y ago

Welcome to the Void

piotrkaminski
3pts0
www.dronelaw.pro 10y ago

One lawyer’s (sarcastic) take on the FAA’s recreational drone registration FAQ

piotrkaminski
3pts0
blog.reviewable.io 10y ago

Running users' rules safely and cheaply on AWS Lambda

piotrkaminski
1pts0
www.gitcolony.com 11y ago

GitColony (communal code review)

piotrkaminski
1pts0
blog.alinelerner.com 11y ago

Resumes suck. Here’s the data

piotrkaminski
16pts1
euclidthegame.com 11y ago

Euclid: The Game

piotrkaminski
2pts0
wrongsideofmemphis.com 11y ago

GitHub for reviewing code [is disappointing] (2013)

piotrkaminski
3pts0

I thought this was the weakest argument in the article. Yes, non-determinism is inherent to LLMs. It's also inherent to human brains, yet somehow we still manage to call (some) people reliable.

The bit about backwards compatibility doesn't make sense either. LLMs, just like humans, can take backwards compatibility into consideration — or not. Sometimes they'll forget, and sometimes they'll fixate on it even in a system that hasn't been deployed yet. It has nothing to do with LLMs never doing "the same thing the same way twice".

LLMs may or may not become as reliable as other productivity-improving infrastructure, but it's not the nature of their technology that will decide this.

By and large we do. Unfortunately, the losers don't care unless you identify them personally. For them, the thrill of cheating and griefing others easily overcomes some generalized cultural zeitgeist.

We do three things:

First, we use Missive to integrate email and chat. This way everything's in one place, properly threaded, and we can easily discuss emails internally in context. Much much better than GMail + Slack.

Second, I run video chat office hours twice a week (Tuesday/Thursday). Anybody can drop in to discuss anything — or not, if there's no need. This lowers the activation energy for "in person" discussions that otherwise might not get scheduled and promotes async work the rest of the time.

Third, regular company offsites! Even a few days a year is good.

I'm building an open source implementation of the Firebase RTDB server, that will be wire-compatible with Google's. This means that all the (already open sourced) SDKs will work pretty much as is, over REST or websockets. Security rules will also be fully supported. (The only meaningful caveat is that it's just the RTDB, so you need to deal with authentication yourself, and kinda shoehorn it into the existing APIs.)

What I get out of this is that even for teams that prioritize trust and velocity and eschew the use of pre-commit code reviews, there's a strong argument to be made for putting all new hires on an approval-required list for the first few months!

Yep, Git's semantics are seriously lacking (see also renames). In Reviewable, we work around this with heuristics: we use Change-Id if it happens to be available, and otherwise do best-effort loose lexical matching on the commit messages to match up pairs across a rebase. It works reasonably well in practice but it's a bunch of complex code that I'd rather not have to maintain...

Agreed that their API is the most important thing, but IMHO they're not doing a particularly great job of it. You've got two separate API systems (REST and GraphQL) that overlap but with neither a superset of the other, two separate ID systems, no help in handling the wide range of incompatible API versions used by old GHE instances in the field, OAuth apps vs Apps that have different constraints on the APIs they're allowed to call and with no clear migration path between them, important bits of functionality used by their own UI that aren't available through the API at all, a convoluted API quota system, etc.

Frankly, a lot of it feels like they were trying to deprecate and replace an older system with the shiny new thing, then realized halfway through that they couldn't and now we're stuck with two somewhat incompatible ones for the foreseeable future. They could really use a strong tech lead on this.

To be fair, they did improve several things in the PR flow over the last decade but there's definitely a lot more that could be done. I just hope they keep their API team well-resourced so that code review tools like Graphite and Reviewable can keep working! (Disclaimer: I'm the founder of Reviewable.)

One simple trick helped us a lot: we have a rules transpiler (fireplan) that adds a default "$other": {".read": false, ".write": false} rule to _every_ property. This makes it so that any new fields must be added explicitly, making it all but impossible to unknowingly "inherit" an existing rule for new values. (If you do need a more permissive schema in some places you can override this, of course.)

Our use of Firebase dates back 10+ years so maybe the modern rules tools also do this, I don't know.

What would really help us, though, would be:

1. Built-in support for renaming fields / restructuring data in the face of a range of client versions over which we have little control. As it is, it's really hard to make any non-backwards-compatible changes to the schema.

2. Some way to write lightweight tests for the rules that avoids bringing up a database (emulated or otherwise).

3. Better debugging information when rules fail in production. IMHO every failure should be logged along with _all_ the values accessed by the rule, otherwise it's very hard to debug transient failures caused by changing data.

Our experience has been very different. Our Firebase security rules are locked down tight, so any new properties or collections need to be added explicitly for a new feature to work — it can't be "forgotten". Doing so requires editing the security rules file, which immediately invites strict scrutiny of the changed rules during code review.

This is much better than trying to figure out what are the security-critical bits in a potentially large request handler server-side. It also lets you do a full audit much more easily if needed.

if you want to reverse the car, you have to use on-screen controls!

So? If you're switching to reverse then by definition you're stopped (or nearly so) and can afford to take your eyes off the road. The control is no further than most cars' center tunnel-mounted gear levers. Plus it only has the two common drive/reverse settings accessible via the swiping action, rather than all the rarely-used options. (Do you know how many times I've shifted into Neutral or Low by mistake in an unfamiliar car...?)

What exactly is the risk?

This assumes you're using a consumer Gmail account, I guess? If so, yeah, you're SOL. But I think as long as you have your owns domain you should be fine, even if you hook it up to Google Workspace for email, since you can always switch it to another provider. (And yeah, I realize this is not something civilians are likely to be able to figure out / do...)

Thanks for writing this up — that's a really interesting perspective on the problem, and definitely worth pondering. I'm not familiar with the underpinnings of cross-country payments so I'll just take your description as valid.

I think it's not completely incompatible with my view, though: if you don't have a country B subsidiary (the assumption underlying this entire discussion!) then the most country B can do is tell the payment processing company you're contracting with to stop doing business with you. That's completely fair and I see it as a kind of "financial firewall" for country B.

Even this power is subject to some checks and balances, though: 1. If your service/site is popular, country B's population may object to no longer being able to do business with you and put pressure on country B's government. 2. You could bypass the financial system with crypto payments. (Yeah, not terribly practical for most use cases, but could become more popular in case of government overreach.) 3. Ad-supported businesses — like the one in the original article, apparently — are immune to this kind of intervention!

Ultimately, a country can only control entities with a physical presence inside its borders, and while some common commercial architectures necessitate this (to some degree) not all do. Countries that make laws that pretend otherwise just end up looking silly.

Yes, that's how it works. Specifically, the common argument that applies to most companies (incl. Rumble), is that you're trading within that country if anyone from that country is either paying for your product/service, or making money from your product/service; and therefore you essentially need to function as (if not actually legally have) a per-country corporate subsidiary amenable to the laws of that country, if you want to continue doing that.

I think an equally valid (and frankly more reasonable) interpretation is that if anyone from another country is paying for your product/service, then they're trading within _your_ country. If in doing so they contravene laws of _their_ country (e.g., forbidden speech, taxes, etc.) then that's their problem, not yours. This interpretation has the advantage of actually being enforceable, unlike the alternative.

And if a country doesn't like that then they're free to "protect" their citizens by building a Great Firewall, which is _totally and only_ for their people's benefit.

Are you not a programmer because you use a compiler and "paste" its output into the executable? Or an assembler, instead of flipping bits by hand in memory? Are people making complex spreadsheets with hundreds of formulas not programmers?

We've been raising the level of abstraction in code for decades and it looks like LLMs might just be the next level up. Yes, using LLMs will put more complex code within reach of more people but I'm sure it won't be nearly everyone, and I bet that it'll raise the ceiling of what the best programmers can do at the same time.

Of course, we're free to redefine what "programmer" means at any time as well, if a new definition proves to be more useful.

devalue the diploma from the public college

Huh? How so? If the only change is that you no longer need to pay for college, but otherwise admission standards and education quality remain the same, then why would the value of a diploma change? Unless the diploma was implicitly a signal for wealth, of course...