Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Gitter? #517

Open
3 tasks
nelsonic opened this issue Jan 28, 2019 · 11 comments
Open
3 tasks

Gitter? #517

nelsonic opened this issue Jan 28, 2019 · 11 comments
Assignees
Labels
discuss Share your constructive thoughts on how to make progress with this issue help wanted If you can help make progress with this issue, please comment! question A question needs to be answered before progress can be made on this issue T25m Time Estimate 25 Minutes

Comments

@nelsonic
Copy link
Member

nelsonic commented Jan 28, 2019

Preface

Building a technology/software product is difficult.
There are many competing demands that need to be juggled.
Gitter is a good product and has provided a good service to the Open Source community.
We have used it for free and benefitted from it. (in "exchange" we have promoted them everywhere)

On a personal level I have nothing but love, respect and admiration for Mike, Andrew and the team that has built Gitter, they have worked really hard against massive odds (being based outside of Silicon Valley can be a major handicap for a venture-backed startup and they are operating in a very crowded market) and have (largely) succeeded in their original mission and objective(s): ✅

"Build a community for software developers."

Along the way Gitter have made much of their code Open Source: https://github.com/gitterHQ
This is a great example to follow and we wish more companies/organisations dit it.

Honest Feedback !== Personal Critcism

My intention is not to "criticise" anyone personally or to defecate on the hard work they have done!
My objective for this issue is to capture our user-experience of the product/service, list the features, "flaws" and "gripes" in a systematic way so that we can all move forward!
Without "honest feedback" nothing improves.

Revenue vs. Cost Centre ?

I feel that while GitLab made a good-fit acquisition, they also made a huge mistake by making the Gitter product "free" for everyone/everything because it transformed the product from a "revenue centre" into a purely "cost centre"
i.e: rather than continuing to generate income from the product they made it "free".

Many teams/companies were willing to pay for the product in the same way that many companies pay for Slack. I would happily send them a lump-sum cheque to cover both the infrastructure costs and a portion of development costs for the time we have used the product/service because it has given us a measurable business benefit in the form of real-time chat and team discussion.

Having an independent revenue is essential for an independent product to continue flourishing after it is acquired by a bigger company. By being a cost centre every bugfix, improvement or new feature added to Gitter is a "cost" that must be minimised rather than an investment that will have a "return". The distinction is subtle but so is a zero from a one in binary.

I feel that the product has stagnated since the GitLab acquisition in 2017 (beyond "signin with GitLab" OAuth integration and a few minor improvements to the UX on iOS...) details on this below.
This is not the "fault" of the Gitter developers/team, it is a failure of the systems they are subjected to.

With that noted, I advise anyone who is of a sensitive disposition to not read any further.

DON'T READ THIS!!
(if you are easily offended by honest feedback)

I am a member of several online communities that use Gitter and I have used the product extensively.
@dwyl we have been using Gitter since early 2015 and it's been "OK"... good but not great.

I know that I should not "complain" given that I have not paid any money for the product/service,
but as stated above, I would gladly send a cheque for the service if they would take my money and it was clear what I was paying for i.e. specific SLA including up-time guarantees and visibility of bug fix estimates. I would pay even more if the "core" product was Open Source and I could fix the issues myself or write a feature that I could then use. Hint: this is where @dwyl is going! 🔮

UX Notes

My biggest gripes with the product are that:

a) The product has not innovated beyond the initial feature set from 2015 ... e.g:

  • "reactions" on messages
  • "threads" to easily split out conversations from a "general" thread into a "topic"
  • (fine-grained) control over notifications
  • "Do Not Disturb" allow people to turn off all notifications (including email) when trying to focus
  • delayed sending (so I can write a message at 05:00 on a Saturday and have it appear at 09:00 Monday morning, thus not "bothering" anyone over the weekend but being the first thing that people read when they get back to their desk and not crowded by other "chatter"...)

b) Memory/process consumption of both the Web-based and Desktop (Electron) App. The app is a memory/process-hog on my Mac and it often crashes requiring re-start. It could be lightweight and reliable, but it's not. And this does not appear to be a focus for the team as they haven't improved it in the 4 years we've been using the product ...

Note: this is not unique to Gitter, this is a major fail in Slack too:
image

c) Notification failure; I often do not receive a notification for a message despite having the iOS app installed on my phone (against my better judgement). I regularly only get an email notifying me hours after the fact and when I click it, it takes several seconds to load the conversation. ⏳

