A user posted on our forum:
"As a long-time user of P2P and torrents just trying out Tribler, this one is rough around the edges, and Iâve a few comments. In no particular order:
The entire idea of a video player embedded in a torrent client is kind of silly, in my opinion. Itâs not small and is questionably necessary. More-or-less all users will have a media player from their OS, browser, or a dedicated program, so thereâs little reason to jam one into the torrent client too.
The general window state, sorting orders, column sizes, and the like, should be remembered, and seems not to be at current.
The entire UX/UI surrounding tokens, the token balance, market, mining, and all their details, is very unfriendly. The entire concept of tokens needs explanation within the program, as does the âtrust mapâ and the reason clients exchange non-trivial amounts of data without incrementing any counters visible outside of the tokens and the debug screen, the last part of which is likely to concern or confuse traditional torrent users.
Similarly, the UX around channels is terribly unclear. The meaning/definition of a channel isnât explained, much less that of âmy channelâ or of subscribing. Even the method by which to subscribe is effectively hidden, by virtue of an interactive area - the rating column - with no hint as to its existence as interactive or function. The whole channel concept needs a tutorial and some UI rework. The nature of âdownloadingâ a channel could also use some clarification and a separate element to indicate its status and completion, without having to open the channel in question.
I would strongly suggest tool-tips for the buttons present and overall making interactive areas much more obvious. For specific examples, a separate column with an obvious âheartâ icon for subscribing, rather than mixing it in with a âratingâ column, and making the token balance more obviously an interactive element. The UI just lacks clarity on what can be interacted with and what it does, in some places; for another example, itâs not even clear what initiates a health check on a torrent until trial-and-error discovers it to be selecting the torrent in question.
The entire âtrust graphâ tab looks to be largely a cosmetic feature, and as such, also looks like an ideal place to shrink the cosmetic element and jam in a variety of status and diagnostic data for the system and the network, in an easily user-readable format. In general, the program needs easily-accessible readouts for system and connection info, such as the current hops, UL/DL speeds and limits, connections currently active, exit node status, health of connections (for cases of firewalls, for example), and some of the basics would also do well in something like a status bar, or a lower section of the existing left-side panel. Itâs extremely subpar to have to poke through either a debug screen or the multiple tabs of the options to get an idea of whatâs going on.
As the token balance is kind of a big thing, why isnât there a Tokens tab in the left panel? That would be a more intuitive method of accessing it than by clicking the token balance, though both could be used.
The warning around being an exit node could use additional info and clarification, in my opinion.
The entirety of how Tribler differs from other, more common torrent clients, and how it interacts with its own kind and external torrents, could use a chunk of first-run tutorial, too."
We should take this to heart, break it down to smaller issues and prioritize
Needs discussion? Alright, here we go:
Embedded video player is unnecessary. Agreed. Video players in torrent clients is a mid-2000's thing, also https://github.com/Tribler/tribler/issues/4203#issuecomment-470976318.
Remember sorting states in GUI. Partially agreed. This needs a <reset> function as well though: I've had my Tribler window stuck at x,y coordinates 16k, 16k before, which is at my next door neighbors (and required some Windows regedit magic).
Make it clear to the user what all the token features mean. Agreed. All features intended for users should be intelligible and usable.
Make it clear to the user what all the channel features mean. Agreed. See 3.
Use tooltips. Agreed. I thought we had an issue open for this, but it may have gotten lost at the coffee machine.
Use the trust graph for user-level debug data. Partially agreed. We could put in some more high level stats here, but this will quickly become way too overwhelming for new users. Any stats presented here should make sense for the context, we already have a debug screen for detailed stats.
Token stats should be in the navigation menu. Disagreed. That would put too much emphasis on tokens, which you can ultimately not really use for anything outside of priority at exit nodes yet. Perhaps once we have other uses for the tokens and it makes sense for users to consciously manage them.
Add more info to the exit node warning. I'm impartial to this.
Add a first use tutorial. Partially agreed. If we make this, it should have a <skip> button.
The entire idea of a video player embedded in a torrent client is kind of silly, in my opinion [...]
Given the amount of time we have to invest to maintain VLC stability/make sure the bindings work on all platforms, I'm starting to wonder if this is really worth the effort. For the time being, we probably cannot make a better video player experience than external VLC can offer. We can better spend time on things that matter for now, e.g., channel user experience and token dynamics.
The general window state, sorting orders, column sizes, and the like, should be remembered, and seems not to be at current.
We have an issue for this (#2898).
The entire UX/UI surrounding tokens, the token balance, market, mining, and all their details, is very unfriendly [...]
Indeed, we should make this less confusing.
Similarly, the UX around channels is terribly unclear [...]
Yes, and there is also other weird behaviour that can throw users off. For example, I see that a particular channel has '12' torrents. Clicking on that channel, I would expect to see these 12 torrents but instead, I see an empty list.
As the token balance is kind of a big thing, why isnât there a Tokens tab in the left panel?
I thought about this, but didn't want to pollute the left menu since it already has quite some elements (if the video player loads correctly).
Greetings, forum user in question here. Had I known my whole post would end up as a github issue, I would've been a bit more thorough with my explanations... No time like the present, I suppose?
Specifically, I see a video player in a torrent client as a multi-part issue. a) Takes dev time and effort, with low likelihood of surpassing existing dedicated software. b) Increases download size and causes confusion around the difference between "download" and "play", especially as (without bad client behavior, like downloading blocks sequentially) those happen in order, regardless. c) It's out of scope, ultimately - a torrent client fetches stuff, going beyond that is kinda begging for feature and scope creep.
Very valid point as resetting the window goes, I hadn't thought of that. Could also be useful if a user mucks up the column layout or the like and would rather reset it than try to realign everything to the way it started.
Additional detail: When discovering new channels, if there is a current sort order, new channels are prepended to the sorted list, not sorted into it. I'm largely ambivalent on this behavior, but I could see this as a failure of the sorting parameters, and it wouldn't be wrong, I think, to expect that channels should be sorted into the list as discovered.
There's not much in the way of findable information on mining or the market concept, and what little explanation there is on tokens at all is quite vague and oddly worded "you can build trust by ..." or simply somewhat unclear (how drastic the speed differences are, where they apply...). The system is interesting and seems relatively simple, but will be foreign enough for the average user that it will need a decent bit of explanation.
Channels, "My Channel", and "Subscriptions" need an explanation and how-to. Subscriptions should have a more obvious way to, well, subscribe to things, and there should be additional clarity on the limited channel preview without subscribing. Unifying the icon (the subscription tab heart) with that of a "Subscribe" column using the same (large-ish, single) heart icon, for example, would be more intuitive. The existing "popularity" column, I think, should be separate and use another icon, perhaps the more traditional star. Combining the two feels like an attempt to optimize that primarily resulted in decreased UI clarity. Otherwise, agreed that it's very unintuitive to have a channel list
Honestly I'm not entirely sure of the "channel" wording overall - it strikes me as too similar to communication systems (IRC, Discord) or television channels, neither of which are terribly analogous - but as the project seems to have committed, it is what it is. Even if it were open to discussion, I certainly don't have any suggestions.
My point was meant to be that the UI needs some consistent, obvious way of distinguishing interactive elements, be they buttons, icons, items within a column, entire rows, etc., from the remainder of the non-interactive page. Specific examples - the token balance appears highlighted to draw attention, not as if it's a button, the popularity column looks at first to be a 'rating' column as found in clients with torrent rating systems, not a method of subscribing (the conflation of the heart icon with the 1-5 'star' system confuses things), the "i" icon on the Trust Statistics page is not visually distinguished as indicating anything other than the page itself being informational. Of course, I still think tooltips would be a good thing.
Related: The ascending/descending sort arrows are extremely small and easy to miss. I'd suggest prepending or appending to the column label, same size as the label or close.
Vaguely-related: I'd suggest matching the market button (which currently reads "Trade") with the header of the screen it links to ("Market"), as "trade" seems unclear. Both the screen and button could be re-titled for clarity later, too - perhaps "Token Market" or similar. It might be a nice thing overall to unify buttons/tabs and page headers, as some button/tab texts match their page headers and some do not.
So to be very clear, I'm by no means suggesting that the entire debug screen, or even much of it, should be dumped next to the trust graph. I was intending more the sort of information one might expect from the status bar of a traditional client, or perhaps marginally more, but nothing terribly technical - very little to nothing really outside of what I initially suggested. There would be no real need for any of it to be interactive, but it would be ideal if it were continuously-updated 'live' data. I agree entirely that for full diagnostics and data, the debug screen is the correct place and should remain so.
I personally still believe the tokens would do well as a tab. a) If a tokens tab were added and video tab removed, there's no change in number of tabs. b) Tokens are already in a place of significant prominence, in a highlighted always-visible box right at the top, with font size approaching that of the page headers. I don't think adding a tab would significantly change the level of prominence; it would, however, make it obvious that you can go to a page about tokens. c) I don't see that the tokens page is currently less important than the trust graph, and that does get a tab. d) It strikes me as odd to place the market page behind the tokens page behind a not-obviously-clickable status box. Stuffing it down a hole, metaphorically speaking, is awkward. Once that's all finished, I think the case for a Tokens tab becomes yet stronger.
Honestly, I'm kind of not pushing this very hard. I don't think a lot of users will truly understand that being an exit node means it will appear as if they are behind whatever activity is relayed through them, hence my comment. I hope I'm wrong and that all users will be cleverer than that, but I suspect I'm not.
On the skip button, entirely, strongly, agreed. Tutorials need both a skip/opt-out and a replay option. I would suggest, for a tutorial, including the basics of channels, including "my channel", subscriptions, the related effects of being decentralized (taking potentially significant time to acquire channel contents and the channel preview limit, for example), tokens and their function and (when it's deemed sufficiently ready) the market, and just generally how Tribler differs in design and operational philosophy from a more ordinary client. The background data exchange should be specifically mentioned, as most new users will be used to torrents as they normally are, and Tribler doesn't act that way with regards to bandwidth usage. This could impact the choices of users on bandwidth-capped connections, who might be willing to run a traditional client, but may balk at the overhead imposed here.
Apologies for anything I repeated, any mistakes/misunderstandings, and for the length of this, and do take my commentary and thoughts with a grain of salt.
More comments on GUI, from another user this time:
https://forum.tribler.org/t/how-do-i-seed-solved/6082
Column sorting, Tooltips, and general improvement in clarity. Great ToDo list, thnx! See detailed discussion on VLC bundeling,#5388.
Currently we're 10 development engineers. I'm leaning towards hiring a dedicated phd student for the user interaction design. Thus for 4 years we will gradually improve the clarity and no-manual-needed level of Tribler. See work of our prior dedicated GUI scientist: https://repository.tudelft.nl/islandora/object/uuid:78faf30c-1e48-4ec8-8ab7-c14e18e8074a/datastream/OBJ/download (100MByte .PDF)
Coming from the gaming industry, I think I might contribute a bit regarding item 9: Tutorial.
Don't do it. The only reason people do tutorials is because they don't know a better way to teach. But, at this time and age, this is just an quick way to excuse themselves because we all now that no one reads tutorials. You already pointed out a much better solution, tool-tips. They are a lot easier to implement and maintain and they respect the pace and will of whoever is trying to learn. Tutorials look easy to implement but they are not. Furthermore, they will not add value, on the contrary.
Normally, I would agree entirely - I don't generally like tutorials, and find them a flawed solution in most cases.
I suggested a tutorial essentially because the very significant departure from the norms of a category of software that, for the most part, acts and looks very similarly, necessitates an excellent in-application explanation of some type, whether that's via tutorial, excellent tooltips, a very well-designed UI, or some combination.... and my assumption, perhaps not correct, was that the dev team might prefer to put together a workable, if not ideal, stop-gap in the form of a decent tutorial, rather than reworking their UI.
On the other hand, I may be overestimating the number and significance of changes required to make Tribler more, if not per-se intuitive, at least easy enough to figure out. Adding concisely explanatory sub-headers, extensive tool-tips, and some relatively minor UI changes for clarity's sake might well be good enough for now - and that much shouldn't take exorbitant amounts of dev time. That might also be more of an evolutionary path for the UI than the essential dead-end of a tutorial, as the ideal is always to improve the UI to a point where you don't need a big hunk of exposition.
regarding Embedded video player being unnecessary; I think the main reason to have one is streaming, and the ability to skip back and forth into sections that have not yet been downloaded. It's much harder to get that to work well (in my limited experience) by providing an HTTP server and hook up an external video player to it, than to have one built-in.
Most helpful comment
Greetings, forum user in question here. Had I known my whole post would end up as a github issue, I would've been a bit more thorough with my explanations... No time like the present, I suppose?
Specifically, I see a video player in a torrent client as a multi-part issue. a) Takes dev time and effort, with low likelihood of surpassing existing dedicated software. b) Increases download size and causes confusion around the difference between "download" and "play", especially as (without bad client behavior, like downloading blocks sequentially) those happen in order, regardless. c) It's out of scope, ultimately - a torrent client fetches stuff, going beyond that is kinda begging for feature and scope creep.
Very valid point as resetting the window goes, I hadn't thought of that. Could also be useful if a user mucks up the column layout or the like and would rather reset it than try to realign everything to the way it started.
Additional detail: When discovering new channels, if there is a current sort order, new channels are prepended to the sorted list, not sorted into it. I'm largely ambivalent on this behavior, but I could see this as a failure of the sorting parameters, and it wouldn't be wrong, I think, to expect that channels should be sorted into the list as discovered.
There's not much in the way of findable information on mining or the market concept, and what little explanation there is on tokens at all is quite vague and oddly worded "you can build trust by ..." or simply somewhat unclear (how drastic the speed differences are, where they apply...). The system is interesting and seems relatively simple, but will be foreign enough for the average user that it will need a decent bit of explanation.
Channels, "My Channel", and "Subscriptions" need an explanation and how-to. Subscriptions should have a more obvious way to, well, subscribe to things, and there should be additional clarity on the limited channel preview without subscribing. Unifying the icon (the subscription tab heart) with that of a "Subscribe" column using the same (large-ish, single) heart icon, for example, would be more intuitive. The existing "popularity" column, I think, should be separate and use another icon, perhaps the more traditional star. Combining the two feels like an attempt to optimize that primarily resulted in decreased UI clarity. Otherwise, agreed that it's very unintuitive to have a channel list number of torrents, open it, and see fewer or none. That could likely be partially solved with a big-and-obvious "Still waiting to get the contents of this channel" type of banner (which could also serve as a "x item preview of channel, subscribe to get the rest" explanation), preferably with a progress indicator. Users like progress indicators. A blurb explaining that the delay might be substantial may be a good idea as well. As for "My Channel", I'm not sure what, if anything, that needs. Perhaps minor tweaks and/or a section rename...? I don't feel like the current name communicates its purpose terribly well, but I don't have any ideas offhand.
Honestly I'm not entirely sure of the "channel" wording overall - it strikes me as too similar to communication systems (IRC, Discord) or television channels, neither of which are terribly analogous - but as the project seems to have committed, it is what it is. Even if it were open to discussion, I certainly don't have any suggestions.
My point was meant to be that the UI needs some consistent, obvious way of distinguishing interactive elements, be they buttons, icons, items within a column, entire rows, etc., from the remainder of the non-interactive page. Specific examples - the token balance appears highlighted to draw attention, not as if it's a button, the popularity column looks at first to be a 'rating' column as found in clients with torrent rating systems, not a method of subscribing (the conflation of the heart icon with the 1-5 'star' system confuses things), the "i" icon on the Trust Statistics page is not visually distinguished as indicating anything other than the page itself being informational. Of course, I still think tooltips would be a good thing.
Related: The ascending/descending sort arrows are extremely small and easy to miss. I'd suggest prepending or appending to the column label, same size as the label or close.
Vaguely-related: I'd suggest matching the market button (which currently reads "Trade") with the header of the screen it links to ("Market"), as "trade" seems unclear. Both the screen and button could be re-titled for clarity later, too - perhaps "Token Market" or similar. It might be a nice thing overall to unify buttons/tabs and page headers, as some button/tab texts match their page headers and some do not.
So to be very clear, I'm by no means suggesting that the entire debug screen, or even much of it, should be dumped next to the trust graph. I was intending more the sort of information one might expect from the status bar of a traditional client, or perhaps marginally more, but nothing terribly technical - very little to nothing really outside of what I initially suggested. There would be no real need for any of it to be interactive, but it would be ideal if it were continuously-updated 'live' data. I agree entirely that for full diagnostics and data, the debug screen is the correct place and should remain so.
I personally still believe the tokens would do well as a tab. a) If a tokens tab were added and video tab removed, there's no change in number of tabs. b) Tokens are already in a place of significant prominence, in a highlighted always-visible box right at the top, with font size approaching that of the page headers. I don't think adding a tab would significantly change the level of prominence; it would, however, make it obvious that you can go to a page about tokens. c) I don't see that the tokens page is currently less important than the trust graph, and that does get a tab. d) It strikes me as odd to place the market page behind the tokens page behind a not-obviously-clickable status box. Stuffing it down a hole, metaphorically speaking, is awkward. Once that's all finished, I think the case for a Tokens tab becomes yet stronger.
Honestly, I'm kind of not pushing this very hard. I don't think a lot of users will truly understand that being an exit node means it will appear as if they are behind whatever activity is relayed through them, hence my comment. I hope I'm wrong and that all users will be cleverer than that, but I suspect I'm not.
On the skip button, entirely, strongly, agreed. Tutorials need both a skip/opt-out and a replay option. I would suggest, for a tutorial, including the basics of channels, including "my channel", subscriptions, the related effects of being decentralized (taking potentially significant time to acquire channel contents and the channel preview limit, for example), tokens and their function and (when it's deemed sufficiently ready) the market, and just generally how Tribler differs in design and operational philosophy from a more ordinary client. The background data exchange should be specifically mentioned, as most new users will be used to torrents as they normally are, and Tribler doesn't act that way with regards to bandwidth usage. This could impact the choices of users on bandwidth-capped connections, who might be willing to run a traditional client, but may balk at the overhead imposed here.
Apologies for anything I repeated, any mistakes/misunderstandings, and for the length of this, and do take my commentary and thoughts with a grain of salt.