How We Rebuilt the House - 7pace
Published:Apr 23, 2018

How We Rebuilt the House

You recently heard how we almost burned down the house

Well, our development team has been diligently researching, assembling our tools, and working hard to rebuild that house from the foundation up. Because everyone knows that a home’s foundation is the most important part. Is the house move-in-ready? Almost. We’re not 100% done. But we are committed to working non-stop until Timetracker is the house – er, application – that you need (and deserve!) it to be. To be frank, improvements will never stop, because that’s just who we are. We listen to our customers. We talk to you. We ask for and value your feedback and we use it to make changes and improvements to Timetracker that are often ambitious and always on-going.

So, what do the changes made in our latest release – Timetracker 4.8 – mean to you?

One word can sum it up: Speed.

We have heard you. The data load times (and sometimes, time-outs) on the Times Explorer page, and the Times Explorer, Budgets and OData export time were driving you crazy. This was unacceptable to you and to us – so, we got to work.

What did we do?

First, we improved performance and optimization on Times Explorer for teams with large amounts of data that needed to be loaded on the page. The load time had to be quicker, and now, it is. Now, only selected columns are sent to the client from the server. This puts less memory load on the client side, which equals less download time for you.

Next, we eliminated unnecessary VSTS calls, optimized existing calls, and made them call in parallel. Previously, we were running heavy calls to VSTS just to compute the Budget column. That was a slow call – and we had a lot of them. We completely redesigned this approach. We now call the VSTS API less frequently, and we cache sequential calls. Moreover, we don’t even compute the Budget column if you don’t select it; this saves a lot of time.

Ok, show me some real numbers …

This graph depicts the Times Explorer page load with 8000 rows from different projects (VSTS) – 12 seconds in Timetracker 4.8 vs. 162 seconds in Timetracker 4.7. Quite a difference!

We load Times Explorer data in steps (yeah, you know that). In Timetracker 4.7, we loaded 1000 rows per step. In Timetracker 4.8, we changed that to 5000 rows and it works even faster than it did with 1000 (normalized):

This chart shows the full page load time until you first see data appear on Timetracker 4.8’s Times Explorer page – almost two times faster than Timetracker 4.7:

We also made the export function on Times Explorer, Budgets and OData faster. We did this by adding some optimizations on how the file is generated and by disabling column autofit in Excel, which makes the export run 10 – 20% quicker. By leaving the Excel columns with the standard width of 150px, it saves up to 10% of export time. This, together with enhancements made in API calls, results in up to 13 times faster export time in most environments (and no more timing out!).

We want to hear your feedback. Is Timetracker 4.8 running faster for you? Do you notice a difference? Is the Times Explorer page loading quicker? Is your export working better? Are time-outs on the pages now gone? Drop us a quick comment, below, and let us know!

Free eBook

Rethinking Timekeeping for Developers:

Turning a Timesuck Into Time Well Spent

Leave a Comment

By submitting this form I confirm that I have read the privacy policy and agree to the processing of my personal data for the above mentioned purposes.


Sign up for GitHub News

    I would like to sign up to receive email updates from 7pace. Protected by 7pace's privacy policy .