HN user

dcposch

3,945 karma

https://daimo.com/

https://dcpos.ch

Posts12
Comments378
View on HN

The AI part of this is a red herring. This is above all a big devops failure.

Three takeaways:

1. TEST YOUR BACKUPS. If you have not confirmed that you can restore, then you don’t have backup. If the backups are in the same place as your prod DB, you also don’t have backup.

2. Don’t use Railway. They are not serious.

3. Don’t rely on this guy. The entire postmortem takes no accountability and instead includes a “confession” from Cursor agent. He is also not serious.

4. See #1.

Running a single bad command will happen sometimes, whether by human or machine. If that’s all it takes to perma delete your service then what you have is a hackathon project, not a business.

You don't want to fine, jail or otherwise ruin the lives of thousands of kids to get them to stop. You just want them to stop spraypainting shit.

https://i.imgur.com/qaFgSm7.png

You have it backwards. It's the act of NOT fining them, NOT calling their parents, of ignoring small destructive acts that ruins lives.

Almost everyone doing a 10 year sentence for a serious crime started out by getting away with a lot of small ones.

If my account tries to send someone $3 million, I'd prefer that it's intermediated by a confused bank employee staring at a screen

This is a nice lens for looking at when stablecoins make sense.

If you're an American using your Chase account to buy coffee at Starbucks, the permissioned, heuristically fraud-checked, slow-settling tradfi system is well optimized for you.

If you are an importer buying $3m worth of bulk coffee from Kenya, you would much rather have an instant 1:1 USD transfer on beautifully efficient machine consensus.

In many countries in the world, the banking system is extractive and unreliable. The "confused employee" is not there to help you. The two weeks of money in transit is no benefit, just a source of additional counterparty risk, cost, and delay.

An immutable and transparent ledger is not for everything but it is a useful primitive.

Many skeptics assume that stablecoins are just about regulatory arbitrage.

That's part of it, but:

1. Progress often depends on evolving obsolete regulation.

Uber works much better than taxis (once upon a time, people could "call a dispatcher" an hour in advance, wait on hold, etc) and yet in the early years they had to work around taxi regs.

2. Blockchains are a fundamentally more robust way to run a ledger.

If any of you have ever written software touching tradfi custody you'll know about "reconciliation"--start of every business day, you get a dump of files in your FTP server in various proprietary formats. You parse the transactions and they don't add up. The Recon team hand-corrects and recategorizes edge cases so that the balance deltas match transaction totals and everything ties out.

This type of absurd duct tape is ubiquitous, and it's a major reason why trad rails have multi-day settlement times and even longer for international. Inflates team size and cost required to run a product. SWIFT is a messaging system -- bankers use it to essentially text each other about wires to figure out issue resolution. Some lower-level trad payments regulations are written assuming that this level of manual oversight is required to prevent ledgering errors and ensure sound accounting.

Stablecoins run on transparent, precise ledgers with machine consensus. This doesn't solve everything, but there are large categories of issues that can occur in trad payments that do not exist onchain.

3. Control is liability.

Some important regulations actually encourage blockchain-based payments. For example, money transmitter law places significant requirements on custodial money transmitters (you take money from Alice, with a promise to give it to Bob) that do not apply to noncustodial channels (you give Alice a mechanism to send directly to Bob).

The problem with all that, is the fact it remains possible to create a protocol with N big institutions [...] This maintains many benefits of the blockchain and lacks many issues (fast, simple, near zero cost)

That's more or less exactly what this is. Stripe is launching an EVM L1.

The Ethereum Virtual Machine part gives it a mature tech stack with experienced developers and auditors. Plus, well-tested smart contracts that have already processed billions of dollars on other chains can be deployed on Tempo.

The "Stripe L1" part will ensure that it's fast, simple, near zero cost.

WhatsApp is end-to-end-to-server encryption.

They have a nicely implemented E2E protocol. This is operationally convenient: Meta can accurately say that they don't store WhatsApp messages, so fewer access requests go to them. And I'm sure it's nice for engineer morale, too.

However, the app makes it semi-mandatory to turn on backups. If you say no, it keeps nagging you. If you always say no, you are in the 0.1% and everyone you talk to has backups enabled, so all of your conversations are helpfully backed up anyway, just not for you :)

These backups go to Google Drive or iCloud. You can draw your own conclusions about who has access and who handles the LE/IC requests.

The EFF said it best:

Just because there’s a serious problem doesn’t mean that every response is a good one

Problem: a forum full of misanthropes dedicated to saying the worst things allowed under the first amendment.

Bad solution: erode 1A at the case law level

Bad solution: censor the internet at the backbone level

Freedom isn't free. We're lucky to live in country with robust speech protections. The tradeoff is that there will always be some people who get a kick out of going right to edge of what they can get away. My view is that our civil liberties are worth it.

One simple reason - separate from the less fun possibilities involving defense procurement politics - is that the F117 was a transition technology.

It proved that super low radar signatures were possible.

The design used those big low poly triangles not because it’s optimal (aerodynamically, very much not!) but because of the limits of computer simulation at the time.

There’s a whole fascinating story about how the theory behind low observable was developed by a Soviet scientist, published, ignored there, then implemented here.

But computer technology quickly advanced to where low-poly aircraft made airworthy by brute force were no longer necessary. See the B2 Spirit, also a very special simulation derived shape but streamlined.

It's an exceptionally flexible and convenient method of control.

Earlier this year, donors to the truck convey protest in Canada had their bank accounts frozen. This wasn't a targeted list of "these 37 people have broken a law"--rather, it was a broad mandate to freeze accounts assocated with the protests, operationalized a bit differently by each bank.

In a society where most businesses don't take cash anymore, this turnkey coercive capability becomes more airtight.

The frog will boil slowly. A few years ago, all US payment processors blocked donations to Wikileaks, after they reported on war crimes in Iraq. Today, most people still think of digital money in the same way as physical cash; in reality, every transaction is a request for permission, with fraud heuristics and blocklists that might say yes or no.

Soon, a guy gets DUI, loses the ability to buy alcohol for six months--who would oppose that? Over time, the scope and frequency of financial deplatforminig will expand. Twitter does one-week suspensions for violating their terms of service. Why not your credit card?

