建立公眾號的第三天,我發(fā)現(xiàn)了微信的一個秘密

9 評論 5234 瀏覽 2 收藏 14 分鐘

編輯導(dǎo)語:在微信關(guān)注的公眾號列表中,是按首字母排序的,所以可以直接根據(jù)首字母定位到公眾號所在的位置。然而,如果公眾號名字的第一個字是多音字,又會怎么排序呢?感興趣的小伙伴們一起來看一下吧。

為了記錄作為產(chǎn)品經(jīng)理學(xué)習(xí)成長的過程,我和柏林決定做一檔公眾號,希望能把我們感興趣的和深度思考的內(nèi)容都表達(dá)出來。

由于資歷尚淺,工作之余可能也沒辦法針對一個東西無限花費精力,只希望憑借有限的資源和能力產(chǎn)出更有深度的內(nèi)容,于是我們高調(diào)地把頻道名稱確定為了『淺入深出』,吹牛之余,也是希望我們自己可以由淺入深,未來能夠獨擋一面。

開會,畫餅,確定后續(xù)的內(nèi)容方向,討論品牌slogan,測試關(guān)注自動回復(fù),發(fā)出第一篇內(nèi)容,一切順順利利。

就在我們滿心歡喜,為踏出第一步而興奮不已之時,我們兩都發(fā)現(xiàn)了一個問題——咦?怎么……明明已經(jīng)關(guān)注了,但是公眾號列表里看不見『淺入深出』的大名?

難道是個人號不顯示?

觀察我自己劃水摸魚的號之后,發(fā)現(xiàn)明顯不是,也是重新啟用不久,發(fā)布內(nèi)容寥寥無幾,但公眾號明明白白顯示在關(guān)注列表之中。

那么『淺入深出』是怎么就不見了呢?

我們刷新刷新又刷新,又反復(fù)取消關(guān)注、重新關(guān)注了幾次,基本可以確定在關(guān)注列表中Q打頭的一列,實實在在就是不存在『淺入深出』。

但這不是說我們完全看不了我們的公眾號了,其實在搜索欄里,是可以通過關(guān)鍵字檢索出來『淺入深出』的,我們也可以順利看到之前發(fā)布的內(nèi)容,就是關(guān)注列表里啥也沒有,奇了怪了!

結(jié)合現(xiàn)在的狀況和我們的經(jīng)驗,我們梳理給到了以下一些猜想:

  1. 個人號不顯示
  2. 公眾號所有者不顯示
  3. 新建號需要審核,不會立馬向公眾批露
  4. 存有違規(guī)記錄,公眾號被隱藏
  5. 重啟賬號解凍后有緩沖期
  6. 微信顯示bug

對個人摸魚的號進(jìn)行觀察,并邀請其他人關(guān)注測試后,發(fā)現(xiàn)1、2兩種情況基本排除,對于后三種情況就要分情況討論了。

3:如果新建賬號需要審核,平臺應(yīng)該有相關(guān)通知或提醒,等待期是普遍情況網(wǎng)絡(luò)中應(yīng)該有相關(guān)信息。

然而實際檢索后并未得到任何公眾號建立審核相關(guān)信息,實際在復(fù)現(xiàn)操作的時候,我們也未發(fā)現(xiàn)任何相關(guān)遺漏提醒。

但至此并不能真?zhèn)危?strong>結(jié)合我們對審核機(jī)制的了解,決定針對3情況,給出24小時和72小時的節(jié)點,觀察是否有相關(guān)反饋。

4:『淺入深出』所屬賬號由柏林近期重啟,他以前弄過多個賬號進(jìn)行過各類騷操作,因而我十分懷疑其賬號有過違規(guī)行為導(dǎo)致賬號被降權(quán)或者隱藏。

然而一樣的,在網(wǎng)絡(luò)上并沒有找到任何相關(guān)處罰信息,對賬號歷史進(jìn)行溯源后也未發(fā)現(xiàn)任何違規(guī)記錄。

實際在對騰訊智能客戶反饋后,相關(guān)問題里只能獲得“公眾號無法被搜索”和“公眾號被凍結(jié)”的結(jié)果,卻沒有“公眾號被隱藏”或者“公眾號看不到”的任何相關(guān)信息。

基本4、5和3一樣,都可以算是排除的,但一樣都無法立刻證偽,也無相關(guān)信息去推測規(guī)則。

所以我們決定等待一段時間后根據(jù)情況是否要確定是情況6,并反饋給騰訊方面。

