自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

我是如何成為首位OpenHarmony野生Committer的?

系統(tǒng)
6 月 1 日,開放原子開源基金會正式發(fā)布 OpenHarmony 2.0 Canary,引起了眾多開發(fā)者的關(guān)注。在這眾多的代碼貢獻者中,一位名叫“老凱”的開發(fā)者備受關(guān)注。

[[410194]]

想了解更多內(nèi)容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)

https://harmonyos.51cto.com

什么是開源?

開源興起于軟件行業(yè),以開放、共享、協(xié)同為本質(zhì),成為眾多科技公司和個人開發(fā)者的利器之一,而它在逐漸滲透到各個領(lǐng)域的同時也為技術(shù)創(chuàng)新提供了重要的渠道。如今,開源已經(jīng)成為一股潮流,開源文化流行,開源項目層出不窮…

[[410195]]

6 月 1 日,開放原子開源基金會正式發(fā)布 OpenHarmony 2.0 Canary,引起了眾多開發(fā)者的關(guān)注。

OpenHarmony 是自主研發(fā)、不兼容安卓的全領(lǐng)域下一代開源操作系統(tǒng)。迄今為止,該項目已有 240 多位貢獻者。

在這眾多的代碼貢獻者中,一位名叫“老凱”的開發(fā)者備受關(guān)注。

他是首位晉升為 OpenHarmony 開源項目 Committer 的野生開發(fā)者,下文來自老凱,一起來探究他是如何一步步成為 OpenHarmony 開發(fā)者的吧。

[[410196]]

我參與 OpenHarmony 社區(qū)開發(fā)

我既非 IT 圈內(nèi)人,也沒有技術(shù)成就,竟然獲得了聲名響亮的鴻蒙開源社區(qū)的殊榮–OpenHarmony 第一位野生 committer,也就是在某些項目中有權(quán)去審查核準(zhǔn)別人提交的代碼了!

大家可能會認(rèn)為一定是做了多么了不起的貢獻…確實做了一些事,提交并被采納了十?dāng)?shù)個補丁、千把行的代碼;但如果你仔細看看,你會發(fā)現(xiàn)很平凡,不過如此而已…

沒錯,我也是這么認(rèn)為的,但為什么就獲得了殊榮呢?我以為是鼓勵,但更重要的是,這就叫社區(qū)、開源–小白也可以由此實現(xiàn)人生價值!

為啥參與

做點有意義的事,能夠在家人朋友面前,在老去的時候向孩子們吹吹牛,是個樂事,人之常情。

恰好幾年前,我離開了原來的單位,面臨著如何再選擇的問題,那時也正是美國佬開始瘋狂打壓我們,國內(nèi)深刻反思“缺芯少魂”的時候。

很自然地,我把目標(biāo)瞄準(zhǔn)了這個方向。既然有閑還有點小錢,為什么不選擇既喜歡又有意義的事情去做呢。

[[410197]]

于是重新?lián)炱鹆嘶膹U已久的技術(shù)“特長”,樂此不疲地回歸到了碼農(nóng)行列,再做點有意義的事!

前前后后轉(zhuǎn)了幾個國內(nèi)與操作系統(tǒng)有關(guān)的社區(qū),總的感覺是“淡”,新人不知如何入門,參與更是困難。

可能有我個人的因素,但總體感覺那時國內(nèi)開源社區(qū)就是這樣一個通常情況,似乎是近兩年,“開源”、“貢獻”、“社區(qū)”的氛圍才開始深厚起來。

后來去國外的社區(qū)轉(zhuǎn),就當(dāng)取經(jīng)了,還真是在 Debian 社區(qū)收獲了不少新認(rèn)識。

2019 年特朗普給我介紹了一個機會:來鴻蒙吧。全程觀看了鴻蒙的首次亮相演說,暢想的愿景,描繪的藍圖,對我產(chǎn)生了很大的吸引力。

