H4 Script 補完計畫
簡介
Hacking Thursday(以下簡稱 H4)是一個 hacker 聚集的社群,因此公告、通知和筆記匯整幾乎都是透過一組自動化程式來完成。由於歷史因素,這組程式有不少的地方需要重整,因此我們想要解決下列問題:
- 安裝設定方式未知
- 程式沒有通過測試
- 說明文件不夠齊全
若您對這主題有興趣,歡迎一同協助改進,我們會帶大家一起進行。
活動概觀
本次 H4 黑客松會把重心放在程式重構、單元測試和安裝文件。
下文有提到 Jenkins 和 Docker,這些內容視情形再做後續調整。
由於沒有安裝文件,初期要先研究安裝和部署,用更好、更安全的方式改寫安裝流程。
假設環境能順利安裝,先確保程式通過語法檢驗,符合 PEP-8 規範,接著重構和測試。
單元測試目前是用 nose,但還在非常初期的階段,可以討論是否改用內建 `unittest`。
目前所有程式都放在 GitHub 上面:
https://github.com/hacking-thursday/h4-scripts
必備條件
- 具備基本 Python 開發經驗(會用 pip,已有熟悉的開發環境)
- 擁有 GitHub 帳號,熟悉 Git 基本操作 (clone, checkout, branch, add, commit, push)
- 個人電腦或 Mac,並且已裝好 Python
- 加分:已安裝 Docker 和 IPython Notebook
====================================== 分隔線 =================================
黑客松
重點連結:
- Facebook 多人聊天室 ( 用於貼帳密, 跟快速訊息 )
- Issue Tracker https://github.com/hacking-thursday/h4-scripts/issues
- Trello https://trello.com/b/hNEchBGt/h4-script-hackathon
- Jenkins http://yanxen.no-ip.org:48080/view/測試/
分支的種類跟命名規則:
branch 名稱:add-pip-deps
prefix 參考:enhance/, bugfix/, feature/
e.g.: enhance/add-pip-deps
====================================== 分隔線 =================================
備忘錄
程式重構
現有程式需要重新調整,拆出一些模組,並且補上相關測試。
開發流程
參考 Git flow 開發流程,會做簡化和更動。
http://ihower.tw/blog/archives/5140
- $ git merge --no-ff
程式風格
所有程式都要符合 PEP-8 標準。
貢獻者可以透過工具自動檢查。
no tabs, 4 spaces
自動化測試
排程工作改由 Jenkins 管理。
驗收測試交由 Jenkins 執行。
單元測試....
Jenkins 設定定期自動備份。
需要一組測試框架統整。
(Docker) (後期)
Unit Test Framework
unittest or nose
Bug Report
GitHub
投影&錄影架
https://hackingthursday.hackpad.com/ls2gMRjVCwI
值日生頁面編修
值日生每周例行工作,每人都需可獨立完成所有作業。
以一頁能解釋完爲限。
http://www.hackingthursday.org/routine
動態
我剛剛改了一點 pep8 的修正,上傳至 fix-pep8-1 的分支,看有沒有人願意幫忙 merge(暖身)?
註: 目前只先修正( ) [] 前後空白的部份, tab/line too line 的部份還沒修