Gajim - 2023-11-11


  1. fjklp

    > Gajim GTK3 is veeery laggy as well Squeaky Latex Folf are you referring to switching windows?

  2. fjklp

    I think questioning software efficiency and minimum hardware requirements is reasonable conversation

  3. Squeaky Latex Folf

    >> Gajim GTK3 is veeery laggy as well > Squeaky Latex Folf are you referring to switching windows? Probably

  4. Squeaky Latex Folf

    It isn't so bad anymore, although groupchat switching is still not instant

  5. Squeaky Latex Folf

    Meanwhile on C++ and C clients like Psi+ and Profanity, switching chats is instantaneous

  6. fjklp

    no, I'm not talking about group chats, I mean switching to gajim from another application

  7. fjklp

    I've noticed that some GTK 3 themes have some ridiculously slow visual changes that happen when you switch to the window, but I still don't know why or if this is intended

  8. fjklp

    I've noticed that some GTK 3 themes have some ridiculously slow visual changes that happen when you switch to the window using GTK 3, but I still don't know why or if this is intended

  9. fjklp

    I've noticed that some GTK 3 themes have some ridiculously slow visual changes that happen when you switch to the window that is using GTK 3, but I still don't know why or if this is intended

  10. fjklp

    Yes, chat switching in gajim has a noticeable delay

  11. Squeaky Latex Folf

    How come?

  12. fjklp

    I don't really know. You can reduce that delay when in chats with many participants by keeping the roster closed.

  13. Squeaky Latex Folf

    An obvious thing to do is to blame Python. Heck, most Electron-based chat programs like Discord are known for being notoriously slow, with switching channels easily taking half a second or more.

  14. fjklp

    for me, I only see improvement there when it's big numbers, like thousands of users

  15. Squeaky Latex Folf

    However, this is closed-minded. Element has proven that Electron-based programs don't always have to be slow

  16. Squeaky Latex Folf

    Element can switch channels a lot quicker than most of its kind

  17. fjklp

    actually, I think I compared gajim to Element and maybe Discord and gajim was equivalent

  18. fjklp

    actually, I think I compared gajim to Element and maybe Discord and gajim was equivalent for chat switching

  19. fjklp

    that was about a year ago

  20. fjklp

    maybe more

  21. Squeaky Latex Folf

    Well, if roster visibility is actually a problem in performance, that sounds like an unnecessary bottleneck. Psi+ can display a groupchat roster without any kind of performance impact

  22. fjklp

    it's not slow enough for me to be annoyed in gajim, definitely under 0.5 seconds

  23. fjklp

    interesting

  24. Squeaky Latex Folf

    Psi+ instantly switches chats and groupchats with a roster sidebar with no delay

  25. fjklp

    of course, faster always feels better

  26. Squeaky Latex Folf

    However, opening a groupchat for the first time in Psi+ causes a very slight delay

  27. Squeaky Latex Folf

    But then it's cached and it will be instant next time

  28. Squeaky Latex Folf

    But then it's loaded and it will be instant next time

  29. fjklp

    I have to agree with what you were saying earlier. Chat apps really shouldn't require a lot of compute. I hate this treadmill of always being expected to have the newest ultra-fast hardware to do the same stuff we've been doing for decades.

  30. Squeaky Latex Folf

    Exactly

  31. Squeaky Latex Folf

    A possible requirement for super fast and efficient computing is an ahead of time compiled language with easy to optimize, simple data structures and control flow.

  32. Squeaky Latex Folf

    C falls under that category. C++ is pretty close however it includes non-efficient data structures in the base language

  33. fjklp

    now I'm wondering about that newish thing for python, not sure if I'm thinking of cython or something else

  34. fjklp

    I think I heard the python creator talking about it

  35. Squeaky Latex Folf

    However, I don't know whether it is fair to blame the language. It does play a part and I do notice a pattern of general slowness in high-level languages like Python, JavaScript, and even Java to some extent.

  36. Squeaky Latex Folf

    However a lot of things can be blamed on the code itself as well

  37. Squeaky Latex Folf

    Perhaps the general slowness is caused by developers having less of an idea what effect code will have on the efficiency of the program

  38. Squeaky Latex Folf

    Python does try to hide that away

  39. Squeaky Latex Folf

    Meanwhile in C, performance impacts are generally clearly observed as it is a very explicit language

  40. Squeaky Latex Folf

    C++ does hide some things, especially memory management and other mid/high-level abstractions

  41. Squeaky Latex Folf

    C++ does hide some things, especially memory management and offers other mid/high-level abstractions

  42. Squeaky Latex Folf

    When I wrote a Python program related to audio, the program would freeze as the audio buffer got extended

  43. Squeaky Latex Folf

    I had no idea how this worked internally. Python kept me ignorant to the internals of my own program

  44. Squeaky Latex Folf

    And maybe that's a pitfall that leads to further unoptimized code

  45. Squeaky Latex Folf

    There's another Python program called Nicotine, a free and open source Soulseek client, which suffers from one of the worst performance issues ever

  46. Squeaky Latex Folf

    Nicotine freezes randomly and with every action you perform

  47. Squeaky Latex Folf

    Especially list-related actions

  48. Squeaky Latex Folf

    Clearing the uploads list makes Nicotine freeze for minutes as it "clears" a list

  49. Squeaky Latex Folf

    Who knew that clearing can take so long?

  50. Squeaky Latex Folf

    There's probably some insanely unoptimized code. Is that what "Pythonic" entails?

  51. Denshi

    PyCucked

  52. Squeaky Latex Folf

    Fast as a snail

  53. cal0pteryx

    Squeaky Latex Folf: now you rambled along for a while, told us several times how fast Psi would be, and tried to guess a lot about Gajim's performance while not having used it for some time. If you wanted to investigate actual performance issues (I still don't know if you really have any), you could take a profiler and just have a look.

  54. MSavoritias (fae,ve)

    yep ^

  55. umu

    python has threading and async

  56. umu

    I don't think python has anything to do with performance issues tbh

  57. umu

    the fast and the furious quote

  58. umu

    it's not how you stand by your car it's how you use it

  59. umu

    applies to languages, platforms etc as well

  60. Squeaky Latex Folf

    > python has threading and async But the interpreter could be a bottleneck in some workloads

  61. MSavoritias (fae,ve)

    for chat apps i doubt it

  62. MSavoritias (fae,ve)

    if we are talking hard realtime systems sure

  63. ☭Mike Yellow

    Gajim for daily use. Psi(+) for emergency and some other functions which Gajim has no.

  64. ☭Mike Yellow

    Gajim can not stand when being attacked by extremely long and plenty spam messages, especially on weak CPU devices. No ground for blame.

  65. ☭Mike Yellow

    After all, it is written in Python.

  66. ☭Mike Yellow

    Also try Dino, there is an unofficial Windows version.

  67. MSavoritias (fae,ve)

    again with the python arguments? ....

  68. ☭Mike Yellow

    No. Why argue about Python?

  69. ☭Mike Yellow

    I did not say “Python is not good”.

  70. cal0pteryx

    What if I told you, that the most commonly seen lags in Gajim are caused by GTK, which is not python? Window focus lags depend on your theme, if GTK applies backdrop classes to all elements, that's not a python issue.

  71. ☭Mike Yellow

    Sorry for my fault. Should we tell users it is because of GTK?

  72. pep.

    Isn't that fixed in gtk4? I heard (wrong?)

  73. ☭Mike Yellow

    Sorry for my fault. Should I tell users it is because of GTK?

  74. cal0pteryx

    ☭Mike Yellow: does it matter? :)

  75. cal0pteryx

    pep.: could be :)

  76. ☭Mike Yellow

    > ☭Mike Yellow: does it matter? :) Hmmm... I think yes. I should tell users Gajim is not a software which every function and performance are depended on Gajim developers. (Like Gajim 1.8 does not support Windows 7 is because of Python official.) Then they will not bother you about these questions/problems.

  77. MSavoritias (fae,ve)

    also python doesn't matter in performance. i swear the amount of times that python is the problem is assumed :x

  78. Squeaky Latex Folf

    Grrrrr Python!

  79. Squeaky Latex Folf

    My love-hate relationship with Python

  80. Squeaky Latex Folf

    It's so easy to write duct tape software in it

  81. Menel

    If you have religious reasons not to use gajim.... There is really nobody forcing you

  82. polarian

    Squeaky Latex Folf: take your gentoo elitism elsewhere

  83. lovetox

    please all lets end this topic now

  84. umu

    > Squeaky Latex Folf: take your gentoo elitism elsewhere isnt emerge written in python?

  85. polarian

    > please all lets end this topic now Apologies

  86. lovetox

    umu, did you see what i just wrote?

  87. umu

    sorryyy

  88. polarian

    lovetox: never seen you so strict on moderation before... dislike it when people insult gajim?

  89. lovetox

    no, i dislike it when people discuss things of no relevance to this support chat

  90. lovetox

    like what language is best

  91. lovetox

    what framework is best, what OS is best, ...

  92. polarian

    > no, i dislike it when people discuss things of no relevance to this support chat but thats pretty common... people sometimes go off topic slightly... it isn't like the topic was here for long. but anyways... its a bad topic and should be avoided like you said :)

  93. lovetox

    not long? its the last 100 messages, thats long enough for me

  94. lovetox

    thats why i said, lets end it

  95. polarian

    oh I didn't see that... now the aggressive response makes sense. Sorry.