[[410198]]

清楚地記得,聽到鴻蒙一定開源時,我鼓了掌。一個面向未來的 OS 足夠有意義,一個可以與個人興趣相結(jié)合的機會太難得。于是,我結(jié)束了搖擺,不再浪費時間,就這個了。

干了點啥

到 2020 年 9 月份真正開源,這一年時間挺考驗人啊。為了不耽誤功夫,也為了更加有的放矢地參與進去,我跑到了 seL4 社區(qū),因為聽說是微內(nèi)核嘛,并且還是世界鼎鼎大名的。

說起來也是有趣,這樣一個著名的、至少有二十年開發(fā)歷史的項目,想找 Bug 也很容易!為此還結(jié)識了一位項目組的新朋友。

終于等到鴻蒙開源了。說實話,剛看到代碼時還是有失落的,因為我對嵌入式一無所知,和想象中的通用型操作系統(tǒng)不一樣。

大概踟躇了二十多天,飯要一口一口地吃,事要一件一件地做,十一過后才開始全身心投入,直到現(xiàn)在。

01 閱讀源代碼

開源的一大好處就是真理都擺在明面上,誰有心都可以了解,掌握了就有發(fā)言權(quán)!

我的興趣點在內(nèi)核,于是用了大概三個月的時間,把 liteos-a 的大部分代碼都讀完了,期間做了很多注釋,記錄了不少沒看懂和有疑惑的地方,陸陸續(xù)續(xù)地這些記錄成了開始真正貢獻的基礎(chǔ)。

[[410199]]

02 提交 issue 和 pr

以前在參與別的社區(qū)各種各樣的項目時,最多聽到別人對我說的回復(fù)是,“good catch”,“good eye”。

說起來好笑,我擅長挑別人的毛病!不管多有名,甚至是標(biāo)準(zhǔn)規(guī)范:-)有人對這類偏 typo 問題不以為然,對此我持正面看法:不認(rèn)真看不出來這些問題;看了別人的東西,學(xué)了別人的成果,發(fā)現(xiàn)問題不去說,不講究,也不足以表達對作者們辛勤勞動的敬意和些許回報。

所以我的原則是,只要程序有錯誤,會產(chǎn)生誤會,不管大小,就是 Bug。當(dāng)然在提的時候是慎重的,因為畢竟是在給精英大佬們挑刺。

為此,在這一過程中又有了另外一份收獲:獲取確鑿證據(jù)和信息。參與 OpenHarmony 大概一個月左右的時候,第一個 pr 被采納了,這對我是個極大的鼓勵。

03 誤打誤撞 QEMU

之前從未接觸過嵌入式,也不懂硬件、驅(qū)動。有限的 QEMU 經(jīng)驗僅是依葫蘆描瓢地用,從沒想過與之有關(guān)的開發(fā)。

今年初的時候,歐洲的一個孵化小組貢獻了 device_qemu 的初始代碼(注:我了解的 qemu 項目僅限于 liteos-a 內(nèi)核部分),能夠帶起最小化的內(nèi)核態(tài)命令行。

這個最初的版本,幫助我驗證了自己想提的一個問題,我向他們表示了感謝,并順道問了一個問題。

就是這個問題,讓我“深陷”其中,竟然成了 QEMU 項目現(xiàn)在主要的開發(fā)者之一。

[[410200]]

我問的問題是是否能實現(xiàn)用戶態(tài),他們的回答很委婉:還沒有時間來投入。大家知道,純內(nèi)核態(tài)的模擬能發(fā)揮的作用是很有限的。

繼續(xù)等人家現(xiàn)成的?有點不太得勁。我有時間,于是抱著試試的想法請教了缺什么,有沒有樣例。

現(xiàn)在想來那時真是連問題都問不出來。最后得到的信息就三字–CFI。

