技術札記

Stubs and Mocks in RSpec

stubmock這兩個概念在 RSpec 裡面,若不論最初的調用名稱,只看參數、後續的調用方法,很難摸清它們的差異。感覺都是操作目標物件(object)並呼叫它的某個方法(方法可不必先定義、實作),然後讓人自定義回傳值。參考如下:

GitHub 提供免費用戶建立私人專案

Jekyll 部落格套件有個預設特點是隱藏未來文章,比如有篇文章日期為西元 9999 年,那麼部落格列表裡是看不到它的。個人一直把這當成草稿功能來用,文章寫完後調一下日期就可供外界瀏覽了。但由於使用免費帳戶架部落格在 GitHub Pages 上面,有個問題略顯礙眼:整個部落格的 git repository 對外公開,這些草稿也跟著曝光。

LeetCode 654 Maximum Binary Tree

給一個元素為獨立正整數的陣列,找出最大值當樹的根,然後用一樣的方法,拿最大值左右兩邊的陣列分別建立左子樹和右子樹。

初探 graphql-ruby 套件

上一篇談 GraphQL 的文章僅止於大量閱讀後的推測,既自詡成為一個優秀的工程師,還是該親自體驗一下這個工具,看看它能否帶來意外的驚喜。不然現在 GraphQL 在個人心目中實屬雞肋,像是個轉移痛點而非根治問題的偏方。

Vim 視覺化指令配置

Vim 是一款強大的程式編輯器,而它的強大則是建立在善用各種按鍵上。由於眾多按鍵功能還能互相組合,因此有一定的複雜度,並得到了學習曲線陡峭的評價。在此分享 Vim 各種指令圖表以減輕記憶負擔,方便個人參考,也藉機推廣。

試論 GraphQL 所承諾的好處

焦慮與恐懼促成了這篇文章。QraphQL 主打的賣點有三,首先是前端只要面對單一介面,大幅降低開發成本;其次是前端調用資料的彈性大幅增加,可以當作整個服務被抽象成一個資料庫,而前端能直接對它下各種查詢指令;再者,若原來有多個請求(requests)才足以取得渲染前端的資料,那麼可透過 GraphlQL 包裝成單一請求,降低前端到伺服器間的總請求數。

Selenium x Ruby 爬取 OFX 外匯保證金交易資料

為求系列文簡潔易讀,將統一每篇實作正文為手動操作步驟、完整的爬蟲程式碼、結語三大部分。同時特別聲明,此爬蟲系列文僅示範如何使用 Selenium 套件並探討其優缺,不應作為任何形式的投資輔助工具或建議,雖歡迎自由取用,但所有行為請使用者自行負責。

Selenium x Ruby 爬取 Yahoo Finance 標準普爾歷史資料

為求系列文簡潔易讀,將統一每篇實作正文為手動操作步驟、完整的爬蟲程式碼、結語三大部分。同時特別聲明,此爬蟲系列文僅示範如何使用 Selenium 套件並探討其優缺,不應作為任何形式的投資輔助工具或建議,雖歡迎自由取用,但所有行為請使用者自行負責。

Selenium x Ruby 系列起手式

除了網站開發與維護,撰寫爬蟲也是不少後端工程師的工作項目,而眾多爬蟲開發工具裡的 Selenium,因其操作流程更貼近一般使用者,成為了爬蟲、網頁前端測試的一時之選。也由於 Selenium 支援眾多程式語言,包含筆者愛用的 Ruby,所以被納入了武器庫中,此系列文由此而生。

Jekyll 風格主題之選擇

Jekyll 的預設主題其實有點簡陋,許多重點功能沒有提供,而且不太有設計感。還好這些我們可藉由第三方彌補,只要釐清自己的需求,並不難找到合適的第三方主題來用。個人理想主題裡需要涵蓋下列項目:

部落格問世:Jekyll x GitHub Pages