d) Navigation Failure : when I'm in the App and attempt to navigate to a different conversation, the current page stays in the view rather than the one I have clicked on e.g:
gitter-browser-navigation-shambles
I was speaking to Sam, but I saw a notification in a project channels and clicked it,
the UI did not change to show the project's thread it just froze. I had to manually refresh the page ...
image

e) No Offline Capability in the iOS app ... self-explanatory. If you don't have network/wifi you cannot see any history or queue up any messages to be sent when connection resumes.
gitter-offline-fail
This is a screenshot of the Gitter app in "flight mode", it shows a blank UI even though I have looked at this page earlier in the day and already downloaded the most recent messages, they are not saved in a "cache" on the device so I must be connected to the internet to see them. 🤦‍♂️

f) Use-case Failure ... this more of a "process failure" than a product failure ... but people constantly using Gitter (instant messaging) for asking project/technical specific questions instead of opening an issue question in the appropriate place where everyone in the wider community can read it and learn from the answer. Using ephemeral "chat" for questions/answers that should be captured and allow the future team members to learn from is a massive "anti-pattern" that costs us time/money. The reason I list this as an issue with Gitter is simple: if they had a SDK I would have solved this problem by writing a bot to do NLP on the messages and identify the ones that look like a project/tech related question and encourage the person to open that question as an issue instead.

g) "We're Hiring!" permanent clutter in the (web) UI. 😕

... I could easily go on listing my UX gripes, but I feel this is a task for someone else more qualified ...

Todo

We need someone who has used the product even more than me and has the time to systematically list all the features of the product as well as the shortcomings and potential features we would like to see!

Who on our team has the most experience and/or frustration with Gitter and want's to dedicate a pomodoro (or two) to writing up the features they like, the frustrations that grate them and the features they wish they had?

This is not a "technical" task and requires no specific skill other than observation and writing,
it can be performed by anyone who has used the Gitter product and knows its' strengths and weaknesses.

  • Features: Capture the list of functionality that Gitter does have
    e.g: real-time chat, rooms, private conversations, notifications etc. (please attempt to be exhaustive)
  • Fails: List the flaws/shortcomings of the Gitter Web UI, Desktop App and Mobile (Native) App(s)
  • Wish List: List features that you wish Gitter had that would add value to the App

I don't mind if this task takes more than a couple of pomodoros because it is a useful exercise both as a "UX Review" and ideation session and because we (@dwyl) need to move forward.
By the end of February we will need to make a decision as to whether we continue using Gitter or switch to something else.

Please leave a comment if this task interests you.
Estimate how long you think it will take you before you dive into the work.

Thanks ✨

@nelsonic nelsonic added help wanted If you can help make progress with this issue, please comment! question A question needs to be answered before progress can be made on this issue discuss Share your constructive thoughts on how to make progress with this issue labels Jan 28, 2019
@Cleop
Copy link
Member

Cleop commented Jan 28, 2019

My opinion on this one is:
- Could gitter do with improvement? yes
- How? the reloading issue you mentioned, notifications not reaching the user (both bugs in my opinion)
- Does it need new features? potentially but this is far lower priority to me and of much less interest to me than removing the existing bugs.
- Do better alternatives exist? From the limited use I have made of slack in comparison to gitter I don't believe that slack has the bugs that gitter has. Although I can't say I have tried slack's mobile app.
- Summary your analysis of gitter's features and strengths vs weaknesses is far more knowledgable/comprehensive than what I know of gitter. Whilst we could put more time in to delve deeper, given that for me I enjoy the more basic elements of chat features I am not so interested in that aspect of research (although no harm in anyone else doing so if it is of interest 😊). Should dwyl switch to slack? I'd be willing to trial something out to help us decide and if we don't like it, we can swap back.

@nelsonic
Copy link
Member Author

@Cleop thank you for reading and commenting. ❤️

This is issue is specific to Gitter and capturing the existing functionality, flaws and desirable features of the product/service. We'll determine what to do next after we have gathered the "evidence" and ideas.

If you know of any other "bugs" in Gitter that you would fix if you had a "magic wand", please share. 🙏

To be clear (to anyone/everyone reading this): I am not even remotely suggesting that we'll be using Slack. I mentioned Slack above for reference merely to note that the "market leader" in Work-based instant messaging is every bit as much of a memory hog as Gitter. Slack is a productivity sap that destroys developer focus and encourages instant gratification at the expense of deep work.
I would rather become a monk and never write another line of code than use Slack. 😊

