當前位置:
首頁 > 科技 > 程序員開發軟體的意義到底在哪?

程序員開發軟體的意義到底在哪?

有一篇熱文《寫了 8 年的代碼,做過的項目都下線了,程序員的意義在哪裡!》,作者 8 年工作和業餘時間開發幾十個項目,幾乎都關閉了。

想當初,很用心的去開發每一個項目;如今,這些項目只能一個個關閉。

這真的使我很悲觀:我花了那麼多的時間精力,去做的事情,竟然如此的毫無意義。

我相信這也是所有程序員到一定人生階段必定會思考的一個哲學問題:程序員開發軟體的意義在哪?

是為了養家糊口,是為了追尋技術,是為了創業,還是為了改變世界?

在軟體諮詢業摸爬滾打十餘年後,我在整理簡歷時遇到一個難題,就是工作經驗那一塊,做過的項目太多了,要寫好幾頁,這與當前矽谷的人力資源強調簡歷必須簡潔的原則嚴重不符,因為招聘專員在你簡歷上的目光掃描只有短短 15-30 秒。德國傳統的簡歷標準允許稍微冗長,畢竟不少公司廢除紙質簡歷投遞是這幾年才執行的。但德國曆來有向美國看齊的傳統,所以大型公司或新興科技 IT 公司的人力資源,今後有趨勢逐步採用矽谷的標準。

我的首要業務是把原本三四頁的幾十個項目簡介縮短到兩頁以內,於是我開始一條條回顧從業至今做過的那些項目。

那些年的 C 項目

何為 C 項目?這裡 C 指的是 Careers——職業項目。


斯圖加特地鐵公司的軌道內部管理移動系統:這也是我工作的第一個項目,前端後端、資料庫、後台數據介面全部一個人完成。項目現狀卒,但我還是將其留在了簡歷里,畢竟面試時,德國 HR 喜歡問的常常是你做的第一個項目,哪怕你工作了多年。和其他剛入行的新人一樣,我從這個項目中海綿一般地吸收新知識,學了非常多的技術,包括移動端的設計和構架、後端數據介面的交互,以及資料庫的設計與應用,這些技術習慣我一直沿用至今。

德國拜仁州鐵路購票系統:從這個項目我學到了如何開發一套完善的合乎標準的 API。這時我已經把一個叫 J2ME Polish 的框架用得爐火純青,它可以在 Nokia 等手機和 Blackberry 上做出比系統原生界面炫得多的界面。當時國內相當多的團隊也在用,我甚至想寫本中文的技術書。這個想法後來被智能手機系統 iOS 和 Android 的誕生掐滅了。

某大型機械企業生產線二維碼移動作業系統:2011 是 HTML5 和 Widget 崛起的元年,很多手機生產商都發布了自家的小程序 Widget 框架。那年 HTML5 Hybrid 技術剛剛起步,還沒有各類優秀的框架(PhoneGap 剛出生)。Widget 各家標準不一,手機兼容性問題非常嚴重,開發時非常痛苦。今年 Widget 小程序又被各個流量渠道炒了冷飯,不禁讓人聯想起時尚的輪迴。

本土工業界內部管理系統:工業軟體諮詢業從成本出發,多宣傳和採用 HTML5 Hybrid 技術,雖然有 Cordova 等框架,但是和底層的大量交互仍是深坑不斷,這也是我後來一直對 Hybrid App 保持謹慎的原因。這些項目做下來,完善了自己對客戶需求開發流程以及文檔和標準的理解,明白項目不僅僅是軟體開發那麼簡單。

智能家居系統:個人很看好物聯網 IoT 這個領域,涵蓋車聯網、智能家居、雲和大數據等方向,於是入職現在的公司。除了能接觸到業內較為前沿的技術領域外,也深入了解了大型團隊協作化的各類流程。大公司開發流程標準雖然繁瑣,但從另一方面看,這是對質量的一種保障。對於團隊開發、測試、持續集成和持續開發的流程也有了全新的理解,比如在保證進度的同時保證軟體發布的質量等這類永恆的問題。

……


C 項目小結

雖處德國,但我的 C 項目經歷中的消費領域項目基本是伴隨中美互聯網浪潮、移動互聯網浪潮,以及雲浪潮同步進行的。我相信你們肯定做過下列某個或某些領域:團購、LBS交友、SNS、同城、搭乘、車分享等。我做的八九成此類項目在德國已經掛掉,就如國內 IT 行業一樣:大浪退去,誰在裸泳一清二楚。有些項目掛了,說不上方向不對,而是理念在當時太過於超前,受限於硬體或技術。只能說是,正確的項目生在了正確的地點,卻生在了錯誤的時間。

而其中的工業界內部軟體,多半至今還在運作。理念和流程的惰性,沒有讓管理者的決策過於盲目地追隨互聯網浪潮。工業領域數字化技術雖相對陳舊,但強調運行穩定,從某個角度來看,這也算是德國工業界相對務實的一種表現。如果程序員希望自己開發的軟體壽命能久一點,那麼可以進工業界或者金融界工作,因為這些領域的系統相對更強調穩定。

這些已經掛掉的項目的意義,在於推動了整個數字化世界的不斷發展;對個人開發者來說,也不斷積累了技術棧的經驗,同時也在不斷更新個人技術儲備。下面說說程序員修鍊必修科目:Side Project。


程序員的另一面

Side Project 是指程序員在工作之餘做的一些開源、外包或興趣項目。有些同事很可能是某個開源項目的大牛,也可能自己開發數字貨幣,有的甚至已經有了自己的公司,本職工作只是副業。

