5 ms·
> Conventional computer interfaces are generally not as latency demanding as virtual reality, but sensitive users can tell the difference in mouse response down
by dchichkov 14y ago
> Conventional computer interfaces are generally not as latency demanding as virtual reality, but sensitive users can tell the difference in mouse response down to the same 20 milliseconds or so, making it worthwhile to apply these techniques even in applications without a VR focus.
I wish people would start treating text editors that they are developing this way. As hard real time systems. Don't care much about virtual reality, but I'm sick of text (and code) editors with unpredictable latency of basic operations [like typing a character, making find call, etc].
- scott_s 14y agoMinor quibble: you mean soft real time systems: http://en.wikipedia.org/wiki/Real-time_computing#Criteria_for_real-time_computing http://en.wikipedia.org/wiki/Real-time_computing#Criteria_fo...
- monochromatic 14y agoWhat editor are you using, and how old is your computer? I haven't had problems like this in years.
- kragen 14y agoDarius Bacon and I have spent some time trying to figure out a buffer data structure that can scale to large files while guaranteeing predictable latency for basic operations like typing a character. (What's "making find call"?) I think you mean "soft real time", though. A hard real-time system is one which is unusable if it fails to meet a deadline even once; a jet engine control system, say, where failing to meet a deadline could result in engine parts penetrating the fuselage. A "soft real time" system is one where failing to meet a deadline is a failure, but tolerable if infrequent; say, once every million keystrokes, or every 7 days of video play time.
- stcredzero 14y ago> I wish people would start treating text editors that they are developing this way. IDEs. Most of the things people do in modern IDEs were done in Smalltalk (albeit, with uglier interfaces and some manual steps) over a decade back. One of the differences, though, is that these things were mostly highly responsive, because they were bloat-free. (Can't speak for IBM VisualAge. Also, one could rightly complain that they were feature-poor in their stock configurations.) This is in stark contrast to other IDEs and app server frameworks, which would take forever to start up, or forever to restart, or forever to complete an operation. One example, Extract Method, was always instantaneous. It's still lugubrious even in modern IDEs like XCode4.5. The same rules that apply to Web Apps also apply to programmer's tools. Delays are yuck. Responsiveness is yum! I'm also a musician, and from what I've seen playing around in Audacity, 5 milliseconds is definitely inaudible, even to some of the most talented, golden-eared musicians I know. I suspect that 20 milliseconds is going to start to bug some people, though they won't be able to say why. Also, awareness of subtle modulations of very small variations in rhythm and how they affect the feel of music seems to be an indicator of intelligence and aesthetic awareness. So often, the difference between blah and great involves things that are subtle and hard to put your finger on.
- laureny 14y ago> One of the differences, though, is that these things were mostly highly responsive, because they were bloat-free. That's not my recollection of the Smalltalk IDE at all. I especially remember how selecting was crazy slow: press down the button, move the mouse to the end of the line and the selection takes two seconds to catch up with the cursor.
- stcredzero 14y ago> That's not my recollection of the Smalltalk IDE at all. Which one and from what time period? My experience was mostly with VisualWorks. Even just with that, there are variations. Going from version 3.* to 5i was actually a step down because of hastily released stuff from a company in turmoil. Also, lots of open source/free implementations started behind the curve in terms of technology. (Still doing bytecode interpretation instead of JIT.)
- modeless 14y agoHave you tried Sublime Text? Predictable low latency is one of the reasons I like it.
- jchrisa 14y agoI get stutters with Sublime Text on my ancient MacBook Pro, but I'm often crushing the io systems (like a big Dropbox resync at the same time as a database compaction), so that may explain some of it.
- dman 14y agoWould you be willing to pay a recurring fee for using an editor? I have toyed with writing an editor at multiple points but have backed away because I think in the grand scheme of things its a one time sale to a pretty small market (The number of people who care enough about text editing that they would pay for a good editor when they see one)
- oftenwrong 14y agoI might be willing to pay. What would your editor offer that the free, powerful, well-established editors out there do not?
- dman 14y agoSince I havent implemented anything I cant make any claims, what I can answer is things that I miss in the current landscape: a) Fast startup times b) Effective utilization of multiple monitors out of the box c) Embedded prompt for dynamic languages d) Minimal lag in the UI e) Fast regex search over multiple files f) Multi file mode - I want to be able to have multiple files mapped to the same buffer and have the ability to quicky seek to files g) Outline mode that is code aware h) Integrated lint mode i) < 10 meg download size All of the above in the same editor. Currently sublime comes the closest, I have also happily used emacs in the past but sublime feels snappier than emacs currently. I guess if emacs could be as snappy and pretty as sublime what it would scratch all my needs, because modulo some polish it has most of the other features.
- Erwin 14y agoI pay, effectively, a recurring fee for PyCharm. The personal license is €89 and comes with 1 year of upgrades. As they've been able to release upgrades after that year expired that looked interesting, I paid another €50 for it the next year support. Personally I'm not keen on a recurring payment unless there's a clear benefit. For an editor, that'd be having a team committed to making it better. The JetBrain guys have shown good progress.
- mheathr 14y agoInstead of starting from scratch perhaps implement utility in an existing editor that is in demand but not yet available for a fee. There are a lot of things that would be nice to see in existing programs that a bounty type system would possibly work well to encourage.