Earlier quoted context omitted.
I can't speak for the rest, but I personally use the GitHub integration to be notified in chat when builds have failed, pull requests are submitted and commented on, etc. Otherwise I end up having to keep GitHub open in a tab and refresh every minute.
I don't understand. Why would you have to have a github tab open and refresh? There have always been email notifications for all these events. Also, why is getting these notifications in chat preferred over email?
Emails are in their own isolated packages. If i get an email saying the build broke, there is no easy way to check the last time it happened. I wouldn't be able to glance at the last few messages and see that the build breaks every time "X" commits or the tests fail every monday. I can't easily get context on what someone was doing when it broke.
With something like slack it's all right there. The last 3 alerts, maybe a few messages from devs quickly explaining what happened (or preemptively saying that the build is going to break, and it's okay), someone taking responsibility and saying that they will handle the fix, etc...
It's just nicer.