The last three real-time features I shipped were all built on Server-Sent Events. Two of them, I had originally planned to build on WebSockets. The third I had already half-built on WebSockets before I realised the WebSocket part was adding work and removing nothing. I ripped it out and the feature shipped a day earlier. This is not a takedown of WebSockets. WebSockets are the right answer for plenty of things. The point is that the reflex to reach for WebSockets the moment someone says "real-time" is wrong more often than people admit, and the cost of that wrong choice is paid quietly for the entire lifetime of the feature. Most of what people call "real-time" is one-way streaming from server to client. Notifications, live counters, progress bars, AI token streams, log tails, dashboard updates, presence indicators. None of these need the client to talk back over the same channel. They need the server to push, the client to listen, and a way to reconnect when the network blips.…