9 ms·
Computers are also slow and sometimes getting slower, because real world applications are built with increasing layers of abstractions. while the hardware in t
by markstos 6y ago
Computers are also slow and sometimes getting slower, because real world applications are built with increasing layers of abstractions. while the hardware in the bottom layer is getting faster, the top layer is sometimes slower because there are so many layers and so much complexity in the stack.
Take this review of terminal emulator benchmarks:
https://lwn.net/Articles/751763/ https://lwn.net/Articles/751763/
Uxterm, released in 1994 is the clear winner.
A "modern" terminal like Gnome Terminal has more than 10x the latency.
Booted an Electron app lately?
- PragmaticPulp 6y agoA few extra seconds of app startup time or an extra frame of latency in your terminal is a small price to pay for the absolutely massive difference in functionality of newer apps. It’s fun to see how fast apps were when everything was extremely simple, but you can’t dismiss the fact that it was orders of magnitude less capable than modern software. The bottom line is that modern apps are fast enough. I’ve never once thought that my terminal latency is too slow or that a few extra seconds of app startup time made a any impact on my day whatsoever. The difference between the fastest and slowest terminals on that list is less than 30ms, or 3/100ths of a second. Literally less than a blink of an eye. It’s a fun study and enjoyed the article, but the reality is that it just doesn’t matter at all. Anyone suggesting that computers felt faster a decade ago is misremembering the past. Try using a 2008-era computer with a mechanical HDD and you’ll quickly realize that apps did not launch faster back in the day.
- antepodius 6y agoModern programs are 100 times slower, but they definitely aren't 100 times more functional. And speed is a part of functionality and UX! I don't want to have to use a high-powered workstation or a gaming laptop to get reasonable responsiveness in my text editor. Many Javascript-powered websites with 'fancy' canvas features are janky and slow as shit on hardware that's only 10 years old, where as websites that use HTML are still snappy and fast. That 'nothing at all' matters when our current culture involves building layers and layers and mountains of stacks on top of software. That 30 ms compounds, because everyone working on each layer thinks 'hey, this is a bit slow, but it doesn't matter because it's only milliseconds.' Given this, it's obvious that modern software will be as slow and inefficient as it possibly can be before normal people notice and complain (usually only because they've used other equivalent software that's smoother and faster- it's easy to get used to jank, like low FPS in a video game.) I think that people undervalue the cost of all these layers of abstraction.
- PragmaticPulp 6y ago> Modern programs are 100 times slower, but they definitely aren't 100 times more functional. My IntelliJ IDE is easily 100 times more functional than early text editors. As for slower: Any relative comparisons are still missing the point. It’s not a relative question. It’s an absolute question: Is this fast enough? Let’s be honest, none of us are sitting around waiting for our complex IDEs to render characters on the screen. No one really cares if it’s 1ms or 30ms or even 200ms. Likewise, I don’t care if it takes 100ms or 10s to open the IDE because I’m not quitting it and re-launching it all day. I launch it, leave it open, and that’s that. People like to glorify the good old days when apps were supposedly faster to launch, but they forget the convenience of simply leaving apps open with our oodles of RAM and letting our computers rely on suspend/wake. The longest delays in my workflow are getting my laptop out of the bag and typing in the password, or maybe downloading things from the internet. Terminal latency or app launch time just don’t even register on the list of delays during my day.
- Retric 6y agoAre you talking pre 1980’s as early? Because IntelliJ vs EMACS is hardly a 100x improvement.
- formerly_proven 6y ago> Let’s be honest, none of us are sitting around waiting for our complex IDEs to render characters on the screen. No one really cares if it’s 1ms or 30ms or even 200ms. I actually do, because I'd like for IntelliSense and clones to save me some typing, but often that doesn't quite work out, because they're too slow (inconsistently slow, too). I'd also like it if my IDE or Word editor could highlight errors in realtime, but in reality it's more like a couple seconds delayed, so I have to navigate a significant distance back to correct them, instead of being able to fix it almost on the spot.
- PragmaticPulp 6y agoThat’s a different topic, thought. The OP posted about typing latency, not the latency of additional complex features. It’s not exactly fair to claim that software is “slower” than old software when the software you’re comparing to doesn’t have those features at all.
- Junk_Collector 6y agoA really good typist runs around 100 words per minute. 30 millisceonds of delay vs 2 is enough that the terminal won't keep up with the person working on it. And these are TERMINALS, other software has gotten much worse in typing latency.
- PragmaticPulp 6y agoI think you’ve misinterpreted these results. The delays don’t mean that the terminal will start missing keys or won’t keep up with the operator. Humans don’t type on a tight feedback loop of waiting for characters to pop up on the screen, obviously. We also need to keep the big picture in mind. If you’re using a 60Hz monitor, it’s only going to update every 17ms anyway. Add buffering and even pixel transition latency to the equation and the end-to-end latencies are even higher. You’re not going to notice the difference between a terminal editor with 20ms of latency and one with 15ms of latency.
- 65536 6y agoI have definitely used software where it started lagging behind significantly while I was typing. That kind of stuff is absolutely infuriating.
- PragmaticPulp 6y agoThat’s a very different problem than the 15-30ms latency discussed in the link above.
- formerly_proven 6y agoNah, I've written texts in certain Word editors and IDEs and looked up mid-paragraph for spellchecking or re-reading it, just to see the computer still spurting out letters on the screen slower than an half-asleep OM morsing it. Sometimes these multi-core 4+ GHz fast marvels of nanotechnology simply can't keep up with a meatbag on caffeine punching keys for food. Sad in a poetic way.
- 6y ago
- FpUser 6y ago>"few extra seconds of app startup time" This is atrocious. Barring the cases when the application loads and deciphers some massive dataset upon startup normal application should start instantly or close to that.
- deiznof 6y agoAt this point I'm not even sure what people mean when they say "slow" or "poor performance", since I have a mid-tier PC and have no problems with VSCode or anything else. Everything starts fast and I have no latency issues when typing. Imperceptible differences in time are not something I would ever consider a performance problem, certainly not in the case of UX. Same thing with memory usage. If I'm not even using a third my RAM with my browser, editor and a few other random things open I'm not going to complain about something being a "resource hog".
- atq2119 6y agoThere are two possible reasons for this. One, you simply may not know better. If you've never experienced the typing latency of an 80s or 90s style system, you may not have a reference point for low latency. Not saying this is necessarily the case for you, but I suspect it's the case for some people. Second, people genuinely have different perception. The most stark example of this in practice for me was the perception of flicker on CRTs. Many people claimed to just not notice flicker at 60Hz, while for me going back from 100Hz to 60Hz was unbearable for longer amounts of time. I'm sure similar differences exist with our perceptions of latency.
- znpy 6y agoI would be okay and favour the tradeoff... But I recently decided to eradicate gnome-calculator in favour of xcalc because gnome-calculator (probably due to being packaged as a snap) was taking 5-10 sec to show up whereas xcalc is literally instantaneous.
- MaxBarraclough 6y ago> absolutely massive difference in functionality of newer apps As antepodius already said, this isn't really true. Slack has a few more features than the chat applications of 15 years ago. I suspect it may also lack a few of their features. It uses vastly more resources. Visual Studio is a full IDE, with more features than the Electron-based Visual Sudio Code.
- PragmaticPulp 6y ago> Slack has a few more features than the chat applications of 15 years ago. I suspect it may also lack a few of their features. It uses vastly more resources. Yet Slack has massively more adoption than any previous chat app. That’s not by coincidence: They made it at least an order of magnitude more useful for their target audience. Slack is, without a doubt, orders of magnitude more complicated than previous-gen chat apps. It’s not like they could have built it with a handful of engineers operating some IRC servers. However, I was specifically referring to text editors (responding to the OP) vs modern IDEs. As you said, full IDEs have vastly more features than a simple terminal program or basic text editor. That’s where the order of magnitude more functionality comes from.
- flukus 6y ago> Yet Slack has massively more adoption than any previous chat app Maybe just, by virtue of there being more internet users these days. But you're underestimating just how ubiquitous IRC was, it was near universal. Sure there was no single app that everyone used, but that was a feature. With slack we've gained a few features but regressed in so many other ways.
- userbinator 6y agoTry using a 2008-era computer with a mechanical HDD and you’ll quickly realize that apps did not launch faster back in the day. I'm still using one! And it's fast enough for what I do with it --- mainly native development in C, but also the usual communications: email, IM, watching videos, reading content-focused web sites (not web apps), etc. Since I don't use anything bloated, 4GB of RAM is more than enough and the HDD remains silent most of the time. I experience far more delay and frustration using a much newer, ~1-year-old work laptop with much faster CPU and several times the RAM, but with Electron apps or any other "modern crap" that has a fraction of the functionality. The most vivid recent example is the YouTube "new design" --- it is disturbingly slow and dumbed-down. On this new machine I still experience lag often when interacting with bloated JS web apps, which can't even keep up with my typing speed (web-based Outlook is a notable example of this.) Even presumably-native applications are not immune to this cancerous growth. UWP is another example; the Win10 calculator somehow needs a loading screen, and so does the Settings app, whose featureless pathetic excuse of a UI somehow manages to be less responsive than the classic Control Panel, which opens basically instantly and is just as responsive to input. Related: https://news.ycombinator.com/item?id=18506170 https://news.ycombinator.com/item?id=18506170
- abjKT26nO8 6y ago> the Win10 calculator somehow needs a loading screen This right here made my day. No further comment on the state of technology today needed.
- wolco 6y agoI still use a machine like that. They were faster hands down. Even faster a commodore 64. Flick a switch the os is ready. Load geos now you have a basic windows.
- hedora 6y agoMy desktop is about 10 years old with an old SSD, but /home is on a btrfs raid NAS on spinning disk (over WIFI). It runs a minimalist WM. I paid about $1000 for it (and a few hundred later for the boot SSD, a new video card, and a 802.11ac pcie card) It is significantly faster at all mainstream tasks than my late 2018 $2700+ work laptop running $VENDOR_DEFAULT desktop environment.
- tonymet 6y agoSorry the opposite is true here . Desktop gui apps from the 90s were much more advanced , with more features and more responsive
- pjc50 6y agoQuite a lot of the new functionality is "value subtraction": adware or spyware that makes the user experience worse. The recent fiasco where Facebook accidentally broke startup for all apps using their toolkit is a good example.
- drew-y 6y agoVSCode, an Electron app, is my favorite application of all time. It starts up quickly and is incredibly responsive in use. It's easy to customize, there are loads of community extensions, and it's free. When abstractions allow software to have a flourishing community like that, to me its worth the cost.
- Retric 6y agoMeanwhile I find VSCode to be a slow resource hog. I can only assume your simply so used to terrible applications that your standards have slipped.
- FpUser 6y ago>"Meanwhile I find VSCode to be a slow resource hog" Same here. It does start instantly on my laptop though
- drew-y 6y agoIt's ok to have a different opinion. But you shouldn't assume your experience invalidates my own. I've used a large number of text editors. Vim, Sublime Text, TextMate. I loved them all, and they are of course much faster and less resource intensive. I would still pick VSCode over each of them when given the choice. VSCode strikes a great balance. Ironically I find it far more performant and smoother than Visual Studio itself.
- dijit 6y ago> Ironically I find it far more performant and smoother than Visual Studio itself. it does so much less that it's like comparing notepad to pycharm. Your exact use-case may not be impacted too much, which is great - but I know a lot of programmers who use Visual Studio's entire feature set including a lot of custom C# plugins and it's not comparable at all. (Intellisense, and native step-through debugging/disassembly to begin with). VSCode is a text/code editor that has some nice bolt-ons. Visual Studio is a fully fledged IDE with advanced feature sets for large shared projects.
- 6y ago
- hinkley 6y agoI wish I had a reference for this. I should probably go looking for it. Someone claimed that the speed of software doubles every 18 years. I presume they meant this from a theoretical/algorithmic standpoint, rather than median behavior of software systems. As computer speed progress slows, we should expect more effort to go into this kind of work. It seems like we are paying a good bit of attention lately to extracting the embarassingly parallel parts of our code, and chipping away at the easy end of the shared state spectrum. Amdahl tells us there is gold to be had but the digging gets harder very quickly, so I'm curious to see what will be next, after the great artists steal more of the lessons of Elixir/Erlang, Rust and friends.
- cellularmitosis 6y agoI believe that quote refers to compiler optimizations producing a net doubling of performance every 18 years. In effect, “software” doubles in performance.
- hinkley 6y agoCould be. But then like adding lanes to a highway, having more supply just leads to a disproportionate increase in demand, frittered away in a million dependencies that nickel and dime us to death.
- CyberDildonics 6y agoBill Joy talked about scientific computing software advancing like that. Academic papers and new techniques filter down and the same things can be done faster.
- deleted 6y ago[deleted]
- seangrogg 6y agoYou don't get promoted for removing actions. And now to drink away that depressing thought.