←back to thread

78 points cloudmanager | 1 comments | | HN request time: 0s | source
Show context
Kerrick ◴[] No.45342394[source]
Removing choice is fine, but people will want to know what number they'll get if they order right now. Even if you can't or won't show the next rock, show the next number.
replies(2): >>45342422 #>>45342752 #
windowshopping ◴[] No.45342422[source]
That's actually kinda hard, no?

Say the server has a counter. When you load the page, it's at 57, so it displays that you would be ordering #57. While you're looking at this, someone else loads the page - what number do you show them? If you show 57, then whoever orders first gets it and the other person gets a message "Sorry, not available. Want 58 instead?" but the same thing could then happen to them with #58, too – "Sorry, not available. Want 59 instead?"

So maybe instead you show the 2nd person counter+1, i.e. 58. And you show the 3rd person counter+2, i.e. 59. But what if #59 purchases but 57 and 58 don't? What do you show the NEXT person, 57 or 60?

I'm not saying it's intractable but it merits thought.

replies(4): >>45342445 #>>45342451 #>>45342489 #>>45364937 #
trehans ◴[] No.45364937[source]
IIRC many websites (e.g. for buying concert tickets) have a lock mechanism where you have X amount of time to make your purchase during which time only a limited number of people can be in the checkout process.
replies(1): >>45368419 #
1. cloudmanager ◴[] No.45368419[source]
We're avoiding any reservation or lock mechanisms entirely. Starting November 1, the site will display 'Most recent fulfillment: Rock #000047' to show systematic progress, but this creates no guarantee for future purchases.

Sequential assignment follows strict order of payment completion only. No race conditions, no held inventory, no time windows. You either complete the transaction and receive the next sequential number, or you don't.

The constraint is designed to eliminate the entire apparatus of purchase optimization, including queue management systems.