巴延興:從主導多個SIG組到OpenHarmony “程式碼貢獻之星”,我是如何做到的?

OpenHarmony社群 發表於 2022-05-17

巴延興:從主導多個SIG組到OpenHarmony “程式碼貢獻之星”,我是如何做到的?

作者:巴延興 深圳開鴻數字產業發展有限公司 資深OS框架開發工程師

編者按:在 OpenHarmony 生態發展過程中,湧現了大批優秀的程式碼貢獻者,本專題旨在表彰貢獻、分享經驗,文中內容來自嘉賓訪談,不代表 OpenHarmony 工作委員會觀點。

開源軟體(以下簡稱“開源”)於上世紀80年代應運而生,隨後惠及全球。如今,開源技術支撐了 90% 以上的網際網路產品,並已經滲透到各行業的商業應用中。2021 年,我國首次將“開源”明確列入《中華人民共和國國民經濟和社會發展第十四個五年規劃和 2035 年遠景目標綱要》。雖然我國開源建設起步相對較晚,但國家在戰略層已經開始給予了開源的肯定和支援。目前,開源已成為全球軟體技術和產業創新的主導模式。

作為開放原子開源基金會的白金捐贈人、OpenAtom OpenHarmony(以下簡稱“OpenHarmony”)B 類捐贈人,深開鴻核心技術團隊完整地繼承了前期 OpenHarmony 業務技術積累,以共建共治共享的開源精神,以成為智慧物聯網作業系統領軍者為戰略目標,基於 OpenHarmony 聚焦智慧物聯網作業系統(KaihongOS)的技術研發與持續創新。致力於構建多贏的物聯網作業系統生態圈,持續拓寬行業邊界,實現萬物互聯。

作為資深 OS 框架開發工程師,巴延興負責整體技術規劃、專案看護、成果交付以及與社群的溝通協調;輔助工具 SIG 的申請成立、SIG 的孵化以及畢業流程的推進工作。其中,輔助工具 SIG 包括 NAPI 框架生成工具、開機動畫工具、IDL 轉換工具等一系列工具。

他常說,在這個世上,沒有從天而降的好運和奇蹟,機會只留給有準備的人。巴延興抓住機遇,全力擁抱開源時代,在開源軟體的基礎上,為企業提供安全、穩定的企業級開源軟體,並將程式碼百分之百回饋給社群。十年如一日對工作極致負責的他,用專業匯聚能量,目前共計帶領團隊主導 4 個 SIG、參與 12 個 SIG 的程式碼貢獻,累計向主幹貢獻程式碼 30W+ 行。

此次我們邀請了深開鴻巴延興前來參加訪談,希望通過他的視角,帶我們更加全面地瞭解深開鴻團隊背後的故事。

Q1 可以介紹下自己以及所在開發團隊嗎?

大家好,我是巴延興,是深圳開鴻數字產業發展有限公司資深OS框架開發工程師。從業以來,我一直深耕終端裝置的研發領域,擁有十多年的移動系統開發經驗,去年有幸加入深開鴻南京研發團隊,希望為作業系統發展貢獻綿薄之力。深開鴻團隊一方面承擔著公司 KaihongOS(OpenHarmony 商業發行版之一)的研發任務,另一方面積極地、大顆粒地、全方位地面向 OpenHarmony 社群進行開源貢獻。

Q2 作為開發領域技術達人,請問哪些原因讓您決定參與OpenHarmony的社群貢獻?

隨著 5G 時代的到來,數字化升級、萬物互聯、人機物融合等需求越來越旺盛,“開源”首次被明確列入《中華人民共和國國民經濟和社會發展第十四個五年規劃和 2035 年遠景目標綱要》。作為互通互聯生態架構基座的作業系統,OpenHarmony 應運而生。

深開鴻技術團隊從 OpenHarmony 開源專案成立伊始就與 OpenHarmony 工作組展開了深度合作,是業內首批對 OpenHarmony 在產業上的應用及賦能進行深入研究的公司。我認為未來的市場將出現移動端作業系統高速發展的視窗期,因此,當我得知有深開鴻這樣一家以 OpenHarmony 為技術底座的作業系統發行版公司誕生的時候,我便毫不猶豫地加入了。

自參與 OpenHarmony 社群共建以來,我深度參與了程式碼共建的工作,結合多年來在系統核心、系統安全、網路通訊、多媒體及 AI 等技術領域的積累,主導多個 SIG 組的形式持續向社群貢獻高質量程式碼,不斷夯實 OpenHarmony 的基礎能力,加速推進 OpenHarmony 生態建設。

Q3 恭喜您獲得2月程式碼貢獻之星,非常了不起,可以說說您在社群具體做了哪些程式碼貢獻,獲得哪些成果嗎?