@RobStallion
Copy link
Member

@nelsonic as @Cleop mentioned above, your analysis of gitter's features comprehensive, but I'll try to add what I can.

Features

  • Real time chat
  • Rooms
  • Private conversations
  • Notifications
  • Read receipts (really like)
  • Rough timestamps
  • Hide unused chats
  • Favourite chats appear at the top of the list (and you can drag and drop into an order you like most. One of my favourite features for sure)
  • In theory (I'll touch on this in a little below) I like that you can configure the room settings (e.g. to stop showing you notifications in a really busy group for example)
  • email notification (although I don't use this I think it is a good feature to have if you cannot get onto gitter for one reason or another)
  • room details (to easily see and search who is in a room)
  • Shortens github URLs and makes them stand out in a chat
  • Opens links in a new tab automatically (so you do not lose that gitter tab)

Fails

c) Notification failure; I often do not receive a notification for a message despite having the iOS app installed on my phone (against my better judgement). I regularly only get an email notifying me hours after the fact and when I click it, it takes several seconds to load the conversation. ⏳

  • I have only ever received 1 notification for slack on android and it was for a message that was 40 something days old (I am pretty sure I have a screenshot of it somewhere) and that I had already read. Other than this, I have not had one notification. I don't know if this is just a me issue on android but it is a problem I have faced.

d) Navigation Failure : when I'm in the App and attempt to navigate to a different conversation, the current page stays in the view rather than the one I have clicked...

  • I have the exact same issue

  • I also don't like that you cannot upload images to slack on mobile. SUPER annoying when someone asks you to test something on mobile. I have tested something for people in the past and have taken screen shots to send to them so they can see what it looks like. However in order to send them I have to save them to google drive, access them on my computer and then send them on slack.

Wish list

  • Image upload on mobile
  • Improve the way reply to messages works e.g.
    image
    Currently reply just puts "@ + persons handle" in the message input box which more often than not takes longer to do than just typing that persons handle yourself. It's not clear what exactly you are replying to if you are coming back to a bunch of messages.
  • Image uploads didn't open in a new tab. Would be nice to view them "in-app".

@rub1e
Copy link
Member

rub1e commented Jan 29, 2019

This is uncanny - no word of a lie, I was thinking of opening this exact issue last night

I reckon I've had all of the issues described above, plus on Android I'll see a notification but when I go to the app, the message isn't there - and the only way I can get the message to download is by logging out and back in again. It's... frustrating.

The idea that this is created by developers for developers has never made sense to me

How about I collate everyone's comments and do any extra research next week (after we've closed off the company annual accounts)?

@nelsonic
Copy link
Member Author

@rub1e thanks for adding your Android UX ... that's horrible! 😞
Why have we put up with this for so long?! 💭

The "by developers for developers" is a variant on "we are fixing our own problem" AKA "dogfooding".
The theory is that if you are the user of your own product you will want to make it better.
And because you are actively using the product, the "user feedback loop" is instantaneous.
This is a fairly standard "wisdom" in the startup world,
see: https://github.com/dwyl/home/#solve-a-problem-you-yourself-have
Sadly, I feel that it has not applied to Gitter ... or more specifically I feel that their OKRs are not closely tied to delivering an "amazing" UX on all platforms. From talking to the Gitter team back in the day, they had infrastructure woes, "funding issues" and other higher priority issues to solve. 🙄
Building a software company is mega difficult! We take "chat" for granted because it's ubiquitous.
But building Chat at scale with Node.js and MongoDB is definitely "Eating Glass".

@iteles and I would be delighted if you could collate the comments in this thread (initial feedback).
Please estimate how long you feel it will take and add the appropriate label. (thanks! ✨)

Also we need to "cast a wide net" to capture the 3 points (current features, gripes and wishlist)
from an much wider audience by writing a questionnaire which we can send out to the general developer community. (The "market research" questionnaire can come later ... for now, just estimate and focus on the collation + summarising task)

@iteles
Copy link
Member

iteles commented Jan 30, 2019

At the moment, whilst our processes are still under improvement, I often use gitter to alert people to something that they might miss if there is a lot going on like a re-prioritisation of an issue, that I have answered a question or reviewed a pull request. I don't tend to use it for anything urgent or of any consequence - all of these things go into issues directly (though we do need a much better way of dealing with urgent issues, thats for another day!

