3 ms·
A dumb pet peeve I have is the use of the term "real time". What on earth do you even mean by that? Talk to a controls engineer about real time operating syst
by mabbo 3y ago
A dumb pet peeve I have is the use of the term "real time".
What on earth do you even mean by that?
Talk to a controls engineer about real time operating systems and PLC programming, and you get a very solid definition. Talk to a software developer and it means something like "as fast as we can, without any purposeful delays or buffers".
Maybe I'm just a pedant, but the entire article has graphs with no numbers, no defined service level objectives, and vaguely mentions 500ms at the end.
What is real time?
- Wingy 3y agoI’d say anything that users perceive as instantaneous.
- paxys 3y ago> Talk to a software developer and it means something like "as fast as we can, without any purposeful delays or buffers" No, "real time" in a software context means having a persistent stateful TCP/UDP connection open between a client and a server (or two clients in case of WebRTC and the like) to exchange data, skipping over paradigms like having to establish new HTTP connections or being blocked on database fetches. This is a well-established definition, and has nothing to do with any specific millisecond threshold.
- addaon 3y agoReal time means that there is a requirement on maximum time (end-to-end latency, photon to motion, whatever), and that the worst case behavior of the system meets the requirement.
- mabbo 3y agoThat's a fantastic definition. Now does the article explain what those maximums are, or how often they meet them?
- senko 3y agoThere's "hard real time", where a system must respond within a specific time (eg. vehicle or rocket control, or PLC systems you mention, etc) and "soft real time" meaning the response should be quick but nothing catastrophic will happen if it doesn't. Voice, video, and even text chat, falls into this category. You want minimal layency but nobody will die if the screen freezes for a bit. It's customary to talk about these systems as "real-time communication" and nobody working in the field would confuse it with hard real-time. More info and examples: https://en.m.wikipedia.org/wiki/Real-time_communication https://en.m.wikipedia.org/wiki/Real-time_communication
- Benjammer 3y agoI came out of college with a (not computer) engineering degree, and went into software. I totally flunked a software interview one time early in my career because they asked me how to implement "a real-time clock UI," and I spent the whole time asking questions trying to understand what they meant by "real-time," rather than just implementing a basic clock UI with 4 numbers, a colon, and a 1-second timer updating the UI, and calling it a day.
- teeray 3y agoI would say they failed the interview rather than you
- activiation 3y ago500ms is definitely not real time, even dialup can do better than that. my ping is often 5ms
- immibis 3y agoThe word real-time has more than one meaning. This is about real-time chat, where the message is expected to be read immediately, as opposed to something like email where the message is expected to sit in a buffer for a while before being read. You wouldn't ask for the deadlines of a video game speedrunner talking about "real time", either. That means real wall-clock time rather than time displayed by the video game (differences can arise due to e.g. pausing)