On 07/10/2019 12:39, Shaping wrote:
I haven't seen is the instability of the VM you mention, it has worked
pretty well for my average use, although the UX is not straightforward.
Yes, lots of redirection and extra steps. Many degrees of freedom.
Seemingly no good default “happy” path to simplify things a little
before you start to investigate the variations/choices.
> The other thing that keeps me planted firmly in VW is the sheer
speed of it.
I don't know if there are recent benchmarks, but I've felt Pharo to be
really fast compared to VW when it comes to computing.
I’ve don’t plenty of informal comparative testing mostly with the GUI.
I’ve used VW continuously for 29 years and Pharo on and off since
2006. (I’m really trying to port, but I keep failing to do it;
getting closer). VW is still noticeably quicker in GUI
responsiveness, in most cases. One big difference is the Pharo HTTP
client, with all those wonderful primitives. It’s about _twice as
fast_ as VW’s. Bravo. I meant to tell that to Sven recently, and forgot.
> Pharo looks generally much better, but it’s mushy, and that’s a
problem. VW is not.
Working regularly with VW or VAST when I go back to Pharo the
"mushiness" is significantly noticeable, but if you open a Pharo 3
image (or even Pharo 4) you'll feel it really "snappy", but of course
you'll lose all the improvements since then; and that's the current
tradeoff.’
Yeah, I guess all the new slick GUIs are a bit heavier. This machine
is just okay for speed –2.7 GHz Xeon, but VW feels okay. Pharo tends
to put me slowly to sleep with the tiny but noticeable lags here and
there. I’m very fond of GT. Beautiful. Not sure what to do go get
the GUI quickness back. Maybe you guys are waiting for the new GUI
framework(s) to firm up? I tried Cuis, and was not impressed. It’s
too lean/Spartan and still not very fast (slower in some ways than
Pharo). I like the Pharo creature-comforts (who wouldn’t?).
I never understood the reason for the incremental slowdown, it is even
present in "modern" tools such as GTToolkit.
Yes, it’s like a creeping disease. Lol
Another thing I miss enough to want to implement (or fake-out somehow)
is Alt-tabbing as a way to get around thru your browsers. Usually I
have 4 to 6 up at once, if I’m behaving, and as many as 20 if I’m
not. Looking about for the tabs at the bottom to click is not nearly
as fun as Alt-Tabbing. Maybe I could emulate Alt-Tab with
Alt-Shift-Tab—a bit of a finger twister, but it might work.
You can take a look at that project for that :
https://github.com/juliendelplanque/Mirage
> Gestural dynamics are very quick, well under 100 ms latency, often
less than 20 ms.
> I’m seeing 100, 150, and 200 ms regularly in Pharo. It’s too mushy,
and that slows the mind.
> Any developer understands this, whether he talks about it or not.
This is true, below 20ms is ideal, and top-notch CLI terminals are
benchmarking this as a selling point (using stuff like
https://github.com/pavelfatin/typometer), Sublime, TextEdit, Notepad++
measure sub 10ms latency.
Indeed.
My whole nervous system definitely feels this speed effect and starts
to thought-glide better below these tiny latencies. I’m sure many
reading this have had similar experiences. Something similar happens
when you are fortunate enough to use a machine with extremely fast
striped SSD drives, where _you literally don’t wait for anything_,
except the bloody internet. This doesn’t just change the speed at
which you do the work. It reorganizes your mind and skills in ways
you had not anticipated because you can flow so much more quickly,
making connections further forward and backward in your thought
stream. My point is that if the speed and low-latencies are made a
priority, we can attract users just on this basis alone. Even I would
be working harder at improving Pharo (and complaining less) if
everything were snappy. I would probably just get on with doing the
needed tasks. Interesting how that works. Speed: it changes you. It
changes the whole game.
> So I’m wondering when the Pharo GUI will snap as well as VW.
Maybe with native widgets there will be a significant speedup,
although I don't know whether the lag comes from rendering time or
from something else.
I would like to know more about the native widgets in Pharo. Does
anyone know when this is likely to happen?
But VW event model is not better than Pharo's, so it might be
something else.
I’ve not looked into the details, but I will sometimes just repeatedly
click on a method name and watch how long the code pane takes to
render in VW and Pharo, and I don’t get what Pharo could be doing to
make that time so long. Both are indexing into the sources file or
the changes file to get some text, and then there is the TT-font
rendering, which is probably where the CPU cycles are going. I should
look into if further, but I’m sure someone reading this knows enough
about the rendering path to say where the bottleneck is.
Cheers,
Shaping
Pierre