I use the gitter desktop app and mobile app for iOS. I never use gitter in the browser because I have enough tabs open across enough windows without having to keep track of one more every time I want to use it!

By far and away my favourite thing about gitter that I have found is also one of my greatest gripes with Slack is 'read receipts' (mentioned in @RobStallion's great feature list):
image

It brings me a lot of peace of mind! ☮️

The fact that these exist mean I don't feel compelled to acknowledge every single thing that has been said - if a person can see that I have read something, unless it requires an ephemeral answer or I will take a while to get it done, they can see I have read their message and it's on my radar.

Similarly, if I have a non-urgent note for people on logistics for example, e.g. 'The client has asked to move the demo in a few days to the following week, does that work for you guys?', I can see that people have read it (and if they haven't answered it's because they're checking whether it works) rather than having to chase people and keep it in the back of my mind as an uncertainty.

My biggest issues with gitter are similar to the above:

  • On mobile:
    • 50% of the time, when I click into the input field in a chat window, the keyboard on iPhones hides the 'Send' button and there is no way to send the message you have typed (or see it until you go to the next line, which still doesn't unhide the 'Send' button)
    • 10% of the time messages that you read don't get marked as read so you never know whether you can trust that there are unread messages or not
    • Notifications are shockingly inconsistent (although I have these along with all other chat notifications switched off on my phone now anyway)
    • Not being able to add photos from mobile is a real pain as @RobStallion says!
  • The lack of a 'deep work mode' feature is what I'm really missing so that people know it'll be a little while before I get back to them or to be able to 'mute' notifications without having to quit the app (which I never remember to go back into until much later in the day)
  • I find often that I think I am in one room because I have clicked into it, but the chat and the participants show as those from another room - @nelsonic mentioned both this and the 'do not disturb' mode above, but I find both of these enough of a pain to mention again!
  • Not being able to paste in images is really inconvenient (you have to drag and drop them in from a saved file or paste them into a github comment and copy in the markdown) because a lot of what I use gitter for is to share screenshots and I'd rather not have thousands of screenshots saved to my desktop!

I have a number of little niggles, but these are the things that I feel I'm missing (that and the 🙄 emoji which I find myself wishing gitter supported on the regular 😛 )

@iteles iteles added the T25m Time Estimate 25 Minutes label Jan 30, 2019
@nelsonic
Copy link
Member Author

nelsonic commented Feb 5, 2019

"Unread" Messages Counter/Notifications ... 😕

Another "bug" that drives me nuts is when I click on a room that has a few unread messages:
image
When I am in full view of the unread messages (screenshot window viewport constrained for privacy),
image
Gitter still does not classify the messages I can see as "read".
Even after I click on the hovering link to read the "unread messages"
the counter in the left menu continues to say 5.

Note: I like the fact that there is a visual cue (green highlight/background) for the new messages.
I just wish it worked! If I open room and my viewport displays all the latest messages, they should be classified as "read" immediately. Not linger for ages and often stay "unread" for hours.

So I keep checking and re-checking rooms/threads which have no new messages but Gitter insists there are new ones.

Addendum: this happens intermittently, sometimes it works fine others the counter lingers ... 😕

💬 Does Anyone else Experience this Bug...? 🐛

@Cleop
Copy link
Member

Cleop commented Feb 5, 2019

Yep, I experience that bug (forgot to mention it before)!

@iteles
Copy link
Member

iteles commented Feb 5, 2019

@nelsonic I mentioned that as my second point on mobile above ⬆️ #517 (comment)

Only happens to me rarely on desktop (I never use in-browser gitter).

@nelsonic
Copy link
Member Author

nelsonic commented Apr 14, 2019

https://signal.org ? 💭
image

@nelsonic
Copy link
Member Author

nelsonic commented Aug 7, 2024

Fun fact: the Signal desktop app uses Node.js & TypeScript ...
image
Just saw this error not very helpful ... 🙃

https://github.com/signalapp/Signal-Desktop

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discuss Share your constructive thoughts on how to make progress with this issue help wanted If you can help make progress with this issue, please comment! question A question needs to be answered before progress can be made on this issue T25m Time Estimate 25 Minutes
Projects
None yet
Development

No branches or pull requests

7 participants