陸陸續續使用 Markdown 寫了不少筆記,不時想找個支援此格式的平台,來呈現平常都用時間換了些什麼。於是嘗試用 HackMD / logdown 寫點文章,也觀望了 Medium 一陣子,但都不太令人滿意。前些日子才發現 Ruby 生態圈早有這麼一個開源的部落格套件,稍微研究後即發現它滿足了所有個人需求,真可謂相見恨晚。

Back to Top ↑

Ruby

Stubs and Mocks in RSpec

stubmock這兩個概念在 RSpec 裡面,若不論最初的調用名稱,只看參數、後續的調用方法,很難摸清它們的差異。感覺都是操作目標物件(object)並呼叫它的某個方法(方法可不必先定義、實作),然後讓人自定義回傳值。參考如下:

LeetCode 654 Maximum Binary Tree

給一個元素為獨立正整數的陣列,找出最大值當樹的根,然後用一樣的方法,拿最大值左右兩邊的陣列分別建立左子樹和右子樹。

初探 graphql-ruby 套件

上一篇談 GraphQL 的文章僅止於大量閱讀後的推測,既自詡成為一個優秀的工程師,還是該親自體驗一下這個工具,看看它能否帶來意外的驚喜。不然現在 GraphQL 在個人心目中實屬雞肋,像是個轉移痛點而非根治問題的偏方。

Selenium x Ruby 爬取 OFX 外匯保證金交易資料

為求系列文簡潔易讀,將統一每篇實作正文為手動操作步驟、完整的爬蟲程式碼、結語三大部分。同時特別聲明,此爬蟲系列文僅示範如何使用 Selenium 套件並探討其優缺,不應作為任何形式的投資輔助工具或建議,雖歡迎自由取用,但所有行為請使用者自行負責。

Selenium x Ruby 爬取 Yahoo Finance 標準普爾歷史資料

為求系列文簡潔易讀,將統一每篇實作正文為手動操作步驟、完整的爬蟲程式碼、結語三大部分。同時特別聲明,此爬蟲系列文僅示範如何使用 Selenium 套件並探討其優缺,不應作為任何形式的投資輔助工具或建議,雖歡迎自由取用,但所有行為請使用者自行負責。

Selenium x Ruby 系列起手式

除了網站開發與維護,撰寫爬蟲也是不少後端工程師的工作項目,而眾多爬蟲開發工具裡的 Selenium,因其操作流程更貼近一般使用者,成為了爬蟲、網頁前端測試的一時之選。也由於 Selenium 支援眾多程式語言,包含筆者愛用的 Ruby,所以被納入了武器庫中,此系列文由此而生。

Jekyll 風格主題之選擇

Jekyll 的預設主題其實有點簡陋,許多重點功能沒有提供,而且不太有設計感。還好這些我們可藉由第三方彌補,只要釐清自己的需求,並不難找到合適的第三方主題來用。個人理想主題裡需要涵蓋下列項目:

部落格問世:Jekyll x GitHub Pages

陸陸續續使用 Markdown 寫了不少筆記,不時想找個支援此格式的平台,來呈現平常都用時間換了些什麼。於是嘗試用 HackMD / logdown 寫點文章,也觀望了 Medium 一陣子,但都不太令人滿意。前些日子才發現 Ruby 生態圈早有這麼一個開源的部落格套件,稍微研究後即發現它滿足了所有個人需求,真可謂相見恨晚。

Back to Top ↑

GraphQL

初探 graphql-ruby 套件

上一篇談 GraphQL 的文章僅止於大量閱讀後的推測,既自詡成為一個優秀的工程師,還是該親自體驗一下這個工具,看看它能否帶來意外的驚喜。不然現在 GraphQL 在個人心目中實屬雞肋,像是個轉移痛點而非根治問題的偏方。

試論 GraphQL 所承諾的好處

焦慮與恐懼促成了這篇文章。QraphQL 主打的賣點有三,首先是前端只要面對單一介面,大幅降低開發成本;其次是前端調用資料的彈性大幅增加,可以當作整個服務被抽象成一個資料庫,而前端能直接對它下各種查詢指令;再者,若原來有多個請求(requests)才足以取得渲染前端的資料,那麼可透過 GraphlQL 包裝成單一請求,降低前端到伺服器間的總請求數。

