Saturday 11 April 2015

The trouble with Google Hangouts...

The Trouble with Google Hangouts...

I have been an enthusiastic user and supporter of Google Hangouts since they were launched. I am one of the early members and admins of the popular G+ Tech And Coffee Community who pretty much started out because of Hangouts and, via that group, have participated in Hangout On Air shows  about technology.

I've also taken part in many other shows/conferences including VoIP Users Conference and others.
I also fairly regularly use standard (not "on air") public/private hangouts both for business and pleasure. I have played games, watched Youtube videos, discussed topics both serious and silly, demonstrated software, and had business meetings using video Hangouts. It is a great facility and, in my view, far surpasses tools like Skype.

I have also been an extensive user of Hangout (text) Chat as it's the primary communication mechanism used by many Ingress players. Some of the Hangouts I'm in have more than 80 members.

Although I like Hangouts, a few things about it bug me (and others I know) and I think Google are missing some tricks which would make Hangouts much more popular and useful.

A brief history

Hangouts started a few years ago as a feature of Google+. At that point it was a pure video-conferencing service (there was an accompanying chat application, but you needed to be part of the video conference to use it). It was revolutionary because it support multi-user video conferencing, and all you needed to use it was a decent web browser and a Google account. You could also use it on Android and iOS devices via an app. At the time it was probably the best cross-platform video conferencing/chat service and, arguable, still is.

Later, Google introduced a replacement for their popular Google Talk service, and named this "Hangouts" too, whilst semi-merging the video chat into it. Hangout chats are great as they are a much more modern chat system than Google Talk was, supporting more emoji, picture sharing, location sharing, selectable notifications and notification snoozing, cross-device synchronisation, and an optional searchable history. Hangouts also have probably the best system on any chat service for showing where other users have read to.

So, what's the problem?

I should point out that I'm focussing on functionality here. There are, from time to time, other problems such as app stability, bandwidth utilisation, useability and so on but I don't intend to discuss these here.

I'm also mainly focussing on text chat Hangouts, as I think video Hangouts are pretty good.

I think there are some very basic capabilities missing from chat Hangouts which limit its usefulness and which have pushed people to other platforms, such as Slack. I hear a lot of good things about Slack, for instance, but people tend to suggest it is fundamentally different from Hangouts suggesting it has more in common with IRC. I don't see that: I think Hangouts and Slack are more fundamentally similar to each other than they are to IRC, and with a few additions, Hangouts could do a lot of what can be done in Slack.

So, what do I think could be changed?

Fixed URLs

It would be great if you could fix the URL for a text Hangout to make it semi-permanent. In this way you could post the URL (for instance, in  G+ community) and people could opt to join rather than having to be invited (or re-invited). This would make Hangouts much more like IRC, where users could join and leave as they wish.

The dumb thing is, Video Hangouts do have this option. Text hangouts do not.

Moderation/Ownership

Text Hangouts are sorely missing any sort of moderation capability. Once someone has been invited to a Hangout, the only way to remove them is for them to leave voluntarily. This is a problem because one abusive member (or an unwanted outsider) can completely mess up a Hangout.

What happens in practice is a new Hangout is started, and all of the old members are invited to it except, of course, the troublemakers. This is awkward and very hit and miss when Hangouts can have up to a hundred participants. It's made worse because the original hangout still remains unless all of the users leave it, leaving the possibility of fragmented discussions when people cling onto the old hangout.

A number of things are needed here:
  • Firstly, there is a need to have some sort of "ownership" of the Hangout. Ideally this should be shareable amongst several members who can then act as moderators
  • There needs to be a way for a hangout admin/moderator to be able to kick and ban users from the Hangout
  • There should be a way for an owner to suspend or delete a hangout, or archive it whilst making it inactive
  • It should be possible to restrict the ability to invite new people to a hangout to owners/admins
  • Ideally, there should be a way to restrict access to a hangout to a specific group of people. Some have suggested G+ Circles would be a way to do this, but I disagree. Circles are generally a way to capture social connections, not to enforce security. A better way, IMO, would be to allow Hangout membership to be restricted to a Google Group, which would also support integration with Google Drive and, of course, Groups itself.
For those not familiar, Google Groups allows a group of people to be associated with a single email address. The primary purpose of this is for mailing lists and collaborative inboxes, but Groups can also be used for access control for Google Drive, Google Sites and some other Google products. Using the same capability for Google Hangouts makes sense, and provides an integrated permissions management capability across multiple Google services.

Again, some of these capabilities are already available to Video Hangouts, but not to chat.

Support direct sharing of more stuff

Whilst it's possible to share links, pictures, screenshots, locations, and even Youtube videos within Chat hangouts, it would be good to support other types. For instance, it would be useful if it was easy to share a Google Doc from within a Hangout chat (there is support for this in Video Hangouts) and have it deal with the permissions automatically.

A public API

One of the huge benefits of Google Talk was that it used an open protocol (XMPP) which made it possible to integrate lots of different systems into it.

It would be beneficial to have some sort of public API to support the two-way integration of external services into chat Hangouts.

For instance, it would be great to have the ability to have IRC like "bots" to help with things like moderation, inline information services, and so on. You could have bots which collected external information (such as specific tweets, alarms from monitoring systems, etc.) and pushed them into the Hangout, bots which checked for bad language and ejected people from the Hangout if they use it, a bot which collects history to display on a scrolling blog widget, and so on.

It would also support the integration of chat into online games, as part of the Google Play Games service.

There are some API capabilities for video Hangouts, but not for chat Hangouts.

Sort out the Video Integration

Individually Hangouts Video and Hangout Chat are great products, but the way they are glued together is, frankly, a bit broken. As I've pointed out above, many of the capabilities supported in Video Hangouts are not available in chat hangouts, which makes the integration very lop-sided and limited. But there are other reasons to separate them.

For instance, if I create a Video Hangout, I automatically get an associated chat hangout whether I want it or not. Even if I leave the Video Hangout, the associated text hangout persists and I need to leave it separately. This leads to unwanted side effects. For instance, notifications are enabled by default so I get alerts as new people join the video hangout even if I left it some time ago. Depending on how they join the Video Hangout, I may even get a video call invite.

Conversely, if I create a new chat Hangout, there is always the option to do a video call, and at one point or another someone is bound to click that button (usually accidentally).
This is a common meme amongst Hangout users.
Video and Chat hangouts need to be separated. There should definitely be the option to integrate them, but it shouldn't be automatic. Perhaps as part of the moderation capabilities, it should be possible to say whether video calling is supported on a chat Hangout.

Conclusion

With the enhancements I describe, Hangouts could become a lot more useful and support a lot more use cases. For instance, some hangouts could work similar to IRC, with a public URL, public access, and moderation. Others could be private/secure with the option to remove unwanted members and prevent them from being added in the first place. It would support the capability for closed Hangout groups with much more integration into other Google services like Drive.

Hangouts could become the default in-game chat capability for online games (obviously subject to privacy controls). For instance, in Ingress if someone had linked their G+ account, and enabled unsolicited Hangout requests, it would be good to be able to launch a Hangout with them directly from the game.

What functional changes would you like to see in Hangouts?