五件在我靠程式吃飯之前就該知道的事

我的軟體開發生涯開始於大約 15 年以前。但是直到最近 5 年,我才真正地看到它的提高。下面這些事情,我希望在進入軟體開發領域時我已經知道了。如果我早點知道這些事兒,我將會變得更加成功。
評論
評論

本文轉自 外刊 IT 評論

我的軟體開發生涯開始於大約 15 年以前。

但是直到最近 5 年,我的職業才真正大幅長進。

下面這些事情,我希望在進入軟體開發領域時我已經知道了。如果我早點知道這些事,我將會變得更加成功。

軟體開發中沒有「正確的方式」

在我開發生涯的早期,我在學習和爭論上浪費了大量的時間。我錯誤地認為,在軟體開發的諸多方面都存在一種絕對「正確的方式」。

但是,關於軟體開發,幾乎每一件我當時認為是正確的事到頭來都被證明是錯的。

更重要的是,我發現幾乎沒有任何一件事是非黑即白的。在編寫程式和開發軟體的過程中,幾乎所有的決策都是基於當時特定的情形。

我之前已經談過為什麼信仰一種技術對開發人員有害,但是我現在說的這個話題談的不止是一種技術(這麼狹隘)。

沒有通用的最佳實踐,這也是真的。甚至是一些 highy charged 話題。例如,要不要單元測試?敏捷開發和瀑布模型哪個好?這些沒有永遠正確的答案。

在我的職業生涯中,我在「正道」(理想主義)路線的迷宮裡浪費了太多的時間,而不是採用可以幫我走得更遠的「務實」(現實主義)路線。

細讀書不是最佳的學習方式

我一開始學習寫程式和技術知識的時候,我花了太多時間細讀一些關於特定技術的書。

讀書沒錯,但是選擇讀什麼書和讀它的哪一部分非常重要。

比如,我記得我讀過一本非常厚的講 VC++ 的書。(我十分肯定是這本書的更早的一個版本。) 不管怎麼說,這本書是本內容豐富的好書,但是一頁一頁地讀並不是學習 VC++ 最好的方式。

如果我當時先粗略地看看此書的章節,獲得對 VC++ 一些全面的認知,然後再去搞懂其中最最重要的部分,我能學到並記住更多的東西。

如果我當時坐下來,通過實際地做一些東西來練習基礎知識,而不是僅僅讀一下或者過一過書上的例子,我現在會更加成功。你沒有在真正地學一門技術,除非你用它解決了真正的問題。

深入學習一門特定技術是浪費時間

我不僅在「細讀書」上浪費了時間,我在「讀錯書」上也浪費了時間。

我錯誤地相信,從裡到外學習一門特定的技術能很好地推動我的職業生涯。

我花了太多時間讀一些非常專門的技術書,如,ASP.NET 或 Hibernate,而不是讀更多的像《Code Complete》,《Clean Code》,和《Agile Principles, Patterns And Practices in C#》。(BTW,我推薦你去讀所有的這些書,如果你沒讀過的話。)

儘管了解你所使用的技術非常重要,但是成為那個特定技術的絕對專家並不重要。知道確切的 API 調用沒多大好處,你需要的時候可以輕而易舉地查到。

我在太多技術上花了太多時間深入學習,最後這個技術不是死掉了就是我後來放棄不用了。大多數關於這些特定技術的知識最後只代表了浪費掉的時間。

我發現,成為你正在使用的特定的程序語言的專家很重要,因為程序語言方面的知識將影響你很長時間。我仍然百分之百會花時間深入學習 C++,C#和 Java,但是我可能會花較少的時間去學習 C++所有復雜的細節,因為那些細節現在對我幫助不大。

在你的開發生涯中,社群極其重要!

我的生涯早期,我犯了一個錯誤,就是不怎麼去向社群尋求幫助,也不為他人提供幫助。

我一向樂於幫助我的同事,也在不同的工作崗位上也非常善於交際,但活動範圍從來沒有超出過公司。

我在我的生涯中花了大量的時間,試圖在一個特定的公司進行投資,卻沒能將我的時間投資在我參與的軟體開發社群中。

我花了很多時間,做關於技術或者是最佳實踐的內部 presentation,而這些時間原本可以用來製作可以服務於社群的內容和材料,同時也能給我帶來工作上的認可。

我也犯了另一個錯誤,就是認為自己沒什麼有價值的東西去貢獻。

我和很多剛入行的開發者聊過,有時候我覺得,比起我們這些”老油條“,他們有更多的東西去貢獻給社群,因為他們更理解其他初學者蛋疼的問題。

如果我可以重來一遍,我一定會在我的生涯中更早、更多地參與各種會議和使用者群。我會更早地開始寫部落格,並利用我的大部分學習時間去建立專案和資源,去幫助別人而不是只讀書。

參與業餘專案

可能我做的最大的,並且對我生涯影響最大的改變將會是

完全戒掉電視,無盡的任務和魔獸世界(兩個遊戲),並把這部分時間花在一個業餘專案上。

我過去花了相當一部分時間做一些享受性的,但是對我的生活沒有長遠利益的事情。

