KDE PIM mentorship request

Martin Steigerwald martin at lichtvoll.de
Mon Jun 15 09:59:31 BST 2020


@all: Please drop cc'd to kde-devel mailing list on reply. Just having 
it in here once so everyone knows I replied to the mail.

@Ihor: Cc'ing you as well as I do not know whether you are subscribed to 
kde-devel. No need to cc me back. I prefer mail to mailing lists not 
additionally cc'd to me.

Dear Ihor.

Ihor Antonov - 14.06.20, 22:33:05 CEST:
> The recent thread about Akonadi/PIM situation triggered me to write
> this email.With this email I want to introduce myself and offer my
> time to make KDE PIM better.

Thank you very much for your offer.

> I am a huge fan of KDE PIM applications and I use them daily. There
> are plenty of rough edges but I still like it more than Thunderbird
> or Evolution.

I totally get that.

> I want to start contributing to KDE PIM, but I don't know where to
> start as the PIM ecosystem is just too large to fit into my head in
> one evening. I have a bunch of personal itches that I'd like to
> scratch, also I'd like to understand Akonadi situation over time with
> hope to be able to improve it afterwards. Nothing good happens
> overnight though.

I hope that one of the KDEPIM developers can manage to make some time to 
help you dive into it and complete some first little tasks that help you 
to get familiar with the code base. I added kde-pim development mailing 
list as a recipient so they can actually become aware of your offer 
without noticing it on the more general KDE development list. I suggest 
you use kde-pim mailing list for any KDEPIM development related mails.

https://mail.kde.org/mailman/listinfo/kde-pim

> I am Systems Engineer (Devops/Sysadmin) with some background in
> programming (Go, Scala, Rust, Python). I am not a C++ expert but I
> learn languages quickly (back like 10 years ago I had some exposure
> to Qt but it was soo long ago). Things like CI/CD, Jenkins, Gitlab
> are things I work with on daily basis. I want to devote my evenings
> and weekends to free software.

That is very generous of you. Please keep a balance tough that is 
sustainable for you.

> In order for me to get effective and start contributing I need some
> hand- holding/mentoring for the initial onboarding period. Basically
> I need someone to guide me through the series of small tasks, and
> help me navigate the complexity of the ecosystem (often I simply
> don't know in what library/repo the relevant code is) Unfortunately I
> don't know who is the right person to ask this so this is why I send
> this to the whole mailing list.

I hope that a KDEPIM developer picks up on your offer. I am not deeply 
enough into the code base to help you to understand it, but I may be 
able to give you some pointers to web resources that can get you started 
a bit better.

You can also #akonadi or #kontact IRC channels on Freenode.
 
> So here are the list of my personal itches that may be a good starting
> point:
> 
> - kmail message list: add option "send new email to the recipient of
> currently selected email"
> - kmail folders list: show number of messages marked as important, or
> marked as action item next to number of unread
> - todo list: add possibility to re-parent a todo item
> - todo list: filter tasks with no assigned category
> - todo list: improve new category creation UI (it is terrible atm)
> - todo list: allow re-arranging columns so that priority column could
> be first - akregator: add congfiguration option to change the font of
> the list of articles (similar to kmail message list font)
> 
> Some of the above issues may already be captured somewhere, I simply
> don't know where is the right place to search/report bugs for each
> one (there are over 70 repos!)

Bugs reported by users of KDEPIM / Akonadi are on https://bugs.kde.org

You can search by product there. In advanced search you can refine your 
search further, like additionally by component for example. I suggest to 
look at Akonadi, Kontact and individual PIM applications.

I suggest you do some research there to see which of the personal itches 
are reported there already.  I believe some issues are also marked a 
junior tasks, that would be good ones to start with.

Some more information about the bug tracker and the processes around it 
you can find at:

https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging


There is also a workboard on Phabricator about junior jobs:

https://phabricator.kde.org/project/board/286/

There is also a general workboard on Phabricator:

https://phabricator.kde.org/tag/kde_pim/

I believe currently this is still the active one. Both workboards may be 
migrated to Gitlab.

And there is a wiki page where you can learn how to build KDEPIM 
yourself:

https://community.kde.org/KDE_PIM/Development

I suggest using kdesrc-build for that.


Last but not least there is some writing about how Akonadi works, mostly 
written by Daniel Vrátil. It is important to understand the various 
terms and concepts in Akonadi and I believe it helps tremendously to 
understand the code base, as those terms are used in there as well:

https://community.kde.org/KDE_PIM/Akonadi/Architecture

This document helped me a lot to understand at least a good part of 
Akonadi, although I still do not claim to understand how it all fits 
together in the code base.


There are more resources available like API documentation and such, 
however, I'd leave it at that for now in order to not overwhelm you. I 
think that is good enough to get a better impression about Akonadi and 
KDEPIM and help you get started.

> KDE community made an impression of welcoming and caring and I am
> looking forward to working with some of you!

Sure thing!

I hope this helps you to get started and makes it easier for a KDEPIM 
developer to pick on your offer, as I already gave some initial hints to 
get you started.

Best,
-- 
Martin




More information about the kde-pim mailing list