Skip to content

Ways to Help Krita: Work on Feature Requests

Previous Post | Thursday, 24 March 2016 | Reading time: 8 minutes | Next Post

"vOpenBlackCanvasMischiefPhotoPaintStormToolKaikai has a frobdinger tool! Krita will never amount to a row of beans unless Krita gets a frobdinger tool, too!"

The cool thing about open source is that you can add features yourself, and even if you cannot code, you talk directly with the developers about the features you need in your workflow. Try that with closed-source proprietary software! But, often, the communication goes awry, leaving both users with bright ideas and developers with itchy coding fingers unsatisfied.

This post is all about how to work, first together with other artists, then with developers to create good feature requests, feature requests that are good enough that they can end up being implemented.

For us as developers it's sometimes really difficult to read feature requests, and we have a really big to-do list (600+ items at the time of writing, excluding our own dreams and desires). So, having a well written feature proposal is very helpful for us and will lodge the idea better into our conscious. Conversely, a demand for a frobdinger tool because another application has it, so Krita must have it, too, is likely not to get far.

Writing proposals is a bit of an art form in itself, and pretty difficult to do right! Asking for a copy of a feature in another application is almost always wrong because it doesn't tell us the most important thing:

What we primarily need like to know is HOW you intend to use the feature. This is the most important part. All Krita features are carefully considered in terms of the workflow they affect, and we will not start working on any feature unless we know why it is useful and how it is exactly used. Even better, once we know how it's used, we as developers can start thinking about what else we can do to make the workflow even more fluid!

Good examples of this approach can be found in the pop-up palette using tags, the layer docker redesign of 3.0, the onion skin docker, the time-line dockers and the assistants.

Feature requests should start on the forum, so other artists can chime in. What we want is that a consensus about workflow, about use-cases emerges, something our UX people can then try to grok and create a design for. Once the design emerges, we'll try an implementation, and that needs testing.

For your forum post about the feature you have in mind, check this list:

Keep in mind that the Krita development team is insanely overloaded. We're not a big company, we're a small group of mostly volunteers who are spending way too much of our spare time on Krita already. You want time from us: it's your job to make life as easy as possible for us!

So we come to: Things That Will Not Help.

There's certain things that people do to make their feature request sound important but are, in fact, really unhelpful and even somewhat rude:

Some other things to keep in mind:

To summarize: a good feature request:

(Adapted from Wolthera's forum post on this topic).