when I asked people to explain how UDP works I got a lot of answers to the effect of "it's spray and pray"

but I'm having trouble thinking of examples of UDP-based protocols that actually work in a "spray and pray" way —

* DNS is "send 1 packet, retry if you don't get a reply”
* QUIC is a sophisticated system for streaming data over UDP
* I'd guess that video protocols correct for packet loss
* maybe statsd is a "spray and pray” system?

(please do not reply to this explaining how UDP works)

@b0rk what does "spray and pray" even mean? You won't get things working by praying, instead you have to implement retries or some other strategy to handle packet losses and reordering.
Maybe it makes sense to describe how you implement UDP (if you are writing a network stack, which few people do), but not how you use UDP to implement some networking things?

@pulkomandy @b0rk tried looking in the other thread, and spray might be sending towards one system, or to various destinations

UDP syslog is spraying towards a logging infrastructure, sometimes resembles a firehose

I have also seen file transfer programs built using UDP just rapidly sending a lot of data, and the at the end filing the missing pieces

The old Ghost for making images onto a classroom of PCs also comes to mind
https://en.m.wikipedia.org/w/index.php?title=Ghost_(disk_utility)&diffonly=true

Ghost (disk utility) - Wikipedia