Is darktable (or any photo soft) ever too complicated ?

Oh hell no! Divergence in UI is not something that can be seen as positive. Especially overall. This might be adressed like denoise (profiled) module in darktable works - auto modes, allowing adjustments but working on non-auto sliders.

I can assure you that usually that’s not what happens :stuck_out_tongue:

Heh. Recently on reddit there was some user mentioning that darktable doesn’t follow established standards for UX regarding most basic things such as switching between images. Turns out - there isn’t one! to quote my reply from there:

plus regarding UI (again, mine):

Another remark:

It’s beauty in the eye of the beholder. And UI/UX is more of a process than recipe.

3 Likes

Again, we miss the point here.

No matter what GUI you use, image processing is an expert thing. It’s optics, electronics, psychophysics and computer science. Little of what happens in there can be called “intuitive” and nothing is easy. Algorithms may be simple, but the concepts they temper with are not.

A simple UI on top of a complex process is a scam. That means some stuff gets decided behind your back (by hard presets or AI) or the processing algorithms have been made inaccurate to remove some parameters. It’s not “more refined” vs. “less refined” control, it’s “accurate colour science” vs. “sloppy colour science”. The only correct way to simplify a GUI is to remove features at all.

Successful software only have more people to teach you how to use their product and more users to sing their praise.

1 Like

And a hurtfull one at that - I’ve read cases of people with sort-of reversed analphabetism caused by simple UI. People affected by it couldn’t move past simple UI to complex one (additionally, most of those were kids).

Ah, the “Gnome” way :stuck_out_tongue:

Yup. Nobody’s bitching about AutoCAD or SolidWorks being too hard UI/UX, people simply learn them.

1 Like

I’m confused. Doesn’t this just mean ‘people who can read’.

Bah. My bad. “People who used to be able to read, but now got limited by simple UI dependence and can’t get past it”. I wonder if there’s proper term for that.

1 Like

Ah. The audiobook generation.

As a preface: I am hugely grateful to your posts and discussions you initiate. Firstly because regardless of how and what, I think it’s really productive and helpful to focus on expressing arguments. Knowing your intentions and facts their based on, and acting on them is one thing, explaining them such that others can comprehend quite another. Secondly because I personally benefit a lot from bringing the topic closer to a “physical methodology”, simply because I am trained there and not that much in photography/color theory/… (I know I can’t neglect that either if I really want to get “it”). Don’t take my criticism as opposition, I am much more prone to express criticism towards people and subjects I find highly interesting and helpful.

Your statements are too black and white and using absolutes for my taste. I do have a hunch that’s mostly a rhetorical decision, nevertheless I can’t leave it unchallenged (probably in a not very rhetorically brilliant way):

How do you define “image processing”?
If you just take it literally, i.e. putting an image through a process, I am doing “image processing” when I take my mountaineering snapshot straight out of camera and rotating it to get a straight horizon. Is this an “expert process”?
In my view thinking in terms of “expert” is a fallacy in itself. There’s no such thing as a defining line between experts and non-experts. If you ever believe you are over it, and you know all you need to, you most definitely aren’t.

These statements contradict each other: Why should simple algorithms be able to apply to complex concepts, but a simple UI not?
There is no User Interface without thinking of the user. You are obviously free to design a UI for users that have a minimum level of knowledge on the concepts, but that doesn’t make a UI targeting users below that a scam. I do totally agree with

That just doesn’t make it a scam. Depending on your target audience defaults and abstractions are useful or detrimental. It entirely depends on your user’s knowledge and intent. There’s nothing scammy about designing an UI for an image processing program targeted at users that do not want to learn about the concepts in depth. You may not like that, and that’s perfectly fine. Just as it is fine to create a simplified UI for a simpler needs, it is fine to create a UI that tries to expose all the underlying concepts. One doesn’t exclude the other.
Without defining the target audience, you can’t fully judge a UI (obviously there are aspects of an UI that are independent).

I believe lots of the defensiveness comes from a often expressed attitude of users along the lines “but Adobe&Co do it that way”. That doesn’t deserve much more of an answer than “Yes, what’s your point?”. Then the ignorant come with the second line “they are the professional solution, what they do must be good”, which doesn’t deserve an answer at all.
And in my opinion “professional” is inherent in the problem: Professional image processors need to do as many projects that meet clients needs, and I have never heard a graphic artist complain about to high standards in clients needs, only about too low and too often changing standards. So a professional solution doesn’t need to be technically excellent, it needs to be streamlined: Get most done in the least amount of time. That’s not the focus of DT/RT as far as I see (and luckily so).

3 Likes

