Live data from Hacker News

Show HN: Cross-platform desktop applications with PyQT

github.com

71–80 of 293 posts

Re: Show HN: Cross-platform desktop applications with PyQT

#71
post #51

Earlier quoted context omitted.

Not saying I don't believe you, but do you have a source for that 90% claim?

It's a "random" guess. But in my experience, for a website, if it doesn't look good at first sight, a user might just leave instantly. As someone pointed out in the comments, just looking at sites like: https://riverbankcomputing.com/software/pyqt/intro https://electronjs.org/ Your eye will probably be more attracted by the good design of the electron website. I'm not saying an app should be only good looking, but it…

I'm sure that's part of it, but the primary usability studies I'm aware of have all focused on speed/response. Whether this translates to "native" apps or not, I'm not sure, but certainly for the web, response times are king [1]. Curiously, this metric has been a stable predictor of retention for decades (see the sources in the link as it'd be redundant for me to post them here).

[1] http://ixd.prattsi.org/2015/04/response-time-is-speed-the-ul...

Re: Show HN: Cross-platform desktop applications with PyQT

#72

Earlier quoted context omitted.

"Bah humbug, the old stuff is good enough for me!" is a shitty answer. Why would you not want a toolkit that makes rich application experiences across multiple platforms easy and standard? I get that performance is a problem with the tooling in its current form (arguably...) but that's not a reason to ignore the problem electron is solving: creating complex UIs using things like WinForms, QT, GTK, Cocoa, etc SUCKS. I…

> Why would you not want a toolkit that makes rich application experiences across multiple platforms easy and standard? Because way more often than not the "rich" stuff are all fluff with no meat, end up taking wasting system resources and work badly with the rest of the system.

Sure, so we should try to make them better instead of sticking with things that are old and crappy.

Re: Show HN: Cross-platform desktop applications with PyQT

#74

Earlier quoted context omitted.

$500 dollars... is "not expensive"? Beside the ML/AI sub-community, I am having a hard time finding GUI innovation in the Python ecosystem. Perhaps, you could show me an option that doesn't suck? I've tried Kivy, PyQt, PySide, Eel, gooey, etc... I am not a JS dev and had an electron/react app up and running that I easily ported to my Android phone in under an hour.

I guess it depends on how much time you spend on an app. I've been working on my PyQt app [1] for 2331 hours (I track my time). $500 is nothing in comparison. [1]: https://fman.io

Yeah, I wish you all the luck... but look at it from a new programmer perspective, or someone that wants to create an app for money, but doesn't know if it will work.

On one hand you have the complex licensing thing (PyQt) where you are limited to desktop of Mac, Win, Linux. On the other you have a skill (JS dev) that is good for literally any screen, on any platform with almost zero complications for commercial apps. It is a no brainer.

If it isn't obvious, I have begun the transition to embrace JS for what it is... I am learning it and it hasn't been too bad. Python will be relegated to ML/AI and glue...

Re: Show HN: Cross-platform desktop applications with PyQT

#76

Earlier quoted context omitted.

$500 dollars... is "not expensive"? Beside the ML/AI sub-community, I am having a hard time finding GUI innovation in the Python ecosystem. Perhaps, you could show me an option that doesn't suck? I've tried Kivy, PyQt, PySide, Eel, gooey, etc... I am not a JS dev and had an electron/react app up and running that I easily ported to my Android phone in under an hour.

There’s toga ( https://toga.readthedocs.org ) which looks really promising.

Tried it... needs a TON of work. Go read the gitter. So much churn and jank that it really isn't an option. period.

Re: Show HN: Cross-platform desktop applications with PyQT

#77
post #4

The main problem with "other toolkits" vs Electron apps is that they are not as simple to use in order to create a very good looking UIs. Compare how easy it is to use HTML and CSS in order to create a very complex UIs with all sort of effects vs how utterly complicated is to override, let's say, Qt's ::paint() method in order to achieve rich text inside a label. Let me repeat it. Rich text inside a label. Such a sim…

> create a very good looking UIs I don't want a good looking UI, I want to have a fast and _usable_ UI! This fad in the UI and JS world that absolutely everything has to be "beautiful" needs to go away.

I want both, and it's quite possible to have both.

Re: Show HN: Cross-platform desktop applications with PyQT

#78

Earlier quoted context omitted.

I guess it depends on how much time you spend on an app. I've been working on my PyQt app [1] for 2331 hours (I track my time). $500 is nothing in comparison. [1]: https://fman.io

Yeah, I wish you all the luck... but look at it from a new programmer perspective, or someone that wants to create an app for money, but doesn't know if it will work. On one hand you have the complex licensing thing (PyQt) where you are limited to desktop of Mac, Win, Linux. On the other you have a skill (JS dev) that is good for literally any screen, on any platform with almost zero complications for commercial apps…

You raise valid points. Of course, a web developer who has never used Python will be more comfortable with Electron. That may be a very good reason for her to prefer it.

Regarding licensing, you can simply buy the commercial license only when you go public / begin making money. It's not that difficult I think.

But as I said, you are correct in that Electron is easier to use for many people. I'm also the last person to say you should always use PyQt. Just today I recommended someone to use Electron over PyQt. It really depends on the project.

Re: Show HN: Cross-platform desktop applications with PyQT

#79
post #17

Earlier quoted context omitted.

How is this an issue? Before Electron and other HTML/CSS-based "native" apps became all the rage (which is fairly recently), native apps were built using Qt, GTK, Cocoa, WPF, WinForms, MFC, etc., and they did just fine. Perhaps we just really don't need these "effects" and just need consistent, simple UIs of the sort that toolkits that paint native widgets can give you. Whenever I install an app that's built using so…

"Bah humbug, the old stuff is good enough for me!" is a shitty answer. Why would you not want a toolkit that makes rich application experiences across multiple platforms easy and standard? I get that performance is a problem with the tooling in its current form (arguably...) but that's not a reason to ignore the problem electron is solving: creating complex UIs using things like WinForms, QT, GTK, Cocoa, etc SUCKS. I…

creating complex UIs using things like WinForms, QT, GTK, Cocoa, etc SUCKS

I think that this depends on your background. Personally, I would rather do a UI in QT than Javascript. I like that Qt supports high level components such as trees:

  https://doc.qt.io/qt-5/qtwidgets-itemviews-simpletreemodel-example.html
With Qt I can also use a lot of the experience that I gained 5 years ago on a UI today. Any Javascript UI experience that I picked up 5 years ago is obsolete.

It annoys me when people say something sucks without taking the time to understand it.

Re: Show HN: Cross-platform desktop applications with PyQT

#80
post #19

Earlier quoted context omitted.

If you really need the full flexibility of HTML/CSS, you can just use QtWebKit and embed a webview in your UI.

Or just use Electron/React-native and skip the pain involved with licensing, packaging, and lack of mobile support.

> licensing, packaging, and lack of mobile support

To be fair, these are different problems from what the grandparent was discussing.

Licensing is a problem a business really shouldn't have: Qt is LGPL and PyQt licenses are cheap even for ramen-eating startups.

Lack of mobile support is a Python problem, I agree there. I can assure you everyone in the Python world is sorely aware of it. Unfortunately, nothing will change until someone does what Google did for Java with Android. But it's a problem that electron apps have too, because "html apps" are still pretty bad on mobile (and terrible on desktop).

Similarly, packaging a PyQt app is not much more of a problem than packaging any app that is not among the "blessed" mobile languages (Java/Kotlin and Objective-C/Swift).

Post reply on HN