大約 3 到 4 年前,我已經基本不看電視了,現在我也很少看電影。電視和大部分電影只是一個對時間的巨大浪費,而這些時間你可以用來幹很多有用的事。視頻遊戲很大程度上也是一樣,但至少在視頻遊戲裡,你在積極地做一些事情,而不是被動地吸收一些沒有用的訊息。

我會一直熱愛玩電動遊戲,並且我不認為我會停下來,但是,我真心希望我(之前)把一大部分用來打遊戲看電視的時間花在一個業餘專案上。

慚愧的是,我做的第一個真正的業餘專案是在大約三年前,那時我開始創建我的第一個 Android app。

當你在為別人工作的時候,花時間為自己工作非常重要,不然你就是在為他人建立王國而忽視自己的王國。

我不僅從最近幾年的業餘專案中學到了很多,並且我也從中得到了很多利益。事實上,其中一個,即製作 Pluralsight 課程,是我現在花全部時間在做的。

(本文最初發表在 brotherb 上)

歡迎加入「Inside」Line 官方帳號,關注最新創業、科技、網路、工作訊息

好友人數

圖解智慧國家四大關鍵科技,從不同角度帶你了解台灣的科技應用實力

大家都知道台灣有座半導體護國神山,也聽過許多媒體對台灣科技實力的盛讚,但台灣的科技實力到底強不強?我們從四個面向帶你看台灣作為「智慧國家」到底有什麼實力!
評論
評論

大家都知道台灣有座半導體護國神山,也聽過許多媒體對台灣科技實力的盛讚,但台灣的科技實力到底強不強?自己說不如讓國際單位做的調查更客觀顯示。瑞士洛桑管理學院(IMD)每年9月公布的世界數位競爭力(World Digital Competitiveness Ranking)評比,最近一次報告2021年台灣在全球64個主要國家及經濟體當中排名第8,獲得歷年來最佳名次。

而且值得關注的是,支持數位競爭力的核心要素之一,也就是「科技」競爭力。IMD評比報告揭露台灣拿下全球第2的佳績,從2018年的第11名年排名持續上升,顯見台灣無愧於科技強國之名。


科技小百科:
瑞士洛桑管理學院(IMD)是一個長期研究國家與企業競爭力,在國際上具盛名及公信力的評比機構,並自1989年起發布「世界競爭力年報」World Competitiveness Yearbook,其評比報告與調查結果更是各國政府擬定相關政策之參考。IMD每年會定期公布兩份競爭力評比報告,其一是「世界競爭力年報」,每年在6月公布,2022年台灣在63個受評比國家中排名全球第7名。另一份報告為「世界數位競爭力評比」World Digital Competitiveness Ranking,每年在9月底公布,本篇文章引用的資料為這份兩份研究。


也因為科技與國家發展息息相關,有哪些技術是台灣不為人知的優勢?或是未來產業可大力投資布局的領域?我們找出其中四大項與智慧國家最有關的科技,展現台灣具備強勁的科技能量,或許你已經受惠,也或許你能從其中找到發展的機會。

關鍵科技一、融合海陸空領域的多維通訊

隨著國家管理範圍逐漸擴大,通訊範圍多元且彼此關聯,相關科技如低軌衛星、5G通訊、海底電纜等,形成環環相扣的多維通訊聯網。

仔細洞察2021年的IMD報告,台灣在「行動寬頻的用戶比例」這項指標,拿下全球第1的傲人成績。顯見台灣在通訊基礎建設的投資及普及率,是走在全球領先位置。

尤其5G/6G關聯科技更是未來多維通訊的具舉足輕重的地位,原因是5G衍生的價值鏈相當廣泛,舉凡從晶片、模組、終端、邊緣、系統、到應用服務,可形成完整生態圈。為了強健台灣5G專網的自主技術與供應鏈,從2018年先後成立5G產業發展聯盟、5G垂直應用聯盟、以及5G Open Networking平台,逐漸形成5G國家隊。

除了把5G領先國視為戰略目標,當創新技術落地,更能帶來龐大商機。根據工研院的預估,將5G的小基站、邊緣運算、網路虛擬化等關鍵產品、模組、元件加總起來,2025年的市場規模上看2,510億美元(約新台幣7.5兆元),其他國家還在積極推動5G聯網建設,顯見相關商機仍有相當大發展空間。

關鍵科技二、新型態數位經濟與網路服務

邁向Web 3.0的交叉點,元宇宙被視為下一代網際網路的新機會,市調機構Gartner預測,2026年全世界將有25%的人口,每天至少有一小時投入元宇宙虛擬世界,進行工作、社交、教育、購物、娛樂等活動,並藉由虛擬貨幣、NFT進行數位資產的交易,虛擬經濟逐漸成形。

所謂元宇宙,需要以5G/6G高速網路為基礎,透過VR頭盔/眼鏡作為進入3D虛擬世界的載體,在元宇宙的各種互動體驗則需仰賴AI運算、雲端/邊緣儲存、區塊鏈等核心技術支援。人們在元宇宙內可以滿足從現實世界做不到的事情,形成穿梭虛擬、現實之間的生活體驗與商業模式。

