Hacker News new | ask | show | jobs
by wldlyinaccurate 2310 days ago
Really cool to see the Gitlab team focusing on performance. I just wish they'd look at front-end performance as well as API response times. Something like WebPageTest or SpeedCurve will measure metrics that better represent the user experience, like when important parts of the page are rendered or become interactive. Maybe with visibility into these metrics, the engineering teams could make Gitlab less painful to use on my old laptop :)
2 comments

Hey thanks for the nice comments. I'm the blog's author.

So yeah you're absolutely right there. Rendering performance is equally important. We use a different tool for this - SiteSpeed (that we also offer as an option for users to use in CI - https://docs.gitlab.com/ee/user/project/merge_requests/brows...). We run SiteSpeed pretty much constantly against gitlab.com but this is more for monitoring I believe. We (Quality) are wanting to explore running it in a more general sense against our test environments to start rendering performance testing. Hopefully we'll have more to share on this in the future.

With GPT though we actually updated it recently to increase Web endpoint coverage and this has lead to some pages getting some big performance fixes (the Merge Request Changes page should be rendering a lot faster today than a few months back for example). With the tool we now hit more of these endpoints at scale that deliver the page source, etc... but we can't render with it as it's not a browser (way to heavy to run at scale) hence us looking at starting rendering performance tests as well.

In the meantime I'd love to hear what pages specifically give your old laptop grief?

The problem is that the front-end is 100x harder to test than the back-end. Webpagetest, and others, have a really hard time measuring single-page app front-end performance. The front-end is just such a huge patchwork of...stuff...that it is almost impossible to create generic tests, let alone automate them. Otherwise I agree, the front-end performance often contributes more to the UX than the back-end performance. But it's wise to start with the low hanging fruit and test those things that are simple to test. In my book, REST API end points is a good place to begin. Easy to test, easy to automate the testing.