惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

L
Lohrmann on Cybersecurity
I
Intezer
M
MIT News - Artificial intelligence
博客园 - 【当耐特】
Martin Fowler
Martin Fowler
G
GRAHAM CLULEY
Jina AI
Jina AI
Engineering at Meta
Engineering at Meta
AI
AI
SecWiki News
SecWiki News
C
Cybersecurity and Infrastructure Security Agency CISA
IT之家
IT之家
D
Darknet – Hacking Tools, Hacker News & Cyber Security
T
The Blog of Author Tim Ferriss
P
Proofpoint News Feed
S
Security Affairs
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Microsoft Azure Blog
Microsoft Azure Blog
P
Proofpoint News Feed
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Google DeepMind News
Google DeepMind News
H
Hacker News: Front Page
爱范儿
爱范儿
F
Fortinet All Blogs
大猫的无限游戏
大猫的无限游戏
V
V2EX
H
Help Net Security
The Hacker News
The Hacker News
G
Google Developers Blog
Latest news
Latest news
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
T
Tor Project blog
宝玉的分享
宝玉的分享
博客园 - 司徒正美
H
Heimdal Security Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
MyScale Blog
MyScale Blog
S
SegmentFault 最新的问题
C
Cisco Blogs
Blog — PlanetScale
Blog — PlanetScale
S
Security @ Cisco Blogs
B
Blog RSS Feed
B
Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Google Online Security Blog
Google Online Security Blog
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Cyberwarzone
Cyberwarzone
L
LINUX DO - 最新话题
K
Kaspersky official blog
MongoDB | Blog
MongoDB | Blog

GIMP