近七成投入元宇宙相關應用的企業,認為元宇宙在未來5年一定會蓬勃發展,虛擬音樂會、虛擬時裝秀、媒體及產品聯名展示活動,將是元宇宙優先發生的商業體驗。

那麼台灣要投入元宇宙有何利基?解析元宇宙供應鏈版圖,主要可分為晶片、光電、通訊、AR/VR裝置、內容以及AI技術,台灣科技可從硬體方面,包含晶片、感測IC、光學零組件、伺服器等擅長領域切入。像是大家熟知的半導體大廠台積電,對於相關晶片的供應就至關重要,另外光電產業也有揚明光、玉晶光、中光電等企業,讓投影技術更精緻,再來連接元宇宙的通訊技術,也有聯亞來支援,而裝置軟硬體、AI技術則是有創意、世芯、智原等企業投入,最後想到AR/VR集大成者,就不能遺漏宏達電在這一塊的耕耘,同樣威盛電、佐臻、未來市(XRSPACE)等品牌也積極佈局,可見台灣已有完整的供應鏈,接下來有志於加入元宇宙的廠家,不妨從自身的專長去思考,相信不論是哪個領域的企業,都能有更多的創新、應用內容投入,完善整個元宇宙生態。

關鍵科技三、疫後時代興起的智慧型代理人 

近年因疫情持續延燒,越來越多領域開始導入「智慧型代理人」,像是零售業者引進半自動化機器,協助人力處理訂單、點餐;又或是醫院使用機器人,藉由AI辨識功能分擔部分醫護工作。

所謂智慧型代理人,以它所知的知識範圍內,自主完成人類所給予的指令任務。智慧型代理人發展至今,能協助人類的廣度、深度越來越多,主要是受惠機器學習的技術更為先進,加上其他的自動規劃、互相協調等演算法的成熟,讓智慧型代理人成為下一波產業發展重點。

世界先進國家紛紛把AI納為國家產業重要發展策略,台灣從2018年就推出「台灣AI行動計畫」,全面啟動產業AI化。發展至今,AI應用已從測試階段逐步應用於各式產業,資策會統計發現,掌握AI技術的新創企業在台灣有300家,逐漸摸索出不同的商業策略與獲利模式。

尤其資通訊、醫療照護是台灣兩大擁有頂尖人才的雙軸產業,在疫情之下,就可以看到醫療+科技所衍生的智慧型代理人應用。像是過去為了解決醫療量能不足,開發「5G智慧防疫機器人」,用來隔離病房消毒、運送餐盒及藥品物資,比傳統人力消毒方式有效節省50%時間,還能降低醫護人員感染風險,讓醫事工作更有效率。

關鍵科技四、資訊安全網保護每個人數位資產

我國面臨網路犯罪、駭客入侵政府、機關,甚至竊取個人資料事件持續增加,如何保護國民安心使用數位科技、保障財產安全將是未來重要方向。隨著AI普及所衍生的龐大資料量之隱私及資安問題,成為棘手的挑戰。從國際AI資安發展現況來看,歐盟在2021年提出人工智慧規則草案(Artificial Intelligence Act),鼓勵值得信賴且道德的AI進行研發與應用。微軟更在今(2022)年禁止提供AI推測情緒技術,並制定「負責任AI標準第二版」、Google則停止AI機器人具有自我意識、能與人類溝通等爭議事件,這些做法也都反映美歐在立法之際,業者也在努力自行節制敏感AI技術。

AI資安,是挑戰也是機會。未來,台灣政府與企業也須密切關注美歐相關草案的立法動態,找出AI規範的共同點,以此界定使用AI產品與服務之要求;因此,AI資安不僅需透過科技來防禦,更需要治理與法規,降低AI所帶來的衝擊。

另外,針對5G資安議題,台灣有展開大型科技防禦策略,包含5G資安防護系統、跨機關資安聯防。5G資安防護系統致力確保業者使用的5G系統具備安全、可靠、信賴,與國內5G專網業者進行服務驗證,以強化國產5G系統的整體資安防護能力。跨機關資安聯防的目標放在建立政府與民間的資安聯防體系,藉由橫向整合跨部會,全面提供威脅情資,減少機關隱匿資安事件,降低事件誤報與漏報。

持續提升台灣的科技能量 打造全方位的智慧國家

圖片資料來源:IMD 2022 世界競爭力年報

台灣的科技能量持續提升,從2022年的IMD世界競爭力年報可發現,而且該報告還指出我國擁有高素質勞動力、經濟活力、企業治理能耐、高教育水準等優勢。上述四項與智慧國家高度關聯的新興科技,涵蓋「數位基盤、數位創新、數位包容」等元素,如何借助科技打造創新、包容的社會,在台灣強勁的科技應用產業鏈上,補強創新的能量,並延續發展優勢項目,將是台灣要持續努力的方向。

了解更多智慧國家方案
看更多智慧國家相關報導

行政院科技會報辦公室 廣告