趕鴨子上架大家都聽過,那時我就是這個狀態(tài)。頭一周象無頭的蒼蠅一樣,找規(guī)范、搜代碼、翻書、認(rèn)識各種縮寫,猜、試…

第二周奇跡出現(xiàn)了,我寫的一堆也不知是什么的東西有反應(yīng)了!之后就稍有點譜了,用 QEMU 源代碼校正錯誤,與內(nèi)核對接接口。

大概一個月左右,在項目組、社區(qū)的鼓勵和幫助下,經(jīng)過 raw 字符、塊設(shè)備、jffs2 格式等多個版本,終于成形了,順道還開啟了用戶態(tài)模式。

就這樣誤打誤撞地 OpenHarmony 里有了我的幾百行!

04 做事情總要花時間,時間精力投入不少

OpenHarmony 是個龐大的項目,倉庫眾多,關(guān)系復(fù)雜,代碼量巨大,想要參與其中自然更需要時間和精力。

我的情況有些特殊,是把這當(dāng)成了全職工作或說是事業(yè),再加上本來技術(shù)積累與更新就不夠,深入進去后更感到不懂不會的東西太多,因此切身體會到時間的寶貴。

好在興趣在其中,時間安排也自由,因此并不覺得累,相反能收獲快樂和友誼,也有一定的成就感。

幾點感受

01 開源需要社區(qū)推動

我這里想說的是推動而不是主導(dǎo),社區(qū)不是散沙,需要有強有力的主導(dǎo),而繁榮則需要社區(qū)廣泛的推動。

一方面是人力的問題,另一方面是廣泛受益的問題。就以我參與的 QEMU 項目來說,一個顯著的問題是官方有心但無精力。

從 OpenHarmony 代碼迭代速度、版本路標(biāo)就可看出來,項目組很繁忙。多次看到他們在半夜的時候提交代碼,以至于我都不太好意思再去打擾他們。

這樣龐大的系統(tǒng),區(qū)區(qū)百十來人,顯然有太多的事情照顧不過來。而我參與 QEMU 的初衷恰恰是因為我自己想用。

[[410201]]

正所謂眾人拾柴火焰高,OpenHarmony 搭出了一個大平臺,各路神仙都可以在審慎評估的基礎(chǔ)上各顯其能,各取所需。

事物發(fā)展的初創(chuàng)期正是醞釀新的獨角獸、大神的良機。我愿意相信,共同的理想和認(rèn)知,能夠凝聚起強大的力量,推動社區(qū)良性快速發(fā)展。

02 參與社區(qū)的最佳實踐是做

每個人參與的目的不同,關(guān)注點不同,利益訴求不同,但目標(biāo)都是相同的,伴隨著 Openharmony 發(fā)揚光大。

那么在參與路徑上,我感到學(xué)習(xí)、研究、做,是有效的辦法。學(xué)習(xí)是為了了解掌握主干思路方法,研究是為了準(zhǔn)確、言之有物地發(fā)揮聰明才智,做則是順理成章地貢獻與獲取回報。

比如就從一個略顯簡單的 issue 開始,我甚至設(shè)想對稍微大一點的問題從郵件列表開始。

有時看到社區(qū)愛好者想使力卻發(fā)不出或不知如何發(fā)力的情形,我感到好像對開源和社區(qū)的認(rèn)識還有些保守,或者說是有顧慮。

實踐告訴我,持續(xù)地去做而不是只停留在說上,不僅個人想法會實現(xiàn),社區(qū)也會感謝我們的付出。當(dāng)然參與過程中準(zhǔn)確了解社區(qū)準(zhǔn)則、貢獻流程等是必要的。

03 良好的社區(qū)文化還需每個人的努力

不得不承認(rèn),經(jīng)常與利益不直接掛勾的社區(qū)開源文化,正成為推動經(jīng)濟發(fā)展的重要動力。社區(qū)文化的逢勃發(fā)展,一定程度上反映出的是先進性。