GIMP - GIMP 3.2.4 Released GIMP - GIMP @ Libre Graphics Meeting 2026 GIMP - New Color Mode Coming to GIMP GIMP - GIMP 3.2.2 Released GIMP - GIMP 3.2 Released GIMP - GIMP 3.2 RC3: Third Release Candidate for GIMP 3.2 GIMP - Interview with Øyvind Kolås, GIMP developer GIMP - GIMP @ FOSDEM 2026 GIMP - GIMP 3.0.8 Released GIMP - GIMP 3.2 RC2: Second Release Candidate for GIMP 3.2 GIMP - GIMP 3.2 RC1: First Release Candidate for GIMP 3.2 GIMP - Interview with Simon Budig, GIMP developer GIMP - New Official Snap package GIMP - GIMP 3.0.6 Released GIMP - GIMP 3.1.4: Second Development Release towards GIMP 3.2 GIMP - Interview with Sevenix (author of GIMP 3.0’s splash image) GIMP - GIMP 3.1.2: First Development Release towards GIMP 3.2 GIMP - GIMP 3.0.4 Released GIMP - New Priorities for GIMP GIMP - GIMP 3.0.2 Released GIMP - GIMP 3.0 Released GIMP - GIMP 3.0 RC3 Released GIMP - GIMP team at FOSDEM 2025 (talk and keynote) GIMP - GIMP 3.0 RC2 Released 🎁 GIMP - GIMP 3.0 RC1 Released GIMP - Development Update: Closing In on the 3.0 Release Candidate GIMP - Experiments with AppImage GIMP - GIMP at LGM 2024 (Rennes, France) GIMP - GIMP 2.10.38 Released GIMP - GIMP 2.99.18 Released: The Last Development Preview Before 3.0! GIMP - GIMP 2.10.36 Released GIMP - GIMP now on Windows for ARM (experimental) GIMP - GIMP 2.99.16 Released: Wilber Week 2023 edition! GIMP - Wilber Week 2023: report GIMP - GIMP in GSoC 2023 GIMP - GIMP Help Manual 2.10.34 Released GIMP - GIMP 2.10.34 Released GIMP - 2022 annual report GIMP - GIMP 2.10.32 on Apple Silicon GIMP - Happy 27! GIMP - Development version: GIMP 2.99.14 Released GIMP - Conference “GIMP and ZeMarmot” in Vandœuvre-lès-Nancy (France) GIMP - Revival of the GIMP developer website GIMP - Development version: GIMP 2.99.12 Released GIMP - GIMP 2.10.32 is on the Microsoft Store! GIMP - GIMP 2.10.32 Released GIMP - GSoC 2022 project announced: CMYK features GIMP - GIMP is a GSoC 2022 mentor organization GIMP - Development version: GIMP 2.99.10 Released GIMP - 2021 annual report GIMP - GIMP 2.10.30 Released GIMP - GIMP is not affected by the log4j vulnerability GIMP - GIMP 2.99.8 macOS package now available GIMP - Development version: GIMP 2.99.8 Released GIMP - GIMP’s official mirrors and mirror policy GIMP - GIMP 2.10.28 Released GIMP - Funding GIMP developers for sustainable development GIMP - Development version: GIMP 2.99.6 Released GIMP - GIMP 2.10.24 Released GIMP - 🎄 Development release GIMP 2.99.4 is out 🎁 GIMP - GIMP 2.10.22 Released for macOS GIMP - This is 25 GIMP - Development release GIMP 2.99.2 is out GIMP - GIMP 2.10.22 Released GIMP - GIMP 2.10.20 Released GIMP - GIMP 2.10.18 Released GIMP - GIMP and GEGL in 2019 GIMP - GIMP 2.10.14 Released GIMP - GIMP 2.10.12 Released GIMP - GIMP 2.10.10 Released GIMP - GIMP and GEGL in 2018 GIMP - GIMP 2.10.8 Released GIMP - GIMP receives a $100K donation GIMP - GIMP 2.10.6 Released GIMP - GIMP 2.10.4 Released GIMP - GIMP has moved to Gitlab GIMP - GIMP 2.10.2 Released GIMP - GIMP 2.10.0 Released GIMP - GIMP 2.10.0 Release Candidate 2 Released GIMP - Fun at SCaLE 2018 GIMP - GIMP 2.10.0 Release Candidate 1 Released GIMP - Libre Graphics Meeting + SCaLE 2018 GIMP - GIMP and GEGL in 2017 GIMP - Strings Freeze For GIMP 2.10 Is Now On GIMP - GIMP 2.9.8 Released GIMP - GIMP 2.9.6 Released GIMP - An Interview with Michael Schumacher, GIMP administrator GIMP - GIMP 2.8.22 Released GIMP - GIMP 2.8.20 Packages for macOS and Microsoft Windows are available GIMP - GIMP 2.10 blockers and the road to 3.0 GIMP - GIMP 2.8.20 Released GIMP - WilberWeek 2017 GIMP - Community-supported development of GEGL now live GIMP - 2016 in review GIMP - Making settings persistent in GIMP GIMP - GIMP 2.8.18 Released GIMP - GIMP 2.9.4 Released GIMP - GIMPers at Texas Linux Fest 2016 GIMP - GEGL 0.3.8 and babl 0.1.18 Released GIMP - Updated 2.8.16 Installer with a Major Bugfix Released
GIMP - An Interview with Michael Natterer, GIMP maintainer
by Jehan · 2017-03-01 · via GIMP

GIMP is Free Software, but even before this, it is people: the ones who create it, the ones who create with it… We don’t have accurate statistics and we take pride on not gathering your data. Yet we know (through other websites that have logged partial statistics over the years) that this is a widely used piece of software, by millions of people around the world. So wouldn’t it be neat to meet some of the individuals who make this project come alive?

Some people think there’s a huge company behind GIMP. This is not the case. GIMP has always been developed by a handful of random people scattered around the world. Most of them are volunteers and none of them work on it full-time. As an insider myself, I’ve wanted to launch a series of interviews with the many awesome people I’ve met since I started contributing. So who better to start with than our own benevolent dictator, GIMP maintainer, and the biggest code contributor: Michael Natterer, aka “mitch”.

This interview was held on Friday, February 3, 2017 at around 3AM in front of a fireplace and after a day of hacking at Wilber Week. With us were several team members, including Michael Schumacher (schumaml (S)) and Øyvind Kolås (pippin (P)), who also asked questions.

Mitch, the man, the myth, the legend
Mitch. The man. The myth. The legend.
The reason your commit probably got reverted.

Jehan: Hello Mitch! In a few words, what’s the close future of GIMP?

Mitch: In 2.10, there is the GEGL port. Then the GTK+3 port immediately after, which will go as fast as possible. We don’t plan many features during the GTK+3 port.


