系統托盤圖示 (system tray icon) 通常用來在桌面應用程式最小化後,不希望在任務列 (task
bar) 出現時,提供一個簡單跟使用者互動的介面。 透過這樣的用戶介面,應用程式可以在有重要事件發生時,即時通知用戶。因此,系統托盤圖示常被諸如「郵件檢查」、「股票報價」等不需要複雜介面的桌面應用所使用。本文山姆鍋說明 Python 如何使用 PySide 來實現一個跨平台 (cross-platform) 的系統托盤圖示應用程式。

閱讀全文

不久前,山姆鍋開始學習 Django 這套 Web 應用框架,在不跳脫它既有有框架的情況下,運用它可以快速建構應用程式原型。差不多同一時間,也找到 Test-driven Development with Python 這本好書,書名雖然好像跟 Django 無關,但書中的範例程式是以 Django 為基礎。 可惜,本文不是要示範如何使用 Django 做功能測試,這個主題網路有許多文章可以參考。山姆鍋在使用 Django 的 LiveServerTestCase 時 發現資料庫的資料在第一個測試案例 (test case) 之後就會被清除,導致後續的測試無法正常運作。

閱讀全文

從現在來看,QR Code 的使用算是很普遍,例如用來產生網頁文章的超連結、Bitcoin 的位址等等。不管目的是什麼,產生 QR Code 已經是常有的需求。 本文山姆鍋分享如何使用 Python 的 qrcode 套件來產生 PySide 可以顯示的 QR Code 圖檔。

閱讀全文

有了建構持續整合系統後,那要如何管理軟體建構工作 (build jobs)? 大部份的人可能都習慣使用 Jenkins 提供的使用者界面, 但既然我們透過 Puppet 來管理 Jenkins 系統,沒道理不能用它來管理建構工作。本文山姆鍋以使用 Puppet 配置 Jenkins 工作來總結 "建構自己的雲端持續整合系統" 這一系列文章。

閱讀全文

原則上,山姆鍋會盡可能運用現有的雲端服務在像是持續整合這種系統上。由於評估的雲端服務不符合需要,山姆鍋使用 Jenkins 著手建構了符合自己需要的雲端持續整合系統,並且將這些流程自動化,讓您也可以快速建立一個類似的系統。

閱讀全文

在實際採用任何一種方法學之前,其中一件很重要的事就是要理解這些方法背後的理念與哲學,不然, 往往流於形式而不得其精髓。「持續交付」的概念對很多人來說還算陌生, 本文分享的就是「持續交付」最重要的 8 條原則。

閱讀全文

山姆鍋最近需要安裝 Jenkins 這個持續整合軟體,但不打算採用過去手動的安裝模式,而是嘗試運用 Vagrant, Puppet 跟 Virtualbox 來做自動部署。持續整合軟體一般建議不要在 Master 上執行建構工作, 所以,本次的實驗就以安裝一台 Master 與一台 Slave 主機為目標。

閱讀全文
作者的圖片

Sampot (山姆鍋)

個人部落格, 記錄與分享一些軟體開發與運維相關資訊, 偶爾也會碎念一下


IT 自由工作者


台灣/台北