Whenever we talk about performance, I always make the point that it is important to base analysis on careful measurements of performance in the field, and not rely entirely on intuition as to bottlenecks and optimisation strategies.
TiddlyWiki has some basic performance monitoring facilities built in: turn on “Performance instrumentation” in the “Settings” tab of control panel and you’ll see some basic performance stats about each refresh cycle in the browser developer console. But I also wanted to answer Mat’s original post in a slightly different way. Consider video games. Specifically, there’s a class of games where one controls a car whizzing around a 3D race track. If you play or watch such games you might notice a strange artefact whereby parts of the landscape pop into existence as you drive closer to them: a row of palm trees that suddenly appears as you go around a bend, or a mountain that flickers into existence as you draw closer. It’s easy to understand what’s going on: even modern video game platforms are limited to the number of surfaces that they can draw in the brief time allowed for a frame. So, games typically arrange things so that only the surfaces that are visible are actually drawn, and any surfaces that are guaranteed to be invisible are simply skipped (eg because they are behind the observer, or obscured by another object). Then the entire “level” is designed to carefully control the number of surfaces that need to be drawn. There’s a lot of complex and brittle logic behind all of this, and the flickering artefacts are the symptoms of the algorithms sometimes getting things wrong. But one key thing is that the designers of the game have a pretty high degree of control over all the factors that impact performance, and so can pretty effectively hide the limitations of the platform from most users. That control is at all levels from the micro (like how the surfaces are drawn) to the macro (like regulating the track layout so that only a portion is ever visible at once). TiddlyWiki, on the other hand is very different. Unlike a game, it allows the user to do anything that is allowed by the laws of physics. The system can try to optimise at the micro level, but there’s nothing stopping users doing things at a macro level that will kill performance. What I’m driving at is that I think there is an aspect to TiddlyWiki’s “slowness” that is inevitable given the openness of it’s design. However much we manage to optimise specific use cases like the “recent” tab, it’ll always be possible to construct a TiddlyWiki that is both useful and slow. Best wishes Jeremy > On 11 Dec 2017, at 22:28, Tobias Beer <beertob...@gmail.com> wrote: > > Hi Mat, > > Playing with it, I'm not sure. :D > > Attached is a template for that. > > Anyhow, I think limiting the recent tab should be slightly easier than it > currently is. > > best -tb > > -- > You received this message because you are subscribed to the Google Groups > "TiddlyWikiDev" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to tiddlywikidev+unsubscr...@googlegroups.com > <mailto:tiddlywikidev+unsubscr...@googlegroups.com>. > To post to this group, send email to tiddlywikidev@googlegroups.com > <mailto:tiddlywikidev@googlegroups.com>. > Visit this group at https://groups.google.com/group/tiddlywikidev > <https://groups.google.com/group/tiddlywikidev>. > To view this discussion on the web visit > https://groups.google.com/d/msgid/tiddlywikidev/27358fe7-215c-44dc-bb50-2636de0cefcf%40googlegroups.com > > <https://groups.google.com/d/msgid/tiddlywikidev/27358fe7-215c-44dc-bb50-2636de0cefcf%40googlegroups.com?utm_medium=email&utm_source=footer>. > For more options, visit https://groups.google.com/d/optout > <https://groups.google.com/d/optout>. > <$__core_ui_SideBar_Recent.tid> -- You received this message because you are subscribed to the Google Groups "TiddlyWikiDev" group. To unsubscribe from this group and stop receiving emails from it, send an email to tiddlywikidev+unsubscr...@googlegroups.com. To post to this group, send email to tiddlywikidev@googlegroups.com. Visit this group at https://groups.google.com/group/tiddlywikidev. To view this discussion on the web visit https://groups.google.com/d/msgid/tiddlywikidev/9A017165-C1A3-4AEB-A271-6F8FE5B3C282%40gmail.com. For more options, visit https://groups.google.com/d/optout.