Blogs

KF6: How We Organize The Work

Dec 7, 2019 | 4 minutes read

Tags: KDE, Frameworks

In the previous post, I mentioned the KF6 Workboard. I also promised that I would make a specific post once the workboard would be properly organized. I didn’t write it right away, so this post is now long overdue. :-)

If you clicked on the link above, you might be a bit scared by the massive board you’re seeing. Yes, this is a massive endeavor even if a bit less overwhelming than the kdelibs to KDE Frameworks transition (but just a bit really). Anyway, if you’re scared: I’m here to help.

Let’s break down the different columns available on the board. I will go left to right and explain their use. This should give a good idea of how it’s all supposed to work.

  • The Metatasks column is a way to give a different view on the work to be done. Its content is a bit special. Indeed, the other columns contain what we could call “regular tasks”, they are not all of the same size but they are mostly actionable on their own. In the Metatasks column we collect what are more like full fledged longer term projects which need to be broken down. Their children are tasks which sit in the other columns. See it kind of as an index to get to tasks grouped by topics, most people will read the content of items in this column but it’s less likely they’ll have a strong urge to fiddle with it.

  • The Needs Input column contains items which still need further discussion in order to proceed. Once the discussion phase is over, those items will either spawn further child tasks and end up in Metatasks or move in one of the other columns.

  • The Waiting on Qt Changes column contains tasks which are waiting for something to happen upstream in Qt in order to proceed. They can also be seen as a token for something to monitor in Qt or a reminder for us to be more involved in a particular Qt task.

  • The Waiting on KF6 Branching column contains all the tasks which need to be postponed until we actually branch KF6. This also means that a lot of work is happening right now (or is up for grabs) which will benefit directly KDE Frameworks 5!

  • The Waiting on Other Tasks column contains all the tasks which are blocked by another task somewhere on the board (the information of which task is then available in a comment or using the depend on relationship). It’s a good way to track those to verify things aren’t getting out of hand being blocked, it’s also a cheap way to do dependency management sort of.

  • The Backlog column is where you can find a way to directly impact the project. This contains all the tasks which are up for grabs. We also try to keep is somewhat sorted so that easier and smaller tasks are at the top while harder and bigger tasks are at the bottom. So if you’re a seasoned KDE contributor, please look at the bottom of the pile in priority! If you’re new or trying to get in KDE Frameworks to do your bit: feel free to pick tasks at the top of the pile.

  • The In Progress column is self explanatory… it contains all the tasks currently worked on by someone.

  • The Done column is again self explanatory. Anything completed should be moved there, but there’s a caveat! When done with a task, please move it to the Done column but don’t close it! This will be helpful because of the next (and last) column.

  • The Announced column contains all the tasks which have been done and announced in one of our report blog posts. This way it should make producing those blogs easier. Indeed when the time of writing such a blog post comes, we use the content of the Done column as input and then move the tasks on the Announced column. This will likely be done by yours truly.

So now, you know how we organize our tasks. You even know where to look in the backlog column depending on your profile. Time to let you all explore the pile of work ahead of us. Don’t hesitate to get in touch if you got questions.

In conclusion, let me say there is work for everyone. Tasks range from little easy tasks to full fledged projects. I will regularly post progress announcements, if you want fame and glory: just pick a task from the backlog column of the KF6 Workboard and complete it!