然而就在我們焦急并存在一點小得意:你瞧,咱上任第一天就發(fā)現(xiàn)了騰訊的bug,諸如此類的心情時……居然發(fā)生了一件離天下之大譜的事情,全盤推翻了我們上述所有猜想和推論。

『淺入深出』居然找著了!

在我對著一大串關(guān)注列表滑過來滑過去的時候,突然一個熟悉的頭像出現(xiàn)在了我的眼前,仔細(xì)觀瞧,沒錯,確實是我們的『淺入深出』!

看來審核通過了……這個想法還沒在我的腦海里完全浮現(xiàn),我就發(fā)現(xiàn)了不對勁的地方——為什么“淺”開頭的公眾號要放在“ J ”下面?!感情前兩天我們是壓根沒翻到?

我把這個事兒說給柏林后,我們一時忍不住嘴角抽搐,實在無法解釋。這是啥奇怪的機(jī)制么?還是什么更莫名其妙的bug?

丈二和尚摸不著頭腦。

在沉默了幾分鐘后,一個奇怪的想法浮上了我的心頭——“Q”、“J”……難不成,“淺”居然是個多音字?!

最終,百度百科給出了答案,毫無疑問,是我才疏學(xué)淺了。

“淺”確實是個多音字,發(fā)“qiǎn”這個音時,指代水不深和一些表示距離、時間、內(nèi)容等不深、不多的抽象含義;發(fā)“jiān”這個音時,是古時候形容水流聲的象聲詞,現(xiàn)在基本不用了。

所以『淺入深出』在“ J ”之下并不是什么bug,有很完整的底層邏輯,就是按照首字母排列。

倒是我們在觀察的時候不仔細(xì),進(jìn)行歸因的時候局限在常識、經(jīng)驗里面,并且未給到更廣泛、合理的猜測和驗證方案。如果這是個正式項目,我們可能就因為錯誤的驗證浪費了一些工作周期。

這是個警示,通常說的不要陷入慣性思維和先入為主,在這里我們犯了個遍,在給出猜想的時候也沒給到預(yù)留的空間,值得反……反思個p呀!

誰知道“淺”是個多音字??!就算知道,為什么多音字也用那個不常用的發(fā)音??!很奇怪啊好不好!

為此我們決定一探究竟,微信的中文多音字首字母排列到底是什么樣的?常見中文首字母排列是否是同樣做法?

結(jié)合對公眾號的一些觀察,我們確定了實驗的要求:

  • 挑選多音字開頭的公眾號關(guān)注,且要求開頭的多音字必須是非同字母異音。什么意思呢?就是得類似“qiǎn”和“jiān”這樣,而類似蚌埠的“bàng”和“bèng”就完全沒用。
  • 發(fā)音具有差異的同時,詞義也要有明顯差異。主要是我們想測一測發(fā)音、詞義和首字母排列的相關(guān)關(guān)系。
  • 篩選實際詞義和發(fā)音不同的多個公眾號關(guān)注測試。

對此我們粗略確定了幾個字——“淺”、“秘”、“重”、“樂”。

對“淺”、“秘”、“重”的測試很快就完成了,并成功讓我們一整嘴角抽抽,結(jié)果如下:

實際可以看出,微信的中文首字母排序不分詞義,很好理解,費力也沒那么討好。但這個排序?qū)嵲谟悬c讓我腦子疼:

  • “淺”這個字都取了“ J ”開頭,不是常用的qian的“Q”
  • “秘”這個字都取了秘魯?shù)摹癇”開頭,不是常用的秘密的“M”
  • “重”這個字都取了重復(fù)和重慶的“C”,而不是重要的“Z”,不過這個說不上哪一個更重要

可以見到,這個排列并不是完全按照常用的發(fā)音來選擇。

仔細(xì)觀察一下似乎所有選取發(fā)音的首字母,都較后一個未選擇的發(fā)音首字母更靠前,那應(yīng)該是多音字在選擇排列之前, 漢字轉(zhuǎn)換拼音時選擇對應(yīng)發(fā)音的邏輯,也是按首字母排列選擇更靠前的。

然后,在測試完最后一個“樂”字后我的心情又郁悶了……

如上圖所示,“樂”字居然選擇的是樂譜的“Y”,而不是更靠前的“L”!我……這……為什么??!tell me why!

是什么奇怪的策略嗎?比如說城市、姓氏發(fā)音優(yōu)先?好吧,這樣“秘”和“重”都可以說得通,但“淺”怎么解釋?就算查到了淺確實是個稀有姓氏,但是人家也發(fā)音“qiǎn”啊喂。

