成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

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

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

[[410194]]

想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com

什么是開源?

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

[[410195]]

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

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

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

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

[[410196]]

我參與 OpenHarmony 社區開發

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

大家可能會認為一定是做了多么了不起的貢獻…確實做了一些事,提交并被采納了十數個補丁、千把行的代碼;但如果你仔細看看,你會發現很平凡,不過如此而已…

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

為啥參與

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

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

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

[[410197]]

于是重新撿起了荒廢已久的技術“特長”,樂此不疲地回歸到了碼農行列,再做點有意義的事!

前前后后轉了幾個國內與操作系統有關的社區,總的感覺是“淡”,新人不知如何入門,參與更是困難。

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

后來去國外的社區轉,就當取經了,還真是在 Debian 社區收獲了不少新認識。

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

[[410198]]

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

干了點啥

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

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

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

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

01 閱讀源代碼

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

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

[[410199]]

02 提交 issue 和 pr

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

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

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

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

03 誤打誤撞 QEMU

之前從未接觸過嵌入式,也不懂硬件、驅動。有限的 QEMU 經驗僅是依葫蘆描瓢地用,從沒想過與之有關的開發。

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

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

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

[[410200]]

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

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

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

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

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

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

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

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

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

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

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

幾點感受

01 開源需要社區推動

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

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

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

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

[[410201]]

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

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

02 參與社區的最佳實踐是做

每個人參與的目的不同,關注點不同,利益訴求不同,但目標都是相同的,伴隨著 Openharmony 發揚光大。

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

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

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

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

03 良好的社區文化還需每個人的努力

不得不承認,經常與利益不直接掛勾的社區開源文化,正成為推動經濟發展的重要動力。社區文化的逢勃發展,一定程度上反映出的是先進性。

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

[[410202]]

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

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

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

04 客觀看待問題障礙

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

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

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

這么長時間參與 OpenHarmony,我發現華為的精英們還是相當謙虛的,這一點令我這沒有技術背景的小白非常敬佩。

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

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

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

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

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

想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com

 

責任編輯:jianghua 來源: 鴻蒙社區
相關推薦

2022-09-23 17:10:01

首席信息安全官安全團隊

2013-10-12 09:56:51

大數據NoSQLMongoDB

2019-07-29 11:25:23

架構師架構方案架構

2012-03-21 12:57:29

JavaJettyServlet

2012-04-06 14:20:00

DEKRA

2015-09-01 09:53:04

Java Web開發者

2019-09-05 19:56:23

開發編程程序

2023-08-29 23:50:48

2022-08-18 14:54:00

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

2023-03-21 17:06:24

樹莓派路由器

2015-06-04 11:31:36

程序員12周內

2022-10-19 13:43:42

CocosOpenHarmon3D游戲引擎

2020-07-13 07:49:45

程序員Java

2015-08-10 14:56:31

Google

2017-02-27 16:22:52

2011-09-06 09:59:58

VMware云計算虛擬化

2016-05-18 10:04:17

技術面試

2021-01-15 05:19:08

wireshark軟件網絡

2020-07-19 14:56:28

安全 信息安全數據信息
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 韩三级在线观看 | 最近中文字幕在线视频1 | 国产超碰人人爽人人做人人爱 | 91免费在线视频 | 国产精品伦理一区二区三区 | 中文字幕 在线观看 | 久久综合一区二区三区 | 亚洲人成网站777色婷婷 | 欧美日本一区二区 | 国产三级网站 | 成人在线精品视频 | 欧美综合久久久 | 一区二区三区中文字幕 | 米奇狠狠鲁| 国产精品久久久久久二区 | 91av视频在线免费观看 | 日韩精品一区二区三区在线观看 | 一级在线免费观看 | 韩日一区二区 | 粉嫩一区二区三区四区公司1 | www亚洲精品| 国产高清视频 | 国产精品久久国产精品 | 国产精品视频一区二区三区四区国 | 黄色成人国产 | 中国美女撒尿txxxxx视频 | 九九伊人sl水蜜桃色推荐 | 中文亚洲视频 | 在线观看av网站永久 | 青青草视频免费观看 | 久久大陆 | 久久高潮| 国产一区二区三区色淫影院 | 国产精品一区二区视频 | 国产精品不卡 | 欧美综合久久 | 亚洲欧美中文日韩在线v日本 | 一级毛片免费视频观看 | 污书屋 | 国产日韩欧美在线一区 | 日韩精品视频在线观看一区二区三区 |