Weekly Progress of Perf System

I will weekly update progress of Perf System and next week goals.

I have not updated progress for past week, so will be doing for that along with this week.

Progress (15/08/2016 to 2/09/2016)

  • Explored Go and tried hands on gmail and Github API libraries for GO.
  • Connected Asana for perf system using go-asana library and stored it in database.
  • removed usage of library and directly called Asana API as was facing few issues with library.
  • Storing tasks, Projects and users from asana in mysql DB
  • Calculated Score for tasks completed last week and show it for each members.

Milestones for next week

  • Create a web page for scores
  • Write tests for current code
  • fetch tasks with thier tags from last week and display them

Nice work, @adisha! For now, you can ignore the Gmail integration. I think we should reevaluate if we need it. Focus on Asana and Github.

1 Like

This week milestone(2/09/2016 - 10/9/16) is not completed. However, I have created a webpage for scores and working on PR for scores. Once PR gets merged will start will web page for tasks from last week.

1 Like

Implementation changed for perf system. Perf system will not interact with Asana directly, it will gets tasks from Taskwarrior.

Work Status for 11/09/16-18-09-16:

  1. Scores are calculated for tasks are exported from task warrior.
  2. Storing scores in DB.
  3. Showing scores with tags on webpage

Next week goals:

  1. Improve design for scores webpage
  2. Showing tasks on webpage

Work Status for 19/06/2016 - 24/09/2016 :

  1. Scores are shown in descending order
  2. Whitelisting of users
  3. Showing completed tasks for each users.

Next Week Goals:

  1. Authenticate users using Github.
  2. Design dashboard for each users.
1 Like

Work Status for 24-09-2016 to 1-10-2016:

  1. Working on authenticate users using github auth
  2. Genrated user dashboard which shows:
  • Shows tasks of the recent week
  • Stacked bar chart to show tasks completed by the user on the basis of colored tag on particular day of last week
  • Line chart which shows user’s scores vs dates from past two weeks

Next Week Goals:

  1. Explore keen.io charts to get an idea for more charts we can plot.
  2. Modify score calculation on the basis of vacations.
  3. Calculating and assigning scores from the PR review process.

It will great to have feedback on existing chart (dashboard URL) and what charts we can add more.

Hey @adisha,

So, couple of pointers:

In the dashboard, make task and scores visible together. Also, make the tasks visible below these charts. If you can avoid causing any clicks, that’s a great thing for UX. So, basically, you have everything you need in that one page, without needing any clicks.

Mention the time window you’re considering. Also, for team scores, show the latest completed tasks sorted by completion timestamps.

Allow a way to specify the time duration, to say N weeks. By default N = 1, but it can be changed. And when changed, all the dashboards (on clicking), would also take that value of N. Ideally, you can store the N in browser cache, or something, so a reopen of the perf would retain the last entered value of N.

Once you start showing the tasks, allow them to be filtered by clicking on tags, or by assignee, etc. A lot of work can be done on task viewing.

If you click on my dashboard, you’d notice that the dates are overlapping in score chart. Iron out all such rendering issues.

In general, spend a lot of time just viewing all these pages, and see what catches your eye. Then fix it, and then look again. Look again first thing in the morning, look for any new rendering issues that you can catch. Then think of ways by which it would all look better. That’s what engineering is all about.

Thanks @mrjn for the feedback. I will improve the dashboard and work on the suggestions.

1 Like

Hey @mrjn ,
I have updated the perf system’s UI, changed user dashboard to fit both the charts and tasks together without causing any clicks, added tag color filter for tasks and added interactive guideline to charts.
On scores page, added tasks completed by all the users in last week. Tasks can be filtered according to the user and tag colors of tasks.

Have a look at it again.

1 Like

Looks much better. Few more suggestions:

  • Instead of having dropdowns for tags, allow clicking on the tags on the tasks, to make them filters, and then show only those tasks which have those tags. And of course, a clear button to remove all filtering.

  • When filtering show at least some N tasks (where you can determine what N should be), even if that means going beyond the one-week threshold. Along with sorting, you can group the task completion timestamps by week. Divide them with a divider I mean, sort of like this:

Task Completed 5 Oct
Completed 3 Oct
Completed 28 Sep

Week of 21st to 27th Sep:
Completed 27 Sep
Completed 26 Sep

Week of 14th to 20th Sep:
and so on…

  • The Completed x days ago is IMO harder to read than just a date: 3 Oct, or 5 Oct etc. You don’t really need to say Completed on, and definitely remove the dash in the front.

  • In the scores, show the calculations, so under Green: 3*0.1 = 0.3, under Blue: 4 * 0.3 = 1.2, etc.

  • Currently, clicking on Dashboard doesn’t do anything.

  • If I click on 30 days, it doesn’t show me the tasks done in 30 days in my dashboard. The tasks done remain just for last week.

  • The dates are still getting cut off, this time by the line “tasks performed over the last week”. Note that you don’t really need to show the year, it’s useless given you’re talking about 30 days.

  • There should be a way to go beyond the 30 days, to say 3 months or 6 months or something.

  • Also show any “next” or “upcoming” tasks that are not yet completed, for everyone, including the team. Again use a divider to differentiate among completed tasks.


@mrjn I have updated UI according to your suggestions other than showing score caclulation with tags. Have a look at it.

Also I wanted to discuss about

If we show the calculations with tags, the calculated scores from tags and scores present in table will not be equal, as scores are not only calulated by tags but are also affected by learning projects.Currently, number of tags in table are combined from all projects.

So, we can do is show tags from learning and other projects seprately and then show whole calculation method. So will that be a good idea?

1 Like

In the upcoming tasks, only show the “next” and “upcoming” tags. Otherwise, there are too many tasks. Also noticed that the tags are not clickable to act as filters there.

Also, is the sync not running, because I can’t see my recently completed tasks. Can you assign a unique color to each user? And also to other tags. Ensure that red, blue and green retain their color, but the rest can be dynamically assigned.

In the team score tab, I don’t see a way to choose the time options, i.e. 2 weeks, 4 weeks, 6 mo etc.

In the graph when you hover over, the timestamp that’s shown is unnecessarily long. You don’t need to show the exact time, if you’re doing it per day. This would significantly reduce the width of the box.

Always show a count of the tasks. The title “week of x to y” is too big, takes too much space. Make the font size smaller, reduce the verbosity of it. In general, work on the way time is shown.

Again: Spend more time just looking at your creation, and think of various ways to improve it. If I can find issues within 5 seconds of staring at this, you can definitely find issues by staring at it for a minute.

1 Like

Thanks @mrjn.

Sync is running, I can see tasks for 7 Oct. But few times, due to some error Aasanawarrior (also created a issue on github) stops execution.

I will work on UI and try to create a better one.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.