this post was submitted on 23 Jan 2025
67 points (92.4% liked)

Programmer Humor

20068 readers
567 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 2 years ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] senkora@lemmy.zip 9 points 11 hours ago (1 children)

For the first part, I was like, yeah, that’s pretty much how all C++ GUIs work: a markup file describes the structure, a source file controls the behavior, and a special compiler generates more C++ code based on the markup file to act as glue.

That’s all pretty standard, and it’s annoying, but I didn’t really get why they were making such a big deal out of it.

Missing documentation is also annoying but not uncommon for internal widgets.

What really elevates this from simply annoying to transcendentally bad, is the lack of error messages, the undocumented requirements that resource IDs be sequential, and the mandatory IDE plugin. That’s all unforgivable.

[–] onlinepersona@programming.dev 1 points 7 hours ago* (last edited 6 hours ago) (1 children)

So you're saying all C++ GUIs are shit. I concur.

Anti Commercial-AI license

[–] cbazero@programming.dev 3 points 5 hours ago (1 children)

Thats how every GUI which is not immediate mode works. Are there any examples where it works different?

[–] onlinepersona@programming.dev 1 points 11 minutes ago

I mean, you don't need a markup file. Qt, Gtk, and others don't require a markup file, but it's optional. And neither generate "glue". They load the markup, render it, and you can reference the elements by ID. Netbeans allowed (allows? I do think it's dead), a WYSIWYG editor for Java interfaces and it straight up generates Java with comments. You can modify the Java and as long as the comments stay put, it can still load the Java - by far the best GUI editing experience I've ever had.

Rust has stuff like makepad that has a DSL using proc macros, slint also has a DSL that is loaded but also allows defining new components in rust that can be used in the DSL.

So no, not everything is as shit as in Microsoft's C++.

Anti Commercial-AI license