Image processing, in this context, is taking raw garbage from a camera sensor and preparing it for display, acknowledging all the technical and psychophysical parameters, in order to match the visual memory of the scene you shot. Because sensor recordings definitely don’t match that at all.

The parameters to be taken into account are sensor metamerism, noise level, sensor to cone-response tristimulus matching, CFA patterns, dynamic range mapping, gamut mapping, medium to medium illuminant (chromatic) adaptation, plus all the optical flaws reversal (noise, moiré, hazing, CA, distortion, blur, etc.), and I forget many of them.

To account for these parameters, you have to understand them and very often make educated guesses to setup your corrections and adjustements, because most of the colour science we have is made of approximated relationships that are valid under certain hypotheses, and no software can automatically assess if the conditions of validity of the relationships are met for a particular image.

That’s what I call an expert thing : it requires training and experience. Just because whenever your image doesn’t meet the conditions of validity of the simplified relationships, you need an extra step of correction to “force bend” the image in such conditions.

You didn’t understand. Just because the algorithm is simple (say a couple of additions and multiplications) doesn’t mean that the quantities we are adding/multiplying represent something easy to understand (variance, chromaticity, integral of the spectral sensitivity along a spectrum, …). There is some level of abstraction to handle there. So, how do you expose these in UI ? You try to use non-scary words that will disallow users to google their actual meaning ?

Then, the problem is, in an image processing pipeline, while most of the algos are relatively simple (except for denoising, frequency splitting, deblurring and such), there are lots of them, each accounting for a particular parameter of your image. So, it’s a complex process, even if built from mostly simple bricks. Same question : how do you expose these controls in UI ?

Lightroom and Capture one have solved that : they don’t expose most of the hard stuff, and impose it for you. Problem : again, their colour science relies on approximations valid in a certain range. What do you do when you are out of this range ? You are locked out…

Except it doesn’t depend. The things that need to be done on your raw picture to prepare it for display are the same in any case. The colour science to do so is hard to understand, not 100% reliable (and often black magic), and also users may want to impose their visual preferences and style.

So the choice is between exposing all the params in GUI or saying users : “this soft is intended to give ok pictures in 80% of the use cases, but screw you if you fall under the remaining 20%”. The scam is software editiors pretend the choice is only about user control and ease of use. It’s not. The choice it whether you get screwed or not when the default params of the soft will fail.

If you find a better way, you are better than me. But so far, I only heard vague political statements about “what should be possible or done” from people who don’t have a clue about what is actually computed in the pipeline, and not a single actual “how to simplify without degrading image quality”.

I get it. GUI should be about users, users are not engineers, good UX is good…

Now, how do I expose the patch-wise covariance threshold between a mask and a guide in a user-friendly way ? How do I make an edge-aware wavelet spectrum decomposition UI intuitive ? How do I auto-tune a dynamic range mapping for every possible camera ever made and every possible image settings consistent at any scaling size ?

Once you look into the specifics, your GUI goodwill vanishes. It’s just a can of worms, and it’s easier to just give classes about how to use the complicated soft than trying to simplify it in a way that will probably only make it worse.

4 Likes

It is a myth that Lightroom and Capture one are easy to use.

At least if you used to darktable you miss simple things in both of them. C1 UI feels overloaded as well. You can’t move sliders that far compared to darktable.

And if darktable is too complicated: What about Photoshop or Gimp? They must be unuseable.

2 Likes

It’s relative, you don’t need to understand all and everything of theses parameters and colour science stuff to edit a picture. That’s a part of the philosophy of Adobe’s products, most lightroom users don’t care and don’t want to learn this. Of course this is helpful when it comes to photo editing, and you’ll probably make greater adjustment knowing it. And that’s the thing that make darktable “complicated” to some users.

In the UX field we often use the example of the car human-machine interface. You know how to drive a car, right ? But do you know anything about mechanics ? Do you know how a engine is working ? Probably not. And does it matters ? Probably not if you are not a Formula 1 driver ! Of course knowing some will help you taking care of your car and all, but that won’t make you a greatest driver. So yes I think it depends on the targeted users too, to what extend they’ll be ready to learn and adopt a new workflow and stuff. A product can’t fit everyone’s need. I’ll say that daktable is for “power users” of photography too…

