Files

268 lines
17 KiB
Plaintext
Raw Permalink Normal View History

Episode: 4157
Title: HPR4157: Talking with Halla about the past and future of Krita for its 25th birthday
Source: https://hub.hackerpublicradio.org/ccdn.php?filename=/eps/hpr4157/hpr4157.mp3
Transcribed: 2025-10-25 20:29:45
---
This is Hacker Public Radio Episode 4000, 157 for Tuesday 9 July 2024.
Today's show is entitled, Talking with Hala about the past and future of Creteo for
its 25th birthday.
It is the first show by New Hostroller Coaster, and is about 22 minutes long.
Creteo carries a clean flag.
The summary is, Creteo is celebrating its 25th birthday.
Let's celebrate this together on software Freedom Day.
For the occasion of 25 years of Creteo, an in preparation of software Freedom Day in
September 21st of this year, we wanted to talk with Hala, the lead maintainer of this
Creteo project.
We asked around and Arnold stepped up and offered to visit Hala to ask some questions
about the project's history and future.
The talk is also available as a video on the Pyrtube instance of the Digital Freedom Foundation.
If you know what software Freedom Day is, I'm confident that your heart warms up with
fond memories.
If you don't know what it is, have a look at digitalfreedoms.org slash SFD for more info.
Basically it's a grassroots movement from local themes, organizing events to tell others
about the benefits and importance of software freedom.
If you would consider organizing software Freedom Day where you live, don't hesitate
to visit the blog on our site and get some inspiration for what you could do.
With that said, let's listen to the interview between Arnold and Hala.
Enjoy it.
Today we're interviewing Hala, who is the lead maintainer of Creteo, to learn all about
it and to hear where the project has been and where it's going.
Hala, to start us off, could you tell us a little bit about what Creteo is?
Sure, I love telling people about Creteo.
So Creteo is a digital painting application.
It's meant to make art from scratch, both still images and animations.
So we've got a huge number of brush engines, color spaces for people who need to print
and lots of features really focused at creating art from start.
For what kind of illustrations would you use Creteo?
Pretty much everything.
I've seen so many different artworks, different styles.
People are working on comics in Creteo, people are working with illustrations.
There are people who design those tradable cards, with Creteo games.
I mean, whole animated games, that platform games.
It's useful, that sort of thing, for everything in every style and pretty much African-Tree
in the world.
Wow.
Are there any publications we might know about that have just images created in Creteo?
There are so many.
Like, we got sent a copy of a book on American Wild Birds.
That was entirely known in Creteo.
Wow.
Cool.
And talk a little bit about yourself.
What role did you play in the creation of Creteo?
This year Creteo is 25 years old, which meant I wasn't there at the absolute beginning.
So in 2003, my parents gave me for my birthday a really small graphic tablet, a Wacom
graphite.
And I wanted to use it to draw a map for a fantasy novel.
I was writing back then, and the novel never got finished, because, of course, I wanted
to use Linux as my desktop operating system, and I sort of couldn't get into GIMP, and
I started looking around for an application, other than GIMP, that I could maybe improve
or maybe be good enough, I found Creteo.
In 2003, it had already gone through three names in its shop.
That didn't last long, Crayon, that didn't last long either, and it was finally called
Creteo.
It has also gone through three complete rewrites.
So when I started working on Creteo in 2003, it didn't even have a brush tool.
You could open images, add images as layers, and move the layers around, and that was
everything.
So it was a really good place to get started, except, of course, that it turns out that I'm
not a genius, I'm not even computer scientist, I mean, I'm a linguist.
That writing could brush engine is pretty difficult, so I started blogging about how I was
completely failing at creating a nice brush engine, and how I was failing.
That turned out to be a turning point for the project, because people saw that, oh, there
is someone working on it, they're not making any progress.
I will take a look as well.
They started getting enthusiastic, and pretty soon after 2004, we already had our fourth
complete query.
So that's how it got started.
So how many people were involved in the Creteo community by that time?
Mid-2004, it was about a dozen.
Creteo was still part of K-Office, which was KD's suite of productivity applications,
and K-Office developed that stall because they were partying from one document, form
it or another document for it.
But suddenly there was an application that we really wanted to release, and that's
when K-Office got released again as well.
So it's a bit hard to say how many people were working in Creteo, because there were
also some people working on the core libraries that every application used, but say a dozen.
Can you speak a little bit about how the community evolved since?
As until around 2006, we didn't really have a focus.
Creteo was a game clone or a Photoshop clone.
In 2006, David Révoire, French artist who only uses free software, tried Creteo and
he told us, it's no good, while we thought we had quite a nice application by then.
So afterwards, we started taking this very seriously.
So when we have a sprint, we also invite artists.
We actually videotaped the artist working with Creteo, and that's for the developers a
really nice way of getting to know where the bottlenecks are for users.
Because we involved artists, our developer community also started to grow.
At some point of time, most growth came through Google Summer of Code, but those days
are over, that the program is not doing a lot anymore.
So we have only got one student this year, so that started the second phase.
Let's make Creteo good enough for David Révoire.
We also invited Peter Sigmund towards Prins, Peter Sigmund as the guy who was involved
in defining the mission statement for again.
And he sat down with us and asked us, what do you really want to do?
Make Creteo good for David Révoire.
That's a bit thin as a mission statement.
So we came up with we want to make Creteo purely a painting application, sure that our filters
and all the stuff, but if it's good for painting, it goes in.
So we started working on that, and that took quite a long time to get there, especially
because we were stupid.
We started doing a complete rewrite in 2007 of everything.
That was the fifth.
So that continued, everyone was working Creteo as a hobby.
Most people were still students, until our Slovak students, Lukash, truly,
he was working on his thesis, and his thesis was brush engines for Creteo.
And of course he got ten out of ten because he could show his professors that he had
created real software that was used by real people all over the world.
And then he was like, okay, I'm almost done with university, what should I do?
If you guys can pay my rent, then I can work in Creteo full-time, if not I'm going to
flip burgers.
I'm sorry I asked him what his rent was, it was like 35 euros a month.
So let's do a fundraiser, and we can pay you for six months, six months turned into
a year, and after that Lukash got a job at a different company, but let's start at
sportsroom development.
And that's been really important for the growth of our community, because by now there
are six people working full-time on Creteo.
The second student we hired on graduation was Dimitri Kazekov, a Russian guy, and he's
currently our lead developer.
So because we're all there, lots of volunteer developers can see that their patches and
merch requests, they get refuted, they get merged, and that makes people happy.
So we have a really healthy mix right now of sponsors and volunteer developers.
That sounds great.
You mentioned sprints a couple of times, tell us a little bit more about how that is organized.
And in theory, we organized one big sprint a year, of course it hasn't been possible,
some people have had to flat free Russia for instance.
So visa problems are real problems.
The way it mostly used to happen was I would invite everyone to Daventer, have some people
sleep upstairs in our spare bedrooms, and the rest would go to Hotel Royale in Daventer,
which has two big rooms on the top floor, then we'd go down in the cellar of the church.
It's a 12th century cellar, really roomy, and we would just do some hacking, then do
a meeting, and in the evenings we would go out for dinner, and just get to know each other
better, and one thing that I really miss about sprints, or rather not having sprints, is
the time we would spend in my study over there.
It's just a couple of us, the rest would be hacking around, and we would try to just
just go through the list of book reports, and of course, sprints are fun.
We also invite developers, artists, documentation writers.
Yeah, that sounds like a lot of fun, so if a new contributor would like to join Krita,
that would be the typical on-ramps that they could come into.
It used to be that people mostly join us on IRC, nowadays we also have metrics, because
building Krita from scratch is not easy, but we've got a great menu for that by now.
So either people join us on IRC and ask for help building Krita, and then maybe ask, do
you know, a nice book or feature-ish, that I could start working on, and then we would
help them with that.
But these days, it's mostly people who, out of the blue, oppose the merch request on
KDs, a GitLab instance, and then we are, oh, this person from Serbia, this person from,
Denmark, they have suddenly a really nice patch, and sometimes there's some professional
patch needs to be improved, sometimes it can go in as is, and then we try to get them
in our chat channel, because that's still the place where we'd have most development
discussions.
And the mailing list is almost dead, but that holds for many mailing lists.
So that, once you've got three merch requests in Krita, merged into Krita, we will ask
you, do you want to have a developer account, so you can review other people's work, merge
it, get full access to everything, and sometimes they are, yes, I've always wanted that,
sometimes I'm not really comfortable with that, I'll just want to send you more patches,
and that's fine.
Sounds great.
In terms of features, are there any particular features of Krita that you're particularly
proud of, or that sets Krita apart from other drawing programs?
Over the years, we had a number of firsts, like before Adobe even knew that OpenGL
existed, we had a hardware accelerated canvas implementation, then about the same year,
I think it was 2005.
We implemented support for all kinds of color models, like CMYK, LAB, also painterly
color models, that tries to mix spectral wavelengths to simulate the way paint mixes.
That feature is out, because it never worked well enough.
Down, we got, I think, a really nice way of doing animations, of course the brush engines
are great, oh, and this is something that almost nobody knows, but we support painting
in HDR, so color failure is lower than zero, bigger than one, fully dynamic, the way we
work with those images is compatible with the way Blender imports images.
So you mentioned Blender, are there any other products that Krita works particularly well
with, or that are nice components to Krita?
Screamers.
Screamers is a desktop publishing application, those with free software.
The development is a bit slower at the moment, but it's really solid.
We used it for our 2006, I think it was 2006, a Krita artbook for instance, inkscape, of
course as well, Krita does have factor layers and they are quite advanced, but still
inkscape is a really good complement, and Krita and inkscape are the only applications
that currently implement the W3C mesh gradient standard.
Cool, and in terms of current development, which features are you most excited about,
which are coming up.
What's coming up is the Porto Q6, new version of our development library, that's going
to really eat development time, but again we've got some volunteers who are always started
working on that, I'm not sure, I'm really excited about it, but we have to investigate
it.
We are looking into AI, assisted inking, so you would train Krita on the way you normally
ink your sketches, and then Krita should be able to stem automatically ink your sketches
for you, because for many artists inking is a bit of a boring step, because when you
do an inking, you're often really, really careful, and that means that lines are a bit
often a bit data compared to the sketch, trying to use AI to assist with that, and something
we are investigating.
We are working on that together with Intel, because Intel is one of our corporate sponsors,
but we are also doing all kinds of projects with Intel, like Intel also worked with OSAC,
others on that HDR feature, for instance, interesting.
Oh and text, that's important as well, Volterra has been working on the text shape and
the text tool, like the object that contains text on canvas, and the tool that modifies
it are, of course, two different projects.
This will implement full SVG2 text, including CSS, legatures, font features and everything,
and she's already implemented the text shape itself, it can do vertical text, like for Chinese
or Japanese.
It can do Ruby, which is the Fuyigana, the small text that in Japanese you put next to
the Kanye, the Chinese direct characters, so you know how to pronounce them, and she's
now working on the UI, and there's something we've wanted to start working on years ago already,
I think was 2017, actually I was working on that, but then I was distracted by the
Dutch text office, which want to have money, and I had to do difficult stuff and hire
accountants and so on, and it's not easy being a manager.
So there, but that's the two big things that are coming, hopefully, the experimental
assisted-enking, super-deluxe text tool, cool.
So what does your release schedule look like, do you have a set date, or is it ready
by the threading?
Ready when it's ready, but it's often ready, like if our infrastructure is working correctly,
now we typically do a breakfast, raise every two months, die of the years when we did
one every month, but that was just eating up too much of our time.
We try to have one or two full feature releases a year as well.
Of course we moved from Jenkins' our binary factory platform to GetLab, CI, and that
month means we haven't been able to do a release for six months because so many bits needed
fixing bits were broken, the whole pipeline had to be rewritten, but that's done now.
So we just released 5.2 to 3 better one, and we hope to do the 5.3 pretty soon, which
is a bug fix release, and 5.3 will be a feature release again.
I think we've got almost enough features in there, we're only waiting for the text
tool to be completed.
That sounds great, in terms of volunteers, are there any areas that you would really appreciate
someone helping out and looking into things?
Android experts, because our Android experts started at a very difficult university in
London, they didn't have any spare time anymore.
Android is a difficult platform.
Platform itself, the libraries, it changes all the time.
We do have a UX designer, it's got Patrick, but more help there would also be welcome.
For rest it's actually mostly not what we wish to be done, but what volunteers wish
to do, and what's work is welcome.
Sounds great, on the topic of platforms, which platforms does create a support write down?
That's Linux, we prefer our own binary builds in App-Inch form, because we have to patch
a lot of the libraries that create a dependency, Windows, MacOS, Android.
And when iPadOS gets opened up, we might port to iOS, but both for iOS and Android,
or we also support Chrome OS, but that's Android.
For iPadOS and Android, so tablet form factor, we really want to optimize our user-in-trace
foot touch, and for that we need to have the port to keep six down, so that's going to
take some time.
Sounds like there's a lot of exciting things coming.
Cool, and I think that's all I have for you today, so I'd like to really thank you
for taking time to speak to us.
It was a pleasure.
Is there any things we haven't covered that you would like to talk about?
I want to brag a bit, because we have about 7 million users.
And it's quite a lot, I mean, I used to do commercial software development, and most
of the companies have worked for never ever released, never long had users.
So that makes it so much more fun to work on.
Yeah, that's genuinely amazing.
Awesome, thank you very much.
Thank you too.
You have been listening to Hacker Public Radio at HackerPublicRadio.org.
Today's show was contributed by a HBR listening like yourself.
If you ever thought of recording podcasts, then click on our contribute link to find out
how easy it really is.
Hosting for HBR has been kindly provided by an onsthost.com, the internet archive, and
our syncs.net.
On this advice status, today's show is released on our Creative Commons Attribution 4.0 International
License.