至此可能就需要轉(zhuǎn)化一下想法了,按照奧卡姆剃刀原理——“如無必要,勿增實體”,把推測簡化一下,或許首字母排列并不是什么重要內(nèi)容,產(chǎn)品和程序在做的時候并不會特別處理。

那么實際在應(yīng)用的開發(fā)中,對相關(guān)規(guī)則的處理可能就是產(chǎn)品提出列表按首字母排序,程序使用已經(jīng)封裝好的庫快速上線。

如此一來只要找到相關(guān)的輪子這個謎題就可以得到解決——即使我們可能并沒有辦法明白為什么第一個處理相關(guān)需求的產(chǎn)品和開發(fā)人員要這樣處理,但他們的工作確實導(dǎo)致了現(xiàn)在的現(xiàn)象。

通過了解相關(guān)開發(fā)情況,這個需求往更深的底層邏輯是需要把漢字轉(zhuǎn)換成拼音,再截取首字母,再進(jìn)一步排序。

一些將漢字轉(zhuǎn)換成拼音的程序本質(zhì)是比對字符,然后再選取字符對應(yīng)的拼音字符,這里的對應(yīng)關(guān)系是靠一張?zhí)崆皩懞玫淖謳齑_定的。

如無特殊情況,一般來說在選擇字符對應(yīng)發(fā)音的時候,程序就直接選擇默認(rèn)靠前的發(fā)音。

實際工作中,不管是為了減少工作量,還是列表的瀏覽觀感,大部分首字母排序都不考慮實意和發(fā)音,按字符默認(rèn)選擇。

然而我在github上查閱了java和js常用庫的字庫后,發(fā)現(xiàn)其結(jié)果又和微信的順序不一樣了。如下圖,不管是java還是js相關(guān)字庫大部分默認(rèn)的拼音還是最常用的……

到最后我也沒找到類似的字庫可以完整解釋微信公眾號排序的現(xiàn)象。只能推測微信用的字庫可能有點問題,或者按照網(wǎng)絡(luò)中提及的更先進(jìn)的做法,微信在漢字轉(zhuǎn)換拼音的過程中側(cè)重向地名、人名等,具體程序的規(guī)則就不得而知了。

不過不管怎么樣,這個“淺”放在這很難受啊喂!也沒啥常用的人名、地名吧!

最后再補充一個有限范圍內(nèi)容的中文字母排序規(guī)則的規(guī)范案例。

在支付寶火車票購買中的目的地篩選,也是按名稱首字母排序,但并沒有多音字錯位的問題。實際觀察可以發(fā)現(xiàn)所有中文城市名旁都有英文代號簡寫,其首字母就是城市首字母的縮寫,在底層實現(xiàn)的過程中大概率是沒有再使用漢字轉(zhuǎn)拼音的操作,而直接利用代號進(jìn)行排序,自定義了規(guī)范的對應(yīng)關(guān)系。

最后~歡迎關(guān)注我們的公眾號,見證兩個產(chǎn)品小白的成長。

 

本文由@叨叨石 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載。

題圖來自Unsplash,基于 CC0 協(xié)議。

更多精彩內(nèi)容,請關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號或下載App
評論
評論請登錄
  1. 哈哈哈哈哈哈哈作者好可愛,“可是qian的毒藥也很常見啊喂”,感覺發(fā)現(xiàn)了微信的一個是bug又不是bug的奇妙地方

    來自廣東 回復(fù)
    1. 我猜你想說 讀音 哈哈哈

      來自湖北 回復(fù)
  2. 還真沒想過這個多音字問題!又發(fā)現(xiàn)一個小細(xì)節(jié)哈哈

    回復(fù)
  3. 這小細(xì)節(jié) ~ 都被樓主挖這么深

    來自湖北 回復(fù)
  4. 這兒的文章標(biāo)題也開始卷了嗎(*?????)

    回復(fù)
    1. 哈哈哈,本來是公眾號的標(biāo)題,沒想到人人編輯給通過了(給他加雞腿)

      來自湖北 回復(fù)
  5. 哈哈哈居然發(fā)現(xiàn)了這么一個小細(xì)節(jié),又漲知識了

    來自貴州 回復(fù)
  6. 上次給自己的公眾號起名字想了一天一夜,最后起了個英文名,哭了

    來自湖北 回復(fù)
    1. 好事,不會出現(xiàn)首字母問題:)

      來自湖北 回復(fù)