Skip to main content

Command Palette

Search for a command to run...

至 2022 為止個人的軟體技術觀察

Updated

前言

要年末的,最近都在忙工作沒有好好的更新 Blog 都要生草了,該來寫點東西了。表示自己還活著呢。

Frontend

覺得開始出現有別於以往御三家的狀態,開始有些人嘗試打破現狀,出現了些滿有意思的 Framework 像是 Qwik。還有因為 Compile 的新工具 Vite 而有其對抗的 Nextjs 的 Turbopack(難怪在 GitHub 一直有人叫他支援 Vite,就是死都不要。原來自己搞了一套)。覺得另外一個滿有看點的就是 Deno 宣佈將會開始往支援 npm 的方向靠攏,會不會有大批的人員從 Nodejs 加入,還不好說但覺得也是個有可能的發展。

個人並不特別看好 TypeScript,經歷過早期的 CoffeeScript 時期,目前覺得 TypeScript 就是新一代的 CoffeeScript,等到 JavaScript 的迭代應該就會將其優點加入。到頭來你還是需要好好的先把 JavaScript 先寫好再說。後續未來發展覺得重點會是慢慢開始往 micro frontend 和 WASM 靠攏,再來就是預期會有更多的 Lite ML 的加入。

Backend

Rust 的蓬勃發展的算是有擠壓到 Go 的範疇,也算是有把 C 家族的人帶進來。但我覺得其學習曲線還是有點高,可能發展上還會有些需要再調整的。Go 的泛型還不是很完善,但總是有在進步。個人滿期許 Kotlin 在跨平台到 Server Side 的可能性,但是目前覺得還沒有很爆炸性的成長和實例。

個人覺得在 Backend 伺服器的語言選擇上,會比較推薦 Node.js、Python 和 Java 作為優先的選擇。可能跟個人經驗有關,在常常需要串接第三方服務,像是 Google、Facebook 等。常常會有的 SDK 這三種語言是最常見的,且社群的發展的套件也是多樣在早期找尋 Solution 會比較方便。

MariaDB 居然上市了?坦白說自己還沒什麼聽到比較有名的使用上跟 MySQL 的差異或優勢。如果真的要選擇更優異的還可能直接去選擇 PostgreSQL。

在於監控上比較有看頭的就是 Grafana 體系了,有別於過去大眾的選擇 ELK 體系,Grafana 也開始自成一個系列依序的提供了 Loki、Tempo、Mimir 等,對於 ELK 體系應該挺有壓力的。

Cloud

Cloud 上目前的三強鼎立(其實應該沒有鼎立),GCP 感覺就還是維持他的砸錢買服務整併的策略,但是在 Cotainer 服務上還是幾乎是首選。AWS 的 EKS 真的就是個半殘品,其他的 Container 服務也是差不多。但是 AWS 的厲害之處就是服務的多樣和各種 Open Source的選擇。個人滿佩服的就是搞定出 macOS 的 EC2,之前要弄 Apple 系列的 CI/CD 就是要買台裝置在公司內,現在真的有機會完全 Cloud 了。再來是過去 GCP 可以說有台灣機房,但是現在 AWS 也有提供台灣 Local Zone 了,其優勢也被略減。

未來 Cloud 服務的發展應該會依舊的往 ML Data 的處理和多雲管理的方向走。

目前感覺:

  • AWS 依舊強勁

  • Azure 微軟體系首選,穩定發展

  • GCP 容器化首選,拼裝車

Mobile

Swift 的發展目前略微擔心,之前有爆出大佬出走,批評內部決策的問題。希望是能好好發展。Kotlin 感覺是個還在耕耘跨平台的方向,但是 Google 目前秘密研製的 FuchsiaOS。未來 Google 會不會正式 GA FuchsiaOS 後屏棄 Android 系統,不再以 Kotlin 為首選還是難說呢。

SRE

Kubernetes 依舊橫掃全場,沒有什麼好說的。依舊的強勁,目前還沒有其他的對手出現。但是手動建制和維運還是相當困難的一件事(畢竟本身服務就很複雜了),還是建議直接使用雲端服務吧。

在 Infrastructure As Code 的領域,HashiCorp 系列也依然強勁,尤其是與 AWS 合作推出的 cdktf 讓其觸角更延伸了。但是還是希望 terraform 本身可以好好學習一下 terragrunt 的優點,當服務一大之後那個要 plan 或 apply state 真的是很久且 dependency 容易出錯。或是拓展出 plugin 的系統,可以有更多的變化。

More from this blog

如何開始入門軟體工程領域 - 名詞解釋(長期更新)

現在應該開始有很多人想要踏入軟體工程的領域,但在進入這個領域之前,覺得先了解一些名詞,可以在入門時更有方向也更知道要用什麼關鍵字去找尋有用的資訊。這篇文章就是想要幫助想要入門的人理解一些軟體工程裡的專有名詞。 作業系統 這一區塊主要解釋跟作業系統層面相關的名詞 英文中文解釋 Operation system 簡稱 OS | 作業系統 | 就是電腦的作業系統,是三大作業系統分別是:Linux、Windows、macOS | | Linux | | 自由和開放原始碼的 UNI...

May 10, 2023

我的 MacBook Pro (Apple Silicon) 設定

現在開始因為 ChatGPT 的出現,各種 AI 助手的功能都跑出來了。想想自己用了許久的環境設定也應該要來重新審視和建立新的開發環境了,僅此紀錄我個人的環境配置步驟和設定。 環境前置步驟 還原 MacBook Pro 至全新環境 macOS(全部資料刪除) 設定好初始設定後,登入 Apple ID 進入 App Store 確定 macOS 版本和預設 APP 都更新到最新 macOS 版本 到系統設定調整所有設定至個人習慣的設定 三指拖移 觸控板手勢開啟 防火牆開啟 輸入法設定...

Apr 25, 2023

ChatGPT 下的發展預想

從 ChatGPT 問世到現在,有許許多多的文章和討論出來。先從最早的 Google 要完蛋了,到後來的工作要被取代了,工程師失業了。 我就比較沒有想要馬上出來評論一下,我喜歡讓子彈飛一會兒。跟討論一下我自己比較在意的討論點。 Google 為什麼慢了? 結論:因為他需要更小心 很多人說 Google 怎麼被微軟搶先了一步。剛開始 Bing 說要加上 AI 的時候大家都在說 Google 怎麼慢了。我就馬上跑去看 OpenAI 的網站,靠北呀啊就 Azure 贊助的。那當然在正式上線 ChatG...

Mar 23, 2023

不工程的攻城獅

223 posts

I am not a programmer because I am not good at programming. But I do programming. Love to learn new things. An animal lover and a dancer. My oshi is 潤羽るしあ.