J: What are your preferred features of 2.10?

M: High bit depth, on-canvas filter previews… I don’t actually remember the features of 2.8 [to compare] because I never use it.

J: You use 2.10 instead?

M: Yes.

J: Do you use GIMP often?

M: Mostly for testing what I implement, and also for making postcards I sell in my family business. That’s the only thing I use it for.

A maintainer

J: How did you start hacking GIMP?

M: There was this code that saved the user-assigned keyboard shortcuts for menu actions. The code had an escaping bug where you couldn’t have a hyphen as an accelerator. So I wrote code for escaping the string. That was my first GIMP patch in 1997 or 1998.


J: How did you become the maintainer?

M: I killed the previous maintainer. He is now in my cave in boxes.


Schumaml: Have you ever met the original authors (Spencer Kimball and Peter Mattis)?

M: No. Has anyone?

S: Have they ever contacted you?

M: Yes, they sent me a few plugins which I pushed. Neon, photocopy and cartoon. It was around 10 years after they left the project, one of them comes to me and says “Hey Mitch, I coded 3 plugins, here they are”. Everything looked perfect so I just pushed them as-is, and they still exist.

These days, they’ve been reimplemented in GEGL, but the new versions give different results, so the old plugins are still in the menu.


J: Why do you continue working on GIMP?

M: That’s a good question. (laughs) I don’t know. You guys, perhaps? It can be really annoying sometimes. Why do you guys continue?

J: Me? It’s fun.

M: It’s fun yes but sometimes it’s not fun and you do it anyway.

GIMPers at Montserrat, España
GIMPers at Montserrat.


J: Where do you see GIMP 20 years from now?

M: It will probably end up in a pile of bits rotting in some corner. I may have been thinking the same thing twenty years ago, though, so you never know.

A hacker

J: What do you think of Free Software?

M: It’s the way to go, but you need to use the software which is available for a task, so for some tasks you have no choice but to use something that’s not exactly free.

For example: [pointing to nomis trying to make a label printer work on a GNU/Linux distribution] if you were using the closed-source driver for that, it would work.

*: (laughs)


J: What’s your operating system, distribution, desktop…?

M: Debian Unstable, GNOME 3.

J: You often complain about all these though.

M: Because it’s all shit. Just because you have the least shitty [software] doesn’t mean it’s not all shit. Like autotools. They are shit, but it’s the best shit we have. There is no software that isn’t shit, except perhaps the most simple of software which does one task.


J: What’s your development environment or text editor of choice?

M: Terminal & emacs.


J: How do you like to hack?

M: It depends. Sometimes I need silence and sometimes a crowded room.


J: You are your own boss in a shop. But we see commits from you all the time. Are you hacking in your bookstore when you get free time and don’t have to take care of your employees or customers?

M: Sometimes, but very rarely. I’m mostly hacking in the evenings, or I commit something during the daytime that I worked on the night before until 2AM. If I think “I better go to sleep before I push this”, then I’ll wait until the next day when I’m awake to check it once more before I do.

But I don’t have time to do 5-hour long patches during working hours.

J: You don’t sleep?

M: I don’t really sleep, no.


S: What channels do you use to communicate on behalf or in the project?

M: IRC, and IRC.


pippin: What was the first computer you programmed?

M: It was a Schneider CPC, a variation of the Amstrad. At 15 or 16?


S: How did you write your first hello world?

M: In BASIC of course. My programming languages were BASIC, Assembly, Pascal, Modula-2, C, in that weird order. :) Plus some others at university nobody cares about. :)


J: Do you code under the influence?

M: Always! That’s the only way to code.

XKCD Ballmer Peak
Obligatory XKCD, by Randall Munroe (Creative Commons By-NC 2.5).

GIMP: present

J: So all software is shit, but in the list of shitty software, is GIMP not so bad?

M: I hope so, but of course it’s shitty. We’re just a handful of volunteers doing what companies with hundreds of (paid) people do.

J: But sometimes we do things not so bad, right?

M: Yes, but there is nobody to make sure of it. It’s not often that someone spends the time and effort to make a plugin perfect. Sometimes it happens, but usually it gets dumped on us and that’s it. Ten years later, we look at the code again and say “oh my god, this is complete garbage”. Very rarely do people maintain their code long term and we cannot seriously expect that to happen with everyone being a volunteer here.