一個人在一個行業領域工作久了,必然會出現啃老本的狀況,比方說用三五年時間積累的經驗,不斷重複十年、二十年、三十年……進入一個穩定的個人舒適區。在上述 C 項目里,我能移除一部分也是因為某些項目是用之前相同框架改動開發出來的,所謂經驗的重複性,泛善可陳,HR 也不會有興趣。


雞蛋放一個籃子里的風險

IT 是個不同於傳統行業的特殊行業,除了某些領域偏底層開發外,知識的迭代非常快,傳統行業三十年河東三十年河西,IT 可能縮短到兩三年。程序員除了在自身擅長領域深挖之外,還要注重培養其他領域的廣度。廣度不代表什麼都學,而是你自己清楚哪些可以不學。

我永遠記得 2011 年 8 月一個陽光明媚的上午,突然看到一則新聞:Nokia 宣布放棄自家研發多年的 Symbian 系統,擁抱微軟 WP 系統。我立刻告訴了我對面的 Andy,他臉色大變,馬上去老闆辦公室把老闆喊了過來,倆人臉色凝重地又仔細看了這則新聞,然後去會議室開了很久的會。Andy 是個 Symbian C++ 開發高手,當時負責一個將虛擬人生(Second Life)這款遊戲移植到 Symbian 系統里的項目,公司投資開發了一年多。這則新聞意味著:老闆一年多的投資打了水漂,Andy 從業多年的領域突然被造碗的砸了飯碗。Andy 後來轉向了 iOS 開發,我離職幾年後偶遇,他已經轉行汽車行業客戶經理了。


通過 Side Project 不斷學習

如果工作中長期被分配做性質雷同的任務,自己感覺技術停滯不前,那就說明你要充電了。學習是程序員永遠不能丟棄的基本技能,而 Learn by doing,則是掌握新技能不變的定律。Side Project 是最好的途徑,既掌握了技術,又可以通過開源或者外包,提高自己在同行中的聲望。當然,每個人發展的最優路徑不同,堅持下去很可能副業變主業,業界有很多典範。


S 項目小結

從輕量級矢量地圖伺服器 SUAS Map Server,到免費的移動字典和背單詞 App Modict 和 Momemo,再到涵蓋了全球 400 多家物流公司的全球快遞追蹤平台 Packetracer……我一路走來經歷了一系列大大小小的項目,其中的小項目更是不計其數。其實按嚴格的商業成功標準,我這些 S 項目根本談不上成功。但我覺得開發這些項目時非常快樂,可以非常放鬆地學習很多新的領域,這些新的領域在完善項目的同時,又幫我擴展了新的思域。我親手塑造了它們,它們也同時見證我的成長。

通過這些項目我認識了一些有意思的用戶,一些志同道合非常有想法的開發者。別忘了,剛才說的學習模式,除了學以致用外,還有 20% 的知識,是來自於有效社交的。

軟體的意義

如果你看到這還沒有離開,說明你在我冗長的回憶中,找到了一絲共鳴,也許你看見了你自己的影子,或許把你帶回到過去的某一刻。那我也同樣感謝你,作為軟體行業堅守者的一員,不斷磨礪前行。


軟體的死亡

一個軟體,從它被寫入第一行代碼時,就是註定要死的。有的可以活得久一點,有的可能很快夭折。軟體在它存活的那段時間內,如果能服務到真正的用戶,幫助他們解決了生活、學習和工作上的問題,或者幫用戶活得更舒適,過得更舒心,那它就活出了意義,也體現了你,作為開發者的價值。

電影尋夢環遊記中,南美人相信:

當一個人真正被遺忘的時候便是他真正死亡的時候。

同樣,對於軟體來說,最遺憾的不是死亡,而是被所有用戶遺忘。當它被所有用戶遺忘時,就意味著,這個軟體在這個世界上徹底消失了。

如果一位用戶能在多年之後,某個雲淡風輕的午後,一個不經意的瞬間突然想到了你開發的軟體,正在網際網路某處的你,會不會感到一絲幸福?


代碼的永恆

一滴水只有放進大海里才能永遠不會幹涸。

一個項目會死,一個軟體會死,但它的代碼如果開源,並且其中的一部分,甚至只有一小段代碼被其他程序員使用到另外的項目中,不管有沒有引用 Copyright,這代碼可能就實現了某種意義上的數字化的永久存儲。

我相信,開源世界,是永恆的。


寫在最後

程序員的世界註定要隨著摩爾定律不斷地更新和迭代,你我作為程序員,必定會經歷疲憊、質疑、焦慮。我希望你和我一樣,在接近 2018 年末的一個晚上,細細回憶這些年做過的項目。如果在你腦海中,某一個項目的協作場景,某一段重構的代碼,某一次解決問題的雀躍,能讓你禁不住嘴角微笑,並暫時忘卻當天的煩惱,那它,可能就找到了存在的意義。

作者簡介:李輝,德國碩士畢業後,在軟體諮詢業工作多年,涉獵前後端及移動開發構架。現在德國博世智能家居部門任高級軟體工程師。

*作者獨立觀點,不代表 CSDN 立場。

-End-

熱 文推 薦

喜歡就點擊「好看」吧!


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 CSDN 的精彩文章:

縫衣間走出來的創始人,他的開源軟體公司被 340 億美元收購了
65% 的程序員竟都是自學成才?

TAG:CSDN |