Back to Top ↑

Jekyll

GitHub 提供免費用戶建立私人專案

Jekyll 部落格套件有個預設特點是隱藏未來文章,比如有篇文章日期為西元 9999 年,那麼部落格列表裡是看不到它的。個人一直把這當成草稿功能來用,文章寫完後調一下日期就可供外界瀏覽了。但由於使用免費帳戶架部落格在 GitHub Pages 上面,有個問題略顯礙眼:整個部落格的 git repository 對外公開,這些草稿也跟著曝光。

Jekyll 風格主題之選擇

Jekyll 的預設主題其實有點簡陋,許多重點功能沒有提供,而且不太有設計感。還好這些我們可藉由第三方彌補,只要釐清自己的需求,並不難找到合適的第三方主題來用。個人理想主題裡需要涵蓋下列項目:

部落格問世:Jekyll x GitHub Pages

陸陸續續使用 Markdown 寫了不少筆記,不時想找個支援此格式的平台,來呈現平常都用時間換了些什麼。於是嘗試用 HackMD / logdown 寫點文章,也觀望了 Medium 一陣子,但都不太令人滿意。前些日子才發現 Ruby 生態圈早有這麼一個開源的部落格套件,稍微研究後即發現它滿足了所有個人需求,真可謂相見恨晚。

Back to Top ↑

Selenium

Selenium x Ruby 爬取 OFX 外匯保證金交易資料

為求系列文簡潔易讀,將統一每篇實作正文為手動操作步驟、完整的爬蟲程式碼、結語三大部分。同時特別聲明,此爬蟲系列文僅示範如何使用 Selenium 套件並探討其優缺,不應作為任何形式的投資輔助工具或建議,雖歡迎自由取用,但所有行為請使用者自行負責。

Selenium x Ruby 爬取 Yahoo Finance 標準普爾歷史資料

為求系列文簡潔易讀,將統一每篇實作正文為手動操作步驟、完整的爬蟲程式碼、結語三大部分。同時特別聲明,此爬蟲系列文僅示範如何使用 Selenium 套件並探討其優缺,不應作為任何形式的投資輔助工具或建議,雖歡迎自由取用,但所有行為請使用者自行負責。

Selenium x Ruby 系列起手式

除了網站開發與維護,撰寫爬蟲也是不少後端工程師的工作項目,而眾多爬蟲開發工具裡的 Selenium,因其操作流程更貼近一般使用者,成為了爬蟲、網頁前端測試的一時之選。也由於 Selenium 支援眾多程式語言,包含筆者愛用的 Ruby,所以被納入了武器庫中,此系列文由此而生。

Back to Top ↑

blog

GitHub 提供免費用戶建立私人專案

Jekyll 部落格套件有個預設特點是隱藏未來文章,比如有篇文章日期為西元 9999 年,那麼部落格列表裡是看不到它的。個人一直把這當成草稿功能來用,文章寫完後調一下日期就可供外界瀏覽了。但由於使用免費帳戶架部落格在 GitHub Pages 上面,有個問題略顯礙眼:整個部落格的 git repository 對外公開,這些草稿也跟著曝光。

Jekyll 風格主題之選擇

Jekyll 的預設主題其實有點簡陋,許多重點功能沒有提供,而且不太有設計感。還好這些我們可藉由第三方彌補,只要釐清自己的需求,並不難找到合適的第三方主題來用。個人理想主題裡需要涵蓋下列項目:

部落格問世:Jekyll x GitHub Pages

陸陸續續使用 Markdown 寫了不少筆記,不時想找個支援此格式的平台,來呈現平常都用時間換了些什麼。於是嘗試用 HackMD / logdown 寫點文章,也觀望了 Medium 一陣子,但都不太令人滿意。前些日子才發現 Ruby 生態圈早有這麼一個開源的部落格套件,稍微研究後即發現它滿足了所有個人需求,真可謂相見恨晚。

