「選擇無聊的技術」那些做選擇的重要觀念

最近出現一篇「選擇無聊的技術」中文版文章,我覺得是一篇很棒的文章。 選擇無聊的技術 - Northern Wind 選擇無聊的技術 身為軟體工程師的每次接到任務都要選擇用什...

23 April 2023 · 1 min · nyo

如何在編譯 Go 時加入程式版本資訊

這裡有一段程式,執行時加上 -v 的參數就可以秀出程式的版號 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 package main import ( "flag" "fmt" ) const Version = "v0.1.0" func main() { var flagVersion bool flag.BoolVar(&flagVersion, "v", false, "version") flag.Parse()...

10 April 2023 · 2 min · nyo

將 Git 預設分支從 Master 改成 Main

歷史 2020 年 6 月 git 發佈了一篇聲明,說明了 git 預設的分支 master 是有具有歧視性的單字,接下來會加入一些機制允許使用者設定預設分支名稱,。之後 git 在 2.28.0 加入了 init.defaultBranch...

19 March 2023 · 1 min · nyo

Git diff 強化工具: delta

git diff 的視覺效果不是那麼的友善 網路上可以找到許多 git diff 的強化工具 最近看到 delta 這個工具,似乎可以看得更清楚,馬上把之前用的 diff so fancy 換掉。 以下留幾個截圖...

06 March 2023 · 1 min · nyo

在 Gitlab CI 排程執行 OSV-Scanner

Google Online Security Blog: Announcing OSV-Scanner: Vulnerability Scanner for Open Source Google 在 2022 年 12 月發佈 OSV-Scanner 這個漏洞掃描工具,可以檢查你的專案所使用的依賴開源套件是否有漏洞。支援 npm, go mod, composer, yarn 等相當多的套件管理工...

02 February 2023 · 1 min · nyo

使用 Github Actions 測試 Go

Github Actions 是 Github 推出的 CI/CD 工具,釋出有一陣子了,平常工作上不常用 Github,所以一直沒有機會試試看。 最近回頭更新放在 Github 上的 Golang 程式,就順手的放上 Github Actions 幫...

30 January 2023 · 2 min · nyo

我目前的 Joplin 設定情況

目前的筆記軟體是 Joplin。 Joplin 是一套開源的筆記軟體,會選擇使用他的主要是因為: 使用 Markdown 語法 筆記可以加密 Web Clipper 支援多種作業系統 最近有調整一些 Joplin 的...

26 November 2022 · 1 min · nyo

使用 Ansible Vault 加密敏感資料

ansible vault 可以將資料加密,保護敏感資料。 可以參考官方: Encrypting content with Ansible Vault — Ansible Documentation 或是中文可以參考 Vault — ansible中文權威指南 1.0.1 documentation ansible vault 的指令集如下 1 2 3 4 5...

20 November 2022 · 2 min · nyo

使用標準的 HTTP 狀態碼(status code)做為 REST API 回應結果

REST API 回應結果設計 設計 REST API 時,要好好的處理錯誤狀況並回應清楚的結果可以是一門很深的學問。 基於 HTTP 設計的 REST API,想要 API 使用者掌握狀況,那正確的使...

06 November 2022 · 3 min · nyo

Gitlab CI 推送 docker image 到 ECR 私有儲存庫

最近在尋找適合放 docker image 的私有 registry,因為平常有在用 AWS,所以就來試一下 AWS 的 registry 服務 ECR gitlab 版本: gitlab 15.3 gitlab runner 運作模式: Docker 準備動作 先確定 aws 帳號...

29 October 2022 · 1 min · nyo

如何使用 CI/CD 減少部署成本

認識部署 「部署」是程式開發中相當重要的一項工作,甚至說是最重要的也不為過。完成「部署」,使用者才有辦法使用。可以使用的程式,才是一份有價值的...

22 October 2022 · 5 min · nyo

在 Debian 11 上執行多個 MySQL 實例

測試環境: 使用 vagrant 開 vm 來測試 vagrant box debian/bullseye64 安裝 MySQL 更新 APT 這個版本的 apt 沒有 MySQL server,所以我們要先更新 apt 套件庫。下載 mysql 官方提供的 mysql-apt-config 來安裝即可。 1 2 3 4...

22 September 2022 · 2 min · nyo

為什麼 101 會是入門的代號

什麼是 101 常常看到「某某 101」的書本或是文章標題。 這些標題底下的內容通常是一些入門程度的基礎知識,又或是可以讓你對主題可以有快速又簡單的認識...

20 September 2022 · 1 min · nyo

如何在 github 建立 ansible role

什麼是 ansible role ansible 的 role 讓我們可以封裝許多的 task 跟 handlers 等等 playbook 的工作。 怎麼開始寫 role 這次我們來寫一個 hello world ansible 有提供 ansible-galaxy 的指令,用來管理 role。可以使用這個指令...

20 August 2022 · 2 min · nyo

開發 web service 的 main.go 需要寫什麼

想要用 go 開發一個 web service 很簡單,網路上有一大堆的範例, 但是通常你不太可能直接拿著範例就上戰場打仗。要應用在現實中的場景,通常還需要加一些程式。 這...

31 July 2022 · 3 min · nyo

Docker 的容器重啟政策

docker 本身有提供重啟政策(restart policy)讓你可以控制容器是否要自動重啟。 使用方式 在 docker run 加上 --restart flag 1 $ docker run -d --restart unless-stopped nginx 在 docker-co...

28 July 2022 · 1 min · nyo

Vim 更新後缺少 Python 套件 pynvim neovim

久違的更新一下 vim 1 $ brew upgrade vim 打開 vim 馬上出現一堆錯誤訊息 1 2 3 [vim-hug-neovim-rpc] failed executing: pythonx import [pynvim|neovim] [vim-hug-neovim-rpc] Vim(pythonx):ModuleNotFoundError: No module named 'neovim' E605: Exception not caught: [vim-hug-neovim-rpc] requires one of `:pythonx import [pynvim|neovim]` command to work 這些錯誤好熟悉,似乎是 vim 又找不...

08 June 2022 · 1 min · nyo

團隊的估點(Story Point)經歷

我目前的團隊從正式開始使用 Story Point 到現在,有超過一年的時間了。平常工作時偶然的發現團隊內有一些不一樣的地方,於是想要寫篇文章來記錄一下。 其實大概...

31 May 2022 · 6 min · nyo

升級 go.mod 裡的 go version

1.18 都 release 才想要看看怎麼把 go version 改到 1.17 修改 go.mod 使用 go mod edit 修改 go.mod 檔案的 go version 1 $ go mod edit -go=1.17 go 1.17 的 go mod tidy 增加了 -go 參數,可以直接修改 go.mod 檔案中的 go version 1 $ go mod tidy -go=1.17...

09 April 2022 · 1 min · nyo

Event Storming 的便利貼

Event Stroming 是一個可以用來讓團隊了解商業邏輯並設計軟體的工具,最終用大量的便利貼來呈現結果 The picture that explains everything (from Alberto Brandolini’s “Introducing Event Storming”) 這篇整理一下便...

07 April 2022 · 1 min · nyo