AI Agent 到底是什麼?跟 ChatBot 差在哪?
AI Agent 是什麼?跟 ChatBot 聊天機器人差在哪裡?用「問路人 vs 個人助理」的比喻,解釋 AI Agent 的三大特性,以及為什麼 2025-2026 是 AI Agent 爆發的一年。
Claude Cowork — 當 AI 從「陪你聊天」變成「幫你做事」
大多數人用 AI 還停留在聊天問答,但 Claude Cowork 讓 AI 從「回答問題」變成「幫你做事」。介紹 Cowork 是什麼、能做什麼,以及 Skills 如何擴充它的能力。
[Vibe Coding 基礎教學] 網頁運作原理解析:從輸入網址到看到畫面
你有沒有想過,當你在瀏覽器輸入一個網址,按下 Enter 後,畫面是怎麼跑出來的?為什麼你用 AI 做出來的小工具,直接雙擊 HTML 檔案就能用,但要讓別人也能用,就得「放到網路上」?這些看似理所當然的事情,背後其實有一整套網頁運作原理。
今天這篇文章,我想帶你從頭理解「網頁是如何運作的」
Vibe Coding 擺脫 AI 味!我如何用「複製大法」做出高質感網站
你有沒有這種感覺:用 Vibe Coding 做出來的網站,看起來都長得很像?一看就知道是 AI 寫的,那種排版、那種配色、那種整體感覺,就是有一股濃濃的「AI 味」。
今天我想分享一個超級簡單、但效果驚人的方法,讓你用 Vibe Coding
Claude Code 不只 Code! Agentic AI 自動撰寫 SEO 文章完整指南
你是不是以為 Claude Code 只能用來寫程式?覺得 AI 工具離自己很遠,好像只有工程師才能玩得起?如果你曾經對著一堆 AI 工具發愁,不知道該怎麼開始,或者想要用 AI 幫忙寫文章卻不知從何下手,今天這篇文章將會讓你耳目一新。
這篇文章本身,就是用 Claude Code
Markdown 語法完整教學:讓你的文字排版又快又美
如果你曾經在 GitHub 上看過漂亮的專案說明文件、在 Notion 裡快速排版筆記、或是用 Obsidian 建立個人知識庫,那你其實已經跟 Markdown 打過照面了。今天這篇文章,就是要帶你徹底搞懂這個簡單卻超強大的標記語言!
好的工具讓你專注在內容,而不是排版
Markdown 是什麼?
Markdown 是一種輕量級標記語言,
如何自架 Ghost 部落格:從零開始的完整教學指南
"給人一條魚不如教人如何釣魚" — 當你手上不只有錘子時,世界將展現出更多可能性。
在 Hammer Hub,我們相信選對工具的重要性。當談到架設部落格時,WordPress 雖然普及,但對於追求簡潔、效能與 Markdown 寫作體驗的創作者來說,Ghost 可能是更適合的選擇。
這篇文章將手把手帶你完成 Ghost
Vibe Coding 基礎 : API vs Webhook,差別是什麼?
在上一篇文章中: HTTP API 介紹 - 打開網路服務溝通的大門,我們了解了 Client-Server Model 和 HTTP API 的基本概念。今天,我們要來談談另一個在現代 Web 開發中常見的概念:Webhook。很多人會把 API
Vibe Coding 基礎 : HTTP API 介紹 - 打開網路服務溝通的大門
在現代網路世界中,各種服務和應用程式之間需要互相溝通、交換資料。無論你是在使用 n8n 的 HTTP 節點,還是嘗試用 AI 輔助寫程式來串接不同的服務,理解 HTTP API 都是一個關鍵的基礎知識。今天,讓我們用最簡單的方式,來理解這個概念。
Client-Server Model:
選擇Ghost自架部落格網站,像Medium和方格子簡單易用好看,但又擁有自主權
你有沒有在Medium上寫過文章,結果發現大家都說「我在Medium上看到的」而不是記得你的名字?或是在方格子累積了一些粉絲,但總覺得這些讀者好像不是真的「你的」讀者?如果你正在思考是不是該從這些平台「畢業」了,這篇文章會分享我的想法。
從租房到買房的比喻
在Medium或方格子寫作,就像租一間裝潢好的套房 - 拎包入住,什麼都不用管,超方便的。但隨著你越寫越多,
使用Ghost來做你的部落格?少即是多的內容發布哲學
你是否曾經花了整個週末,只為了在WordPress上安裝一個簡單的訂閱功能?是否曾經因為外掛衝突,導致網站在半夜掛掉?如果你只是想要一個美觀的官網、持續更新的部落格,以及能夠經營訂閱制內容的平台,Ghost可能正是你在尋找的答案。
Ghost:專注做好一件事 - 部落格與訂閱電子報
Ghost誕生於2013年,由前WordPress核心開發者John O'Nolan創立。他離開WordPress的原因很簡單:WordPress試圖成為所有人的一切,而Ghost只想成為內容創作者的最佳夥伴。
WordPress vs Ghost:2025年部落格平台終極對決
做為本網站的第一篇文章,就來寫篇用來架設這個網站背後的開源專案ghost!
想要在睡覺時也有資產持續賺錢嗎?厭倦了每天通勤擠捷運的生活?越來越多人透過建立部落格和內容網站,成功打造被動收入來源。根據最新數據,Ghost平台上的創作者在2024年透過訂閱制度創造了超過1億美元的收入,而WordPress更是支撐著全球43.4%的網站。選對平台,可能就是你邁向財務自由的第一步。
為什麼選擇正確的平台如此重要
在2024年底的今天,內容創作已經不再只是興趣,而是一門真正的生意。Tangle政治評論網站透過Ghost平台,年收入已超過85萬美元,而許多WordPress網站透過廣告和電商每月創造數十萬的營收。
一天要擁有多少的空閒時間才會快樂?
總是覺得好多事情想做,卻沒有足夠的時間,如果退休不工作了,每天就能有大把的時間去做想做的事,
這可能是許多人的夢想及努力的目標,當然我也不例外.
但! 擁有更多的空閒時間,真的就會更快樂嗎?
有更多的時間就會快樂嗎?
根據這篇論文Having Too Little or Too Much Time Is Linked to
RabbitMQ和Kafka有何不同?何時該選用哪種產品?
Message broker主要有分為兩類,分別是memory based及log based,
Redis或RabbitMQ作為broker的是memory based的,而log based最有名的,
就是Kafka。這兩種有何不同呢?何時又該選用哪種message queue?
這篇文章首先會討論message broker普遍的基本特性及用法,
然後再探討兩種broker內部設計的不同,最後就可以比較在各種特性上,兩者的不同。
在上篇文章什麼是message queue?
遠端工作職缺數變化: 104求職網站搜尋結果統計
疫情(Covid-19)的關係,算是打開了所以工作遠端的大門,這篇文章利用了網路爬蟲程式,
不間斷地收集104求職網站中有提到遠端的職缺數。
圖表
從2021年11月至今的資料,圖表如下:
原始資料
原始資料我就放在google試算表上,有興趣的朋友可以自行取用。
結論
可以看到整體趨勢是一直往上的,過去我在公司中應徵找人的時候也是這種感覺,來面試的人幾乎都會詢問是否可以遠端工作,
在遠端工作越來越普遍的當下,企業也該加減思考如何擁抱遠端工作。
自從2022年6月開始,我在沒有轉職的情況下,
簡易老家房間DIY改造,成果如何、購物清單及總共花了多少錢呢?
因為開啟了全遠端工作模式的關係,不是在環遊世界工作,就是在家工作。退掉了台北租屋處回到老家之後,
有了改造房間的念頭,這篇文章要簡單分享改造房間最後的成果,以及總共花費了多少錢~(文末有購物清單)
成果
首先就來看看改造前後的房間模樣吧!
總共花費
以下是這次改造中,所有購買的東西。
購買物品
價格
免膠地板(5坪)
14990
倆好壁貼 123cm
在紐西蘭皇后鎮周圍滑雪要花多少錢?
夏天想滑雪怎麼辦?當然就是去南半球囉~這篇文章會帶你看看去到紐西蘭滑雪的主要花費,將包含以下幾點:
* 雪場纜車票
* 裝備租借
* 交通
其他還有像是機票、飲食、住宿就不討論囉~
雪場纜車票
結論先行: 一天的纜車票平均為85~150紐幣。
價差主要來自於一次購買多少天。一次買三四天以上的話,每天的價格大約就是100紐幣。
雪場
1 Day
台北人每天上下班都會花多少時間跟費用通勤呢?
通勤是辦公室及學校生活必須的部分,太長的通勤時間對生活滿意度真的是一大影響,
來看看在台北市工作的人們,每天都會花多少時間跟金錢在通勤上吧!
通勤時間統計
以下為690名受訪者通勤時間的分佈,其中以16-30分鐘佔比最多,佔了40.8%,其次為15分鐘以內。
平均而言,一趟所需的通勤時間約為29分鐘。
通勤費用統計
以下為690名受訪者通勤費用的分佈,其中一趟所需花費的通勤交通費用在20元以下佔比最多,為36%,其次是21-40元。
平均而言,一趟所需的通勤費用約為42.6元。
五種從高處俯瞰皇后鎮周遭景色的方法
冬天從皇后鎮高處往下看,有藍天、白雪覆蓋的山頭、咖啡色及綠色植被、湖泊及城鎮,
可以將所有的美景盡攬眼底,真的是非常壯闊。
今天將介紹幾種方法,讓你從高處俯瞰整個皇后鎮,依序由高度高的到高度低的是:
1. Skydive
2. The Remarkables Ski Area
3. Skyline纜車
4.
房間DIY改造: 工作區域篇,我需要一張升降桌嗎?
因為開啟了全遠端工作模式的關係,不是在環遊世界工作,就是在家工作。退掉了台北租屋處回到老家之後,
有了改造房間的念頭,這篇文章要簡單分享改造房間中關於工作區域的部分!(文後有購物清單唷)
久坐怎麼辦?
身為軟體工程師,需要長時間久坐,如果姿勢又不良,蠻容易造成腰部下背部的不適,
這邊先簡單地給大家一個關鍵字: 下交叉症候群。
那該怎麼辦呢?就是要時常起來動一動~ 為了讓自己不要忘記時常站起來一下,我是用以下幾個方法:
1. 裝水的杯子不要太大,
想要簡單卻高效的生活嗎? 五個有關簡化生活,時間管理的法則
每天被一大堆事務包圍,覺得喘不過氣忙不過來嗎?或許你可以試試簡化你的生活,
今天要介紹一些前人所觀察歸納出的一些法則及心理現象,
將其應用在生活中,幫助我們簡單生活卻不簡單。
房間DIY改造: 地板篇
想改造自己的房間的地板,免膠地板還是SPC卡扣地板,施作過程有什麼要注意的嗎?會花多少錢跟時間?
這篇文章將給你我親身經驗的解答。
柴嘉尼效應: 如何減輕心理負擔、更高效地完成工作?
不知道大家有沒有這樣的經驗?在絡繹不絕的早餐店裡,老闆娘總是記得還有哪些餐點還未送到客人手裡,
不過一旦那些餐點已經上過了,卻好像就立刻忘記了。
柴嘉尼效應(Zeigarnik Effect)
我們對未完成的事情會比起已完成的事情更容易記住,這就是柴嘉尼效應。
布魯瑪.柴嘉尼(Bluma Zeigarnik),二十世紀初俄國的一位心理學家,也是在某天下午觀察咖啡廳的服務生時,
有了這個假設,換句話說,未完成的工作比起完成的工作,佔了我們更多的腦容量。
我是如何跟我老闆談要遠端工作的?
想遠端工作該如何跟老闆說?該怎樣說服老闆?今天將分享一些讓雇主及員工都雙贏的想法!
三個數位遊牧可以尋找住宿的方法及各平台
作為一名數位遊牧者,找住的地方一定是我們會常常遇到的問題,
每當要移動到下一個地點時,就必須再做一次這個事情。
幸運的是,隨著遠距工作越來越盛行,也有越來越多的服務提供住宿選項給你,
今天將分享以下幾種尋找住宿的方法以及相對應的平台網站,花費依次由高到低:
* 短期住宿
* Coliving space
* House sitting
短期住宿
租房子通常會有一個一年或半年的租約,但身為數位遊牧,可能沒想在一個地方待那麼久,或是有簽證的限制,
此時短期住宿會是一個方便的選擇,
房間DIY改造: 牆壁篇(油漆、開關面板、變電箱遮掩)
想改造自己的房間,怕沒有美感的自己不知道要怎麼選油漆顏色嗎?發黃的開關面板及醜醜的變電箱該怎麼辦?
今天將分享我如何改造,在沒有什麼美學素養的前提下該如何進行!
[讀書筆記] 少才是力量: 簡單高效6大原則
在現在這個時代裡,我們被太多的資訊、選擇及任務轟炸,
許多人都想在每天24小時的時間裡,完成更多的事,各種時間管理的方法層出不窮,
不過這本書卻是要大家簡化生活,作者要跟大家分享如何做更少的事,卻可以成就更多!
作者是zenhabits.net網站的創辦人,
在幾年裡,作者每次只專注一個目標,而不是一心多用,並且用這個方法完成了以下的目標,
並將過程記錄在部落格中:
1. 每天慢跑
2. 健康飲食
淺談各種資料庫cache策略: cache aside、read through、write through、write back
資料庫的快取策略那麼多種: cache aside、read through、write through、write back,
常常哪個是哪個也分不清楚、記不起來,今天將分享這些策略背後的內功心法,
讓大家不用在為了記不起這些招式的名稱而傷腦筋。
什麼是資料庫快取(database cache)?
快取是一種策略,用來增進你的應用程式及資料庫的效能,
作法是將常使用的資料放在具有更快存取速度的的記憶體中(in
遠端工作模式對於雇主有哪些好處?
在上篇文章中: 遠端工作有哪些好處?
以員工、接案者或自由工作者分享了遠距工作模式有哪些好處?今天換個角度!
來看看身為老闆的話,這樣的工作模式會帶來哪些好處。
我又不是老闆,為何要知道這些?
知己知彼,百戰百勝,當你有一天想轉換工作模式必須跟老闆談判時,
知道這能為老闆帶來哪些好處,將能夠讓你將心比心地創造出雙贏的局面。
遠端工作模式不是零和遊戲,員工得到更多自由的同時,雇主也能同時獲得更多,
談判能更成功的關鍵,就是能夠為雙方都創造出價值,然後再一起來分這一杯羹,
房間DIY改造: 大門篇,如何用剩的乳膠漆來改造大門
想DIY重新裝潢佈置自己的房間,房門不想費功夫整個換掉,
但又跟欲改造的風格會格格不入,該怎麼辦呢?
這篇文章將分享有哪些方法可以改造房門,各有哪些優缺點,我最後是怎麼做的,花了多少跟多少錢,
以及最後的成果分享~(見下圖)
有哪些方法可以改造門
常見的有兩種方式,分別為: 貼皮及上漆。
貼皮
表面平整的家具才比較適合使用貼皮,不平整的表面,壁貼將難以施工,
貼皮比起油漆,就是除了顏色之外,
你可以在這46個國家拿到數位遊牧簽證!
如果你是個企業家、接案工作者、或像我一樣是個可以遠端工作的打工仔,
那麼你可能對數位遊牧(digital nomad)這樣的生活型態有興趣~
數位遊牧
什麼是數位遊牧呢?就是只要有電腦跟網路,你就可以在任何你想要的地方工作!
你有實現環遊世界、體驗各地的文化跟認識世界各地的人的夢想嗎?
不用等到退休!現在就可以收拾你的行囊,前往你夢想中的國度!
延伸閱讀:
* [讀書筆記] 一週工作4小時: 擺脫朝九晚五的窮忙生活,
遠端工作有哪些缺點?以及該如何克服?
在上一篇文章: 遠端工作有哪些好處?中,
提到了許多遠端工作的優點,今天將來看看有哪些缺點,並且提出相對應的解決辦法!
遠端工作的缺點:
1. 工作和生活混在一起
不用到辦公室上班,意味著你必須自己決何時何地工作,這是優點,同時也可能是個缺點!
早上起床準備早餐,出門通勤到辦公室,準備個咖啡開始工作,跟同事吃午餐,下午繼續工作,下班去運動,
回家吃個晚飯好好休息結束一天。
房間DIY改造: 老舊家具及櫃體篇
想DIY重新裝潢佈置自己的房間,家裏有老舊家具或櫃體還是堪用的丟掉可惜,
,又或者它是系統家具,做死的也不想費功夫整個打掉,
但又跟欲改造的風格會格格不入,該怎麼辦呢?
這篇文章將分享有哪些方法可以改造老舊櫃體,各有哪些優缺點,我最後是怎麼做的,花了多少跟多少錢,
以及最後的成果分享~(見下圖)
有哪些方法可以改造家具
常見的有兩種方式,分別為: 貼皮及上漆。
貼皮
表面平整的家具才比較適合使用貼皮,不平整的表面,壁貼將難以施工,
遠端工作有哪些好處?
這篇文章將分享遠端工作有哪些好處,也就是我在慢慢轉變為數位遊牧生活型態的過程中,
所體會的一些點:
* 節省通勤時間
* 時間彈性
* 地點彈性
* 專注工作、生產力提升
* 省錢
在 Instagram 查看這則貼文 穆穆的生活實驗室(@mumu.life.lab)分享的貼文
節省通勤時間
我想這就是最顯而易見的好處了!
有研究指出,
HTTP API: 該如何管理一份很大的OpenAPI document?
OpenAPI的document文件可以變得非常大一份,特別是當你有好幾百個routes的時候,
這時候單一份的yaml檔管理起來可能會非常頭大,這篇文章將分享在這種情況下,
我是如何將一份大的檔案拆分成許多小的檔案,易於管理。
OpenAPI Specification
OpenAPI也被稱為Swagger,是一個用來描述你的API的標準,可以根據這個標準來撰寫你的文件,
我想你應該很熟悉了,如果還不熟的,
可以先看看官方的說明: OpenAPI specification。
我如何拆分檔案
使用JSON格式
官網上的範例文件都是使用yaml,而我偏好使用JSON,
如何使用Notion打造Kanban based的待辦清單
待辦清單系統應該具有哪些原則,什麼是Kanban,
以及我如何使用Notion,來打造自己的Kanban based的待辦清單系統
為什麼逛完IKEA要來隻霜淇淋: 峰終定律
為什麼IKEA會在最後結帳區的前後,設置餐廳區及有賣霜淇淋的小吃部呢?
這麼做對我們購物的體驗有什麼影響嗎?峰終定律可能可以給我們一點答案。
什麼是峰終定律
我們對於過去的一段經驗及體驗的記憶,主要由兩個部分決定: 高峰時於結束時的感覺。
這是由著名的心理學和經濟學家丹尼爾.康納曼(Daniel Kahneman)所提出,他也做了以下實驗來證實這個理論。
結腸鏡實驗[1]
照胃鏡腸鏡總是一個令人不悅的體驗,實驗將受試者分成兩組,對照組如往常一樣,照完腸鏡就結束,
架設個人網站、撰寫部落格帶給我的5個好處
開始認真規律的寫部落格寫到現在,大概過了近一年的時間,這篇文章將分享
寫部落格帶給了我哪些好處:
* 積極學習
* 豐富生活
* 分享輸出
* 個人品牌
* SEO知識及Markdown語法
積極學習
當你需要規律的有產出的時候,等於變相地要求自己有所學習及成長,如果寫不出來,
就代表最近這些日子沒有什麼長進了😂
寫作就是 輸入 + 處理 + 輸出,不管是工作專業上的、一般的閱讀或是實踐一些新得到的想法都好,
掌握這3個原則,打造出最適合自己的代辦清單系統
待辦清單要如何設計?這本書《一流工作者都在用的待辦清單》將任務清單應該具備的原則列舉出來,
並分析各種待辦清單系統的優缺點,讓讀者可以根據自己的情況,設計出最符合自己的待辦清單!
STEPN實測: 效率對產出的影響?我應該要升級我的跑鞋嗎?
買了跑鞋開始跑步的大家可能會有些疑問,我應該升級我的跑鞋嗎?升級了之後,
點數要加到哪裡呢?今天這篇文章將分享我實測下來的結果,升級並提升效率值後,
但每次跑步GST的產出有多少的影響!
實測數據
以下是我11天的十跑紀錄,每次皆為花費2能量,以5分速(12km/hr)跑10分鐘的GST的紀錄,
橫軸為鞋子的效率值,縱軸為GST產出。
散佈圖
原始數據
效率
產出(
STEPN: 從2022-04-10進場至今的收益紀錄
真的可以賺到錢嗎?每天可以賺錢的速度有多快,幾天才可以回本呢?
對於還在猶豫不決、思考著到底要不要進場的玩家們,這些大概就是最重要的問題吧!
這篇文章紀錄了我從2022-04-10進場,花了多少錢買鞋子,
以及後續每天的產出,希望能幫助還在觀望的玩家對實際情形有近一步的了解~
投入金額 (4/10)
在4/10以10.1SOL購入第一雙runner的鞋子,當時1SOL = 110USD,而1USD = 28.
STEPN攻略: 想進場跑步該如何挑選鞋子?
在考慮進場STEPN邊跑邊賺嗎?對於想買鞋嘗試玩玩看的玩家,
買鞋時有哪些點是需要考量及注意的呢?將在這篇文章一一介紹。
可以看到上圖,在撰寫這篇文章時(2022-04-16),
最便宜的鞋在市場上的價格已經來到約12SOL,折合美金約為1224USD,台幣為35655NTD。
認識鞋子
首先我們先要認識鞋子,好知道哪些因素會影響價格,就算有時有些因素不太影響價格,
卻會影響到之後跑步賺錢的效率!
鞋子有分品質(Quality),分別為Common、Uncommon、Rare、
REST API Design: Pagination
什麼是Pagination?為何要使用,以及在HTTP API設計中該如何實作呢?
如何開始開發你的API: API first principle and OpenAPI
開發API應該要使用怎樣的流程,先定義好介面有哪些好處,以及可以使用哪些工具呢?(OpenAPI 3.0)
[讀書筆記] 遠距工作模式: 麥肯錫、IBM、英特爾、eBay都在用的職場工作術
為何要遠距工作?遠距工作有哪些好處?常見會遇到的問題有哪些?該如何解決,
不管是以雇主的角度還是以員工的角度,
在這本書《遠距工作模式》裡都有提及。
為何要遠距工作
遠距工作會帶來好處呢?以下從雇主或員工的角度來看待這個問題
遠離令人分心的辦公室環境
在辦公室中,可能會有各種分心的來源,容易被不斷地打擾,時間被切割成許多的碎片,
對於有些需要長時間不被打斷,才能進入狀況的任務,這樣的環境並不適合。
當然並不是說其他的地方就沒這問題,
如何在Mac OS中使用command line來將文字複製到剪貼簿
在Mac OS裡,該如何使用command line的指令來將你想要的資料複製到剪貼簿呢?
那就是可以透過pbcopy及pbpaste指令,也下為一些例子。
複製
*
複製123
sh
echo 123 | pbcopy
*
將words.txt檔案中的文字,複製到剪貼簿
sh
cat words.txt | pbcopy
[讀書筆記] 做自己的生命設計師
我的生活該要怎麼度過呢?找不到喜歡感到熱情的事怎麼辦?對未來的職涯感到迷茫,
想要一份我喜歡的、我所熱愛的、最好是有意義,可以改變的世界的工作,該怎麼去進行呢?
《做自己的生命設計師》這本書,就是來試著回答上述這些問題,
作者在史丹佛大學開設設計人生的課程,將設計思考的工具及心法,應用到你自己的人生當中,
讓我們開始學習如何做自己的生命設計師吧!
設計思考是什麼
設計就是要來解決問題,首先先來看看問題有哪些種類吧!
重力問題
我最近碰上了一個問題,
成功是什麼? 5本關於自我成長的推薦書單
人生感到迷惘嗎?找不到目標,或是無法堅持培養好習慣嗎?該如何在各方面取得實際進步?
這篇文章將推薦五本自我成長的書單,期望能幫助大家過上想過的生活。
[Golang] 4種發起HTTP請求的方式
這篇文章將介紹如何使用golang作為http client,來發起http request,將介紹以下4種做法:
* http.Get
* http.Post
* http.PostForm
* http.NewRequest
一個HTTP Request message不外乎就是method、url、headers跟body,如果對於HTTP message還不熟悉的,
動機: 到底是什麼在驅動、引導我們的行為?
有哪些力量驅動著我們每天的行為,做事情的動力到底來自何處,是獎賞或是處罰嗎?
利誘小孩子來引導他們做我們希望他做的行為是對的嗎?
[讀書筆記] 更快樂:哈佛最受歡迎的一堂課
作者於2002年在哈佛大學開始講授 正向心理學,這門課主要探討的問題就是: 如何幫助自己和別人活得更快樂?
第一年只有8人選修,6人退選,第二年學生多達380人,第三度開課時,有855名學生註冊,成為哈佛選修人數最多的科目。
該如何解釋哈佛大學的學生對正向心理學的需求日益殷切的現象?大家對快樂學越來越感興趣?
是現代人越來越憂鬱嗎?(雖然事實上是如此[1])還是新的教育方式或生活型態的影響?
其實『快樂學』並不是現代的產物,從柏拉圖、
《原子習慣》應用: 我是如何養成閱讀習慣
都知道閱讀有許多的好處,但該要該如何培養呢? 這篇文章將分享我是如何從不看書,改變成現在每天都有閱讀的習慣,
利用原子習慣所提出的框架,應用到自己的生活之中。
[System Design] 淺談Database Replication,有何優缺點、做法及何處可見?
database replication是什麼?有什麼好處及缺點,方法又有哪些呢? 可以在許多系統中看到replication的應用,
像是各種NoSQL、自己系統的(讀寫分離、cache、search engine)、CDN、DNS等等...
Node.js: 7 cryptography concepts using ctypto module
這篇要介紹nodejs中的crypto module的用法,如何使用這個module來實現密碼學中常見的概念,
包含hash、salt、password hashing、
MAC(message authentication code)、
Symmetric Encryption及Asymmetric Encryption
及Digital Signature。
Hash
可以使用指令openssl list -digest-algorithms來查詢可用的algorithms,
[System Design] 淺談Database Partition. Centralized and Distributed.
什麼是partition,vertical跟horizontal partition有何不同? 阿sharding又是什麼?
這些跟NoSQL有關嗎? 在傳統的RDBMS,像是MySQL或PostgreSQL中,這些概念也有用嗎?
這篇文章將討論上述的問題,看看partition在RDBMS及NoSQL中的實踐應用,以及各種優缺點。
什麼是Partition
Partition原意就是分拆的意思,在資料的世界裡,就是把一份資料,分成許多小份,
比如說log file的rotation也是,把今年的日記寫在同一本,去年的日記是另一本也是partition。
什麼是Hash Function? 有什麼特性及用途?
除了了解hash function是什麼及其特性之外,用更生活化的方式來展現這些特性,以及以有趣的應用來更加地熟悉hash function。
[讀書筆記] 原子習慣: 細微改變帶來巨大成就的實證法則
《原子習慣》
這本書收首先帶我們了解到習慣是什麼,它就是我們平常不太會去注意到,
卻是很大地影響我們人生的一件事,更清楚地認識了習慣及其重要之後,
作者將習慣拆解成四個階段,提出一個框架,好讓我們可以一步一步地培養好習慣、斷除壞習慣。
習慣是什麼
習慣佔據你人生的八、九成,試想一下每天醒來,躺在床上滑一下手機,
走去浴室刷牙洗臉,要不要吃早餐,早餐要吃什麼,通勤去上班的路上在做什麼,
工作時如何面對同事,面對事情是如何處理,
台北捷運在疫情期間各站的進出人數
COVID-19爆發以來,台灣人民的生活跟世界其他國家相比,受到的影響相對較小,
以下將分享台北捷運各站,在疫情期間(2020-01 ~ 2021-09),每個月的進出站人數資料數據。
資料來源
上述連結中的原始資料中,有每個小時從A站進到B站出的人數,每月近一千萬筆的資料,
在下將其整理為每月某站的總進出站人數
各站進出人數
以下橫軸時間為2020-01 ~ 2021-09,縱軸單位為百萬人。
台北車站
忠孝復興
西門
Nodejs: 如何逐行讀取檔案,或使用Unix pipe與其他process互動
這篇文章將介紹如何使用Nodejs的readline module來一行一行地讀取檔案,
接著既然都可以從檔案中逐行讀取了,那也可以從standard input中逐行讀取吧,
如此一來,就可以跟其他linux command一樣,一起使用pipe!像下面這樣:
cat words.txt | node wc.js
readline
* createInterface:
首先使用readline.createInterface(
密碼學是什麼? 有何用途以及要解決什麼樣的問題?
許多人接觸到密碼學,可能是因為加密貨幣,在生活中,還有其他的用途嗎?
為何密碼學在這當中扮演了重要的角色,它的出現解決了什麼樣的問題呢?
[Golang] 如何逐行讀取檔案,或使用shell pipe到go process
這篇將示範如何用go的bufio,開啟檔案並且一行一行地讀取資料,
最後示範直接用unix pipe將資料pipe給我們的go程式,做到像下面這樣的事:
cat words.txt | go run ./wc.go
bufio.Scanner
我們將使用bufio.Scanner來一行一行地讀取檔案內容,先看看會用到的function們的signature:
* func NewScanner(r
104人力網站爬蟲: 如何只用shell script來抓取資料
想要抓取網路上的資料,大家可能都會想到python爬蟲,但有時並不需要那麼麻煩,
linux command line tool就有許多好用的工具,
今天以104人力網站的為例,示範如何只使用shell script,就可以開始抓取資料!
前言
這邊假設大家已經有網路爬蟲的基本概念了,一般大家寫爬蟲最多人用的就是python,
流程就是到目標網站上操作,並且一邊觀察chrome dev tool,將http requests用python的requests套件重現,
[讀書筆記] 用對能量,你就不會累
原文書名為《The Power of Full Engagement》,
作者提出能量管理的概念,幫助我們找回對生活與工作的熱情和意義!
簡介
我們生活在步調緊湊的數位時代,資訊、訊息、工作緊接而來,很多人致力學習時間管理,
試著把每一分一秒塞得滿滿,卻忘了我們不是機器人,是精力及能量有限的人類。試想一下我們有沒有下面的情況:
* 你參加一個四小時的緊湊會議,但到了最後兩小時,
懶人早餐: 15分鐘,高纖高蛋白低碳水
想少吃些外食的精緻碳水,於是乎開始研究自己下廚,在《原子習慣》
裡有說到,想要開始培養一個新習慣時,
要讓他容易去做,不會太麻煩,目標小一點,好容易踏出第一步並且持之以恆。
所以我開始下廚的重點是簡單、方便、懶人,
而不會是美味(可能是個人廚藝問題)、便宜,
並且先只從早餐開始做起,今天就簡單分享一下我做了些什麼吧!
食材選擇
就是以最方便的為主!
如何不用做額外的工作,就使你的收入倍增
這裡要討論的並不是要讓你的絕對收入倍增,而是如何花更少的錢,
來獲得一樣的體驗,好讓你金錢的實際價值倍增~這是我在《一週工作四小時》這本書裡看到的想法,
作者稱之為自由倍增因子,也就是你能藉由操控這些事,來讓金錢的實際價值倍增,他們就是做什麼、在哪做、何時做、跟誰做。
RESTful API: How to design paths and identify resources
繼上篇文章RESTful API簡介: 什麼是RESTful? 以及為何需要它?後,
我們知道了RESTful API是resource based的,今天講著重討論該如何設計resource,也就是HTTP URL中path的部分。
Resource based
每個URL都應該對應到一個或多個資源,使用那些使用者與你的服務互動時會需要用到的資源(名詞),
並使用HTTP Method來表明你想要對資源的操作(動詞),比如說你是一個網誌服務,
[讀書筆記] 一週工作4小時: 擺脫朝九晚五的窮忙生活,晉身「新富族」!
新富族是什麼? 如何跳脫朝九晚五的社會框架、拒當社畜,發掘更多新的生活型態的可能性,
除了FIRE族提早退休的選項外,還有哪些選項? 實現有錢有閒的夢想生活吧!
[讀書筆記] 為什麼要睡覺? :睡出健康與學習力、夢出創意的新科學
如果有一個產品,只要你使用它,就可以擁有更好記憶力、學習能力、
注意力提升、脾氣會變好,不易怒、遠離肥胖及糖尿病及心血管疾病、抵抗力變好不易感冒、
不易罹癌、變帥變漂亮、更有吸引力~請問你願意花多少錢購買這產品呢?讓我現在告訴你,
免錢!你每天都有機會享受到這些好處,需要做的就只是好好地睡覺~~😴
大綱
在《為什麼要睡覺》
RESTful API簡介: 什麼是RESTful? 以及為何需要它?
在web開發裡,API是幾乎無所不在,而其中最常見的應該就是基於HTTP協議的RESTful API,
這篇簡介跟討論到底什麼是RESTful,為何有它的出現?
這是RESTful API一系列文章中的一篇,想了解更多關於RESTful API及HTTP的,可以看這篇目錄:
Introduction
首先,什麼是RESTful,可以說它是一種慣例,一個關於HTTP API如何設計的style,
慣例就是並沒有任何的強制性,但當大家都遵守的慣例時,特立獨行的邊緣人可能就會被排擠,
URL簡介: URL是什麼,由哪些部分組成?
這篇文章將會介紹什麼是URL,為何會需要它,以及它是由哪些部分組成的。
什麼是URL
想像你在一座大城市裡,你搭上一部計程車,想要去你朋友家、你小孩的幼兒園、或是去某某旅館,
你必須告訴司機地址; 如果你想聯絡到某人的話,會使用電話號碼; 在政府眼裡每個人有身分證字號。
就像如此,每個東西都有它獨特的識別方法,而且是被大家所公認的,也就是你一說,大家就知道你在說什麼,
知道你所指的是哪個東西,而在網路上,
HTTP headers 簡介: 一些常用的headers
在HTTP協議中,headers對於每個request,response提供了一些額外的資訊,基本上他們就是只是一對key value pair,由冒號(:)隔開,
今天會看看HTTP協議的格式,header在其中的位置,以及介紹一些常用的header們。
HTTP messages
HTTP是一個text based的傳輸協議,general的HTTP request message如下:
<method&
幾個我常用的vim的功能
作為一個軟體工程師,我們花在文字編輯器上的時間一定佔了一定的比例,
更精通熟悉我們使用的編輯器的話,開發的效率可以提升很多,今天就來分享一些我蠻常會用到的vim的功能~
Introduction
Vim是一個modal editor,可以切換在各個模式之間,一開始時是在normal mode,今天要介紹的功能,
都是在normal mode下操作的,按i或a可以進入insert mode,按esc即可以退回normal mode。
我通常比較常使用a,因為當把指標移到最後時,
Introduction to HTTP Response Status Codes: How to use them correctly?
這篇文章會介紹在HTTP協議中,Response status code的作用,有哪些codes以及該如何去使用他們?
這是RESTful API一系列文章中的一篇,想了解更多關於RESTful API及HTTP的,可以看這篇目錄:
RESTful API Design — A practical guide
Client Server Model
HTTP是一個Client-Server的架構,
[讀書筆記] 金錢心理學: 打破你對金錢的迷思,學會聰明花費 (下)
繼上篇[讀書筆記] 金錢心理學: 打破你對金錢的迷思,學會聰明花費 (上)
談完部分的內容之後,今天在這把剩下講完吧~
大綱
以下為這篇文章的大綱
* 定錨效應
* 稟賦效應
* 期望公平
* 太在意價格
* 總結及我如何利用以上現象來設計自己
定錨效應
我們首先先來看一個實驗,請一群受試者回答一個問題: 非洲國家佔聯合國國家的百分之幾?大部分人對這個答案的數字都沒什麼概念,
How to stream data from Blob Storage at your HTTP server using Azure and express.js
這篇文章將會示範如何使用Node.js來下載Azure Blob Storage上的檔案,並且使用Stream的方式,
將檔案儲存到本地端,或是作為一個Server(此篇使用express.js),回傳給你的client,並且根據檔案名稱來設置正確的Content-Type.
Download file from Azure
取得file的Readable Stream
const { ShareServiceClient, StorageSharedKeyCredential
[讀書筆記] 金錢心理學: 打破你對金錢的迷思,學會聰明花費 (上)
生而為人,而不是一部機器人,我們有情緒,我們有人性而不是聖人;我們懶惰,喜歡走捷徑,有各種誤判及偏見;
我們的認知有限制,腦袋的容量非常有限;我們短視近利,喜歡立即得到獎賞及滿足;
我們有各式各樣的思考、認知、感覺,進而有了相對應的行為,這些就是心理學在研究的事.
當這些人的天性碰上了金錢,我們是否能做出好的經濟決策呢?會不會當了許久的冤大頭而不自知,
或是被誘惑引導到花了一些本來不會花的錢,
[讀書筆記] 習慣致富 人生實踐版
簡介
這本書的第一章到第十六章,作者講述了兩對夫婦的故事,從交往、訂婚、結婚、蜜月,講到租房、買房、小孩教育、生活中的各個面向,
看他們在面對所有財務決策時,如何做不同的選擇,而這些習慣,經過了時間了累積,到最後產生了巨大的差別!
透過故事,像是看小說一樣,更容易地會去感受到那些習慣的重要,那對底是哪些習慣呢~
[Google sheet]如何在試算表裡匯入新聞、rss feed
此篇文章將分享我是如何在試算表裡查看新聞,看起來像是下面這樣:
於左上角輸入公司名稱(此處是下拉選單),即可跑出公司的相關新聞
在這一篇[Google sheet]我如何製作股票損益表,自動抓取最新股價裡,
我們已經建立了持有股票清單,我就想說如果同時可以同時看到每一間公司的相關新聞應該不錯,所以才會有了這篇.
公式
=IMPORTFEED(CONCATENATE("https://news.google.
[讀書筆記] 最高學以致用法: 讓學習發揮最大成果的輸出大全
該如何學習,才能吸收最多、記得最多,答案就是要輸出,也就是透過分享、
筆記、教學、實踐,才能使自己成長進步最快。
[Google sheet]我如何製作股票損益表,自動抓取最新股價
此篇文章將分享我是如何製作我持有股票的未實現損益表,看起來的成果如下:
主要功能
* 自動更新股價
* 根據最新股價,計算損益,並以顏色區分損或益
* 近一年的股價折線圖
Step by Step
製作表格
首先填入表頭欄位,在這裡我們會有:
股票代號、名稱、近一年股價、現價、漲跌、
成交量、
[Google sheet]如何建立下拉選單,以及從既有資料中自動建立選項
為什麼要用下拉式選單
* 新增資料更為快速,無需重複填寫
* 避免誤植,或統一資料的格式及規則
* 對既有資料鐘進行選擇及後續操作
如何建立下拉式選單
自行輸入清單選項
1. 首先選擇一個或多個你想要建立選單的儲存格
2.
點選 資料 -> 資料驗證
data validation: tool bar
RESTful API Design — A practical guide
此系列文章是Restful API design的教學目錄,將從什麼是API、怎樣是好的API、HTTP協議、RESTful是什麼、以及其他許多當你在設計API時會遇到情況,例如\:Documentation、Pagination、Rate Limiting、Monitoring.
What are HTTP Methods?Which to use and How to use them correctly?
這篇文章主要討論幾個常見的HTTP methods,說明他們分別是否具有哪些特性(Safe、Idempotent),以及他們應該要怎麼使用,比較會是符合大家的期待.
當然寫server的人可以不照著慣例走,不過如此一來,使用這個API的user可能會很不高興,而這個user可以是公司的客戶,可能是公司內部的其他團隊,也可能是未來的自己!
Outline
* HTTP Request message格式
* 常見的methods,以及其特性
* 分別介紹各個method的用法
A Linux HTTP client tool — curl的介紹及用法
做為一個HTTP client,想要對server發出請求,有許多做法,可能是寫一個python script 或使用其他任何語言,也可以是使用postman這樣的工具,或者是直接在command line上或shell script中使用curl指令.當你想要快速地測試一下某個API,或是explore別人的HTTP service時,直接使用curl是還蠻方便的!甚至直接用shell script來寫爬蟲了!
Outline
* HTTP Request
HTTP 簡介,以及使用telnet、nc、curl等指令來探索
在網路的世界裡,HTTP扮演著一個重要角色,當你打開Instagram看著無以計數的照片、打開Youtube看看影片、在google上搜尋著你想要知道的答案、瀏覽著別人的網站文章,這些都是HTTP負責把上述的這些照片、影片、文字、等檔案資源從別處的伺服器搬到你的裝置裡,可能是你的手機、平板或是電腦.
HTTP在OSI模型中,是屬於應用層(Application layer)裡的一個通訊協定,透過傳輸層(Transport layer)
[System Design] Data model: Relational V.S. Document
開發應用程式時,時常使用到資料庫,儲存資料並在之後需要時將其取出,如今有許多的資料庫產品可供選擇,提供各種不同的data model及function,在各種使用情境下有不同的表現,開發者根據你的應用程式的需求、資料之間的關係、access pattern、scalability、ACID transaction、fault-tolerance、會有各種不同的適合的選擇.
接下來只單純討論資料庫提供給我們application programmer們的data model,看看是否在哪些情況比較適合用哪一種,
如何用create-react-app開發,整合一個或多個API backend server
在開發single page application時,會需要透過api來取得及操作資料,本篇文章將示範如何在使用create-react-app開發時,整合一個甚至是多個backend api server!
Create-react-app
使用create-react-app時,簡單一個指令npm start 就可以開始開發,此時CRA會起一個webpack dev server來serve static files,通常我們會想要做類似這樣的動作: fetch(
[Networking]Application Layer Overview,什麼是Socket?
Process communication
上次講過了網路的分層架構之後,接下來要來關注application layer,這一層就是我們應用程式所在的地方,應用程式可能是網頁瀏覽器、電子信箱、Skype等等,每種不同的應用程式會有他們自己的通訊協定,規定應用程式之間該如何交換資料,以及資料的格式,常見的協定例如是HTTP、FTP、DNS等等.
那application layer的process們之間要怎麼互相通訊呢?就是要利用transport layer所提供的服務.
What
[Networking] 網路的架構,Layered Architecture
網路是個如此巨大的工程,要如何架構,才能讓全世界的人通力合作,一起打造這豐富的世界呢?答案就是Layered Artichecture .
Layered Architecture
網路的最終目的,就是讓兩個執行在不同機器的程式可以互相溝通、交換資料,例如你的瀏覽器chrome跟網頁伺服器溝通,你手機的Skype跟另一個人的Skype溝通,而這中間,資料經過了重重難關、無數的機器及路由器,這麼多的機器到底是如何一起合作的呢?
答案就是分層的架構,Layered Architecture,
[Networking]什麼是網路?網路的組成及網路服務供應商 ISP
網路,可能是人類最大的工程成就之一,如今有數十億的人透過網路連接,在幾秒鐘之內就能夠互相通訊、完成某種任務,各種裝置互相連結,包括伺服器,個人桌上型電腦、平板、手機、未來還會有更多樣的things加入,例如車子、家電、各種感測器 ,等等.如此巨大的工程,大規模的全世界的共同合作,到底是如何做到的?工程架構的決定、協議的制定都值得去借鏡學習.
[Google Sheet]Sparkline,在儲存格裡插入迷你圖表
Sparkline用起來長怎樣
我在[Google Sheet]我如何製作進度表這篇裡
以及[Google sheet]我如何製作股票損益表,自動抓取最新股價
大家可以看到一些儲存格裡都有迷你圖表,像是柱狀圖、線圖,這就是sparkline這個函式的功用,讓我們不需要額外插入一些圖表,就能直接在格子中畫圖.
Sparkline用法
sparkline(range, [options]
什麼是message queue? 優點及使用場景
在大型網頁應用程式系統中,當我們的服務越來越多,服務之間就需要溝通,透過http restful api,想必大家都一定遇過,或許或多或少也聽過使用message queue,那到底它是什麼?為什麼要用它?以及跟restful api有何不同的使用場景呢?
什麼是message queue?
顧名思義,就是有個queue,訊息先入先出( FIFO ),基本上就是提供一個讓不同process間通訊的方式(
快速擁有一個Asynchronous Task Queue,使用Redis and Kue.js
這是篇教你如何在node.js環境下,快速擁有一個Task queue的tutorial,如果想了解什麼是message queue,以及為什麼跟什麼時候要使用它,可以參考我的另外一篇文章什麼是message queue? 優點及使用場景!
Outline
1. 部署Redis,使用Docker,在本地起一台Redis
2. 介紹Kue.js
部署Redis
先準備一個shell
[Google Sheet]我如何製作進度表
追蹤每項任務到目前為止的進度,或每段時間(每天、每個禮拜、或每個月)的努力情況
首先先把任務跟時間輸入進去,如下圖:
1.
時間只要輸入兩格就可以了,點住右下角的小藍點往右拉,就會補上一樣間距的時間,也就是說那兩格如果是差一天,之後每一格都會差一天,一個禮拜、一個月亦然.
2.
代表每項任務需要完成的單位,簡單用數字量化表示,比如一堂課有10週的課程,
InstMap TW — 從地圖上找尋附近的台灣Instagram熱門景點
到了一個地方,想知道附近有什麼好玩的景點嗎?想看看IG,Instagram上大家都去哪裡嗎?可以使用我最近做的一個玩具服務InstMap TW,找尋台灣最多人標記的地標,或是附近最近的相對熱門的地標.
點選地圖旁的小人圖案,可以使用您現在的位置做搜尋,不想開定位的話,也可以手動拉動地圖改變中心點.
每個地點點進去可以看到該地點的貼文,可切換成瀏覽圖片或是日期、文字、按讚數、留言數等相關資訊.
使用到的技術、工具、服務大概是
利用Docker建立PostgreSQL開發環境
首先先將需要的configuration variable放到環境變數裏,在這裡就是我們的PostgreSQL database server要起在哪一個port,user,password,db等等,準備好你的 dev.env檔案如下,然後執行 . ./dev.env
export PG_PORT=5432
export PG_
使用Node.js + Express整合Line Notify通知服務
快速簡單地使用一個express的middleware完成line notify的oauth2流程,取得access_token來做後續的消息推送
使用line notify可以簡單地讓網站開發者推送訊息到使用者的line裡,雖不像line bot可以跟使用者做更多的互動,但如果只是要單方面的的發送訊息,使用line notify就足矣,而且還不像line bot的push api要收費,這個不用錢~
登入流程
Line notify的流程大致來說是這樣的:
1. GET