Back to Top ↑

爬蟲

Selenium x Ruby 爬取 OFX 外匯保證金交易資料

為求系列文簡潔易讀,將統一每篇實作正文為手動操作步驟、完整的爬蟲程式碼、結語三大部分。同時特別聲明,此爬蟲系列文僅示範如何使用 Selenium 套件並探討其優缺,不應作為任何形式的投資輔助工具或建議,雖歡迎自由取用,但所有行為請使用者自行負責。

Selenium x Ruby 爬取 Yahoo Finance 標準普爾歷史資料

為求系列文簡潔易讀,將統一每篇實作正文為手動操作步驟、完整的爬蟲程式碼、結語三大部分。同時特別聲明,此爬蟲系列文僅示範如何使用 Selenium 套件並探討其優缺,不應作為任何形式的投資輔助工具或建議,雖歡迎自由取用,但所有行為請使用者自行負責。

Selenium x Ruby 系列起手式

除了網站開發與維護,撰寫爬蟲也是不少後端工程師的工作項目,而眾多爬蟲開發工具裡的 Selenium,因其操作流程更貼近一般使用者,成為了爬蟲、網頁前端測試的一時之選。也由於 Selenium 支援眾多程式語言,包含筆者愛用的 Ruby,所以被納入了武器庫中,此系列文由此而生。

Back to Top ↑

Markdown

Jekyll 風格主題之選擇

Jekyll 的預設主題其實有點簡陋,許多重點功能沒有提供,而且不太有設計感。還好這些我們可藉由第三方彌補,只要釐清自己的需求,並不難找到合適的第三方主題來用。個人理想主題裡需要涵蓋下列項目:

部落格問世:Jekyll x GitHub Pages

陸陸續續使用 Markdown 寫了不少筆記,不時想找個支援此格式的平台,來呈現平常都用時間換了些什麼。於是嘗試用 HackMD / logdown 寫點文章,也觀望了 Medium 一陣子,但都不太令人滿意。前些日子才發現 Ruby 生態圈早有這麼一個開源的部落格套件,稍微研究後即發現它滿足了所有個人需求,真可謂相見恨晚。

Back to Top ↑

Data Structure and Algorithms

LeetCode 654 Maximum Binary Tree

給一個元素為獨立正整數的陣列,找出最大值當樹的根,然後用一樣的方法,拿最大值左右兩邊的陣列分別建立左子樹和右子樹。

Back to Top ↑

GitHub

GitHub 提供免費用戶建立私人專案

Jekyll 部落格套件有個預設特點是隱藏未來文章,比如有篇文章日期為西元 9999 年,那麼部落格列表裡是看不到它的。個人一直把這當成草稿功能來用,文章寫完後調一下日期就可供外界瀏覽了。但由於使用免費帳戶架部落格在 GitHub Pages 上面,有個問題略顯礙眼:整個部落格的 git repository 對外公開,這些草稿也跟著曝光。

Back to Top ↑

LeetCode

LeetCode 654 Maximum Binary Tree

給一個元素為獨立正整數的陣列,找出最大值當樹的根,然後用一樣的方法,拿最大值左右兩邊的陣列分別建立左子樹和右子樹。

Back to Top ↑

Rspecn

Stubs and Mocks in RSpec

stubmock這兩個概念在 RSpec 裡面,若不論最初的調用名稱,只看參數、後續的調用方法,很難摸清它們的差異。感覺都是操作目標物件(object)並呼叫它的某個方法(方法可不必先定義、實作),然後讓人自定義回傳值。參考如下:

Back to Top ↑

Vim

Vim 視覺化指令配置

Vim 是一款強大的程式編輯器,而它的強大則是建立在善用各種按鍵上。由於眾多按鍵功能還能互相組合,因此有一定的複雜度,並得到了學習曲線陡峭的評價。在此分享 Vim 各種指令圖表以減輕記憶負擔,方便個人參考,也藉機推廣。

Back to Top ↑