0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

聊聊我為什么熱愛開源

GReq_mcu168 ? 來(lái)源:玩轉(zhuǎn)單片機(jī) ? 2020-06-28 17:07 ? 次閱讀

開open源

轉(zhuǎn)眼間,已是畢業(yè)一年了,前些天朋友圈很多同學(xué)在刷畢業(yè)照的紀(jì)念日,回想起在校的時(shí)光,那是多么舒服,可以隨心所欲做自己想做的事情,該玩的時(shí)候放肆玩,該學(xué)的時(shí)候認(rèn)真學(xué),美滋滋的生活啊~

我在大學(xué)的時(shí)候,就熱愛開源這東西了,從網(wǎng)絡(luò)中來(lái)的知識(shí),喜歡反饋到網(wǎng)絡(luò)中去,只是那時(shí)候很菜,沒啥東西可玩的,但這個(gè)熱愛我一直保持到了今天,也一直在努力~

是滴,我們今天來(lái)聊一聊我熱愛的事情——開源

談?wù)勎业牡谝淮?/p>

回想幾年前,我剛學(xué)C語(yǔ)言的時(shí)候,覺得這東西很好玩,也很有興趣,居然能讓我操控電腦,雖然能做的東西不對(duì),也就打印點(diǎn)字符在屏幕上,但這確實(shí)卻讓我喜歡上了它,也許以前沒有接觸過(guò)這些高大上的東西,也許以前玩電腦只會(huì)打游戲,也許是高中的時(shí)候曾有過(guò)一段時(shí)間熱衷于刷機(jī)(那時(shí)候刷安卓機(jī)系統(tǒng),知其然不知其所以然,但仍覺得有趣)。。。總之,接觸了代碼后,我確實(shí)喜歡上了它 ?( ′???` )~

后面的學(xué)習(xí)過(guò)程中,接觸了單片機(jī),我發(fā)現(xiàn)這東西也很有趣,能做點(diǎn)小東西,做個(gè)時(shí)鐘、小車、LED小蠻腰。。。那時(shí)候我是跟著師兄學(xué)習(xí)的,做硬件,抄電路、拉線,腐蝕pcb板子,然后再寫代碼,讓我的大學(xué)生活充滿了樂趣,畢竟我這種不聽話的學(xué)生,壓根就不喜歡上課,呆在實(shí)驗(yàn)室還比較好玩,而且認(rèn)識(shí)了很多好基友,現(xiàn)在每天都在吹牛扯淡打游戲聊妹紙,生活也非常愉快。

在大學(xué)的時(shí)候,我一直在混論壇社區(qū),也非常喜歡分享自己的學(xué)習(xí)、代碼,總是寫帖子,混著混著就成為了幾個(gè)論壇的版主,雖然很水,但也樂在其中。說(shuō)起來(lái)我是大二的時(shí)候就開始搗鼓這些的,當(dāng)年是參加了電賽,然后分享了電賽的經(jīng)驗(yàn),還開源了代碼,這是我第一次開源,然后從此以后就奠定了在論壇混的基礎(chǔ),哪段時(shí)間我發(fā)的帖子非常熱門,以至于到每年的電賽前后,我的帖子依舊有人在回復(fù)。

退出論壇是進(jìn)步的開始

后續(xù),我就逐漸退出論壇了,原因有兩點(diǎn):

國(guó)內(nèi)論壇質(zhì)量太差。沒有太多有技術(shù)含量的東西,到了后面基本是在水貼,感覺會(huì)浪費(fèi)我太多的時(shí)間。

伸手黨太多。等著喂飯的人太多了,實(shí)在是不好在論壇混。

在大三的時(shí)候,系統(tǒng)性學(xué)習(xí)了git相關(guān)的知識(shí),雖說(shuō)記不住太多東西,但是也已經(jīng)夠我日常使用了,那時(shí)候?qū)W習(xí)的操作系統(tǒng),朱天龍大佬對(duì)我影響甚大(是我第一個(gè)follow的大佬),他一直在為開源做貢獻(xiàn),寫的框架非常好,代碼規(guī)范,在嵌入式領(lǐng)域中,這樣子的大神并不多見,so,我得向大神學(xué)習(xí),那時(shí)候就覺得,我以后也要寫出點(diǎn)像樣的代碼,其實(shí)在我看來(lái),退出論壇是進(jìn)步的開始。

邁向開源社區(qū)

自此以后,就在開源的道路上越走越遠(yuǎn),以前寫的代碼,幾乎都使用了GPL開源協(xié)議,目的是為了讓更多的人開源起來(lái),然而比較尷尬的是,效果并不明顯哈哈哈哈,國(guó)內(nèi)(個(gè)人)開源的氛圍確實(shí)很慘淡,這也是沒辦法的事情,一些很好的軟件代碼,幾乎都是企業(yè)在維護(hù),我曾經(jīng)見過(guò)不少個(gè)人的開源項(xiàng)目(發(fā)布的時(shí)間是幾年前的),到現(xiàn)在就幾乎沒有在GitHub上push的記錄了,也就是說(shuō),這個(gè)開發(fā)者可能退出了開源社區(qū),可能開發(fā)者事業(yè)上升了,成為了管理層,可能成家立業(yè)沒有時(shí)間去維護(hù)了,但是就是這樣子一個(gè)開源項(xiàng)目得不到維護(hù)了,這是很可惜的一件事情。我不知道我能堅(jiān)持開源多久,但我希望我能一直做下去。

那我為什么會(huì)開源呢?很重要的是個(gè)人原因,我就一個(gè)行業(yè)內(nèi)的小菜鳥,我開源的出發(fā)點(diǎn)絕大部分是為了自己,其次才是為社會(huì)貢獻(xiàn),畢竟我也有一個(gè)騷氣的理想——“希望在賺錢的同時(shí)能為世界做一點(diǎn)點(diǎn)貢獻(xiàn),實(shí)在沒有就算了”。

俗話說(shuō),沒有目的的行為是堅(jiān)持不久的,而我的熱愛,我的目的,讓我在開源的路上越走越好,也越走越舒服~

首先吧,開源的代碼代表著別人能看到,就像你將你的內(nèi)褲給別人看了,有漏洞,想要面子上過(guò)得去,那你就盡量別穿有洞的內(nèi)褲是不是,那就會(huì)自覺地將代碼寫得更干凈更標(biāo)準(zhǔn)一點(diǎn),然后加點(diǎn)注釋,如果有人給你的代碼反饋了,那這就更有意義了,你會(huì)思考到用戶是怎么去使用你的代碼的,反饋的多了你就知道如何去將代碼寫得更好,更實(shí)用。其次,如果你寫一個(gè)代碼,那你就會(huì)去了解它的原理,然后也會(huì)參考現(xiàn)有代碼的實(shí)現(xiàn)方式,閱讀別人的源碼,吸取他們的編程思想,這是一個(gè)非常好的學(xué)習(xí)方式,一般來(lái)說(shuō)我的學(xué)習(xí)過(guò)程基本就是先看理論知識(shí),弄懂了這個(gè)理論,再去看源碼,而看源碼的時(shí)候,我會(huì)查閱很多博客、書籍,在源碼中更深入連接這個(gè)知識(shí),這是我自認(rèn)為更適合我自己的學(xué)習(xí)方式,而且也非常有效果。

GitHub是一個(gè)很好的展示面,如果你是要找工作的,我建議你一定要多寫開源的代碼,畢竟公司會(huì)很好奇你寫的代碼質(zhì)量如何,光從面試實(shí)在看不出太多。所以很多公司會(huì)非常喜歡看你的開源項(xiàng)目,來(lái)評(píng)估一下你的代碼質(zhì)量如何。同樣,如果你面試的時(shí)候告訴公司,“我有個(gè)開源項(xiàng)目,你們可以去看看”,這將是個(gè)不錯(cuò)的加分項(xiàng),至少我是這么認(rèn)為的,如果是我面試別人,我肯定會(huì)看一下。當(dāng)然啦,做開源不是一兩天就能完成的,臨時(shí)抱佛腳是完全不可能的,還是需要堅(jiān)持。

開源的代碼,能建立起你個(gè)人的“品牌”,一個(gè)優(yōu)質(zhì)的開源項(xiàng)目,是提升你自己影響力的好方法,我并不是在自吹自擂哈,畢竟我是小菜鳥,認(rèn)識(shí)我的人也不多,而且這兩年以來(lái)我?guī)缀醵际切⌒陀懻摻M聊技術(shù),水群比較少,這種小討論組能很有效提升自身的技術(shù),畢竟能相互討論的,都可以共同進(jìn)步,而在大群聊多半是吹水居多,但是有好幾次我在群里分享一些開源的代碼,有些群友就發(fā)現(xiàn)原來(lái)他一直用的代碼是我寫的。哈哈哈哈,這我感覺還是很棒的,極大的滿足感,如果你能寫出一些很好的輪子,然后讓成百上千的開發(fā)者依賴你寫的代碼,我想沒有什么能比這更棒的事情了。

最后就是能夠通過(guò)這些代碼認(rèn)識(shí)一些其他開發(fā)者,這些開發(fā)者是有很有水平的,畢竟能在開源上與你討論代碼的,早已不是伸手黨了,這樣子就能排除一部分伸手黨。比如我就認(rèn)識(shí)了一些大廠的人,有百度的、騰訊的、阿里的以及其他在業(yè)內(nèi)排名靠前的公司的開發(fā)者等等,而且我寫公眾號(hào),也認(rèn)識(shí)了不少業(yè)內(nèi)公眾號(hào)的號(hào)主,也是時(shí)不時(shí)聊聊天,總之讓我的人脈變的更廣一點(diǎn)了,這對(duì)我來(lái)說(shuō)也是很好的一件事情。而且能收到大神的點(diǎn)贊與認(rèn)可,這是非常值得開心的事情,也讓我更有自信寫出更好的代碼。

還有很重要的一點(diǎn)是,開源代碼在一開始可能并不會(huì)受到大家的青睞,但是隨著時(shí)間的推移,會(huì)有越來(lái)越多的開發(fā)者知道并嘗試使用它,這是一個(gè)細(xì)水長(zhǎng)流的東西,需要時(shí)間的打磨,越到后面能產(chǎn)生的效應(yīng)也就越大,所以這總是非常nice的。

當(dāng)然啦,我也非常希望自己的代碼能為世界做一丟丟貢獻(xiàn),能點(diǎn)個(gè)燈也不錯(cuò)。

首先,相對(duì)于寫公眾號(hào),我更喜歡寫代碼,我每天都在寫代碼,幾乎從不間斷,我最近一兩年寫的開源項(xiàng)目,我來(lái)說(shuō)說(shuō)消耗的時(shí)間吧,基本上是5個(gè)月能寫出一個(gè)算是比較穩(wěn)定的版本,一般一個(gè)開源項(xiàng)目最起碼要提交上百次,才能算是逐步趨向穩(wěn)定,后續(xù)就慢慢打磨咯,而上百次的提交,需要的時(shí)間幾乎就是2-3個(gè)月,然后后面的就是不斷打磨打磨,4-5個(gè)月就差不多是比較穩(wěn)定的了,再往后就是修bug,迭代。當(dāng)然這只是我的項(xiàng)目,那種大型的開源項(xiàng)目,需要的時(shí)間更久。

再者,自己寫的代碼跟現(xiàn)有的很多庫(kù)相比,沒有任何優(yōu)勢(shì)的,我也壓根想不出優(yōu)勢(shì)在哪,但是做這種開源的事情,還是很有動(dòng)力的,我愿意花時(shí)間去維護(hù)它,也愿意跟別人交流,我能收獲的也很大,更多的是自身實(shí)力的提升,通過(guò)何種方式去提升自己的能力在我看來(lái)都不為過(guò),而我選擇的是通過(guò)開源項(xiàng)目去提升自己,僅因?yàn)樗且粋€(gè)開源項(xiàng)目,是我所熱愛的,我愿意去維護(hù)它,愿意將我自己的時(shí)間花在這上面,不看抖音,偶爾打打游戲,小日子過(guò)得也是很舒服的,僅此而已,最后杰杰個(gè)人感覺國(guó)內(nèi)嵌入式領(lǐng)域的開源精神遠(yuǎn)遠(yuǎn)不夠,還有很長(zhǎng)的路要走,只希望我能貢獻(xiàn)一點(diǎn)力量,今天我發(fā)這個(gè)文章,其實(shí)也是想讓大家如果有能力,可以為開源做點(diǎn)貢獻(xiàn)。

那些看得見的進(jìn)步

最直觀的就是代碼的水平上來(lái)了,以前的代碼實(shí)在是不忍直視,放兩張代碼圖片,分別是以前的代碼與現(xiàn)在的代碼,大家可以感受一下(圖片可以向上滑動(dòng),點(diǎn)擊圖片還可以放大~):

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • C語(yǔ)言
    +關(guān)注

    關(guān)注

    180

    文章

    7613

    瀏覽量

    137247
  • 開源
    +關(guān)注

    關(guān)注

    3

    文章

    3380

    瀏覽量

    42603

原文標(biāo)題:閑談:我為什么熱愛開源

文章出處:【微信號(hào):mcu168,微信公眾號(hào):硬件攻城獅】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    黃鶴開源社區(qū)正式發(fā)布

    近日,在2024開放原子開發(fā)者大會(huì)暨首屆開源技術(shù)學(xué)術(shù)大會(huì)開幕式上,基于開放原子開源基金會(huì)旗下AtomGit開源協(xié)作平臺(tái)搭建的黃鶴開源社區(qū)正式發(fā)布,標(biāo)志著武漢市
    的頭像 發(fā)表于 12-23 11:33 ?277次閱讀

    開源鴻蒙應(yīng)用案例重磅發(fā)布

    開源賦能千行百業(yè),有效推動(dòng)產(chǎn)業(yè)創(chuàng)新升級(jí)。隨著開放原子開源基金會(huì)的開源鴻蒙(OpenHarmony)5.0 Release版本正式發(fā)布,項(xiàng)目生態(tài)逐步走向成熟,眾多開源應(yīng)用案例應(yīng)運(yùn)而生。近
    的頭像 發(fā)表于 12-23 11:32 ?346次閱讀

    開源能帶我們走向何方

    開源大模型、開源數(shù)據(jù)庫(kù)、開源框架、開源硬件......近些年,這些詞匯不絕于耳。雷軍說(shuō),好的代碼像詩(shī)一樣優(yōu)美,自己大二時(shí)寫的代碼就已經(jīng)開源,
    的頭像 發(fā)表于 12-06 17:09 ?486次閱讀

    熱愛而相聚——KiCon Asia 2024 完美落幕!

    2024年11月14日~16日,亞洲第二屆KiCad用戶大會(huì)“KiConAsia2024”在深圳成功舉辦。本次大會(huì)由KiCad社區(qū)和全球領(lǐng)先的產(chǎn)業(yè)數(shù)字化智造平臺(tái)華秋聯(lián)合主辦,旨在為所有熱愛開源
    的頭像 發(fā)表于 12-04 01:02 ?289次閱讀
    因<b class='flag-5'>熱愛</b>而相聚——KiCon Asia 2024 完美落幕!

    凌蒙派OpenHarmony開源項(xiàng)目榮獲本期Gitee官方推薦

    近日,司凌蒙派OpenHarmony開源項(xiàng)目榮獲本期Gitee官方推薦。本期Gitee官方推薦不僅是對(duì)凌蒙派OpenHarmony開源項(xiàng)目的高度認(rèn)可,也是對(duì)司在推動(dòng)
    的頭像 發(fā)表于 11-20 01:04 ?334次閱讀
    凌蒙派OpenHarmony<b class='flag-5'>開源</b>項(xiàng)目榮獲本期Gitee官方推薦

    Elasticsearch 再次開源

    Elasticsearch 和 Kibana 又可以被稱為開源了。很難表達(dá)這句話讓有多高興。激動(dòng)得簡(jiǎn)直要跳起來(lái)了。我們 Elastic 的所有人都是如此。開源
    的頭像 發(fā)表于 11-13 12:14 ?162次閱讀
    Elasticsearch 再次<b class='flag-5'>開源</b>

    聊聊std::move函數(shù)和std::forward函數(shù)

    今天我們聊聊Modern cpp的兩個(gè)非常重要的概念移動(dòng)語(yǔ)義和轉(zhuǎn)發(fā)引用。
    的頭像 發(fā)表于 11-05 16:58 ?339次閱讀

    Matepad pro12.2 已上市半個(gè)月,但是還沒有在開源網(wǎng)站看到該項(xiàng)目的開源信息,違背開源精神

    Matepad pro12.2 已上市半個(gè)月,本人自己也購(gòu)買了同款12+256的pad,想要同步學(xué)習(xí)下這款pad的一些體驗(yàn)還不錯(cuò)的功能點(diǎn),但是目前為止還沒有在開源網(wǎng)站看到該項(xiàng)目的開源信息,也查詢不到
    發(fā)表于 08-27 17:25

    感謝河南新開源石化管道有限公司對(duì)司差示掃描量熱儀認(rèn)可

    懷著無(wú)比感激的心情,向河南新開源石化管道有限公司表達(dá)最誠(chéng)摯的謝意,感謝其對(duì)我們公司生產(chǎn)的差示掃描量熱儀給予的高度認(rèn)可。感謝河南新開源石化管道有限公司對(duì)司差示掃描
    的頭像 發(fā)表于 07-01 10:33 ?283次閱讀
    感謝河南新<b class='flag-5'>開源</b>石化管道有限公司對(duì)<b class='flag-5'>我</b>司差示掃描量熱儀認(rèn)可

    簡(jiǎn)簡(jiǎn)單單,手搓一個(gè)加熱臺(tái),以后焊武帝也當(dāng)?shù)茫?/a>

    工程名稱:加熱臺(tái)【120*70MM-¥70】前言那么多人都開源了“加熱臺(tái)”,為什么還“開”?想開就開啊……其實(shí)的初衷是做個(gè)低成本畢設(shè)。結(jié)果發(fā)現(xiàn),平臺(tái)上開源的智能加熱臺(tái)成本都比較高!
    的頭像 發(fā)表于 06-03 08:04 ?420次閱讀
    簡(jiǎn)簡(jiǎn)單單,手搓一個(gè)加熱臺(tái),以后焊武帝<b class='flag-5'>我</b>也當(dāng)?shù)茫? />    </a>
</div>                            <div   id=

    智能跳繩的產(chǎn)品體驗(yàn)與思考(一)

    ,雖稱不上跳繩高手,卻對(duì)這項(xiàng)運(yùn)動(dòng)懷有深厚的熱愛,也曾在某電商平臺(tái)上選購(gòu)過(guò)一款智能跳繩,希望能借此提升的跳繩技巧。今天,咱們就來(lái)聊聊和這
    的頭像 發(fā)表于 05-29 11:22 ?443次閱讀
    智能跳繩的產(chǎn)品體驗(yàn)與思考(一)

    聊聊半導(dǎo)體產(chǎn)品的8大封裝工藝

    今天我們聊聊半導(dǎo)體產(chǎn)品的封裝工藝,一提到“封裝”,大家不難就會(huì)想到“包裝”,但是,封裝可不能簡(jiǎn)單的就認(rèn)為等同于包裝的哦
    的頭像 發(fā)表于 02-23 14:42 ?3338次閱讀
    <b class='flag-5'>聊聊</b>半導(dǎo)體產(chǎn)品的8大封裝工藝

    最近正在做一個(gè)逆變器,老板讓用DSP做,各位大佬有沒有開源的代碼學(xué)習(xí)一下?

    最近正在做一個(gè)逆變器,老板讓用DSP做,各位大佬有沒有開源的代碼學(xué)習(xí)一下?
    發(fā)表于 02-04 14:59

    聊聊什么是IGBT的膝電壓?

    聊聊什么是IGBT的膝電壓? IGBT是一種半導(dǎo)體器件,常用于功率放大和電流控制應(yīng)用。作為一種開關(guān)器件,IGBT能夠在低驅(qū)動(dòng)電壓下實(shí)現(xiàn)較高的電流和電壓控制能力。膝電壓是其關(guān)鍵的特性之一,本文將對(duì)膝
    的頭像 發(fā)表于 02-03 16:23 ?1948次閱讀

    聊聊AMBA協(xié)議的evolution過(guò)程

    作為一名新時(shí)代的ICer,一定必定肯定聽說(shuō)過(guò)AMBA協(xié)議,但是卻少有人知道AMBA協(xié)議的evolution過(guò)程,本文將大致聊聊Evolution of the ARM AMBA Specifications!
    的頭像 發(fā)表于 01-19 09:50 ?1283次閱讀
    <b class='flag-5'>聊聊</b>AMBA協(xié)議的evolution過(guò)程