S: Is there something you’d like to do much more in the project, apart from coding?

M: In the project? No, coding is fun. I’m happy that I don’t have to do that much administrative work.


S: When will 2.10 be released?

M: Oh go away! The answer is “go away!”. Read my lips: “go away”. When it’s ready.

S: Do you expect it to be this year?

M: Yes of course.

J: So we have a promise!

*: (laughs)

GIMP: future

S: There was this thing that the UI should use Python and the core should use C.

M: Python for the user interface. Horrible! Why?

S: This is something we had discussed.

M: Yes but in the past people wanted to use JavaScript. The year before they wanted to use Java, the year before they wanted to use this, and the year after they want to use that. Now they’re all gone.

Everyone who ever said “I want to use this or that”, and “It’s all shit, let’s use JavaScript”, none of them are still in the project, so…

S: So you don’t see any big changes regarding GIMP in the near future?

M: In the near future definitely not because we need to get some releases out. Unless, of course, there is a well-done patch that doesn’t need weeks of discussion and back-and-forth negotiations on how things should be done.

About using other languages: why not? There is Rust. There is maybe simpler stuff for doing user interfaces, but making such decisions for a codebase the size of GIMP is not something we can decide based on “the latest hot stuff”.

I mean, look at this javascript mess. Is that really better? Just because it’s easier? Easier just means that more clueless people can write code, and they are clueless enough already. So making it easier doesn’t make it better. Arrogant but true.


S: Anything else you want to change?

M: Yes a lot of stuff as long as I don’t have to do all the changes, because I really have enough things to do already (laughs).

You can be the maintainer of whatever subpart, please. Please. Take away the work from me. All contributors need to realize that if they do something really well, they will be in charge of that part.

J: That’s a very good point.

M: If you do it right, then you’ll be in charge of the part you are doing right. It always works like that.

S: They don’t need a blessing from you, right?

M: I don’t do blessings. (laughs)


J: GTK+ comes from GIMP. What do you think of GTK+ now?

M: They lost their minds, but they are also doing really good work. I don’t really understand some of their decisions.

On the other hand, look at the mails we get. People say exactly the same about GIMP: “Have the GIMP devs lost their minds?!?”. I was involved with GTK+ for a long time and people thought that I had lost my mind, which was (and is) probably true. Bottom line is that all is fine between GTK+ and GIMP, I just reserve the right to complain for myself.


S: So we will release GIMP 3 with GTK+3 or 4?

M: They just branched for GTK+ 4.x, so that’s not going to happen overnight.

P: It won’t hurt to suddenly have GIMP 4 instead of 3.

M: No it wouldn’t. If they are done in a few weeks, we’d go for GIMP 4 right away. So why not. That would be cool. (laughs) Or GIMP 5!

J: GIMP 10?

M: GIMP X!

Various rants

S: If you happen to be in a conversation with people talking about GIMP, but they don’t know that you are involved, do you come out as the GIMP principal developer?

M: Only if they start talking utter bullshit, or if things simply need clarification. It has happened, of course. A guy wanted to convert me to GIMP once and I had to tell him: yeah you don’t need to. It was in a non-hacker situation.


J: Who is Wilber?

M: Nobody knows. Wilber is a GIMP.


S: What special device would you like to see GIMP on?

M: This cool Microsoft thing (Surface Studio PC) where they have this hyped video online, and it looks super slick with touch and everything. It’s an ad like Apple used to do in the past and now Microsoft does it, which is a bit weird. The official Microsoft YouTube video makes you want to have one of these things.


S: What advice you would like to give to someone who would want to contribute? What to do and what not to do?

M: Listen to advice and be persistent.

Don’t give up because somebody says “this patch isn’t quite right”, most of the time it won’t be. My first commit to GIMP was reverted immediately.

S: I think you also reverted my first.

M: Yes, that’s kind of a tradition. Everybody fucks up on their first commit and it gets reverted. That’s a good standard.

S: So do not be afraid of errors?

M: Yes exactly. Unless they jeopardize the fate of humanity or something. That’s unlikely.


*: Thanks for the interview.

M: You are welcome!

Mitch at work

Images in this post are courtesy of antenne and used by permission (cba).