我感覺國內(nèi)開源社區(qū)似乎是近兩年才火了起來,對于如何參與社區(qū),如何組織社區(qū),如何共建社區(qū)仍是在摸索前進中。

[[410202]]

從這幾年轉(zhuǎn)過的國內(nèi)國外社區(qū)情況看,我感覺文化差異還是很大的,倒不是說誰好誰不好,而是說我們普遍的社區(qū)角色意識還有些模糊。

在 IRC 交流平臺上我也加過很多頻道,感覺到了一個明顯特點:有熱心人、能與大牛對話、無用的調(diào)調(diào)少。

這樣的氛圍對于入門、探討、貢獻都容易進行。所以,包括我自己在內(nèi)的每個參與者,還真的需要重視一下開源和社區(qū)意識,多一些工匠精神,多一些志愿者形象,多一些公眾角色。

04 客觀看待問題障礙

鴻蒙懷抱遠大理想而來,卻是倉促降生,套用一句話“時也運也”。由于倉促必不完美,因為不完美必然機會多多。

鴻蒙說是誕生已有五、六年了,但對于一個面向未來的操作系統(tǒng),這點時間太短了,并且目標(biāo)、條件可能都有變化和調(diào)整,期望看到的都是完美的這不現(xiàn)實,反倒是壞了心境。

把這個問題反過來看,如果一切都是完美的,那我還怎么可能成為 committer。

這么長時間參與 OpenHarmony,我發(fā)現(xiàn)華為的精英們還是相當(dāng)謙虛的,這一點令我這沒有技術(shù)背景的小白非常敬佩。

那么我們遇挫、遇到障礙的時候,完全可以 issue、pr 等形式,拿出我們認(rèn)為更合適的解決方案來探討交流,僅僅泛泛而談可能與事無補。

device_qemu 項目啟動已半年了,進展仍很初步,中上層組件集成困難重重;OpenHarmony 的一些應(yīng)用框架、緊耦合等也頗受爭議…

我理解這都是發(fā)展中的問題,要用發(fā)展的眼光去對待,社區(qū)中已有很多人在為此出謀劃策并實踐著。

3 月 11 日 OpenHarmony 發(fā)生了一件我認(rèn)為是里程碑式的事件–過程開源,鴻蒙的團隊和開發(fā)開始實時地呈現(xiàn)在公眾面前,從此我們有了與其一道去克服各種困難的可能。

最后,鴻蒙“初開”,其路漫漫,心若有光,便不懼道阻且長!

想了解更多內(nèi)容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)

https://harmonyos.51cto.com

 

責(zé)任編輯:jianghua 來源: 鴻蒙社區(qū)
相關(guān)推薦

2022-09-23 17:10:01

首席信息安全官安全團隊

2013-10-12 09:56:51

大數(shù)據(jù)NoSQLMongoDB

2019-07-29 11:25:23

架構(gòu)師架構(gòu)方案架構(gòu)

2012-03-21 12:57:29

JavaJettyServlet

2012-04-06 14:20:00

DEKRA

2023-08-29 23:50:48

2015-09-01 09:53:04

Java Web開發(fā)者

2019-09-05 19:56:23

開發(fā)編程程序

2022-08-18 14:54:00

安全首席信息安全官信息安全

2022-10-19 13:43:42

CocosOpenHarmon3D游戲引擎

2020-07-13 07:49:45

程序員Java

2015-06-04 11:31:36

程序員12周內(nèi)

2023-03-21 17:06:24

樹莓派路由器

2015-08-10 14:56:31

Google

2017-02-27 16:22:52

2011-09-06 09:59:58

VMware云計算虛擬化

2020-07-19 14:56:28

安全 信息安全數(shù)據(jù)信息

2021-08-07 07:23:08

Webpack中間件模型

2021-06-06 16:05:31

OpenHarmony
點贊
收藏

51CTO技術(shù)棧公眾號