CodingMan.cc

Only Your Code Can Define You

如果你第一次來,可以看看 熱門文章
或者這裡也有一些你也許會有興趣的 小專案

如果你想聯絡我,你可以在 關於 找到我的聯絡資訊。

很高興在這裡遇見你。

CodingMan 2024.05.27

Ubuntu 是目前時下最受歡迎的 Linux 發行版之一,它提供了一個穩定且易於使用的環境,並且支援大量的軟體套件。

本文將會介紹如何在 Mac 上製作 Ubuntu 重灌隨身碟。

巴士因子(Bus factor)一詞起源於西班牙建築大師安東尼·高第(Antoni Gaudí)的事故。高第是20世紀初最具創新精神的建築師之一,他的代表作包括巴塞羅那的聖家堂、古埃爾公園等。

在 1926 年,高第在前往聖家堂的路上,被一輛電車撞倒,最終因傷重不治。而他的離世對聖家堂的建設產生了巨大影響,因為高第是該專案的靈魂人物,很多設計細節只存在於他的腦海中,沒有人知道。
高第的不幸遭遇,啟發人們思考團隊中關鍵人物的重要性。如果一個團隊過度依賴某個人,一旦這個人因意外或其他原因無法繼續工作,整個團隊的運作就會受到嚴重影響。

而「巴士因子」這個概念最早可追朔的記載是 Michael McLay 公開詢問:

如果 Guido van Rossum 被巴士撞到,那 Python 程式語言會發生什麼事?

至此,「巴士因子」這個概念進入了軟體開發領域,用來衡量一個團隊的風險和穩定性。

雲端原生 (Cloud Native) 已經成為應用程式開發的大勢所趨。為了充分發揮雲端的優勢,我們需要對傳統的應用程式進行重構,使其能夠更好地適應雲端環境。

本文將專注探討將應用程式上雲端所需要的重構 (Restructure),包括微服務化、容器化、自動化部署、無狀態設計等。透過這些策略,我們可以將應用程式轉變為雲端原生應用程式,更好地適應雲端環境,提高開發效率和應用程式的可靠性。

給一個軟體工程師的團隊來說,怎麼有效率地管理團隊的文件是非常重要的議題。隨著團隊越來越大,案子也越來越複雜,要怎麼把團隊裡的知識和資訊整理得井井有條,讓大家都能快速找到需要的資訊,是一個值得好好思考的問題。

這篇文章會試著探討團隊文件管理的問題,然後分析現在常用的文件管理工具的優缺點,希望能幫助大家的團隊把文件管理和整理得更好。

在軟體開發的世界中,單體應用程式和微服務是兩種常見的架構風格。而除了這兩個主流的架構風格外,近年來也興起了巨石架構與無服務架構。這四種架構風格各有優缺點,適用於不同的場景。

本文將介紹這四種架構風格的特點,並比較它們之間的差異,希望能幫助讀者更好地理解這四種架構風格,並選擇適合自己的架構風格。

Git 是現代最流行的分散式版本控制系統,是由 Linus Torvalds 在 2005 年所開發出來的。

Git 的設計目標是速度、效率和支援大型專案。Git 的分散式架構使得它在分支管理和合併方面都有著獨特的優勢,因此被廣泛應用於軟體開發領域。

這篇文章將會介紹一些常用的 Git 指令,幫助你更快速地上手並提升開發效率。

TimSort 是 Python 內建的排序法,是一種混合排序法,結合了 Merge Sort 和 Insertion Sort 的特性,並且會根據資料的特性自動切換這兩種排序法。

TimSort 一開始是 Peter McIlroy
在他的論文 Optimistic Sorting and Information Theoretic Complexity 中提出的。
接著在 2002 年由 Tim Peters 為 Python 2.3 開發出來,主要是為了解決當時 Python 內建的排序法 QuickSort 的問題。

目前依舊被廣泛應用於各種程式語言和軟體中,例如 Python、Java、Android、V8 等。

大學時代曾經跟著校隊練習過一段時間,當時有一些體悟很可惜沒有記錄下來。
而過了十多年後,最近又開始重新認真練習羽毛球,所以這篇文章就是想要記錄一下重新體悟到的體悟。

而這篇就是要來談談什麼是 Level One。

此篇心得是我作為趨勢科技 AI contest 2023 工作人員的個人心得與感想。
有錯誤與不完整,是非常正常的 🤣

文中可能有些誤差和不完整之處,但大致按時間順序記述了整個比賽過程。

我不是醫生,這篇文章只是分享我自己的經驗,如果你有相關症狀,請務必去看醫生。

日本擁有豐富的文化遺產,令人驚嘆的自然景觀,美味的美食,以及出色的購物場所。因此日本是許多人旅遊的首選。
而恰當的準備可以讓你的日本之行更加順利和舒適。

這篇文章將會介紹一些日本旅遊的基本資訊,以及一些我們在旅遊中的經驗分享以及一些觀察。

在 Python 中,有一個內建的 heapq 模組提供了最小堆積的函數。
在本文中,我們將會介紹 heapq 模組的用法。

在 Python 中,有一個內建的 bisect 模組提供了二元搜尋法的搜尋與維持排序狀態的函數。
在本文中,我們將會介紹 bisect 模組的用法。

Binary Search 是一種在已排序的陣列中,尋找特定元素的演算法。
是一種很有效率的搜尋算法,在排序過後的資料結構中搜尋數值。其時間複雜度為 O(log n),比線性搜尋的 O(n) 更好。

在 Python 中 list 是 Python 中最常用的資料結構之一。list 可以儲存不同資料類型的元素,並支援許多便利的操作。

本文將簡單介紹 Python list 的一些基本用法。

在這個快速變化的時代,經營個人品牌對任何人的職涯發展都至關重要。
在這篇文章中,我會分享我自己的經驗,以及我認為工程師可以如何經營個人品牌。

這是我自從 2023.04.26 牽了 Model Y 之後,開了一萬公里的心得。

主要紀錄一下這段時間的使用經驗,還有提醒一下關於我牽車之前沒有注意到的事情,最後也分享一下這段時間非常常被問到的問題。

在軟體開發的世界中,Git 是一個極為重要的版本控制工具,用來追蹤和管理你的程式碼更動。

有時候,我們可能需要修改之前的 commit author 訊息,可能是因為作者名字錯誤拼寫,或者需要把 commit 歸屬給正確的人,或是不小心把公司 mail commit 進去

在這篇文章中,我們將學習如何在 Git 中變更 commit author。

OpenAI 是一家人工智慧研究公司,致力於研究如何讓人工智慧與人類世界接軌。
除了大家所熟知的 ChatGPT 以外,在機器人、自動駕駛等領域有許多卓越的貢獻。

這篇文章將從各個角度簡單分享一下 OpenAI 如何幫助我在工程師的工作上有更好的產出。