• <strike id="fdgpu"><input id="fdgpu"></input></strike>
    <label id="fdgpu"></label>
    <s id="fdgpu"><code id="fdgpu"></code></s>

  • <label id="fdgpu"></label>
  • <span id="fdgpu"><u id="fdgpu"></u></span>

    <s id="fdgpu"><sub id="fdgpu"></sub></s>
    您當前的位置是:  首頁(yè) > 新聞 > 文章精選 >
     首頁(yè) > 新聞 > 文章精選 >

    開(kāi)源路上

    2017-08-07 14:01:50   作者:Seven Du   來(lái)源:FreeSWITCH中文社區   評論:0  點(diǎn)擊:


      
      這篇文章是在春節前寫(xiě)的。
      一直癢癢想寫(xiě)點(diǎn)什么,但又無(wú)從下筆。今天,在公眾號上發(fā)了一篇文章《飲水思源,新年大禮》,得到了不少贊賞,便又覺(jué)得或許還是應該寫(xiě)一寫(xiě)。大家平常喜歡看到的文章都是比較有深度和高度的,我沒(méi)有什么輝煌的背景和經(jīng)歷,自然寫(xiě)不了高大上的東西。不過(guò),從小處寫(xiě)寫(xiě)我自身的經(jīng)歷和思考,或許也有意義吧。
      我是在高中畢業(yè)那年暑假開(kāi)始接觸計算機的,雖然實(shí)際上只是一個(gè)小霸王的紙質(zhì)鍵盤(pán)鍵位圖。上大學(xué)后,我在學(xué)校機房里用到的第一臺電腦是286,還買(mǎi)過(guò)5寸的軟盤(pán),容量是360KB。雖然我沒(méi)能考取心儀的計算機系,但也不妨礙我到圖書(shū)館借書(shū)學(xué)習,其實(shí)也沒(méi)學(xué)到什么,最開(kāi)始就是玩各種DOS命令,PCTOOLS和ARJ。大一暑假我自學(xué)了C語(yǔ)言(確切的說(shuō)是把書(shū)看了好幾遍從來(lái)沒(méi)有上機),那時(shí)候還沒(méi)接觸互聯(lián)網(wǎng)。
      我學(xué)習Linux是源于1999年的一則《參考消息》,講了一個(gè)芬蘭的小伙子寫(xiě)了一個(gè)操作系統云云。我便斥巨資70元(至少對于當時(shí)的我來(lái)說(shuō),其實(shí)70元買(mǎi)本書(shū)現在還不算便宜)買(mǎi)了一本《Linux實(shí)用大全》(陳向陽(yáng)、方漢),從此了解了自由軟件,知道了Rechard Stallman。但那時(shí)虛擬機還沒(méi)這么發(fā)達,我又沒(méi)有自己的電腦,經(jīng)常是裝在別人電腦上隔幾天就被刪除的情況下學(xué)習各種命令,以及X(那時(shí)網(wǎng)卡兼容性很差的,基本只能顯示256色,640x480、800x600或最高1024x768)。
      畢業(yè)后,很偶然的機會(huì )我進(jìn)入了煙臺電信(在我們畢業(yè)那年之前電信部門(mén)基本只招郵電院校的學(xué)生),然后我可以折騰各種各樣的計算機。雖然破,便能用128K的ISDN上網(wǎng),感覺(jué)已經(jīng)很爽了。那時(shí)候開(kāi)始用Google,但從那時(shí)起,Google就被封過(guò),原因可能是搜索某關(guān)鍵詞出來(lái)的結果是關(guān)鍵詞是大壞蛋。
      后來(lái)我也攢了自己的電腦,系統當然是Linux。但當時(shí),我主要的工作就是在不斷地解決如何在Linux上完美支持中文(實(shí)際上永遠不可能完美,UTF-8一統天下還是N年后的事情),如何支持QQ、如何BT下載,如果裝Linux不支持的軟件,使用Wine模擬器等,但幾乎從來(lái)沒(méi)有真正用它來(lái)干過(guò)正事。
      當然在單位里我還是干了許多事情的。我主要負責程控交換機維護,寫(xiě)代碼只是業(yè)余愛(ài)好。我寫(xiě)了好多腳本和程序使命令執行和日志分析自動(dòng)化。我還寫(xiě)了網(wǎng)管值班系統,真正做到了值班系統的電子化和自動(dòng)化。由于工作中的絕大部分軟件只能在Windows下執行,所以,基本上我是在Windows上Vim SSH到遠程的Linux上開(kāi)發(fā)。我的技術(shù)棧是C、PHP、和PostgreSQL。我的程序都能運行在Linux以及Tru64 UNIX上。
      最值得欣慰的是我基于CakePHP開(kāi)發(fā)的一款投票系統,公司一直使用至今,到今年正好是十年了。PHP不愧是世界上最好的語(yǔ)言,PHP5十年沒(méi)有升級,那時(shí)候寫(xiě)的代碼,到現在看還不算過(guò)時(shí)。
      然而雖然我使用過(guò)很多開(kāi)源軟件,也編譯過(guò)全套LFS,但始終沒(méi)看過(guò)什么源代碼,除了書(shū)上的(《操作系統:設計與實(shí)現》,上下兩冊,下冊整本是代碼 ?? ,操作系統是Minux)。我經(jīng)常上的論壇是ChinaUnix和LinuxEden,但是基本只是潛水。
      可是我很熱愛(ài)開(kāi)源軟件,也希望能做點(diǎn)什么。我曾經(jīng)嘗試為L(cháng)inuxFocus網(wǎng)站翻譯過(guò)一些文章,也在自己的博客上翻譯過(guò)SQLite的部分文檔。其它也沒(méi)有什么了。不過(guò),這些工作對我還是有些幫助的,我至少能看英文的文檔,中文表達也有所進(jìn)步。
      有一年我在北京小住,投了一些簡(jiǎn)歷。當時(shí)沒(méi)有離職的想法,只是想試試自己能值多少錢(qián)。當然,我投的心儀的公司如Google、IBM之類(lèi)的都石沉大海,后來(lái)是一家小的創(chuàng )業(yè)公司給了我面試機會(huì )。老板都是外國人,純英文的面試我竟然都能聽(tīng)懂(多看原聲大片也是有好處的),雖然口語(yǔ)不怎么樣,但2個(gè)小時(shí)下來(lái),我也沒(méi)被難住。后來(lái),就真進(jìn)了這家公司。
      當年CSDN舉辦了Web 2.0大會(huì )。記得門(mén)票好像是1000多塊,好貴,但機不可失,我毅然自己買(mǎi)票參加了。大開(kāi)眼界。來(lái)自阿里巴巴、騰迅等的技術(shù)大俠們,看樣子比我年輕很多,都站在臺上滔滔不絕了。我就下定決心,拋棄『鐵飯碗』辭職到了北京。那一年,是北京藍天最多的一年。
      我最開(kāi)心的事就是上班的第一天我就把我的Windows電腦換成Linux,從此再也沒(méi)有換回來(lái)過(guò)。當時(shí)我的職位是系統管理員。我們是一個(gè)Rails團隊,那年頭也算是國內最早搞Rails的團隊之一了。我雖然出身草莽,但我學(xué)東西快。做運維只是我的工作而已,我還是更喜歡開(kāi)發(fā),后來(lái),整個(gè)團隊里,除了老板以外,就我算是全棧工程師了(當年好像還沒(méi)聽(tīng)說(shuō)過(guò)這個(gè)名字)。什么棧呢?Linux、C、Rails、Erlang、Lua、Javascript、Flex、HTML/Javascript,后來(lái)公司的第一個(gè)iOS程序也是我寫(xiě)的(基于Titanium)。
      我開(kāi)始可以名正言順地研究各種開(kāi)源軟件,當然,大多是停留在如何部署和優(yōu)化上。后來(lái),公司一直想招一個(gè)做FreeSWITCH開(kāi)發(fā)的工程師(VoIP軟交換軟件)但一直招不到(現在也一樣招不到,太少),我就說(shuō)要不我上唄,然后我就上了,然后,就結下了我與FreeSWITCH的不解之緣。
      FreeSWITCH是開(kāi)源的,采用MPL1.1許可證。當然,這跟Stallman大叔所提倡的自由軟件還有很大不同。Stallman大叔基本上只認GPL。說(shuō)到Stallman,他來(lái)清華大學(xué)演講時(shí)我還見(jiàn)過(guò)(遺憾沒(méi)有拍照)也有親筆簽名的書(shū)。他講的東西其實(shí)我都知道,我還提問(wèn)過(guò)HURD,不過(guò),說(shuō)到這些就有些遠了。總之,我很佩服他。
      FreeSWITCH不像Linux、MySQL那樣成熟,當時(shí)的版本還不到1.0,文檔也少。所以,那時(shí)候我基本上是一邊學(xué),一邊練,一邊幫忙寫(xiě)寫(xiě)Wiki什么的。我加入了郵件列表,基本上每封郵件我都看。用著(zhù)用著(zhù)就發(fā)現了Bug,然后慢慢的學(xué)著(zhù)報Bug。很多次,我們報一Bug,睡一覺(jué),Bug就修好了(主要開(kāi)發(fā)人員都在美國)。有一次,我連續報了幾個(gè)Bug和新特性需求,以至于FreeSWITCH的作者Anthony跟我說(shuō),我可以停下來(lái)休息一會(huì )了嗎?我看了看我的要求基本上都已實(shí)現了,我就說(shuō),可以了。
      就這樣,慢慢地,學(xué)會(huì )了跟這些真正的開(kāi)發(fā)者們交流。交流中還發(fā)生過(guò)一次有意思的事情。FreeSWITCH團隊中有一個(gè)人叫Brian,我每次寫(xiě)郵件都寫(xiě)『Hi,Brain…』,有一次被我們老板看見(jiàn)了,就問(wèn)我,這個(gè)人叫『腦子』嗎?我說(shuō)是啊,你看。他看了半天說(shuō),不對,不對,你看,人家明明叫布萊恩……
      FreeSWITCH的核心開(kāi)發(fā)者都是上一代的程序員,是一些真正的黑客。他們都用Emasc寫(xiě)程序,用郵件列表和IRC交流,技術(shù)棧基本上就是Perl和C,也不想著(zhù)再學(xué)什么新的語(yǔ)言。但有機會(huì )跟他們聊天,才感覺(jué)真正走近了程序員。
      不知從什么時(shí)候起,我想起了其實(shí)我也會(huì )C,就嘗試提一些補丁,自己寫(xiě)些模塊什么的。有些補丁竟然被官方采納了。從那時(shí)起,我基本上每天都會(huì )看FreeSWITCH的源代碼,嘗試理解每一次提交。一到到現在。
      中國人是善于學(xué)習的。幾乎不管有個(gè)什么網(wǎng)站,必定有個(gè)什么什么中國。FreeSWITCH沒(méi)有,因此我就建了一個(gè),所以,我就成了FreeSWITCH中文站的站長(cháng)。
      我使用Google Groups做郵件列表,一個(gè)網(wǎng)友建了QQ群(就是群主大熊),也做了和簡(jiǎn)單的中文站靜態(tài)頁(yè)面,開(kāi)始寫(xiě)些博客。但很不幸,Google Groups很快就不能用了。其實(shí)我感覺(jué)我肯定被Curse了。我們公司開(kāi)始用Google Site、iGoogle、Google Reader、Gmail、后來(lái)我們用Twitter、Facebook,后來(lái)這些網(wǎng)站就不存在了。這是眾所周知的事情,就不多說(shuō)了,總之,Google Groups就一直沒(méi)有人氣,而在國內要做一個(gè)BBS需要至少100萬(wàn)的注冊資本,我就一直沒(méi)有做。后來(lái)的時(shí)候在香港架了一臺,但這個(gè)時(shí)代已經(jīng)不是BBS的時(shí)代了,因而,人氣并不好。
      FreeSWITCH有一個(gè)一年一度的開(kāi)發(fā)者大會(huì )叫ClueCon,每年在芝加哥舉行,我們老板有去講過(guò),有一年,我也申請去,公司也幫忙辦了簽證,但是,公司后來(lái)發(fā)生了一些變化,我就自費去參加了。話(huà)說(shuō)當時(shí)我在FreeSWITCH社區也算跟他們混得熟了,去了也不能白去,便自己申請了一個(gè)10分鐘的Lighten演講,雖然英語(yǔ)口語(yǔ)不怎么樣,但照著(zhù)幻燈片基本念下來(lái)了。后來(lái),我就每年都去,也每年都有正式的演講了。當然,后來(lái)才發(fā)現,這是一個(gè)國際性會(huì )議,里面很多外國人,英語(yǔ)講得還不如我好。
      上面說(shuō)到公司后來(lái)發(fā)生了變化,后面就被離職了。接著(zhù)就是被創(chuàng )業(yè)。最開(kāi)始想做呼叫中心,結果后來(lái)誤打誤撞做了指揮調度方向。但不管做什么,其實(shí)都不好做。做互聯(lián)網(wǎng)久了,回頭再做企業(yè)軟件,不得不適配很低版本的瀏覽器、Windows甚至還用ActiveX這么老套的軟件的時(shí)候,我感覺(jué)到很不適應。因此,我就一直都沒(méi)有做好。而且,在甲方不停地拖欠項目款的時(shí)候,我心情越來(lái)越不好。我們曾想借助幾個(gè)項目做成一款優(yōu)秀的系統,但結果是我們做了好幾個(gè)系統彼此還不兼容,都差20%沒(méi)有完成但完成這20%卻需要花80%的精力。所以,最終,我們幾乎什么都沒(méi)做成。
      我們開(kāi)始嘗試做FreeSWITCH培訓,第一次招生好像只有4個(gè)人報名,而我們的目標是至少8個(gè)人才能Cover住成本,所以取消了。現在看起來(lái)非常后悔,因為,那畢竟是一屆培訓班,賠點(diǎn)錢(qián)也應該是要做的。
      我們開(kāi)始做社區,學(xué)著(zhù)ClueCon搞了一個(gè)FreeSWITCH技術(shù)開(kāi)發(fā)者沙龍,結果每年一屆就做起來(lái)了。最初兩年都是車(chē)庫咖啡,后來(lái)又轉到了好一點(diǎn)的酒店。隨著(zhù)我對FreeSWITCH的大力宣傳與鼓吹,我們的培訓班也慢慢有了人氣,到現在,有十幾個(gè)班次了,每年不定期在北京、上海、深圳、南京等地舉辦。我們儼然成了一個(gè)培訓公司 :D。
      線(xiàn)下培訓的一個(gè)問(wèn)題就是選址,不管我們在哪兒培訓,總有人說(shuō)希望到他們的城市去。但不管怎么說(shuō),我們基本還是集中在北京、上海這樣交通方便的大城市。線(xiàn)上培訓現在都這么方便了,為什么還只做線(xiàn)下培訓呢?我們的想法是這樣的:其實(shí),三天的培訓就是累死我也講不了多少東西,大部分內容還是點(diǎn)到為止,授人以漁。給大家一個(gè)線(xiàn)下交流的機會(huì )。另外,來(lái)參加培訓的一般都是公司的技術(shù)骨干,如果不是專(zhuān)門(mén)拿出時(shí)間來(lái)線(xiàn)下培訓,他們在公司里基本上永遠都有干不完的活,能有多少時(shí)間專(zhuān)注于培訓課程?想一想,我三天每天講8小時(shí)的內容,如果是線(xiàn)下看視頻的話(huà),需要多長(cháng)時(shí)間才能看完?
      當然,2017年我們會(huì )嘗試一些線(xiàn)上的玩法,比如3-5分鐘的短視頻解決一個(gè)很小的問(wèn)題等。我們的培訓采用類(lèi)似飛機票的定價(jià)方式,按報名早晚從7、8、9折一直到全價(jià),早報名優(yōu)惠幅度大,其實(shí)對我們來(lái)說(shuō)更重要的是我們該準備一個(gè)多大的教室,關(guān)于這一點(diǎn),做過(guò)活動(dòng)的人都知道,我們也是一點(diǎn)一點(diǎn)的學(xué)來(lái)的。
      在中國做社區很關(guān)鍵的一環(huán)是QQ群。我們很早就有了QQ群。我們管理比較嚴,因此群里基本沒(méi)有胡鬧的。多年來(lái)我在群里跟大家說(shuō)的最多的話(huà)就是《提問(wèn)的智慧》。因為,大多數人都沒(méi)法問(wèn)一個(gè)好問(wèn)題。簡(jiǎn)單舉幾個(gè)例子:
      Q:有人在嗎?
      A:群里有問(wèn)題直接問(wèn)。
      Q:我裝了FreeSWITCH,打不了電話(huà)怎么辦?
      A:我也不知道。:( 你到至少把現象說(shuō)清楚啊。
      Q:FreeSWITCH崩潰了,有人遇到嗎?
      A:廢話(huà),我的FreeSWITCH幾乎天天崩潰(在這些年里,光測試我不下打了幾萬(wàn)的電話(huà),崩潰也有幾千次了)。
      上面的問(wèn)題是根本無(wú)法回答。當然,也有些人提供一些簡(jiǎn)單的信息,但是,我需要至少知道以下信息:
      你用的什么操作系統?XP?Win7還是Win10?
      FreeSWITCH是什么版本?FreeSWITCH都十年了,你讓我猜?
      什么現象?至少描述一下吧?
      在默認的FreeSWITCH配置上,你都做過(guò)哪些改動(dòng)?
      為了解決這個(gè)問(wèn)題,你都做過(guò)哪些努力?
      你有沒(méi)有收集相關(guān)的日志?
      好多人根本沒(méi)有意識到世界有多大,他以為他用Windows,別人也在用Windows(Windows現在也有N個(gè)版本了),他提一個(gè)問(wèn)題,回答他問(wèn)題的人就站在他身后能看到他當時(shí)的遇到的一切一切。
      當然,有人也很努力,寫(xiě)了很多,但是,通篇沒(méi)有一個(gè)問(wèn)號!!!
      說(shuō)實(shí)話(huà),雖然開(kāi)源社區很熱鬧,但做開(kāi)源是很孤獨的。我花了大把時(shí)間在社區里,每一個(gè)問(wèn)題都想回答,可是,就是插不上嘴。
      實(shí)際上,即使是這樣,很多時(shí)候大家提供一點(diǎn)點(diǎn)信息我就知道他是怎么回事,我遇到過(guò)的場(chǎng)景實(shí)在是太多了。但是,如果他不能好好描述他們的問(wèn)題,我一般是不會(huì )回答的。我會(huì )告訴他怎么看新手指南,怎么提一個(gè)好問(wèn)題,等到他終于把問(wèn)題問(wèn)到點(diǎn)子上的時(shí)候,我告訴他今天我屬于他的時(shí)間片用完了,我還有更多其它的事情要做。如果還想知道答案,買(mǎi)商業(yè)支持吧。
      是的,很多人一上來(lái)就想讓我回答他的問(wèn)題,一上來(lái)就私聊。我問(wèn)他為什么不在群里問(wèn),他說(shuō)怕打擾別人。我就問(wèn)他,你不怕打擾我嗎?
      開(kāi)源雖然是個(gè)半公益的事情,但是,我總不能把我的時(shí)間花在一對一技術(shù)指導上。如果一個(gè)問(wèn)題,我在群里回答了,那么,群里所有人都能從這個(gè)問(wèn)題中學(xué)到知識,但是,我沒(méi)有義務(wù)只回答其中一個(gè)人。所以我一般告訴他們,私聊是收費的。是的,這就是開(kāi)源社區的運行規則:如果你能公開(kāi)的討論問(wèn)題,那大家都公開(kāi),共同學(xué)習進(jìn)步,活躍社區。但如果你是為了一己私利想得到保姆式的指導,那就交點(diǎn)錢(qián)唄。
      其實(shí)有時(shí)候心情好的時(shí)候私聊我也是回答的。只是,有些更可恨的情況,有些人一上來(lái)就讓你回答問(wèn)題,一點(diǎn)客氣話(huà)都沒(méi)有,好像你是欠他的。我們從小學(xué)習講文明講禮貌,最不計,難道不知道自報家門(mén)嗎,我幫了也至少應該知道幫的是誰(shuí)吧?
      還有人跟我說(shuō),他參與的別的社區,大家都非常熱情友好,有問(wèn)必答,怎么我就那么多毛病?我只好客氣的告訴他,誰(shuí)家好你可以去誰(shuí)家啊,反正我家私聊是收錢(qián)的。
      其實(shí)收錢(qián)不是目的,憑這個(gè)也根本發(fā)不了財,只是,我想培養一種態(tài)度和習慣。如果一個(gè)人從來(lái)在社區里沒(méi)有做對社區有意義的事情,就苛求別人免費熱心回答你的問(wèn)題,這是不可取的。那如果我真遇到一個(gè)緊急的問(wèn)題怎么辦呢?
      有錢(qián)能使鬼推磨啊。
      多年來(lái),我一直堅持一種理念——知識是有價(jià)值的。如果FreeSWITCH對你有用,那就應該加入FreeSWITCH社區,想想自己能幫社區做點(diǎn)什么。這樣,等你有困難的時(shí)候,自然也會(huì )有人幫你。這些幫助并不一定是錢(qián)或代碼,文檔,組織活動(dòng),甚至幫助社區維護秩序都需要有人來(lái)做,看你喜歡做什么。如果你沒(méi)有時(shí)間做這些事情,當然也可以花點(diǎn)錢(qián)來(lái)資助別人來(lái)做這件事。如果你確實(shí)是個(gè)新人,卻又遇到緊急的問(wèn)題,那么多花點(diǎn)錢(qián)找有經(jīng)驗的人解決問(wèn)題不是最直接的方式嗎?
      其實(shí)我一直想做成一個(gè)FreeSWITCH保險公司。所有FreeSWITCH用戶(hù),平時(shí)交點(diǎn)保險費,那么,我們就可以培養更多的專(zhuān)職FreeSWITCH技術(shù)人員,當你有困難的時(shí)候幫助你。當然如果你遇到緊急情況又沒(méi)有保險,多花點(diǎn)錢(qián)我們也會(huì )幫助你。
      當然,知識的定價(jià)是很難的。但無(wú)論如何,我們還是找到了一個(gè)讓大家容易理解的收費方式:掛號費。
      所有來(lái)咨詢(xún)的客戶(hù)我們都收一個(gè)類(lèi)似醫院的掛號費(最初是1024元,現在漲到了1500)。只有掛號了我才幫你診斷(需求分析),診斷完成后再決定治療方案,需要理一步檢查或者住院再另外收費。
      進(jìn)一步檢查按什么標準收費呢?其實(shí)沒(méi)有標準,基本上是按心情,然后再按心情價(jià)格折算成用戶(hù)想要的工時(shí)成本(用戶(hù)需要一個(gè)價(jià)格體系去向老板匯報申請預算……)。為什么說(shuō)沒(méi)有標準呢,因為,一般用戶(hù)希望我們按工時(shí)報價(jià),但是,同樣是一小時(shí)的工作,我們在社區里服務(wù)是免費的,對一些小的公司也發(fā)揮不了多大作用,對大公司起和作用就會(huì )很大。比如我們有一個(gè)客戶(hù)公司由于采用了FreeSWITCH光維保費用比起以前的商業(yè)軟件一年就省下上億的成本。所以,報價(jià)的標準其實(shí)不是我要花多少時(shí)間,關(guān)鍵是我們是否能幫客戶(hù)掙到錢(qián)。
      我們這種策略實(shí)行了,效果還不錯。成功的擋住了 無(wú)數的那些根本不想交錢(qián)的人(或者是他的業(yè)務(wù)模式根本沒(méi)法掙到錢(qián)的人)。或許也犧牲了好多潛在客戶(hù),但是,我們更愿意集中精力給愿意花錢(qián)的人做更好的服務(wù),而不是為了獲取更多的客戶(hù)。
      當然,也有客戶(hù)會(huì )問(wèn),我們還不知道你是否能給我們提供服務(wù),就收錢(qián)?我們就耐心地告訴他們,我們已經(jīng)盡最大努力做了合情合理的解釋?zhuān)l(shuí)去醫院不是先掛號?更進(jìn)一步的解釋是:你可以去花一些時(shí)間研究和調查,我們的背景,以及我們是否能夠幫到你,但是,如果我們能直接收個(gè)掛號費就省去了你去調查研究的錢(qián),這不也是錢(qián)嗎?甚至,如果我們直接告訴你,這事我們不能做,你該去找誰(shuí),或者這個(gè)事不適合用FreeSWITCH做,推薦你用其它的解決方案,防止你在FreeSWITCH一條道上走到黑,節省了時(shí)間和更多潛在的損失,那這掛號費值不值呢?
      當然,教育客戶(hù)也是有成本的。但這是我們的信念。
      我們也遇到一些大公司,由于公司的流程不能采用掛號費的規則,我們也會(huì )變通,但大多數情況下,我們不相信忽悠,一般從小項目做起。從我們的經(jīng)驗看,越是大的項目,賠得越多。既使工程款能全額到賬,也會(huì )拖上兩三年,我們體量小,跟大公司耗不起。
      說(shuō)著(zhù)社區,就想到扯到商業(yè)支持去了。其實(shí),這兩點(diǎn)也是分不開(kāi)的,開(kāi)源也是一種商業(yè)模式。我在演講中曾比喻開(kāi)源其實(shí)就是博弈論里的智豬博弈。比如對Linux而言,IBM、Google、甚至微軟都算是大豬,我們就算小豬跟在后面不勞而獲。雖然像FreeSWITCH之類(lèi)的小眾軟件做開(kāi)源比較難,但是,至少我們公司到現在是活下來(lái)了,我們也不用適配各種潛規則,而是制定我們想要的規則。 其實(shí)我很佩服老羅說(shuō)的那句話(huà):“通過(guò)實(shí)現理想讓人相信實(shí)現理想是可能的……即使是在中國”。
      做開(kāi)源是孤獨的。但是,想到自己的代碼被全世界的人在7x24小時(shí)的使用,也還是很欣慰的。而且,總會(huì )有人欣賞你,告訴你你幫上他了。也有人會(huì )發(fā)紅包,有人會(huì )買(mǎi)一些技術(shù)咨詢(xún)服務(wù)。
      大約幾年前,由于表現好,我得到了FreeSWITCH核心代碼庫的提交權限,后來(lái),就把自己幾年的有用代碼都開(kāi)源了,FreeSWITCH 1.6里面的視頻部分最初基本都是我寫(xiě)的。那年的ClueCon,我也終于跟所有的FreeSWITCH核心開(kāi)發(fā)者,站在了同一個(gè)舞臺上。
      寫(xiě)代碼是很辛苦的,我原先其實(shí)沒(méi)什么做視頻開(kāi)發(fā)的經(jīng)驗,只是一點(diǎn)點(diǎn)學(xué),一點(diǎn)點(diǎn)試,不停地Crash,不停地重啟……
      既然開(kāi)源也算商業(yè)模式,那么寫(xiě)代碼就算是投資吧。然而,這個(gè)投資回報可不怎么高,大多數時(shí)候大家根本不會(huì )為了開(kāi)源代碼付費,而是,會(huì )問(wèn)你,你們有沒(méi)有不開(kāi)源的部分?賣(mài)多少錢(qián)?
      說(shuō)到這里我們得說(shuō)說(shuō)大家為什么要用開(kāi)源。開(kāi)源并不意味著(zhù)免費,有時(shí)候,甚至會(huì )比你買(mǎi)商業(yè)的系統貴。所以,在我所咨詢(xún)過(guò)的客戶(hù)中,我都強調要爭取更多的開(kāi)源預算。因為,不管什么事情,如果沒(méi)有足夠的預算,最后一定會(huì )失敗。好多人都覺(jué)得FreeSWITCH是免費的,然后搭起來(lái)就可以賣(mài)錢(qián)了,可玩到最后,發(fā)現坑越來(lái)越多,最后還是來(lái)找到我們支持。我們就會(huì )認真地幫他們分析哪些地方走了彎路。當然,我們這兒也并不一定不是彎路,但,至少,我比大多數人更了解FreeSWITCH能做什么,能做到什么程序,至于商業(yè)模式是否成功,那還是得客戶(hù)自己掂量。至于那些問(wèn)我們要不開(kāi)源的部分代碼的用戶(hù),腦子里的水一定很多。開(kāi)源有開(kāi)源的好處,如果我們單獨給你維護一個(gè)不開(kāi)源的分支,或者僅僅是寫(xiě)一個(gè)不開(kāi)源的模塊,你就失去了社區的支持,所有的測試都得自己做、Bug都得自己修。甚至,即使你能做到,你怎么同步上游的代碼嗎?如果你沒(méi)有BAT這樣的團隊,你準備好預算了嗎?
      值得一提的是,上面說(shuō)到的『坑』真不是我們故意挖的。如果你遇到『坑』,那恭喜你,你已經(jīng)是深度用戶(hù)了。想一想,你很少遇到Linux、MySQL的『坑』,卻遇到了很多關(guān)于FreeSWITCH的,是FreeSWITCH不如它們穩定嗎?誠然,有那么一點(diǎn)點(diǎn),但是,更多的,是你沒(méi)有用到MySQL那么深入。不信,你可以問(wèn)問(wèn)BAT的工程師,他們有沒(méi)有遇到。
      我知道BAT中也有些團隊在用FreeSWITCH,他們甚至打了很多補丁,也維護著(zhù)自己的版本。但到目前為止,給FreeSWITCH提交補丁的中國人還是寥寥,在核心團隊中擁有核心代碼提交權限的也只有我一個(gè)中國人。開(kāi)源,是一個(gè)生態(tài),希望未來(lái)有更多的人參與到開(kāi)源事業(yè)中來(lái)。
      有一年FreeSWITCH技術(shù)沙龍的時(shí)候,我把我的博客整理了一版,印了一本小冊子,叫《FreeSWITCH:VoIP實(shí)戰》還賣(mài)了不少。后來(lái),這本書(shū)就正式出版了,書(shū)名改為《FreeSWITCH權威指南》。有點(diǎn)標題黨,不過(guò),書(shū)真的很厚。不多說(shuō)了,寫(xiě)書(shū)比寫(xiě)代碼難得多。
      有了書(shū)以后,QQ群里大家常見(jiàn)的問(wèn)題基本上都可以在書(shū)上找到,我也輕松了很多。這時(shí)候,我常回答的一句是:先買(mǎi)本《FreeSWITCH權威指南》自己看看再問(wèn)。
      后來(lái),隨著(zhù)使用FreeSWITCH的人越來(lái)越多,也為了照顧那些平時(shí)匆忙沒(méi)時(shí)間仔細研究但又想學(xué)又不想花很多錢(qián)的人,我們建立了一個(gè)FreeSWITCH精英群QQ。通過(guò)收費入群,在那里我回答問(wèn)題會(huì )寬容些。比如我會(huì )直接告訴他命令,以及詳細的參數,或者書(shū)上的哪一頁(yè),甚至專(zhuān)門(mén)寫(xiě)一篇文章解釋一些復雜的問(wèn)題,但在免費的群里,我一般就是點(diǎn)到為止。
      真有人就花錢(qián)加入了精英群。不知道是水土問(wèn)題還是進(jìn)群的人素質(zhì)本來(lái)就高,總之,精英群里反而很少有爛問(wèn)題,提問(wèn)和回答都很高效。同樣的問(wèn)題,我在免費的群里,基本需要反問(wèn)10遍才把背景信息和日志套出來(lái),而在精英群里,基本一兩遍就行了。
      2015年是社群的元年,我們也算是為這個(gè)元年做了一點(diǎn)點(diǎn)貢獻。
      有時(shí)候會(huì )有人心急火燎地提問(wèn)問(wèn)題,說(shuō)老板告訴他們今天必須搞定。對于這樣的問(wèn)題我基本能回答也不回答 ,最多告訴他們該買(mǎi)個(gè)商業(yè)服務(wù),我們有專(zhuān)門(mén)的應急通道可以幫助解決這類(lèi)問(wèn)題,同時(shí),提醒群里所有潛水員,如果想得到更好的服務(wù),最好未雨綢繆早交保險費。
      上面例子當然是說(shuō)給老板們聽(tīng)的。但同時(shí),做為技術(shù)人員,如果在老板那里申請不下經(jīng)費,我覺(jué)得自己花錢(qián)買(mǎi)本書(shū)或進(jìn)個(gè)精英群、或是參加個(gè)培訓之類(lèi)也還是花得起得,如果工作做好了得以升職錢(qián)不就回來(lái)了么。我們群里有很多這樣的例子。投資自己才是最好的投資。對我自己而言,雖然沒(méi)有升職,但我這么多年每年自費往返美國參加ClueCon,回來(lái)得以吹吹牛什么的,也算是對自己的投資吧。
      從2013年開(kāi)始,學(xué)著(zhù)大輝和池建強做FreeSWITCH-CN微信公眾號。最初寫(xiě)東西比較多,最近一年懶了很多,希望來(lái)年能抽出時(shí)間多寫(xiě)點(diǎn)東西。
      除了FreeSWITCH之外,我還給Erlang提交過(guò)補丁,不過(guò)一兩行代碼的事,就不值得一提了。
      做了這么多年,雖然我們小步快跑,現金流都是正的,但其實(shí)我們一直沒(méi)有找到好的盈利模式,一直都在摸索。而且,做為一個(gè)小公司,隨便來(lái)一個(gè)大一點(diǎn)的活都會(huì )把我們的主要力量拽過(guò)去。也有不少人找到我們認真的討論收購問(wèn)題,但最后基本是都是沒(méi)有下文。一個(gè)主要的沖突就是,他們根本不愛(ài)開(kāi)源。而如果只是拿FreeSWITCH做出一款市面上已經(jīng)存在的產(chǎn)品,同時(shí)又不開(kāi)源,那又有什么意義呢?我們做開(kāi)源,其中一點(diǎn)就是可以自由方便地取代那些收費高昂又不自由的商業(yè)產(chǎn)品,現在卻要我們做成我們不喜歡的那些產(chǎn)品,意義何在呢?
      FreeSWITCH一直沒(méi)有一個(gè)好用的圖形用戶(hù)界面,我們最近正在做一個(gè),也是開(kāi)源的。我們不知道未來(lái)是什么樣子的,但我們始終相信,開(kāi)源是一條可以走下去的路,也許沒(méi)有捷徑,但我們肯定能找到辦法越走越寬。
    【免責聲明】本文僅代表作者本人觀(guān)點(diǎn),與CTI論壇無(wú)關(guān)。CTI論壇對文中陳述、觀(guān)點(diǎn)判斷保持中立,不對所包含內容的準確性、可靠性或完整性提供任何明示或暗示的保證。請讀者僅作參考,并請自行承擔全部責任。

    相關(guān)閱讀:

    專(zhuān)題

    亚洲精品网站在线观看不卡无广告,国产a不卡片精品免费观看,欧美亚洲一区二区三区在线,国产一区二区三区日韩 柘城县| 湄潭县| 永丰县| 临高县| 秭归县| 襄汾县| 红原县| 蚌埠市| 崇信县| 宿州市| 阿合奇县| 浦北县| 平顺县| 安阳市| 商南县| 秦皇岛市| 田林县| 郴州市| 简阳市| 策勒县| 安国市| 正镶白旗| 唐海县| 磐安县| 东丰县| 友谊县| 佳木斯市| 闸北区| 寻甸| 儋州市| 岳西县| 中西区| 凌云县| 家居| 田林县| 凤庆县| 肥城市| 博兴县| 灵丘县| 子长县| 革吉县| http://444 http://444 http://444 http://444 http://444 http://444