Loomio app performance
I've recently appointed myself Performance Czar at Loomio, and have been doing some initial investigations in what we can do to speed up your Loomio experience. The first thing I looked into what our initial page load of the dashboard; one of the more common and visible experiences in the app.
I've typed up some notes on our nifty new hack pad which I thought I'd open up to the public.
Feedback, pointers, and advice very welcome! 馃悽
(Of special interest to @robertguthrie and @hannahsalmon)
I think you'd put something in Slack once about a hack to not have to visit the Log-in page every time one navigates to Loomio.com? My bad if it's easy to find that hack, but if it's not- might be worth thinking how to easily share that with users (it was something to do with manipulating the cache/cookies in the browser I believe) That would speed up my exp. :)
I've been a big proponent of taking out that obstacle for a while now. If we're looking at generalized user time (which is the only thing we should actually care about), then the gains of going from
I want to get to my stuff -> visit loomio.org -> the home page loads for 5 seconds -> I click on log in -> The dashboard takes 8 seconds to load
to
I want to get to my stuff -> visit loomio.org -> The dashboard takes 8 seconds to load
Is orders of magnitude more effective than any performance optimizations I could make within the app.
Awesome @gdpelican!
I don't know of a cache / cookie related way to bypass the home screen, but you could use something like https://chrome.google.com/webstore/detail/switcheroo-redirector/cnmciclhnghalnpfhhleggldniplelbg to automatically re-route loomio.org to loomio.org/dashboard if you wanted.
But honestly I think it's madness to recommend such things to our userbase. It's much easier for us to make the tool work in a more intuitive way.
I think we should set up app.loomio.org to forward to loomio.org/dashboard so when you begin typing that comes up before the main loomio.org homepage URL. Seems super easy to me.
I think I'd be in favour of just forwarding logged in people to dashboard.
I disagree, but a thread about performance is probably not the place to have the conversation.
Thanks @gdpelican. It's great that you're becoming familiar with the tools, and good to see we've got about average application boot times for world class apps.
I love the clarity with your reporting back.
At this point I'd suggest we don't focus too much on boot time unless we see an area we can easily improve.
I think we need to focus on perceived slowness. When does the user feel made to wait? The answer off the top of my head is when we're loading comment records. Both when you click a discussion and when you load more comments.
If you look at a whole user session, where does the waiting stack up?
Seems to me like we need to design latency out of the app by improving our UI to make big wins right now.
The other place to look is on mobile. If you connect your phone to chrome's debugger can you see it churning away on javascript stuff?