GIMP's UI is alright for me, what I need are more features that are sorely lacking:
1) ability to work with images having an arbitrary number of spectral bands
2) floating-point pixel values
3) complex-valued pixels and their natural operations
4) images of arbitrary size, without need to open the whole image at once (which may not actually fit in memory)
5) save the processing graph and apply it to other images with a command line tool
Where do I start?
- sometimes when I start it it doesn't display toolbox
- when I open the toolbox it is (sometimes) a vertical line of buttons (single column) instead of 5 columns that I begged it countless times to be
- setting the size of pencil is completely unintuitive - I usually click in what appears to be input field, only to discover it is not (but instead some meter that sets size to some huge number)
- saving the set size is something that should be done automatically, but I haven't found a convenient way to do it
And that is even without mentioning the whole Save / Export fiasco.Note that I love Gimp and use it often, but UX is not its strong point.
It actually is an input field, but it can be interacted with in 3 ways. Clicking on the value focuses it, and allows editing by keyboard. Clicking and dragging in the bottom half of the block allows you to increase or decrease the value by dragging left or right, and the movements you make translate to relatively smaller value changes, so you can be relatively precise. Clicking and dragging in the top half of the block allows you to select a specific value by dragging, and the position of the cursor translates directly to the position of that value on the bar.
Actually, in Gimp 2.10.4 it now for me even changes the shape of the cursor: lower half: ↔ (left-right arrows) upper half: ↑ (up-arrow) so it seems they fixed the discoverability :)
Agreed. It's hard to imagine a scenario when you open a file in GIMP and don't want the tools. While there may be some such scenarios, it's hard to believe that it's a common case.
> when I open the toolbox it is (sometimes) a vertical line of buttons (single column) instead of 5 columns that I begged it countless times to be
Oh, yeah. Having the toolbox form factor changing and the tool buttons moving around (seemingly at random) is by far the most annoying part of GIMP for me. I don't actually much care what layout is chosen; I just want it to stay the same.
please no :(
Floating point pixel values should be supported as of GIMP 2.10, though.
True! I have just updated to 2.10 and it can open floating-point tiffs of one or three channels. The support is very limited, though. It seems to ignore negative values or values higher than 1, so it is mostly useless to me. Yet, I'm very happy to see new advances!
It can:
1.) handle hyperspectral images
2.) handle images with 32-bit floating-point pixels
3.) handle gigantic images, streaming from disk as necessary
4.) record edits as a macro, which can be replayed on other images
Unfortunately, I'm not aware of, and a little searching didn't uncover, any capability for handling complex pixel values. This could be (poorly) implemented with 2-channel images and some user macros for specially manipulating them.
[0] https://imagej.net/Welcome
[1] http://fiji.sc/
Googling "complex-valued pixels" didn't bring up anything, but I'm interested in finding out more about that. What pixel-related information do the real/imaginary parts represent? What sort of applications does that have?
If you compute the Fourier transform of a scalar-valued image, you obtain a complex-valued image. It would be nice to be able to process these transforms with gimp (e.g., to "paint" a few parts in black to set those frequencies to zero, thereby defining a band-pass filter).
Their window/toolbox system sucks though. I have a hard time placing all windows where they need to be and even opening some of them. It's probably my biggest complaint right now.
Welcome to 2018 where GIMP 2.10 is available and features the Warp Transform tool that does the same (actually, more) and works directly on the canvas.
GIMP is GNU's image manipulation program, not photo manipulation program. Most images are not photos.
Just use ImageJ!
Everything is counterintutive, starting from shortcuts, to menus, etc. etc., and since it's GTK2 it looks minuscule on hidpi screens.
I don’t know, but I’ll throw out my theory. Note I’m very much a fan of open source even though this might sound negative. I would also love to see GIMPs UI get an overhaul.
In short, I think it’s harder to prioritize open source features for multiple reasons.
When you don’t have paying customers, it’s very hard to prioritize the feedback you get. When you do have paying customers, you tend to prioritize in proportion to the account size, for better or worse. As a blanket general statement that is not always true, but more true than not, paying customers are trying to get something specific done for their job, while free customers are exploring. I say this from the point of view of owning a web startup with a freemium model, so I’ve had a lot of first hand requests from both paying and free customers. I haven’t had an OSS project with as much success, so there might be some different trends when all users are free users.
The other aspect is that developers of OSS projects have fewer deadlines and can choose what they work on. UI coding is usually less fun than writing filters or architecting an image cache. I know that personally, when I’m left to my own devices, I’m not usually working on the hard or boring things that would have the biggest impact for others, I’m working on the fun things that are most fun for me.
There’s also the issue that OSS projects are created by programmers for programming reasons, and they aren’t often able to hire designers and artists like a for-profit shop.
The problem is that the current developer base of many FLOSS project don't understand that a) decent UI requires an expertise and b) knowing how their poor UIs are implemented doesn't count as expertise in UI development.
For example-- if I write to a FLOSS mailing list that the way they are using realloc leaves some stale pointers that can cause crashes, they very quickly fix the problem. But if a UI expert posts something about a similarly severe and easily fixed UI bug, they'll get at least 5 authoritative-sounding responses from people who know absolutely nothing about UI design.
Such a UI developer would definitely need a full-time salary to deal with that kind of social situation.
One additional problem is that it's hard to know who to listen to. Someone who seems like a confident UI expert might as well be a misguided visionary who will turn GIMP into the next Windows 8. Randomly trusting a designer is probably just as dangerous as randomly trusting a software developer.
Compare
"Your UI improvement sounds interesting but it's too risky to trust a random UI expert. Sorry."
To
"I ran the idea by X and they mentioned that accessibility would become a problem with your approach. How do you plan to address that?"
IMO one sounds more likely to attract quality contributions than the other.
For what I need to do Krita is much better. I haven’t used photoshop for over a decade.
Disallowing saving follows the principle of least surprise, because when an application reports a successful save, users would expect the application state they see to actually be saved.
To put it another way, all the data you want "Save" to save isn't actually important to most people who want to use the "Save" button, and if it is they're most certainly aware of which image formats preserve that information.
Having three different ways to save something depending on what you want to preserve is an odd way to do things that I'm bitten by every time I use GIMP.
I should be able to find the command to save my file without needing to know about that lossy distinction.
If there's a potential problem the software can ask me how it should be resolved, when it needs to be resolved.
I can do this with paint.net.
I do this all the time with Corel Painter. Any work in progress gets saved in a way that opens with the layers (corel's format). When I'm done, I can simply collapse the layers and save in a number of formats. No big deal. I understand that some formats simply don't allow the layers. That shouldn't be an issue, though. All it takes is a popup telling the user about this.
Why? I don't understand this. You're not "saving" what you see on the monitor by storing the information to a .png file; the moment you "save" you'll lose some information decided by an algorithm you do not understand, so it really is not "saving" anything, it's "exporting" what you see on the monitor to a different format. When you actually click the "save" button in gimp it stores the content in a format it can recover 100% of the information you'll need tomorrow. These sort of terminological differences between Photoshop, Paint.NET, Gimp, Krita etc... do not point a deficiency in Gimp, rather just a cultural difference decided by rational arguments. I think people should be more thoughtful about what are the targets of Gimp Project, Gimp does not want to be a Photoshop clone, they're trying to make a great image manipulation program; and as software engineers they make their own decisions how to structure/name their program.
When x is standard workflow for many of the other such programs (and things like word processors) and it isn't such in Gimp, that very thing drives people away. Most artists aren't going to care what the software engineers want in the program: Instead, they are going to care about things like this. When added up, it just makes for a frustrating experience. It doesn't really matter what the technicalities are if you are the artist.
Yes, you do lose some information depending on the format. Heck, I notice loss simply looking at an image on different screens. The fact is, though, that folks actually need to save in different formats. Sure, I keep my layers and information in tact while working, but folks also need to be able to share their work, print it, and things like that. For that sort of thing, you need the different formats. The exact format depends on what one is doing: PNG works for facebook and instagram. Some sites have file size limits, and with some printing you have a bit more leeway.
I'm not even a photoshop fan myself: I chose my software based on both if it was easily integrated with a Wacom pen display and how well it mimicked traditional artwork flow and styles. Hence my use of Corel. Photoshop is basically a renting program now, and I generally welcome alternatives. Gimp has always been somewhat frustrating because of little stuff like this.
As a user, I think about "saving" as a process to persist my work. If there might be technical fine-grained issues, show me a warning sign in the save dialog, but don't come up with a process that "makes me think".
PNG is just a compressed pixel-to-colorspace format. It does not and cannot contain most of the information in your work. When you save a .png you're basically doing something similar to compiling C to machine language. You permanently lost all the high level information, possibly in a way you cannot track back (in the case of .JPG). This is not saving, your work will not persist, the format you're "saving" is specifically engineered in a way it doesn't persist any more information than it needs. I hope we agree thus far. As I said above, it's merely a terminological difference, in gimp this process is called "exporting" and I can't understand why this is such a big deal. You literally wouldn't be able to navigate Gimp or Photoshop or Blender etc without having basic knowledge about the program (i.e. looking at the manual) like where menus are etc, and this is just one instance.
> If there might be technical fine-grained issues, show me a warning sign in the save dialog, but don't come up with a process that "makes me think".
Is this a joke? You literally have to just click the very next button under "Save" which reads "Export As". What "makes you think"?
My favorite was probably PaintShop Pro before 10, and second is probably Paint.Net (if it had a few more features). A simple, easy to use interface with the majority of features really accessible. Gimp offers so much more, though frankly, it's about 10x as hard to use. I only do so when I want to do something that's difficult in Paint.Net or Krita.
I want to like it, I want to use it... that said, If you had a few users who like other software use it, nobody I know would choose Gimp over other tools as a preference. I don't always like changes that are made to an application I've used for a while, and can understand resistance from Gimp developers and users. It doesn't matter, sometimes convention should win, sometimes making things easier means change, and sometimes making things consistent means an inferior technical choice.
As someone that edits PNGs and JPGs often with Photoshop I double click the file in the Finder (mac) or Windows Explorer (win) and suddenly I'm editing the PNG or JPG. I make some edits, if I add layers or features that can't be saved back to those formats I flatten the editing (Cmd-Shift-E, of course also on menus in 2 places). I then just press Cmd-S/Ctrl-S to save. No questions asked, no dialog pops up. Click->Edit->Save. If you have to edit often it's a huge difference with no interrupt in workflow.
But as I said this just one annoyance of many.
I have no intention of logging these as bugs because from my perspective they are implemented as per the developers’ vision.
But not mine. So I use other applications because I find them faster. And again, I’m not a photoshop guru so don’t think this is about comfort and learned keybindings or other muscle memory.
GEGL on the other hand is something I’m going to investigate further. Being able to use that for workflow would be very useful.
There are just too many special-use-case tools to make a "good" UI. Learn it and forget about what it looks like, it's the only way you'll ever be happy.
No, Photoshop has never had a good UI (neither has Illustrator).
The problem is that people who use Photoshop on a regular basis have memorised the keyboard shortcuts and steps needed to complete tasks. The Photoshop way of doing things, no matter how clunky or unintuitive, is now the natural way of doing things for them (and their frame of reference when trying out another app).
It's no different to a lot of other software e.g. the programmer who won't consider any other editor unless it has the same task flow and keyboard shortcuts they've spent so long committing to memory.
This puts rival apps in a difficult position. Should they copy the same clunky, unintuitive way of doing things to attract users? Or forge a different path? In the case of Photoshop, copying the UI and task flow means users can also take advantage of the gargantuan volume of existing Photoshop books, tutorials and training available.
Illustrator is a pain, fine, whatever.
Photoshops UI is optimized for its workflows. I was able to learn Photoshop easily enough, I've been able to learn other image manipulation programs quickly, but despite having spent many hours in GIMP, I hate every minute of using it.
If I go "create new image", there isn't an option to create a new image that is the size of the image on my clipboard.
There is not a dedicated "interact with this selection" tool, like the arrow tool in PS, instead there is a tool that sometimes draws new boundaries, bit the rectangle select tool also moves newly pasted layers, which is a different action than the move tool, which is also confusing.
Pasting just sucks. Why is it a new floating layer that I then have to right click on and say "new layer", just create a new layer, not this annoying psuedo-layer thing.
Everytime I want to move something I have selected, I want to scream. I create a selection, so, move tool right? NO. The move tool lets me move layers I have made. Joy.
In fact after having spent a couple minutes on it, I still can't figure it out, but then again why GIMP is so damn confusing I have to figure things out every time I use it? Good programs are learned, GIMP is suffered through.
The way to move something that is selected is the same in literally every other image manipulation program ever made, but GIMP has to be different.
Hilariously enough, all other transforms on selections are super easy, just not translates.
Actually, you know what, I just looked it up.
To move the selected pixels, the user is supposed to control-alt-drag, then release control and alt, and keep dragging.
One of the most common interactions in an image manipulation program is hidden behind a double-meta with a click drag attached to it, and then a release of that double-meta?
That is jaw droppingly bad UI.
I wonder if maybe they shouldn't go with a XUL like system where the UI can be greatly customized by third parties. Someone would undoubtedly create the Photoshop clone UI and make a bunch of people happy.
The idea of an independant open source project focusing itself on producing a commercial quality UI seems a little ludicrous to me. This type of UI requires continued multi-disciplinary effort and process over a timeframe of years. And this is the exact weak spot of projects funded entirely/mostly on a volunteer/contribution basis.
This idea of a highly customizable toolkit (a la Emacs for graphics), in contrast, goes to the strengths of the open source model. Open source projects tend to be developer-heavy, and developers tend to like to build frameworks/abstractions... so a natural fit. Frameworks tend to be easier to use when the underlying code is available for various kinds of inspection, so the open source model fits there too. I'm not saying it'd necessarily be a cakewalk, but it seems like a closer fit to that OSS is really good at.
(Of course, frameworks are more complex and expensive to develop than single applications, so this idea has that going against it.)
Edit: or rather, create a SketchUp clone with good 2D projection/export (Blender isn't for casual use)
Back when the GIMP was developed your options were pretty limited. There was Athena Widgets which are basically the cave drawings of the computer world. Motif which had licensing issues. OpenWindows widgets which were notoriously buggy and ugly. There wasn't much else to choose from. There's a reason GTK exploded so quickly after release.
GIMP is a highly featureful project with powerful scripting capabilities. I wouldn’t say it isn’t already on par or more powerful than Photoshop.
There are web-based photoshop clones that offer better usability than GIMP. I shiver in disgust saying this out loud but it's true at this point. They're slow, more minimalist in terms of features but they don't have buttons that overlap or scroll bars popping up out of nowhere. The GIMP UI is an unusable mess. It's the UI equivalent of "programmer art".
Having just woken up, deprived of my morning caffeine, this sentence sent my brain for a real loop :)
It's not aesthetics. You make it sound trivial. People aren't talking about things like how the icons are designed. They mean the workflow.
I think the issues are getting confused. Yes, Lightroom saves a separate file from your photos of the changes so in that sense it's non destructive, the original files are not changed.
Photoshop is non-destructive in that you can load an image into a layer and apply tons of layers above that layer each of which edits the layers below it in some way. The pixels in the image layer are never changed so it's also "non-destructive". But saving the file does overwrite the old photoshop file with your changes, unlike lightroom.
This is the fatal error. Humans are the ones using that tool. What you call aesthetics is functionality.
We’re not talking about making it prettier we’re talking about making it more usable.
On top of that, it’s an image editing tool. It’s a tool that people use for the purpose of creating visual, often-times “aesthetic” works, and yet the UI is not important? Well then more humans making the decision to use it is not important.
In my opinion, GIMP is the evidence that these efforts are misplaced, and focus should be the UI (at least after core functionality exists). No point is a fancy pants program that nobody actually wants to use.
I have a feeling that in many ways it's just a lack of resources to move things faster.
I don't just mean technical inertia which is probably large given GIMP's size and long history, but also people inertia. UI tends to be the ultimate bikeshedding [1] blackhole. Few people have an opinion about how a denoising filter should be implemented. Several orders of magnitude more have feelings about the UI should look and the workflow should function.
You could conceivably raise enough money from stakeholders to do this properly with a few experienced UI developers, proper user testing etc.
I'd like to help contribute to some projects where I can lend a (non-development) hand, but being code-based projects, they don't feel set up to accept it.
Firefox has a lot more commercial support than something like Gimp, which is supported primarily through contributions in various forms. What this means is that it's harder to turn down contributions and harder to implement the kind of process that'd be required for a more coherent UI. As simple as it might seem at first, it really is a whole 'nother ball game.
What do you do instead? Are you using GIMP entirely through the scripting interface? How are you using a graphical image editor without looking at the user interface?
Open source is usually built with consensus and that is why it’s hard to follow “one vision”. Also hard to chuck out contributed code / features, specially when its voluntary since it’s not welcoming for new contributors.
But maybe that's because I started out on Blender and only had a cursory look at Maya. Same with GIMP. I have years of experience working with GIMP so if you sat me in front of photoshop I'd probably be a lot less productive with it. Maybe when people say "improve the UI" they just mean "Make it more like the program I'm already used to".
Blender is pretty much the only program I use of the 100s I have that doesn't follow this UI pattern so I can't take all the knowledge of the other 100s of apps I use and apply that knowledge to blender. Even limiting to just 3D programs I can figure out Maya, 3DSMax, Cinema 3D, DAZ etc just by doing what I do in all other software. Select stuff and then see what my options are. Blender though doesn't follow these rules. You can't just explore. You absolutely have to read the manual to even just load, select, move, and save. Something I can do in all other software without a manual.
Which is exactly the complaint :D
Blender has a very efficient UI that is great for power users, but it has a much bigger learning curve than the competition with their point&click UIs. Add to that that most people are trained on Maya/3ds Max/Cinema 4d, learning Blender is a big investment with uncertain payoff.
Basically the same reason why very few people use Emacs or Vim nowadays.
Wow, this is such a bold statement; do you have any evidence to support this? In my experience a very great majority of engineers use vim or emacs. In US, I've never been in a culture where emacs or vim is used by a minority. In my current work, which is a startup in Boston, everyone except 2 developers use emacs. I googled for evidence to support me, but I couldn't find any solid evidence neither supporting nor disputing me.
The best evidence I could find is the Stackoverflow Survey [1]. Around the middle it asks for the "most popular development environments" (multiple selection possible). The leaders are Visual Studio Code, Visual Studio and Notepad++ with 34% each, followed by Sublime. Vim is fifth place, Emacs 15th place with just 4.1%. But it's heavily dependent on the community you look at, for example Vim is less popular with mobile developers and very popular with sysadmins/devops.
There is also a "prefered code editor" in the golang survey. Vim is second most popular, yet Vim and Emacs make for only a combined 16%.
According to the Rust survey [3] the rust community seems to love Vim though. 46% use Vim and 15.4% use Emacs.
A Python survey [4](by Jetbrains) has Vim at 10% and Emacs at 3%.
So from a quick look Emacs seems to be used by 2-4% of developers on a regular basis, while Vim use varies heavily between communities. So I might have to retract my statement on Vim, but I feel reasonably confident to say that Emacs is used by a tiny minority of people.
1: https://insights.stackoverflow.com/survey/2018/
2: https://blog.golang.org/survey2017-results
3: https://blog.rust-lang.org/2017/09/05/Rust-2017-Survey-Resul...
4: https://www.jetbrains.com/research/python-developers-survey-...
There are more Vim and Emacs users now than ever before, because there are now more computer programmers than ever before. There are just a lot more people that use other editors/IDEs. Just like there were more Visual Basic users than Emacs/Vim users in the 1990s. The Visual Basic/IDE people are irrelevant as far as Emacs/Vim/Unix/Free Software is concerned because they are unaware of what Free Software actually is (they do have a lot of misconceptions, ones that they really like to flame about on Internet forums), do not understand why they should ever contribute to Free Software, and even if they wanted to do so, they do not have the skills to contribute to Unix/Free Software. Just like all the Visual Basic chair warmers disappeared leaving behind their shitty cobbled-together software, so too will the current generation of people that do not have the capacity or interest to figure out Vim/Emacs/Unix, to be replaced by the next wave of popular garbage software. In another twenty years, more people than ever will still be using Vim/Emacs.
GIMP, however... makes me (every so slightly) annoyed every time I use it. I have to google so many task that should just be intuitive.
It does the job, and I still use it as my primary editor - but it's not something I look forward to opening... but it could be! I'm hoping it'll get there eventually!
If none of these are your cup of tea, please make a PR - It’s open source. :)
That said, Krita and Blender are very very nice.
The Photoshop thing, on the other hand, on the rare occasions I am forced to venture there, strikes me as a confusing mess that I'm always happy to leave behind as soon as possible. Plus of course it requires one kind or another of strange proprietary OS in order to function.
Honestly, they'd probably have to spin it off into a separate, UI-focused project that starts with minimal features and gradually adds more every time a good UI solution is found. In the order of what real-world users identify as the most needed features.
In other words, I believe what GIMP needs is a partnership with an idealistic professional workplace willing to use it as an experiment and communicate their day to day issues.
So you're surprised it's hard to find UI designers willing to work for free? I'd argue the surprising part is that there are programmers that ARE willing to work for free or reduced rates on open source.
Both of these disciplines take time and effort to learn and then perform. The people that do them not only pay these costs, but have their own obligations to themselves and their loved ones they might need to help support. It doesn't surprise me at all that the vast majority of people with these skills choose (or are forced by circumstance) to do something else.
Windows > Single Window Mode.
Windows > New Toolbox
Windows > Dockable Dialogs > Tool Options
It is hard to convey how much more comfortable I feel with the program with these tiny settings changes. I wonder how many other people are in the same boat as I.
I spend a lot of time in a grid style interface, so it is great to see:
* View > Show Grid
* View > Snap to Grid
Click once somewhere. Hold shift to draw a point to point line. Hold shift and control to have wider snapping of angles and click again, hold control and shift to get 15 Degree increment angles.
I will use Gimp a lot more now. Previously I was trying to use Pinta, but it would crash regularly on me making it almost unusable.
If you don't, it's barely usable, with very bad UX defaults.