I don’t thing UI have to be simple at the first sight, what’s matters the most is the mental model it propose, the learning curve of the software and affordance of the tool.
Simply put, the mental model is the idea we have of how something work. This mental model define what we expect of a product (not only softwares, but it’s really important in human-machine interactions) and how we’ll want to use it and the first sight. Every mental model is build at some point, and a mental model is based on beliefs more than facts. A wrong mental model is often the source the of bad-use of products. For example, saying a car will slow down and stop if I just ain’t acelerate is a wrong mental model that non-drivers can have (you also need to be on the neutral point). To me it feels like lightroom choose to mimic the mental model of a camera and others piture editors, naming parameters after the ones you find in camera, even thought it won’t fit exactly from the technical point of view. Darktable however, choose to go for a more “scientific and analog” way, even though it’s no the usual way of doing. And that’s not really a problem, it’s even one of his greatest strengh. The thing is that most people don’t want to change from one mental model to another or add a new one, that’s also why it’s difficult to change from a software to another. But these users usually consider that a photo is 50% the subject, 40% the shooting and 10% the edit, and won’t probably need / want to edit a photo heavily too. If you do corporate portraits, a 1h edited photo won’t pay more than a 10min one, clients will barely notice anyway.
The learning curve of Darktable is quite high in Darktable compared to Lightroom, but not that much compared to 3D softwares for example. The thing is that we accept 3D to be complicated more than photo editing, also because everyone can take a picture, not everyone can create just a 3D sphere… But Darktable has a great learning curve, modudule by module, then drawing mask, then parametric mask. You can get the most of it in 20-30h maybe ? You won’t understand 100% of the term but that will be enough to edit 90% of your photos with the most classical modules. That’s not much. I’ve spent 200+h on Adobe After Effects and I know maybe a third of the software (not even sure), and absolutly nothing of the video tech part thanks to the software. On the other hand using Natron for 20h you’ll just now how to export a basic image with 2 filters but you’ll know way better the composing work you’ve actually done. It’s a choice to take, and assume, and darktable do it right.
The affordance is kinda how a product is self-descriptive. The most famous example are doors handles : no handle means “push”, a handle means “pull”, no matter what’s written on top. On software there are classic statements on the UI : a round box means “1 choice”, squared box means “multiple choices”. A sliders is meant to choose between more than 2 values, curve alows specific ajustments on at least 2 parameters… And to that extend darktable is really great, and the UI gave all the controls to the user, no matter if you’ll have to use 3 curves and 2 sliders to be precise. You can be precise and the UI is showing this too.

Not everything have to work out of the box, what’s important is if it worth it afterwards or not. Darktable is more powerfull than lightroom for sure, more accurate and precise. There is absolutly no doubt in that. I think sometimes the only thing to do is to admit that yes it’s not intuitive for novices out of the box, yes you’ll need to learn some complicated things, and no you’re not forced too. But at some point, if you wants precision and control you’ll have too.
A GUI complexity is always subjective, and in the end only the ease of use matters really. Ideed users are not engineers, they are photographers in need of precise control, otherwhise they’ll be probably using something else. What’s complicated is to “step into it”, yes, like Blender, Natron, After Effects, Solidworks… Every precise and complete software at some points. Even Exels is complicated if you never used it… The one thing for sure is that you can’t make a software 100% easy (out of the box) and complete (powerfull).

A software is never too complicated. It’s too complicated for a certain use, or a certain user.

3 Likes

Right. Until you stumble upon the infamous blue LED issue and are glad to have someone on a forum give you the recipe that fix it. Again, there are lots of things you don’t need to understand as long as everything works as expected. The problem is what you do when they don’t. The thing about understanding is it makes you able to adapt to whatever situation you are in.

That example got old a long time ago. First of all, precisely because I know how the engine works, I can drive my car in a way that sucks up to 20% less gas than any other person driving it. Then, a car is not a working tool. I don’t produce art with my car, or any other goods for that matter, I don’t make cash with it, I don’t solve people’s issues with it. So let’s not compare a working tool with a commodity.

2 Likes

This is a very good point, and the source of most “rabbit-hole” encounters. For the large majority of images we take, the processing required to get a faithful rendition isn’t onerous. Take look around, chances are the majority colors you’re observing can be expressed in small display gamuts. Unless you hang out in the fabric department… :grin:

So, one day you take your camera to a theater. When you get home an look at your images, you find garish depictions of the extreme colors, all those rich tones posterized to one extreme value. Theater lighting these days is moving to LED, with which colors not before achievable at the requisite intensities are being inflicted upon hapless audiences. So, your family doesn’t care,as long as the pictures are discernable. You care, however, and … SCHNUKKKKK!!! - sucked down the color rabbit hole…

I’m yelling all this from the bottom of that hole, I am…

2 Likes

Yes, I agree on that, but most people won’t even notice it, or just live with it. When things stops working as expecting, well you switch to Darktable and start learning all you need. Or you gave up… The exend is where you choose to say stop, it’s a race to perfection.

You’ll use it better for sure, but not knowing it won’t block you from driving a car.