去年 6 月,深開鴻開始參與 RISC-V SIG,從晶片適配開始,再到承接 Driver SIG 的音視訊硬編解碼 HDF 框架實現的任務。隨著開源經驗的積累,團隊也匯聚了各領域的技術專家。因此,深開鴻在 2021 年 9 月份正式主導了第一個 SIG 組——AI 框架整合 SIG 組。在這過程中,我參與了需求分析、架構設計、程式碼框架搭建以及程式碼評審、入庫等研發全流程;基於 RockChip Toybrick 3568x 實現了 HDF 框架開發;基於瑞芯微的 MPP 框架提供的 MppBuffer、MppBufferGroup 以及 packet 和 frame 相關的元件和介面,結合 Buffer 佇列,共享記憶體等機制,實現了硬體編解碼流程,並完成了相關的編解碼演示程式和單元測試程式;基於 HJSUnit 測試框架,使用 JavaScript 語言編寫 JS 全元件屬性、樣式、事件、方法等測試指令碼;以上相關程式碼都已合入主幹。

伴隨研發團隊規模逐漸擴大,團隊能力逐漸提升,可參與主導或共建的技術領域也越來越多——輔助工具、軟匯流排、多媒體、核心等專案都有深開鴻團隊的身影,慢慢呈現了“遍地開花”的趨勢,也看到我們的成果幫助了更多的開發者,真正感受到了生態的繁榮。

到目前為止,深開鴻主導了 4 個 SIG,參與共建的 SIG 有 12 個,尤其是核心、軟匯流排、HDF、ArkUI 等根技術領域都有深度參與,累計向主幹貢獻程式碼 30W+ 行。

Q4 可以請您給我們分享一下,在整個開發的過程中,您和您的團隊遇到過哪些技術上或其他方面的難題?這些難題又是如何被逐一解決的?從中總結了哪些經驗呢?

我們在核心開發過程中遇到不少難題,比如核心支援的單板種類有限、Hi3861 開發板核心固化、編譯環境搭建複雜等問題都加劇了進入核心研發的難度。面對這些困難,我們在探索過程中也摸索出了一套方法。

首先,我們利用模擬技術解決單板有限的問題,其次利用 Q/A 的方式將每一步都記錄下來,輸出技術文件,夯實每一步的腳印。對新技術保持一顆好奇心是每一個核心開發人員必備的素養,這樣的心態促使我們不斷攻堅克難。目前核心開發工作還處於初級階段,取得了初步的成果,但我們還會繼續進行研發投入,在這過程中,不僅能提高我們自身的技術能力,而且還能增強公司的技術儲備,促成良性迴圈。

Q5 加入OpenHarmony生態以來,深開鴻在社群的開源貢獻方面取得了不小的成果,您認為“祕訣”都有哪些呢?

如果非要說有什麼“祕訣”的話,那就是深開鴻始終堅持從開源中來,到開源中去的開源理念,結合 OpenHarmony 系統特性以及行業應用對作業系統的需求,推出具備行業共性的 KaihongOS 商業發行版,在滿足客戶需求的同時,也將沉澱下來的技術能力及行業實踐回饋給社群。

除了主幹程式碼貢獻,我們在三方庫、知識體系工作組、相容性工作組、基礎服務、開發板等方向也同時發力,多維度地、多層次地進行開源貢獻。同時,我們的貢獻也得到了社群的認可,深開鴻已正式成為相容性工作組的第一家擴充套件成員的單位。

Q6 您最想吐槽OpenHarmony哪些方面?對未來的OpenHarmony有什麼期望?

OpenHarmony 目前處在起步階段,很多事物尚未成熟,比如系統能力還有待增強;應用生態不夠豐富;開發文件不夠齊全,開發者入門門檻高等問題都亟待解決,這就需要有更多的技術精英、行業大咖參與 OpenHarmony 社群共建。至於對未來的期望,自然是希望它能夠蓬勃發展,向當今主流的開源生態看齊甚至超越。

Q7 未來深開鴻還會做哪些事情?朝哪個方向努力?

作為 OpenHarmony 開源專案的共建單位之一,深開鴻有責任、有義務、更有能力持續完善 OpenHarmony 的技術能力、不斷以創新技術加速開源生態建設的佈局。從產業生態角度來看,豐富且有活力的生態也將推動 OpenHarmony 的持續提升、優化、完善,最終反哺產業生態,形成一個良性的、有機的迴圈。因此,我們會一如既往地推進 KaihongOS 在各個行業的商業落地,為千行百業賦能的同時,將沉澱、提煉出來的技術能力再貢獻給 OpenHarmony 社群,真正踐行從開源中來到開源中去的理念,這就是深開鴻在未來要做的事情,要努力的方向。

Q8 有什麼想對其他企業和開發者說的話嗎?

作為一名普通的工程技術人員,有幸遇到這樣的一個時代,更有幸能夠親身參與這個時代的偉大變革。機會留給有準備的人,我會竭盡所能去擁抱這樣的時代,把握時代賦予的機會。個人的力量是渺小的,在這裡我呼籲更多的有識之士、志同道合者參與到 OpenHarmony 生態的共建,大家一起攜起手來,推動它的繁榮與發展!

巴延興:從主導多個SIG組到OpenHarmony “程式碼貢獻之星”,我是如何做到的?

巴延興:從主導多個SIG組到OpenHarmony “程式碼貢獻之星”,我是如何做到的?