One of the things I love about Palladium (and closely related, Samo Burja's newsletter) is the depth of research.

Like the detail that one of the most egregious episodes from California HSR involved a Spanish company that performed excellently on rail projects in Spain. Overall, this piece makes a strong case that the problem is specifically NIMBYism and loss of government institutional capacity.

I think the million dollar question is how government organizations can hire and retain better. The current situation looks dire. Obviously a charismatic leader with a broad anti-NIMBY mandate would go a ways at getting competent people to want to work in government. You saw that succeed on a small scale with orgs like US Digital Service.

The elephant, after that, is merit-based pay and promotion. Someone needs to sell this to the public. RN literally random cops and plumbers make mid six figures thru overtime while the directors of $100b mega-project are low-energy lifers making less than that. That's not gonna work.

Speaking of blaming the author.

This post is a fantastic example of the poverty trap. We design laws that, on paper, help the poor; and then we blame them for not taking advantage.

When in reality, they are poorly implemented, poorly advertised, and confusing.

With a $10k cap, this program is clearly intended to help people with low assets. How many people with a net worth under, say, $20k in the US? Tens of millions! How many of those would've really loved the extra $850 to offset this year's record inflation? Basically all of them! How many of them found this obscure website with awful UX and received the money? Approximately none!

I skipped Aramco on purpose. It's a vanity valuation.

The true top five each created valuables businesses based on 0-to-1 products.

Aramco didn't create much, certainly nothing worth close to $2T. The Saudi autocrats just list their country's oil reserves (preexisting value, created by nobody) on this state-owned enterprise's balance sheet in order to flex on most-valuable lists.

Political debate on HN has become unavoidable because tech itself has been politicized.

Of course on some level it always was, "everything is political" etc, but a decade ago most participants saw tech as broadly neutral. What was the political valence of Etherpad or Foursquare?

Today, engineers are asked to implement things like the "inclusivity warnings" that just shipped in Google Docs. The scope of "content moderation" has expanded dramatically. Founders are often explicitly partisan in one direction or another.

And the new engagement goes in both directions. The five most valuable companies on earth are all West Coast tech cos now. Political actors of all types are watching and trying to harness or control tech to a much greater extent than last decade.

FWIW this is the same argument once made against human flight. In the late 19th century, there were a lot of debates in the form

Clearly flight is possible, birds do it

Sure but how/why is one of the many mysteries of the universe, one we will likely never solve.

"Man won't fly for a million years – to build a flying machine would require the combined and continuous efforts of mathematicians and mechanics for 1-10 million years." - NYT 1903

David's post seems pretty confused.

Because the rewards for mining new blocks, and the fees for including transactions in blocks, [...] whatever Gini coefficient the systems starts out with will always increase

That doesn't follow at all. If everyone staked their coins and nobody ever bought or sold, the distribution would remain constant over time. In reality, coins do trade, and this causes diffusion. Coin ownership can decentralize over time.

In practice, proof-of-stake is better for distributing ownership than proof-of-work, because the block rewards (new issuance) go to a wider set of participants. Staking can be done by anyone, while mining profitably requires a specialized operation with large upfront capital costs.

--

Finally, be wary of anyone quoting Gini coefficients for blockchains. Gini only makes sense if calculated per person. If you calculate Gini from on-chain address balances, you get numbers that are wildly off. See https://vitalik.ca/general/2021/07/29/gini.html

Congratulations to the cryptographers and engineers at Mina for shipping this. We are getting palpably close to efficiently provable general computation. (For others interested in the evolution, see TinyRAM and the various zkEVM efforts especially zkSync2. This is a fascinating development in CS with wide implications.)

My issue with Mina as a platform is the token distribution. It's over 50% allocated to insiders: https://minaprotocol.com/blog/mina-token-distribution-and-su...

(Note that of the 1m initial tokens, slightly over half is "backers", "core contributors", and the two foundations. Since Mina is proof-of-stake, all ongoing issurance goes to existing tokenholders, so we can expect that Mina will always be over 50% insider owned unless they sell.)

I've interviewed a lot of software engineer candidates. It's always surprising how often people with impressive resumes, including computer science degrees from good-to-great universities, can't code at all.

I'm not talking about trick "do you remember A* search" questions. I'm talking about the ability to write a basic program and to reason about what it will do.

I've seen this across the gamut, from new grads to staff engineers.

Part of this is selection bias: those folks probably apply to many companies before they slip through somewhere, so they're overrepresented as interviewees.

My sense is that it's becoming more common. Undergrad CS has ever more people who are in it for reasons unrelated to enjoyment or curiosity.

Kneejerk dismissals here are sad to see.

L2 is, in my view, some of the most interesting research happening in computer science right now. The article above is not a great explanation--in particular, L2s are not off-chain as the article presents. The point of L2 is that it on-chain, inheriting the security and censorship resistance guarantees of L1.

To simplify: L2 is about creating a fast, high throughput state machine whose state transitions are verifiable on a blockchain. Blockchains, in turn, are about creating a uncensorable state machine that reaches global consensus.

So L1 achieves security, and L2 adds speed.

So why not just make L1 fast to begin with?

The strong guarantees of L1 rely on a lot of validators (on the order of ~10k+, worldwide, often on home internet connections) verifying each state transition. This puts a fairly low practical ceiling on how fast L1 can go.

L2 uses centralized sequencers to run transactions much faster, but uses a mechanism that runs on L1 to ensure the sequencer can't cheat.

The main mechanisms are 1. optimistic rollups and 2. ZK rollups. The latter, in particular, are fascinating. If you care about distributed systems even a little bit, it pays to suppress your skepticism and learn about how they work.

Good starting point: https://vitalik.ca/general/2021/01/05/rollup.html

Alternatively if you believe this is all just a ponzi scheme involving ape jpegs, bookmark this comment and come back in 3 years.

Author mentions four increasingly obscure C replacements (first I've heard of Odin) without mentioning that the creators of the original C and Unix went on to make Go.

Go does not have manual memory management. Despite (actually because of) that captures the spirit and design goal of the original C beautifully. It's a minimalist systems programming language.

One of the amazing things about Go is the standard library-- the thing he complains about with C. The Go standard library is incredibly readable. It's night and day from C/C++ where opening glibc/STL etc is assault on the senses.

This is a good breakdown.

Too much web3 thinkpiecing (both pro and anti) comes from people who've never looked under the hood. It's refreshing to see someone try actually try crypto as a developer, not just as a user, and go deep enough to figure out how things work in practice.

Moxie's critiques are valid. All of these are well known problems to the researchers at the core of web3 and all are the subject of active R&D.

- Point 1: people fundamentally don't want to run their own servers.

Clearly true. Vitalik gave a vivid example of this in a recent interview on Bankless pod. He visited Argentina, where hyperinflation has forced many people to use crypto or physical USD. He observed people using stablecoins, but not primarily via Eth L1 or any L2. Instead many transacted via Binance. Not BSC--Binance the centralized exchange! Which provides a Paypal-like UX.

Crypto researchers are fully aware. The plan is a couple thousand validators and millions, eventually billions of end users. Of course the end users will not run command-line geth, or run their own server in any capacity.

The plan is for them to use some combination of light clients or trust-minimized hosted services. This requires bringing transaction fees way down, the core goal of L2 rollups + sharing.

Also, today's popular clients are not particularly trust-minimized, which brings us to his second point. Paraphrasing:

- Point 2: current "web3" is really mostly web2. Under the hood, Metamask, OpenSea, etc just use trusted servers.

The fix here is trust-minimized services (= like Infura, but with every response bearing a proof of correctness) or light clients (= very similar, but using full nodes as interchangeable servers).

This exists today as a proof-of-concept. It is about to become feasible in production. The reason current Infura does not provide proofs is because Merkle proofs are 10x+ the size of the data returned for a typical query. Verkle trees fix this.

If you're curious:

- https://vitalik.ca/general/2021/06/18/verkle.html

- https://dankradfeist.de/ethereum/2021/02/14/why-stateless.ht...

Zooming out. Here is the Ethereum roadmap for the next two years, summarized:

- The Merge. This removes proof-of-work. The Eth ecosystem will use >99% less energy after this point.

- The Surge. This is about data sharding. Today a transaction might cost ~$50 on a bad day on Eth L1 and ~$0.50 on a Layer 2 rollup like ZKSync. After the Surge, L2 transactions will be nearly free.

- The Verge. This is about Verkle proofs and statelessness. These allow the core user interfaces -- wallets and light clients -- to efficiently follow the blockchain without trusting central intermediaries. They enable efficient proofs of any portion of the chain or its state.

---

I think these are fundamentally powerful primitives, the implications of which we've just barely begun to explore. I actually welcome the next bear market, since it shakes out the grifters. It is day 1.

Exactly the opposite, actually.

HN is an exceptionally clean, minimalist website. Instant page loads. No ads, no "accept cookie" banner, no autoplaying media, in fact no media of any kind, no engagement-maximizing algorithm. Quality moderation via dedicated human mods.

Then everyone comes here to talk about their Svelte ESnext 69.0 x serverless kubernetes 3d metaverse animated gif NFT marketplace subscription-based growth hack horror they're about to inflict on the public.

Eh this is a niche issue. I bet less than 1% of people answering NPS have ever heard of "NPS".

The only way this would be a meaningful effect is for a dev tools or similar product where your audience is the HN audience.

NPS has the advantage of being concrete and simple, producing evenly sampled feedback. This is hard to get any other way.

A proper NPS asks only one question and requires only a single click to answer -- eg "Scale of 1-10 how likely are you to recommend <product> to a friend?" > click [8] > done.

There's a free-text "Tell us more" field that is totally optional.

This means users actually answer it. NPS feedback is the closest I've ever seen to being a clean sample.

By contrast:

- Everyone hates an n-question "would you like to fill out our survey" feedback form. Any data from those is going to be skewed, because only a certain kind of person fills those, and usually only if they're angry enough that they want to vent.

- Feedback from a passive "Submit feedback" button in-app is also skewed. Maybe useful as a bug report mechanism, but it won't tell you what's making your happy users happy.

- Proactively reaching out and talking to/observing users is obviously good, and nothing ever substitutes for that. But you want bulk data, not just anecdotal evidence.

- Most importantly, NPS really shines at telling you what's making your almost-happy users almost-happy. When someone clicks [10] and writes "I love it", that feels great. But when someone clicks [7] and tells you what's annoying them, that's often extremely useful.

- NPS does a great job priming people to give useful feedback. By forcing you to pick a single out-of-10, you just did a quick mental accounting. "9? Nahh, <reason>." Then you click 8 and write the reason.

--

NPS was popularized by that famous HBS study where they found it correlates well with product growth.

I wonder how much of that result is simply because it's one of the least obnoxious ways of sampling user feedback, and therefore produces clean data.

Ah the aesthetics are absolutely perfect.

software minimalism x vaporwave

And it's not just empty nostalgia. A text interface should be lightning fast. Hit a button, next screen repaint reacts. The ultimate retort to all the 5mb websites full of dropped frames, drop shadows and jank.

Solidity developers are already out here counting every instruction. Maybe what's old is new.