2 ms·
The lag isn't UI-related or related to the specific software stack IMO. We've had to technology to build extremely lag-free devices for years now, the lag is mo
by potatolicious 11y ago
The lag isn't UI-related or related to the specific software stack IMO. We've had to technology to build extremely lag-free devices for years now, the lag is more fundamental than that.
Your microwave and VCR are always on - their displays are also always on, so they don't need to be woken up before being used, they are already awake.
A thermostat with an always-on screen is the same, they're already displaying information and the touch screen can be immediately used without delay - but we don't want the display to be always on, because in general LCDs look awful in their environments. In general people prefer their homes to not look like server rooms with blinking lights and garish panels everywhere.
So there is a non-technological need to keep the screen off, and this presents a fundamental problem - before anything can be done, the screen must first be woken up. No matter how fast you make this process, at the end of the day is one extra step that the user must do before the device can be used.
Apple Watch detects when your wrist is held in a certain position to activate - but sensing this gesture itself introduces lag. Hell, even a simplistic "on" button on the device itself - even if the response is perfectly immediately - necessarily requires the time for the user to trigger the action itself.
You can't work around this with better software, because at the end of the day "activate device" is step 1, whereas with dumb technology step 1 is "use device".
The only real solution is for your devices to be always-on in a much more fundamental way - like your VCR or microwave - and that in some cases means e-ink screens.
- icebraining 11y agoNo, the display of my microwave isn't always on, it automatically shuts off after a few minutes; yet, it's still fast enough that I can't perceive any delay. Another example, look at this handheld game: https://www.youtube.com/watch?v=1naGfmzkh9w https://www.youtube.com/watch?v=1naGfmzkh9w Is there any perceived delay when the On button is pressed? I frankly can't see it. EDIT: This one even has full color and movement: https://www.youtube.com/watch?v=xD4DDewpOF8&feature=youtu.be&t=1m17s https://www.youtube.com/watch?v=xD4DDewpOF8&feature=youtu.be... It goes from complete shut-off of the entire device to moving animation in less time, from what I can tell, than it takes for him to move the button until the end. EDIT2: I measured it frame-by-frame, it takes 5 frames from the moment the button starts to move until the screen is completely functional, showing the proper image. The video is at 25 fps, so that's 200ms, for the whole device to go from non-powered to fully working animation.
- potatolicious 11y ago> "so that's 200ms, for the whole device to go from non-powered to fully working animation." That's 200ms more than 0ms, which is the status quo for dumb devices. > "yet, it's still fast enough that I can't perceive any delay." Right, because the inputs aren't on-screen. Touchscreen devices inject more delay because you have to: - wake the device - read the output - decide on input - press the input With a device like your microwave (or your arcade game) steps 1 and 2 don't exist, because the inputs are visible even when the screen is off. With your microwave you just walk up and start punching your desired buttons right away, the screen will catch up to you quickly. And this is also why this is fundamentally a product design problem that isn't fixable via simply faster software - a non-primed human will take 500ms+ at each of these steps just in reaction time, the 200ms wake-time and whatnot is minor in comparison to the delay caused by having the human take multiple steps to do something. This is fundamentally about modes of interaction and not really about software performance. We are at a stage in tech development where human delays vastly overwhelm purely machine-caused lag time. This is why compressing multi-step processes into a single step (or eliminating them altogether) is so valuable in terms of improving usability. Conversely - and this is something a lot of futurists just don't get - injecting additional steps into the use of something, even with very high performance software, results in disproportionate delays, and makes the product overall more annoying and cumbersome to use. This is the heart of why nearly all smarthome devices have been utter failures so far - despite doing something useful, they dramatically increase the human load on their usage.
- TheOtherHobbes 11y agoHave you ever tried to set one of those digital mains timers? The designers always seem to leave a couple of buttons off, so the buttons all do three things, and you can never be sure which mode you're in - and I know people who have no problem writing code who have given up on them and bought a mechanical timer instead. Now, you could have a single home control display - or perhaps a single display in every room. And they'd all show the same information, maybe customised for each room, and include a few extra pages for setting up timers, lights, proximity sensors, or whatever. There are plenty of applications for this kind of IoT, but the tech just hasn't come together yet. I think the lack of good, cheap, large, low-energy displays is more of an issue than wake up times - because if the display uses very little energy, you can skip the wake up time. You can more or less pick any two from the list, but getting all four seems to be impossible for now.