bridge

Month: 2021-05

2021-05-20

Guo-Jim 08:28:25
@guo-jim has joined the channel

2021-05-25

kjcl 23:21:32
@kevinliao has joined the channel

2021-05-26

Chris Bobbe 09:43:35
@csbobbe has joined the channel
Chris Bobbe 11:14:36
Hi everyone! 👋 🙂 Replying to https://g0v-tw.slack.com/archives/C02G2SXKX/p1621954566360900?thread_ts=1621666134.154200&cid=C02G2SXKX

I'm @kevinliao's friend from university, and I work full-time for Zulip developing the mobile apps. Zulip is an open-source team collaboration tool with a unique topic-based threading model that makes it easy to chat about projects synchronously and asynchronously. We've recently released Zulip Server 4.0: https://blog.zulip.com/2021/05/13/zulip-4-0-released/.

As we do for hundreds of open-source communities, Zulip has agreed to sponsor g0v at https://g0v.zulipchat.com with the Zulip Cloud Standard plan (https://zulip.com/plans/) for free, with no expiration date. This means access to full message history, file storage up to 10 GB per user, and more. For anyone who's curious, I'd encourage you to read about how Zulip has helped many prominent open-source teams do their work, at https://zulip.com/for/open-source/.

We received a very kind review this week on Product Hunt (https://www.producthunt.com/posts/zulip-4-0#comment-1365065) about Zulip's support for message searching in Traditional Chinese. We're working with that user to increase the Taiwanese Mandarin translation of Zulip beyond 74%, and to make a translation style guide for the locale. We'd welcome collaborators on Zulip's community server (https://chat.zulip.org/#narrow/stream/58-translation/topic/Taiwan.20Traditional.20Chinese.20Style.20Guide/near/1186591)!

I've enjoyed learning from Kevin about the open-source work g0v is doing for the pandemic and other urgent problems. We are hoping to set up a bridge between Slack and Zulip to make it easy for people to experiment with Zulip, without requiring any of g0v's 10,000+ users to change how they use Slack.

With that bridge (powered by Matterbridge),

- People can explore Zulip's advantages for asynchronous collaboration, without missing any messages from Slack. In particular, Kevin has mentioned that the energy and productivity of vaxx.tw's contributors in `#vaccine` have started to stretch Slack to its limits. Zulip is better equipped to handle the workload.
- Even if nobody uses Zulip regularly, the bridge can help fix the problem of the Slack free tier's message limit by automatically making a viewable, searchable archive of discussions on Slack. That's why the list below includes `#general` and `#covid19`, so that important discussions in those channels will be preserved. `#rand0m` will be helpful for testing the bridge, if necessary.

So, specifically, we're thinking,

`#vaccine` (Slack) ↔️ `#vaccine > slack-bridge` (Zulip)
`#general` (Slack) ↔️ `#general > slack-bridge` (Zulip)
`#covid19` (Slack) ↔️ `#covid19 > slack-bridge` (Zulip)
`#rand0m` (Slack) ↔️ `#rand0m > slack-bridge` (Zulip)

So, for example, all messages people send in the `#vaccine` channel on Slack will appear in the `#vaccine` stream on Zulip, with the topic "slack-bridge". All messages people send in the `#vaccine` stream on Zulip with the topic "slack-bridge" will appear in the `#vaccine` channel on Slack.

(On the Zulip side, a stream and a topic have to be selected; there isn't a way to bridge an entire Zulip stream. This is to adapt to Slack not having topics. Note that this means all Zulip messages in, for example, `#vaccine > Flow type-checking for vaxx.tw`, will *not* be bridged to Slack.)

What are your questions? :smile:
Slackbot 11:14:36
先承認你就是沒有人
Chris Bobbe 11:14:51
大家好。 👋 🙂 RE: https://g0v-tw.slack.com/archives/C02G2SXKX/p1621954566360900?thread_ts=1621666134.154200&cid=C02G2SXKX

我是 @kevinliao 的大學朋友,我在 Zulip 開發行動應用程式。Zulip是個開源團隊協作工具,有獨特的主題線結構,更容易進行同步和非同步的專案討論。我們最近推出了 Zulip伺服器4.0: https://blog.zulip.com/2021/05/13/zulip-4-0-released/.

Zulip贊助了上百個開源社群,同意免費無限期贊助 Zulip Cloud 標準版(https://zulip.com/plans/),網址為https://g0v.zulipchat.com。也就是說,大家可以取得完整的訊息紀錄、每位使用者有高達10 GB的 檔案儲存空間等等。有興趣的話,我鼓勵大家上https://zulip.com/for/open-source/.,看看 Zulip 如何幫助許多著名的開源團隊工作。

Product Hunt 這個星期給我們留了一則很棒的評價,其中提到 Zulip 對繁體中文訊息搜尋的支援。我們正在與該使用者合作,試著使 Zulip 台灣中文的翻譯率超越74%,同時制定地方的翻譯指南。我們歡迎大家在 Zulip 的社群伺服器上幫忙 (https://chat.zulip.org/#narrow/stream/58-translation/topic/Taiwan.20Traditional.20Chinese.20Style.20Guide/near/1186591)!

我從Kevin身上知道了許多 g0v 為疫情和其他緊急問題所做的開源工作。我們希望建立一道 Slack 和 Zulip 間的橋梁,讓超過1萬名 g0v 的使用者,能在不需要改變使用 Slack 的習慣下,更容易試用 Zulip。

這道橋樑 (透過 Matterbridge 進行)

- 大家能試用 Zulip 非同步的協作,而不會遺漏任何 Slack 中的訊息。Kevin特別提到,vaxx.tw貢獻者在 #vaccine 頻道中的產出多到幾乎達到 Slack 可處理的上限了。Zulip 較適合處理這樣的工作量。
- 就算沒有人經常使用 Zulip,這道橋樑能透過自動產生 Slack 討論的可見、可搜尋之記錄,解決 Slack 免費版訊息限制的問題。因此,下表中包含 #general#covid19 這兩個頻道,以便保留頻道中重要的討論。必要的話,#Rand0m 頻道可用於測試這道橋樑。

深入來講,我們的構想是:

`#vaccine` (Slack) :left_right_arrow: `#vaccine > slack-bridge` (Zulip)
`#general` (Slack) :left_right_arrow: `#general > slack-bridge` (Zulip)
`#covid19` (Slack) :left_right_arrow: `#covid19 > slack-bridge` (Zulip)
`#rand0m` (Slack) :left_right_arrow: `#rand0m > slack-bridge` (Zulip)

比方說,大家在 Slack 中的 #vaccine 頻道上所發送的訊息將出現在 Zulip 中 #vaccine 頻道下的 slack-bridge 主題內。大家在 Zulip 中 #vaccine 頻道下的 slack-bridge 主題內所發送的訊息將出現於 Slack 中的 #vaccine 頻道上。

(在 Zulip 的設定中,必須選定頻道和主題,沒辦法連接一整個 Zulip 頻道,以因應 Slack 中沒有主題的功能。也就是說,舉例而言,所有在 Zulip 中 `#vaccine > Flow type-checking for vaxx.tw` 主題上的訊息將*不會*連到 Slack 上。)

大家有問題嗎? 😄
fly 11:33:47
@leo424y has joined the channel
fly 11:34:46
請問網址是 .org ? 嗎,我試了一下,似乎在 g0v.zulipchat.com
✔️ 1 🙏 1
kjcl 21:03:25
嗨大家, #vaccine 的坑主~ 我是想試一試看能不能把部分的通訊改換到 ZULIP,因為覺得不用擔心失去通訊紀錄而且覺得更適合開放模式的溝通。

@csbobbe 是我的大學學長也是 ZULIP 的一位職業工程師。我很高興他願意跳坑幫忙我們。希望這個 Bridge 的 Setup 會順利~

Zulip 開源 project 溝通方式是自己的一個 Zulip server. 上面有20,000多個參與者。他們現在正在開始翻譯台灣華語。如果有興趣的話可以去 https://chat.zulip.org/#narrow/stream/377-translation.2Fzh_tw 看一下

Zulip

Zulip Community

Welcome to the Zulip development and user community! | Join to get a quick Zulip demo, observe a Zulip community, offer feedback to the Zulip core team, or get involved in as a contributor. * Community conventions * Code of Conduct | Note that this server runs a bleeding-edge version of Zulip, so you may encounter bugs. Please report them!

我忘了加哪個 slack bot 進頻道可以被 archive 到這邊。不過我覺得試試 Zulip 會很有趣

https://g0v-slack-archive.g0v.ronny.tw/index/channel/C02G2SXKX
有考慮針對已有的 archive 基礎來增進嗎?

#vaccine channel archvie
https://g0v-slack-archive.g0v.ronny.tw/index/channel/C020EQ0R8TW
我想確認 在 https://g0v.zulipchat.org
可以看到他人的 email,這在 slack 也是ok的嗎?是不是 slack 也可以查得到

我截圖先以我自己的 email 為例,我目前是可以看到其他明顯尚未加入 zulipchat 的人員的暱稱與 email 清冊
Slack 應該查不到 Email。「可以看到其他明顯尚未加入 zulipchat 的人員的暱稱與 email 清冊」這樣嗎?可以看到我的嗎?(我沒加入
@pm5 看來一定程度上 zulip 是有把 nick 跟 email 關聯起來的.
在 web 版畫面正上方搜尋框中輸入 “pm5”,會直接帶出一個 `@gmail .com` 的 email
Who are Admins??? 😱
Plz Fisrt turn off this Instantly
@csbobbe that helps a bit but not quite fully answer our questions. Can you or @kevinliao tell us about the current status of g0v.zulipchat.com bridging? because from what I know, I haven't joined zulip yet, but my actual (although outdated as far as I can tell) Email address on g0v Slack (considered by me to be private information) is visible of zulip. That feels problematic to me.
Chris Bobbe 2021-05-27 09:40:15
@kevinliao has the "Owner" role, and he gave that same role to me. I would be happy to be removed from that role, as I said in my first post.
Chris Bobbe 2021-05-27 09:41:07
Your email would have been imported with the initial Slack import @kevinliao did years ago.
Apart from visibility, the issue to me seems to be that I haven't joined zulip yet, so how did it get information about me?
Chris Bobbe 2021-05-27 09:41:59
(I did not work for Zulip at that time, and I wasn't involved with the import.)
Ah I see. @kevinliao can you tell us more about it?
somehow my account is already roled “Owner” in Zulip … I guess this bit of info was also carried from Slack too.
Chris Bobbe 2021-05-27 09:44:14
The process would have been done when g0v.zulipchat.com was first set up, following an earlier version of this doc: https://zulip.com/help/import-from-slack
Hi, so the import comes from a Slack export that we did from the g0v slack. E-mail addresses were exported because the idea was someone who was on the g0v slack can come to Zulip, reset their account, put in their e-mail, and get access to an account with all of their old addresses. It's a way to make migration easier.

The e-mail address publicness was a bad default, and certainly not intentional. I'm very sorry!
Roles and account information are imported over as part of the full Slack export.
Chris Bobbe 2021-05-27 12:27:04
> The e-mail address publicness was a bad default
Kevin is right, this was a bad default in the Slack import process that was done years ago. When the Slack data is imported, it would be better if Zulip applied the same email-address visibility setting as Slack, without waiting for someone to change it manually. I apologize on behalf of the Zulip team. I've opened https://github.com/zulip/zulip/issues/18622 and announced the incident internally. And, as I said above, I changed the email-address visibility setting to "Nobody" immediately after I understood that it was desired.
Chris Bobbe 2021-05-27 12:34:59
The Slack export was done, years ago, by an admin on Slack who had access to everyone's email addresses. Please understand that the email addresses were exported for a legitimate purpose (so that Zulip users could "claim" their old messages, as Kevin described), and that the wrong visibility setting on Zulip's side was an accident that we hope to help people avoid in the future, with https://github.com/zulip/zulip/issues/18622.
Chris Bobbe 2021-05-27 13:10:22
The Matterbridge experiment would still be possible if g0v.zulipchat.com (with the years-old data from Slack) were deactivated and a new Zulip instance were created, if the admins would prefer that option.
👋 2

2021-05-27

pm5 08:41:58
matterbridge 還在試營運階段,所以雖然目標是讓各專案都可以用,但我不太確定協助設立 bridge 的前提是什麼。目前看起來,至少可以有這幾項

這個原則也可以適用於幫忙設 matterbridge 的前提: 1. 公開 2. 有紀錄可查 3. CoC 4. 符合 g0v 精神(「相容」是這個意思(對過去與未來相容)?)

chewei 09:08:32
@chewei has joined the channel
gugod 09:14:22
@gugod has joined the channel
chewei 09:19:13
有考慮針對已有的 archive 基礎來增進嗎?

#vaccine channel archvie
https://g0v-slack-archive.g0v.ronny.tw/index/channel/C020EQ0R8TW
ronnywang 09:22:38
@ronnywang has joined the channel
chewei 10:37:57
Image from iOS
Image from iOS
Chris Bobbe 12:27:04
> The e-mail address publicness was a bad default
Kevin is right, this was a bad default in the Slack import process that was done years ago. When the Slack data is imported, it would be better if Zulip applied the same email-address visibility setting as Slack, without waiting for someone to change it manually. I apologize on behalf of the Zulip team. I've opened https://github.com/zulip/zulip/issues/18622 and announced the incident internally. And, as I said above, I changed the email-address visibility setting to "Nobody" immediately after I understood that it was desired.
Chris Bobbe 12:34:59
The Slack export was done, years ago, by an admin on Slack who had access to everyone's email addresses. Please understand that the email addresses were exported for a legitimate purpose (so that Zulip users could "claim" their old messages, as Kevin described), and that the wrong visibility setting on Zulip's side was an accident that we hope to help people avoid in the future, with https://github.com/zulip/zulip/issues/18622.
1
chihao 16:10:10
Who’s data have been exported? Have you asked for consent? @csbobbe @kevinliao
I asked @ronnywang for a one-time export in 2018 and the export files were deleted from my machine afterwards. It was a hackathon project out of frustration with Slack and I did not think to ask for consent at the time. I did not realize the Slack export would include people's e-mail addresses and that was a mistake on my part.

I defer to the jothon team for advice. If they feel this was a misuse of data, the Zulip team will be happy to delete this instance and we can start a new Zulip instance without this data.
pm5 18:35:17
Yes, I think @ronnywang partly confirmed that, and I personally am willing to think that the data import was done for the best intentions.
pm5 18:37:22
It is, however, a data transfer without proper consent, at least from my point of view. I would personally like to have my data removed from zulip for the time being.
kjcl 18:38:38
Hi @pm5, conversation is happening in https://g0v.hackmd.io/KCnJ7hgbRke19j_-UfYsrQ?both and in #infras. One g0v participant being unhappy with this is more than enough for me. I will tell the Zulip team to delete this instance as soon as possible.

g0v.hackmd.io

Zulip 事件: Zulip Incident - HackMD

kjcl 18:39:04
I'm truly sorry for making this mistake.
pm5 18:40:34
This seems to me a separate issue from the bridge itself, so I'm glad that it is revealed and has brought up some discussions. I would suggest we bring this to #g0v-slack for further discussions, perhaps including to what extend we would like g0v slack admins to manage our data and establish a consensus on that.
In the incident report, the jothon team is working on additional permissions control for API keys. Would be interesting to hear from them.
lanf0n 19:04:22
@lanf0n has joined the channel
Chris Bobbe 19:59:06
After reading @gugod's message here, I identified @gugod as having the "owner" role on both Slack and Zulip. At 10:29AM Taiwan time, I sent @gugod this private message on Slack:

> @gugod, I see you're an "Owner" here in Slack and also on g0v.zulipchat.com. You always have the option to deactivate g0v.zulipchat.com; please see this doc for more details: https://zulip.com/help/deactivate-your-organization. A new org can be started with the same open-source sponsorship as that one if desired: https://zulip.com/for/open-source/.
>
> I would recommend confirming that the list of owners on Zulip is correct. I would be happy to be removed from my owner role, as I've mentioned. You can see the list of users, including those from the Slack import led by @kevinliao, years ago, here: https://g0v.zulipchat.com/#organization/user-list-admin, and sort by Role to see the owners at the top. This doc describes how Slack roles are mapped to Zulip roles in the current Slack import tool (though I haven't yet investigated to see if it has changed in the last few years): https://zulip.com/help/import-from-slack.
I work on the Zulip mobile apps, and I don't personally have database access to eventually confirm deletion of the data. My team members can do that, if an owner in the Zulip org sends an email to support@zulip.com.

I see that my own "owner" role in Zulip hasn't yet been removed. As I mentioned, Zulip owners in g0v.zulipchat.com can deactivate the org through the settings UI as described a doc. I haven't done that yet myself, in case people need access to the org to inform an incident report. As long as I have the "owner" role, my personal policy will be to deactivate the Zulip org using those steps, if I am asked to by at least one user in Slack with Slack's "owner" role. Are people comfortable with that?
Chris Bobbe 20:51:54
@kevinliao reports that g0v.zulipchat.com has been deactivated.

ST.one 21:07:37
@leftie.tw has joined the channel

2021-05-28

pinshan.yuan 02:46:19
@pinshan.yuan has joined the channel