It doesn’t matter the use, for people whose work implies driving a lot, some functions will be helpful, for 95% of the people it won’t. But even if we compare it to video software it would be the same. Now some films are shot on iphone, so what ? yes it’s not precise, you have little control on it, but in the end it doesn’t matter. A film isn’t great because of it’s editing only, for most the stories matters. It’s quite the same with a picture. Do you need to edit a picture during 3h to say that it’s a good one ? I don’t thing so for most people. If you’re into post processing yes definitly, but most people aren’t. But that’s why you choose Darktable over Lightroom.

1 Like

The camera doesn’t matter if one controls the lighting, as one would do with a film. Same if a photographer shoots in the studio: I’d expect the amount of post necessary for a studio shot to be more minimal since one can control the lighting.

Right, but bad editing ruins it :wink:

Good edits can be had quickly if you can command your tools well, I don’t think the duration of the edit has much to do with anything. It takes me hours to edit one photo, but 90% of that time is spent looking and thinking about it; time spent tweaking sliders and turning knobs is minimal.

There are many reasons to choose darktable, not just because you’re “into post.”

1 Like

I mean it for the precission you need on a picture. But yes it’s quicker depending of your workflow and all, but the end is basically your level of perfection.

If you sees it yes of course !

Of course, I didn’t say it was the only reason. I mean that’s one of the reason you could prefer it over lightroom. And you do have to be a little more interrested about the post processing to take the effort on learning Darktable.

You are also either not understanding my point (very forgivable, that happens to me all the time and I think there’s causation in that correlation) or evading it: I agree totally that abstraction limit your abilities, and will leave you stuck in corner cases. My point is that given the “right” (actually from your view wrong) user, abstractions will keep the unstuck more often. That is a user that has neither the knowledge nor the will to acquire it. This user will not only be stuck in the corner cases you mention, they will also be stuck with much simpler problems like exposure correction etc. That user will achieve more with abstractions that you roundly reject.
Now do not misunderstand me on this: There’s no obligation deriving from this to provide abstractions. My argument is against rejecting abstractions and calling them detrimental regardless of the user. That you couldn’t care less about users not willing to learn is perfectly understandable.

And while you understandably reject the car example, can you really state that for all appliances you use in your live you know in-deep how they work and if there are abstractions in the interface you interact with, then only because they are imposed on you, and you would gladly do away with them if you could? CPUs come to mind.

I think this is an important point. It’s part of the philosophy of darktable that users are necessarily exposed to the theory. Not all of them will go deep into it, like me. But in the end, I think you end up having an overall picture, and geting used to it.
The same way Adobe users get workflow recipes or pay for plugins(black boxes) from the internet, darktable users stay close to the community, see how others do things, grab a piece of theory here (without understanding much of it, but something is registered in the mind), other piece there, and in the end most of them are driving the software at ease up to a certain point - enough to do the 80% of edits, I believe.
Since I don’t make a plunge into the theory, I suspect I will always be dependent of the community. But, so what? Others are dependent from internet recipes and plugins.

4 Likes

You’re assuming that the GUI wasn’t overcomplicated to begin with, as far too many are. (Speaking generally)

Removing unnecessary complexity is also a correct way to simplify.

1 Like

Please do tell me what is unnecessary. These kinds of words are easy to throw, very difficult to define, and vary a lot depending of the use case.

4 Likes

Yuuup. And it’s complex issue. Everybody has to keep in mind a car-reference imho - first car wasn’t “good” UI/UX, horse buggy was better. 100 years later and we have still “revolutionary” designs like Tesla ones :wink: And those still aren’t good in term of UI/UX when combined with user expectations :slight_smile: same with F1 car, a family sedan and a dump truck - all are “cars” and generally have similar purpose, but their UI/UX is waaay different (normal driver, even a mechanic would get lost in F1 car interface)

UI/UX for specialized tools, such as RawTherapee or Darktable or GIMP or Krita… Hell, even for “simple” think like some music players on desktop isn’t done-deal and IMO needs to constantly evolve. But that evolution is guided by experience of both users and developers (for example, see recent GIMP UI proposal about grouping tools!).

The complexity of interface might be alleviated by better UI selection, choices etc but those never happen immediately. eg bauhaus sliders in darktable allowing very cool and intuitive entry of slider values, far better than any other tool - once you get used to it, other UI (like lightroom) becames “clunky” in regards to sliders :wink: And sliders are tiny part of interface and overal UI/UX.

Once you start removing complexity there’s first problem mentioned:

Just to be clear here, regarding GUI: Any good GUI ever created was first too complex to use by anybody not familiarized with the interface and then changes made were combination of user expectations, user’s workflow, dev reports, designer works, tool enhancements etc, all done in evolutionary manner. Even skeumorphism in ui (remember icons in menus showing floppy for “save”?) was an evolutionary step along the way.