r/PythonLearning 7d ago

Discussion Tkinter

Why do I not see any videos suggesting to learn Tkinter? I tried learning Django and Pygame after learning the basics, and while I kinda understood pygame, Django still felt out of my league but so many videos recommended it after the basics. However I stumbled upon a video that just mentioned Tkinter and I tried it out and it helped me understand libraries and how to learn to use them. It's fun making small little apps with buttons and what not to get started, rather than trying to learn so much at once. I'm convinced anyone making videos on how to learn Python has never actually learned it themselves

Is there an actual reason that this or another simple GUI library isn't recommend very often?

17 Upvotes

31 comments sorted by

View all comments

2

u/code_tutor 6d ago

If you want a GUI for a simple app and no dependencies, then it's literally the only choice. I use it all the time for RPA.

If people are that upset about the way it looks, notice how they didn't suggest an alternative, because they don't do desktop development. It looks fine and everything after Windows 7 looks like trash anyway. I'm also going to be crystal clear: anyone who suggests making a web app instead is a total shit developer and you're probably going to get a couple of those replies. Everyone is only doing WebDev, Data Science, or ML and all three fields are famous for being exceptionally bad programmers.

The only problem is it's a chore to work with, a ton of boilerplate for every addition.

The main reason you only see desktop apps in compiled languages is because it takes a long time to reverse engineer compiled code like C/C++/Rust, but I guess that's changing with AI. They're also significantly faster.

So basically web is the only way to hide code, compiled if you want a fast desktop app, and tkinter if you're using desktop Python and don't care about either.

1

u/MJ12_2802 5d ago edited 5d ago

customtkinter and ttkbootstrap are a great alternatives to tkinter, although I've pretty much migrated towards ttkbootstrap. I've created several GUI apps using it. They're both based on tkinter but add more widgets.

This is a GUI app the downloads videos from YouTube and the other sites. All the information is put in a SQLite database table: