自由開源軟體與專案協作分組報告說明
本門課程在分組報告上的規劃,建議是以三人以上為分組單位,參與的內容是讓同學就:
程式開發實作類型(建議3或4人一組)
科技法律授權與專利分析類型(建議3人一組)
黑客文化紀錄類型(建議3人一組)
以上三大類的議題,進行分組式的實作參與,報告的產出「不限定以程式碼的寫作內容」,但必須與自由開源軟體的群體參與和實作模式相關,並且最後評鑑的重點在於專案協作的「過程與產出」,也就是每一個成員「動態式參與專案內容或分組報告貢獻的軌跡」,來作為評分高低的判準。
程式開發實作類型方面主要能提供指導與經驗分享、黑客文化議題類型的對象,為Jim Huang(黃敬群)老師,科技法律專利議題類型,為Lucien Cheng-hsia Lin(林誠夏)。此一分配僅為原則規劃,例如:同學在選擇科技法律議題報告之後,遭逢技術上的解決疑難,亦可透過線上論壇尋求黃敬群老師之協助,而若選擇程式開發類型之後,有程式碼匯入授權資訊,或是個別檔案著作權利聲明不知如何標示的問題,當可同步透過線上論壇尋求林誠夏老師的說明。而若有意願徵詢自由開放源碼領域裡,任一位已深入了解或具實作經驗的專家擔任分組報告的導師,亦歡迎事先與授課的三位講師討論如何開展雙指導的可行方式。
關於程式開發類型,在分組報告方面,是要請同學加入並貢獻到既有的自由開源專案,而為了強調「協作」且從既成專案之內去學習互動模式與程式寫作的風格,此一參與的自由開源專案不得為自行建立的全新專案。而實際分組報告的內容,預計是要呈現出哪些程式碼是經由分組協力之後,由同學進行提報的(Show me the code)!這些提報的內容可以是:程式碼的實際提交(功能改善、修正、架構調整),或經由該專案之郵件論壇、Issue Tracker系統,所顯示出與原自由開源軟體專案成員間的實際互動與貢獻。
以下為本門課程講師可直接指導,故建議加入之專案列表:
新酷音輸入法
一個跨越多種平台的智慧型注音輸入法系統,本身提供函式庫、與平台整合相關的主體程式、詞庫,還有若干工具程式
TODO:強化MS-Windows平台支援、改善詞庫編輯器、支援無聲調注音(類似Google注音輸入法)、手寫辨識注音符號
http://chewing.im/
PCManX
跨越多種平台的BBS終端機系統
TODO:改善系統效能、強化符號編輯器、改善瀏覽器整合功能
https://github.com/pcman-bbs
LXDE
源自台灣,已被世界上眾多政府單位(德國為首要)、學校和公司行號採納的桌面系統,目前超過百萬使用者
TODO:修正既有軟體瑕疵、改善效能或視覺呈現
http://lxde.org/
關於科技法律授權與專利分析類型,在分組報告方面,是提供同學接觸自由開源軟體授權討論群組,或專利分析網站,以從該領域豐富的討論文獻,進而學習到自由開源軟體授權妥適工程(FOSS Compliance Engineering)之間的知識,或藉由Linux Defenders先前技術與專利廢棄公報的研讀,來朝著全方位專利工程師的方向邁進,或在未來,成為各自由開源軟體專案裡負責授權策略規劃研擬的協力成員!這是因為在軟體著作權與專利權方面的演變,對自由開源軟體授權模式未來的商業應用與大規模發展影響甚鉅,如修課同學本身就此議題且有濃厚興趣,則本課程講師將可透過以下例示網站的論壇參與或文件分析,逐步讓分組同學學習到相關的知識並進而深入運用。實際分組報告的內容,是讓分組同學得就其自行選擇的自由開源軟體專案,或本課程授權講師建議的專案列表(例如:MySQL、Sencha、FFmpeg、Linux Kernel、BusyBox、Joomla、Drupal等),在文獻閱讀與查找之後,提出其授權策略與專利運作上的分析報告,並佐以線上論壇之討論活躍度來進行成績的評比。
以下為初定課程講師建議可參與實作或進行授權分析的入門平台與專案:
FOSSology & SPDX
FOSSology是一套由HP釋出,以開源方式持續開放的專案授權資訊查找分析軟體;SPDX則為Linux Foundation轄下的工作小姐,為了減輕開源授權標示的複雜度與困難,而推出的標準標示協定,當前已經有研究機構,將此軟體與標示標準二合一結合,並以開源專案的方式提供研究素材。
TODO:分析SPDX的標示架構,並實作專案程式的架設與運用。
https://www.fossology.org/
http://spdx.org/tools
Linux Defenders
Linux Defenders是Linux Foundation的協力組織,其透過與自由開源軟體社群協力開發者的合作,提前披露各式與程式運作有關的先前技術(prior art),以阻卻這些先前技術未來被傳統商業公司註冊為軟體專利,進而影響到Linux作業系統正常發展運用的可能性。
TODO:研讀與分析先前技術與專利廢棄文件,並實作專利說明書的撰寫與分析。
http://linuxdefenders.org/
OpenChain Curriculum
OpenChain是由Qualcomm領頭,於Linux Foundation Working Group架構下運作的開源妥適(合規)工程教材專案,簡言之,此專案透過共通性教材的流通,敦促產業公司內部可定期、定式的對軟體開發人員進行開源授權妥適工程的訓練與評估,以讓產業合作鍵(Supply Chain)上開源授權合規事宜可以產生上下游連結並順暢的結果。
TODO:研讀OpenChain Curriculum 2.0教本並進行翻譯,並就其中容易影響誤解之點進行施行範例的撰寫。
https://wiki.linuxfoundation.org/openchain/curriculum
關於黑客文化類型,在分組報告方面,是要請同學選定某個時期的Hacker歷程,闡述其時空背景變遷與對現今開源世界的發展影響。在成果的呈現上,不能只透過投影片的製作便視為完成,而是建議查找相關的文獻,影像、錄影,甚至將當年的軟體系統運作起來(如藉由SIMH模擬器執行UNIX v6作業系統並具體說明),以實踐開源發展–溫故知新的旨趣,參考書籍:《黑客列傳:電腦革命俠客誌》。
最後,本學期分組報告的相關規劃期程如下:
3月6日:分組報告方法公佈,接受修正討論
3月20日:完成分組,並將組員和題目遞交給助教
3月22日:公佈組別和順序,可著手進行(特別是程式開發類型,畢竟開發過程都是公開的,人在做,Google在看,無法造假)
?:第一組進行報告