💾 Archived View for midnight.pub › posts › 564 captured on 2022-04-29 at 13:29:05. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2021-12-03)

-=-=-=-=-=-=-

Midnight Pub

Text-Only vs GUI

~techwing

I use a whole bunch of applications from within the terminal and so naturally I started making applications to be used in the terminal. Although, despite terminal applications being faster and easier to program, if other people I know wants to use my applications they complain that they don't have a GUI to poke around at.

I've tried my hand a GUI programming using Tkinter for Python 3 and it's an absolute nightmare, I actually had to design the GUI down on a whiteboard before I could start programming for it. Then when it comes time to implement the GUI, the code for it comes out to much more complicated than the command line version.

Maybe I will get used to GUI programming but for right now I really hate it.

I have been thinking about making this post for a while but I've been really shy to make it. It doesn't have all the fancy formatting that Gemtext is capable of, but for this post I think plain text will do.

Write a reply

Replies

~stargazer wrote:

I had the same issue. I have had good luck using Rust with the Fast Light toolkit (fltk) for the GUI interface.

~corstar wrote:

If you are on Windows, you might want to look at Autohotkey. You can crank out a very decent looking and functional application in half a day.

I wish something like that was available on Linux, closest would be shell scripting and Yad/Zenity etc..

~outlaw wrote (thread):

I've only enjoyed two GUI frameworks: MSVS and Godot. Trying to build a GUI in code is just rough and while web has the potential to be nice, the over complicated rules make it a slog. Much better to use a WYSWYG editor and glue that to your actual application code.

"What about my sweet Linux GUI framework!" You might interject. But here's the thing: if I'm targeting Linux I'm just gonna make a CLI app anyway.

~nargran wrote:

I'm not a programmer, but still currently learning Common Lisp. I've tried to program a GUI for some of my learning projects for similar reasons as you, using LTK (CL bindings to TK, I suppose Tkinter is similar). It was a very frustrating experience, as opposed to my general experience with CL, and I have abandoned any attempt to do a GUI for now. So I understand how you feel about it, I really hate it too!

~fish-fingerer wrote:

techwing finds when making a GUI,
That their mental models get really quite screwy,
If you leave it in text,
You’ll end up less vexed
But avoid curses, ‘cos it smells of doodie.

Pipeable interfaces FTW ;-)

~she12 wrote (thread):

I am not a programmer but I have to mess with Windows a lot for a living :(

Usually I get everything done with Batch or PS but of course thats not fancy enough for the common MS user, so I had to resort to this even bigger MeSs, called HTAs once... Oh dear! Personally I am a real computing masochist (I use telegram-cli on my phone) but that was too painfull, even for me. VBS and Batch paired with JS and HTML? Syntax highlighting really was the least of my problems! I still have to maintain this crap and I am not sure what took more of my lifetime by now, the debugging (msgbox "got here") of - or the reccuring nightmares about it...

~ew wrote (thread):

Hello ~techwing,

gui programming :-) yepp. I have tried it once (tcl/Tk) and then abandoned it. Not my world. So, yay, welcome to the plain/text shell club!

Would I have to do it again ... I would probably try to write a gui, which will call the program on the shell. I'm sure, this is not always the correct answer. And yes, sometimes you have to keep state in the gui ...

The other option I could think of is this: write a library. ALL function/logic resides in this library. And the cmd line program uses the library as does the gui program. But, of course, don't listen to me! There are probably better ways to write software. But I sympathize, because I am still stuck on the command line after roughly 35 years.

Cheers,

~ew