顯示具有 自由軟體與社群發展 標籤的文章。 顯示所有文章
顯示具有 自由軟體與社群發展 標籤的文章。 顯示所有文章

2014年12月5日 星期五

OpenSource翻譯組會議紀錄

Opensource.com翻譯組開發會議 @2014/12/5

思考核心:

    1.傳承與延續的方法
    2.組員內部分工
    3.如何使成員對工作建立認同感
    4.如何吸引新成員參與專案

2014年11月21日 星期五

Ezgo project Meeting 1

這次是針對字音字形學習網的排版,除了打算用Html5改寫,也希望達成響應式網頁設計。

響應式網頁設計Responsive web design - RWD

能讓網頁隨著啟動裝置自動調整版面,換句話說,電腦有電腦的版面,手機有手機的版面,平板也有平板的版面,不用再針對裝置分別設計網站囉,RWD的思維在於響應解析度,隨著解析度的不同,網站的元件會流動至合適的位置,比如原本一行兩列的大按鈕,隨著解析度提高,按鈕會越變越大,當提高到目前的顯示裝置一行容不下兩個按鈕時,第二個按鈕會流動到下一行,變成兩行一列的按鈕。

這方面決定採用12欄的網格佈局達成,引入了bootstrap協助操作,目前預計完成四個頁面,配合AJAX後大略的規劃長得像這樣:




2014年11月20日 星期四

OpenStreetMap

講者:李昕迪 mcdlee


  • 想像自己是一個地圖廠商老闆
    • 收集一個城市或國家的資料,應當耗費多少資源?
    • 自己又要花費多少的比例,在收集這些資料
      • 多久更新一份資料?
      • 多久能處理一份Bug?
  • OpenStreeMap (中譯為開放街圖)
2004年由Steve Coast成立,具備Open Source與Wikipedia的精神,屬於開放授權(ODbl)且開放格式(對外交換為xml),只要有標註來源,就可以自由的複製、散布、傳輸與修改。

OpenStreetMap包含了森羅萬象的地理資料庫,如路網、地名、設施、速限、甚至連路燈、涼亭、店家開門時間等等都有標註,也可挑選其中幾個屬性作為其他地圖的底圖使用,比如素食地圖、WheelmapFOURSQUAREOpenHistoricalMap(歷史地圖數位化)等等。
  • Mapper(圖客)
開放街圖的貢獻者,帶著GPS的tracker,或透過Field Papers印製地圖,實地走訪在圖上描點,紀錄完資訊後上傳至開放街圖。
  • WikiStyle
    • 可能發生悲劇(惡意修改),但紀錄有跡可循
    • 半成品是可接受的,因為每個人都可以編輯


2014年11月13日 星期四

軟體的國際化與在地化

自由軟體開發與社群發展

講者:FrankLin


INDEX Topic 1.自由軟體的國際化與在地化
Topic 2.Ezgo打包的技術初窺探

講者介紹:
Franklin,在社群中被稱為馬哥,大一開始玩Linux,但真正栽入Linux與OOS是在念研究所時。出社會後都在做RD,現在則是以OSS為業的浪人。
2006年起,擔任KDE中文化團隊的協調人。

Topic 1.自由軟體的國際化與在地化


 Ezgo是推廣自由軟體用的一個系統,既然要推廣,中文化就是個相當重要的部分。
  • 國際化與在地化
過去的軟體,光是要能顯示中文,就要處理很多事情,如訊息的顯示、字型(px上的設定,同時涉及了自行的解析度)、編碼問題,使得在過去中文版的推出,即是一件大事。

而除了訊息,還可能會涉及當地的觀念,像是:
  • 數字表示法
例如在歐洲大多數的國家,1.000是一千,1,000才代表1,假設今天有一個德國的會計軟體,台灣中文化就得做內部的修改。
  • 年份的表示法
  • 日期的表示法
  • 金錢的表示法
  • 度量衡系統
這些都是在軟體在地化時要做的處理。

而現在,為了在同款軟體賣給不同國家時不大量修改,軟體公司提出簡單多國語言化概念。

原始程式→將訊息抽取出來編索引,存成一個檔案→將該檔的內容翻成不同語言
(原始程式在設計時就該有能檢視索引的機制)
因為訊息已經抽出來了,所以只要針對訊息獨立處理,不必修改原始程式。

Linux 上的中文化始祖 - CLE


Chinese Linux Extension - Linux 中文延伸套件
延伸:修改程式內容,重新編譯打包,以加入中文支援

CLE團隊也知道,光是修改打包只治標而不治本,因此積極與原始Linux團隊合作,期望加入國際化軟體的架構。
包刮 Linux ,  glibc , QT, KDE ,Gnome......都從收過CLE團隊的修改。

所謂國際化,即是將軟體與特定地區及語言脫鉤的過程,當移植時,不必做內部工程上的大量改變或修正。而在地化便是延續國際化的架構,建立某個地區文化的資料庫,填入該地區文化的資料,供程式在執行期呈現。

Gettext


關於自由軟體的國際化,主要是靠著Gettext這套軟體進行,Gettext只是套工具,他利用對訊息的包裝,可以將訊息抽取出來集中在一個 .pot 檔,翻譯者只需要拿pot翻譯成不同語言,並各別存成po檔即可,而開發者會將po檔編索引成為mo檔。

po檔分為檔頭與條目:

  • 檔頭存放的是po檔與其相對的pot檔的相關資訊,包括產生時間、最後翻譯者,還有複數型的定義 (plural - form)。
  • 條目則分為旗標與註解(區別相同訊息但不同意義,e.g: left : leave過去式? 左? )

翻譯工具簡介


  • 翻譯資料庫
  • Launchpad、pootle、transifex、tryneeds等線上共筆的翻譯平台

Ezgo打包技術初窺探


  • What is ezgo
    • 能夠讓從未接觸過OSS的人,接觸OSS並使用它 → 推廣
  • 推廣
    • 目標客群:從未用過OSS的人
    • Ezgo該有哪些特色?
      • 選單
      • 操作設計上貼近Windows思維
  • 從技術面而言
    • 屬於客製化的distribution
      • 有自己的品牌,卻不是一個獨立的distribution
    • Dirty hack產生的問題
      • 沒有組織,東西太零散
      • 版本一多不易管理
      • 不符合Debian規範,無法上傳
    • 目前的做法
      • 儘可能遵循標準機制,並自動化
      • 儘可能採用外加設定檔的方式,不覆蓋現有檔案
  • Debian - ezgo
    • Debian:套件的老祖宗
    • 遵循Debian規範,將常用重複的檔案與設定等等包裝成deb檔

2014年11月6日 星期四

Ezgo

Ezgo

Speaker : Eric


Ezgo開源教材分享
  • Stellarium
    • 可以描繪星體的軌跡
  • MuseScore
    • 可繪製五線譜,快速調整譜面
    • 可隨音符演奏音樂
    • 配有音樂社群,分享音樂創作
  • Hydrogen
    • 節奏編曲軟體
    • 配有各種音源,操作容易
  • Fritzing
    • 備有虛擬麵包板與圖像化電路,可以用於電路設計上的教學

2014年11月4日 星期二

C4 Labs Course 4

#1. Makefile


  • makefile REF
    • Makefile學習筆記
  • 平常的編譯方式
    • gcc file.c -o file
    • make file.o -> make file
  • makefile :很多個檔案要做編譯,彼此之間有相依性,所以寫一個腳本來完成所有的編譯動作
PROJECT = test
OBJS = a.o b.o c.o //物件檔當成三個字串

all: $(PROJECT)
$(PROJECT): $(OBJS)
...編譯指令...
  • 檢查include的標頭檔是否有被改過
    • 知道誰被改過,又有誰用到它
  • 建立一個描述相依性的檔案,然後將其include到makefile中
    • command line指令:-MF
      •  產生出一個.d檔,說明完成這個.o檔需要哪些.h檔
  • 引入一個目錄內所有檔案:wildcard
    • wildcard會展開目錄內的檔案

#2.Arch Linux


2014年11月1日 星期六

MOPCON 2014 會後會

 

MOPCON 2014 議程紀錄


這次是MOPCON會後會,主要在分享ㄧ些參加心得和揭露祕辛,所以不會跟議程直接相關唷。

第一次摸去IRSlab,空間比想像中的要大些,席間有提供飲料跟小點心,是個蠻愜意社群環境。分享人是MOPCON贊助組的成員,提及了一些MOPCON內部的分工,研討會的初衷與贊助者的立場等等。

對於贊助商而言,贊助的目的無非是推銷自身的產品,不過今年有些小悲劇,因為會眾有約40%是學生,所以有些產品不怎麼迎合需求,為了拯救贊助商,只好把MOPCON的店面移到贊助商旁邊,希望幫忙挽回一點人氣~算是會議的小插曲吧。

不光是產品推銷,這次的MOPCON也成為獵人頭的手段。分享人提到,這類大型開發者聚會往往是找人才的管道,因為會來參加聚會的,通常也都是對這領域略有了解的人,不妨藉此管道找尋真正適合的人才,比起104的模糊篩選好太多了。

但是這也引發了一個問題,一個堅持在濁水溪以南舉辦的研討會,來的贊助商卻多是北部的,講者也是北下而來,而會眾族群又多是學生,這會不會把南部的資訊人才又往北拉?反而是違背了研討會的初衷。這個問題討論了整整一個小時,直到蘇教授出來Demo自製咖啡機,工作人員是認為,能把北部的資源拿來南部用,這對研討會而言是件好事,而人才流失的問題,這並不是一時半刻就能解決的,MOPCON 至今也才辦了三屆,還不算個成熟的研討會,就先放眼當下,想辦法促進南部的素質吧。

2014年10月31日 星期五

鳥哥的私房菜&國際社群參與

#1.鳥哥、鳥站與自由軟體的學習
講者:鳥哥


  • 自我介紹(?)
    • 菜鳥長大了,總該變成哥
  • 為何接觸Linux
    • 一開始是被環境所逼
      • 不過換個想法,多學學也是件好事
    • 以前的信箱都有流量限制,所以想架設mail Server給自己使用
  • 為什麼會有鳥站
    • 因為想輕鬆一點
      • 為了要讓更多學弟妹學會linux,老師就不會老是找我了
    • 所以鳥站的來源其實是
      • 預防忘記以前做過的蠢事,以防再遇上時又要花時間
    • 鳥站怎麼來的
      • 從study area跟bbs.sayya.org(已關站)學習網路、電腦及Linux的基礎
        • 內容難度較高
      • 鳥哥創造Linux.vbird.org
        • 較適合新手入門
  • 關於鳥站?
    • 一開始會引起注意的主因是鳥哥夠雞婆
      • 解決討論區上看到的各種特殊問題
    • 鳥哥有句名言:我沒有錢
      • 因為沒有錢,設備買不起,只好用點特殊方法取代
      • 所以,就得要學習一些比較特殊的技巧
        • 這其實也是件好事
  • 鳥書?
    • 鳥站的文章一定比書籍還要新
  • 近年鳥哥在玩的東西
    • 教學專用虛擬化平台
      • 起因:沒linux要教linux
      • 遇上的問題:
      • VM效能優化
        • 透過Red hat Spice
      • VM Cpu優化
        • 原先使用的是最陽春的CPU
        • 改成透過libvirt的CPU去修改
      • 對顯卡負擔較重的軟體無法使用
    • 既然有實體PC/電腦教室了,為何還需要雲端?
      • 比較省錢

#2.參與國際社群經驗談
講者:Max

Slide

2014年10月30日 星期四

C4 Labs - Meeting 3




主持的是jserv,所以也是開學以來第一次爆滿(?)。比起分享,這此更像是推坑用讀書會,書目為linux kernel development 3rd 。這本書不像OS恐龍書,它假定你對基本觀念有一部分的認知了,而多著墨在怎麼去用那些觀念,所以可能不適合新手入門,而且它的圖真的很少。

今天是第一次開講,所以只就幾個章節做了簡單的流覽。jserv分享蠻有趣的,對於內容,將談談作業系統的基本觀念與排程。

#1.排程基本

進入排程之前,先讓我們釐清一件事:
  • Program:沒有反應,就只是個程式碼的集合。
  • Process:執行中程式的實體。
  • Thread:Process的紀錄器,告訴你這個Process幹了什麼。
一個Program能產生多的Process,每點一次程式,就會產生一個行程,多開就是這麼回事。而每一個行程,都有一個獨立自主的小空間(記憶體區塊),除了自己以外,沒有人能把它幹掉,同樣的,當這個行程掛掉時,別的行程也不會受到影響。

執行緒既為紀錄器,也是CPU分時的最小單位。一個行程通常有很多執行緒,這其實近似多工的概念。想像一個情形,如果只有一個執行緒,行程內所有的事就得都由他一手包辦,他可能要讀入檔案,又可能又呈現畫面給使用者,但是CPU一次只能分配給一個執行緒使用,這意味著我們必須等這個執行緒讀完檔案,才會有時間來回應使用者,如果前者曠日廢時,我們通常會認為是當機了。而多執行緒則把工作分攤開,我們可以有一個執行緒專職回報,告訴使用者這個行程做了什麼,而其他執行緒繼續埋頭苦幹。
但有一點要注意,多執行緒是近似分工,只是讓工作能同時啟動,真正在做事的還是處理器,如果只有一個執行緒,一個處理器,那你把它分成4個執行緒也不會比較快。事實上,在多執行緒中處理器只是快速的切換執行緒,以達到工作差不多快的效果。

排程, 其實就是如何切換行程。Linux的排程是基於分時,也就是把CPU時間切成許多片段,每一個片段可供一個行程來使用,當程式的時間配額額滿時,就會進行行程切換的操作。而判斷執行順序是來自優先權,它可能是透過一個演算法得出的,每個行程都會有個優先權,排程器(Scheduler)會透過它得知什麼時候該執行什麼程式。

我們先考慮三種行程:
  • Interactive process :會不斷跟使用者互動,需要偵測按鍵立即回覆使用者
  • Batch process:不需要和使用者互動,常在背景執行
  • Real-time process:即時性的,像是影音軟體
Linux的排程器實做了一個啟發式演算法,依據過去行程的行為,決定行程的優先權 。

此外,Linux 採取搶佔式多任務處理,也就是說當一個行程處於可執行狀態時,核心會將他的優先權和當前執行行程的優先權進行比對,若前者較大,中斷目前的行程,讓排程器挑出應當執行的行程。此外先佔也會發生在當前行程的時間配額額滿的時候,此時,一個鑑別旗標TIF_NEED_RESCHED 會被設立,讓計時器中止及調用排程器。

Execl - 第三次會議

上次的文件似乎沒什麼問題,所以今次又來了兩份新的文件。

一份是關於送餐的紀錄表,先從志工紀錄與長輩資料中讀取出每位志工與長輩,再依照日期分門對送餐紀錄進行統計,因為收到的資料是以日記,而統計結果要以月來看,所以又增加一的份月份表單。雖然觀念感覺蠻容易的,不過因為是動態的增加資料,使得這份文件極其龐大,在雲端進行debug時往往要等個2、3分鐘才會有結果,而且這可能造成了ㄧ些格式上的問題,

今次demo總會跳出ㄧ些莫名其妙的Bug,像在設定共用人員時屢屢失效,為了解決這個情形就延宕了近20分鐘,最後居然是瀏覽器的差異造成的OAO(Firefox → Chrome)。不過最大的問題還是格式出了差錯,從GoogleSheet一下載下來值又不見啦~反射性的檢查Sumproduct在逗號跟乘號之間的比對,結果居然是正確的


太棒了,我們發現了新的錯誤。
如果是平常我會這麼想,不過今天是資安project的死線,幸好我很快的發現了Bug,不然真的要爆炸了。Bug在於公式的枚舉失敗了,真是個奇葩的Bug,開檔時跳出了XML的報錯,推測應該與他有些相關,所以嘗試把全自動改成了文字格式,居然神奇的解決了?


話雖如此,也是到了11點多才完成,光是為了找錯就花了近30分鐘,現在想想真是太不值得了。

2014年10月23日 星期四

g0v & Git Cafe

Topic #1 g0v零時政府 & open data

講者:江明宗

一、簡介g0v與open data

  • g0v -> 為了補足gov的不足而成立

    • g0v 社群 motto :「不要問為什麼沒有人這個?先承認你就是『沒有人』,因為『沒有人』是萬能的!」

  • open data 的五個等級

    • 1.open licence : 開放文件的存取
    • 2.RE : 提供的文件可再使用/修改
    • 3.CSV : 純文字開放格式
    • 4.Url : 有固定的網址存放資料
    • 5.Ld : 除了自己的資料,還能跟別人的資料連結在一起

二、g0v專案

  • Case 1:開放政治獻金
    • 起因:監察院的資料必須到場查閱
    • 2013開始
      • 進監察院取得紙本資料,再將其掃描成電子檔
      • 因為圖片幫助不大,考慮用openCV按照掃描完成的表格切割
      • 工程師設計出一個網站,用來比照文字與圖片
    • 2014/04/19 專案正式公開
      • 24小時內,完成7個專戶,共309,666個文字比對
    • 截至目前,取得了28個專戶資料,但仍只是冰山一角(監察院有約6000個專戶)
    • 未來展望:將公司之間的投資關係畫做關聯圖,以釐清政治人物與企業之間的關係
  • Case 2:
    • 政府的選舉公報在2天前才會發出
      • ->要在 2 天內看完十餘名的候選人的資料
    • 減少盲目投票,讓民主社會的台灣更進步
      • 所以我們成立了一個網站,匯入村里等行政區以及選舉資料庫的資料,羅列出所有候選人的政見,並透過tag分隔出政黨、選區等等
    • 在Hackpad上線上編輯
      • 發佈想要整理的格式,轉發至ptt、FB
    • 運用newsdiff資料取得候選人相關新聞,並且將其比對
    • 2014/7月時,GitHub開始有人傳送PR
    • 2014/9月,匯入中選會登記概況

Topic #2 Git Cafe

講者:林旅強 Legist Qiang

一、Git Cafe與Git
  • 代碼託管 + Open Source 協作平台
  • 版本控制:
    • 對修改留下log,可以輕易知道改了什麼以及回復先前的文本
    • Git就是一個多人版本控制系統
      • 分散式,每個人的本機端都有一種套的版本
二、Open Source
to understand the concept you should think of free as in free speech not as in free beer -Richard Stallman
  • Free software foundation
  • GNU project (GNU's not Unix)
  • 自由軟體定義
    • 有使用程式的自由
    • 有修改程式的自由
    • 有再散播程式的自由 
  • Free Software -> Open Source
    • 因為free自由總是被誤解成免費
    • The Cathedral and the Bazaar
      • Open Source之所以好,因為它的選擇性很高,就像一個市集。
      • 蓋教堂是種開發模式,而市集又是一種開發模式
  • Creative Commons
  • Community & Crowdsourcing
    • e.g. PTT 成為納莉颱風第一手訊息流通處 
三、Open Source與個人發展\
  • 把自己的code放上平台,會有自己與助教之外的人給予建議
  • 參與開源專案,發掘自己真正的興趣
  • 遇到問題,通常會去問有經驗的人,社群在業界與學界都有相當好的資源
四、如何參與社群
  • 國際社群
    • e.g. Linux Kernel,Debian,Ubuntu,Gnome...

2014年10月18日 星期六

我的紫微星哪有這麼萌!?



Speaker:楊育誠


這次的分享和之前有個很大的不同,就是製作團隊從工作室至公司,所以在企劃、創作與行銷方面有著不同的格局,也論及到較多實務上及行銷上的策略,可以說是更貼近遊戲產業的現實面吧~


#1.星耀學園是什麼樣的作品

星耀學園是以紫微斗數為題材去進行動漫化的作品,當然啦,我們不能只餵公子吃天文圖,便置入了一堆萌妹子代表各個星靈,校長也坦承這近似西洋的黃道十二宮,但是就根本來看,把紫微斗數當背景的AVG還真的是絕無僅有,這無形中也成了行銷的噱頭。

學園設定來自於烏來鄉,至於為什麼在烏來鄉?因為那裡有山有水有溫泉,簡單來說就是滿滿的特色,而且像這樣的神奇學園,如果待在大都市裡大概天天都會被查水表,也顯得競技場這類古色古香的情境格格不入。

#2.遊戲實務製作部分

設定方面往往歸類於前期企劃,而在一個大團隊中,企劃特別要講究方法。

要將企劃內容盡可能的圖像化,不必拘泥於精細度,但是一定要呈現出概念與流程,比如說要做神奇寶貝的戰鬥,企劃要告訴團隊要如何呈現,像戰鬥方式(回合or即時)、場景配置、神奇寶貝出現的位置等等。我們可以寫一個小程式來模擬企劃內容,這樣討論時不僅降低溝通上的失誤,也能更貼近實務上面臨的難點或對現有設定該加強的部分。

而說起AVG,圖量相較於程式更重,如差分圖、臉部表情、立繪,這些都是需要精雕細琢的部分,而且良好的CG對於進軍同人市場是不可或缺的,講者有特別提到,以現今台灣市場的行情,一片沒有動畫化的AVG能賣個一千片就算不錯了,成本的回收只能鎖定在同人市場,比如角色人物的周邊,日常四格漫畫以及輕小說等等。

#3.業界的發展情形

首先要面對一個現實,所謂國產遊戲,風格到底要是什麼?

講者認為,什麼風格有市場,就嘗試什麼風格。

台灣經常有一種聲音,國產遊戲該有新風格,但是到底要如何去呈現、如何去定義,退一步而言,就算呈現出了新風格,也不保證能在市場上存活。其實原創並沒有什麼風格的問題,考慮風格當然很好,但是作品要先達到及格標準才行。


進行企劃時的思考點:

1.玩票性質與長遠發展2
2.外部及內部資源的評估
  • 確保資金回收\合作對象\企劃\程式\美術
3.遊戲類型
  •     大眾或小眾,以什麼去決勝負
  •     低美術門檻/高遊戲性 v.s 高美術門檻/低遊戲性
  •     老實說,靠現今靠遊戲性出線的非常非常少
4.發行平台
  • Steam/appstore/ps平台……
5.原創or改編
6.開發規模與賣點
7.上市時間與通路
  • 避免碰撞強檔,考慮發行商
8.多波次的行銷策略
9.數據回收與後期報告
  • 數位文創投資報酬率高\風險也相當高
10.版權模式與跨平台的可能性
  • 既然決定的是數位文創,就該注重在版權授權,這在數位文創上的獲利才是最高的
11.放長線釣大魚vs炒短線型遊戲

12.策略上的盲點
  • 游擊戰與陣地戰的選擇
    • 推很多不一定紅的 v.s 拼一步會紅的
  • 海外市場的佈局策略與輸出
  • 開闢第二戰場
    • 同人/週邊/置入性行銷
  • 品牌聯名效應
  • 虛擬與實體的交叉模式
    • 透過展覽推銷遊戲
  • 時間換取空間的策略模式

2014年10月16日 星期四

自由軟體 - 台南數位文創園區

台南數位文創園區

講者 : AJ


  • 園區提供設備
    • 3D印表機
    • 雷射切割機
      • Tinkercad
        • 線上建模網站
        • 使用OpenGL,所以不支援IE
  • PanScience泛科學
  • 台灣第一大科普網路社群
    • 用輕鬆有趣的方式,推廣科普閱讀
  • Npost公益交流站
    • 關注主流媒體不關注的公益問題
    • 讓公益變成全民運動
 it's technology married with liberal arts, married with the humanities, that yields us the result that makes our heart sing
協會的初衷:科技應當與人結合,與人作互動。我們一開始就是使用PunCar把自己送進任何需要我們的地方,教導他人Excel、Google、Dropbox,用最簡單的方式,去替不會使用電腦的人解決問題,而在我們離開那裏後,改變仍能留下,讓科技與當地人結合,進而改變他們的生活。同時這也是增長自身經歷的過程,能從不會使用電腦的人的思考模式出發,換個不同的邏輯或許也會有不同的發現。

台南數位文創園區與政府合作,為任何想創業的人,想自己做小物品的人,想參與活動的人,提供空間與設備讓大家互相認識,同時也會邀請一些創業家來演講,讓每個人都有學習與分享的機會。

Excel - 第二次會議

這次開會是21:00~23:00 ,比起上次挑燈夜戰到00:30,整體狀況感覺好了很多。不過感冒還是沒有好,感謝AJ提供的楊桃汁跟金桔汁,可惜我從小喝到大,現在已經對那些有陰影了。



經歷了兩個禮拜,終於成功解決了sumproduct的問題,一開始就有發現到,是資料型態上出了錯誤,但是第一次嘗試時沒有加括號才找不到參考。現在整份表單都有值了,剩下都只是些數值上的小bug。比如對於一個紀錄時間的空儲存格判斷,在Google Sheet上會判斷為12月,而Excel上會列入1月,至今我仍理不清這種詭異的邏輯。會議中AJ提議要再對值的有無進行一次確認,但是我對人數的完整性有點顧慮而沒做答覆,人工算表一個小時表示痛苦,畢竟我們也不知道業主什麼時候才會維護表,到時候總人數突然跳到就又陷入一個除錯迴圈,所以我只另外標紀了有問題的儲存格而已。

這禮拜又收到了一份新案子,內容是關於南投的社區照顧。雖然有一部分是為了分工方便,但我仍認為這類文件應該要用資料庫保存,沒匿名化的資料放在雲端實在不怎麼安全。在9月討論AJ有提到的是別自行開發,避免會期結束後程式沒人維護,不過使用現有的軟體應該也是個辦法,當然我不否認,比起Excel填表與Google文件,如何使用一個資料庫就顯得專業些,教學上也會較難以著墨。

這禮拜新學到的函式Filter,這個東西真是太酷了,他能夠對表單中的資料做篩選,如果我們給每個專案一個ID,那透過篩選ID的動作,就能用拉選的方式分隔開每個專案,宛如一個小型的資料庫。我們目前有2個表單要處理,一個是紀錄表,一個是給志工填入的總表,志工只需要在總表輸入ID/生日/案主等等的資料,就會把資料傳入紀錄表對應的ID裡,每個ID預定可以儲存20筆資料。架構是這樣,不過編寫的過程出了一些小Bug,我猜是在拉動Execl時沒有用$固定行造成的問題,因為我們將3儲存格合成1個用,比如ABC當成A用,但是在判斷時卻把A/B/C輪著用,不過學長即時的解決了這個Bug,目前這份表單看來是沒有問題的。

為了要在會議上刷些存在感,一直是我嘗試理解那些拗口函式的最大動力,還記得剛收到第一份表時,感覺就像是踏出新手區就直接打最終Boss了,有種不知如何學起的無力感,而且裡頭的用法實在蠻進階的,google也沒什麼值得參考的範例,更別提去解決問題了。不過現在來看,其實這幾次會議讓我進步蠻多的,可能跟越級打怪有點關係,我不確定以後還會不會用Excel來做統計分析,但我知道的是,我對如何應用所學更進一步。當初填組時其實是選教學組,因為我很擔心跟不上開發的腳步,但從這幾次的成果來看,其實不是個打醬油的,幸好當時選填人數不夠,不然我應不會有這段值得回味的精歷。

2014年10月13日 星期一

雨港基隆的製作與誕生

  講者:Erotes Studio 李處守總召



喔喔喔喔喔是TRPG的講座,自從看了ゆっくり妖夢と本当はこわいクトゥルフ神話,就一直對這個領域很感興趣,想不到Erotes Studio是從桌遊中成立的,讓我想到Sitcon當初也是為了在買消夜時有團揪,不少社團形成的原因實在是很微妙呢,

Erotes的團隊跟上次一樣都是蠻輕巧的,而且因為成員四散各洲,所以作業都是雲端進行,沒有特定的工作室,這就是我嚮往的工作環境呀~ 不過這也衍生了ㄧ些後續提到的小問題,順帶一提,講師觸手(無誤)是團隊的總召。

談談遊戲的背景,就算沒聽過雨港基隆,也該看過















2014年10月8日 星期三

C4 Labs - Meeting 2

呵呵~上禮拜還覺得很親民,這次就被制裁了



#1. Linux 程式分享

淺談在終端機上打殭屍,由於我ezgo還沒有實裝,對講者的分享不大有深刻體認,諸如:
  • ranger :終端機上的檔案管理員
  • catimg :可以在終端機上觀看圖片
  • cmus   :可以在終端機上播放音樂
  • nano   : 文書編輯器
倒是對一些有趣的程式蠻有印象的,比如

  • yes:他會一直輸出y輸出y輸出y,直到天荒地老
  • cowsay:你可以印出一頭牛,並且讓他說話!
  • < I Love nix >
     ------------
            \   ^__^
             \  (oo)\_______
                (__)\       )\/\
                    ||----w |
                    ||     ||
     
  • ponysay:wow,你可以印出彩虹小馬

  • cmatrix:

說明文件告訴你:他很酷,他很吃資源。

#2.Zend Framework
  •  Zend Framework
它是一個開源網頁應用框架,其架構是MVC。今天我們來處理這句話就好了
 推一部sitcon的研討會,我覺得講解蠻清楚的,還有附送練習題
  •  框架(Framework)
Wiki這麼告訴我們:
a software framework is an abstraction in which software providing generic functionality can be selectively changed by additional user-written code, thus providing application-specific software
簡單來說,可以把framework視為開發某個應用的大型函式庫,裡頭包含了各式各樣在開發該項應用時需要用到的功能,這些都已經是可以重複使用的組件,當然,你也可以改寫這些功能來迎合自己的需求。
你可能會對framework與IDE產生一些混淆,可以把framework當作是一個函式庫,透過它能讓你在編寫軟體時更加容易,而IDE 則是執行、編寫code來套用框架的工具。比方說Qt、.NET都是框架,而欲使用這些框架你需要一個IDE來引入他們。
  • 網頁應用框架
顧名思義,他是個用於協助網頁開發的框架,像是套用Java的JQuery、獨霸Ruby的Rails等等,而Zend Framework是基於PHP。而網頁應用框架包含了若干種架構(architectures),架構涉及了這個框架是怎麼構成的,分別有
  • Model–view–controller (MVC)
  • Push-based vs. pull-based
  • Three-tier organization
目前大多數的網頁框架是屬於MVC架構。
  • MVC架構
MVC架構的核心思想不外乎是鬆耦合,他將系統分隔成三個部份
  • Model : 用來進行演算法及資料庫
  • Viewer :就只負責呈現使用者所看到的介面
  • Controller :可以想作Model與Viewer之間的橋樑,是邏輯處理的大本營
    • 會把從Model獲得的資料傳給Viewer呈現
    • 會對Viewer上的操作進行判斷,看要讓Model中的哪支程式處理它
 這麼做不但在網站出錯時容易Debug,也能把一個大型project分案處理。

2014年10月5日 星期日

聊聊有病遊戲的東南西唄

講師:哈利菠菜

  

 

遊戲四元素:程式、美術、企劃、行銷

      
        關於程式,除了要日常研磨自身的技巧外,最重要的就是要有個原形,不論是不是遊戲設計,在設計途中更改規格都是相當危險的,這不僅將大幅延誤開發進度,更會磨損組員之間的信任關係。對於一個專案的開發,務必要與組員之間先溝通好規格,最好能夠事先繪製出一份圖表,如此途中可能發生的錯誤也能先作出應對。


        談談美術,這次的講題主要是獨立遊戲:我滿懷青春的有病測驗,其實我認為講師的工作團隊蠻特殊的,它是以講師為溝通核心,其他成員彼此不認識,在協調上自是費力些,尤其是美術這部分就費時半年。對於美術的好與壞,其實這是一個相當抽象的概念,所以我們必須要去強調設定的重要性,何謂設定?大至世界觀,區住環境,民俗風情,這些會影響角色的外貌如服飾、膚色、刺青等等,而小則至家庭背景與人物性格,它能表現出人物該有的動作與氣質。而談到如何加強設定的功力,廣泛閱讀與社交是個不錯的方法,它能讓你更了解何為一個角色。

        談到美術之間的溝通,就是要求清晰,我記得講者提到延宕半年的理由,就是他收到第一任美術的人設圖時,回覆的是「沒有悸動」。價值觀的模糊會影響達成共識的速度,半年後,講師改用一些具體的方法陳述,像是「領口要再下來一公分左右」,「裙子可以再往上提高一點點」,並且就文獻內容來跟美術溝通,效率就快了許多。


        企劃及行銷其實是一體兩面,現在APP的市場已經殺成一片紅海,單一下載量的成本翻倍提升,更必須著重在這個區域。我很認同講師提出的一個黃金圈概念:

  • 想讓玩家體驗到什麼感受 - Why
  • 想讓玩家用什麼樣的玩法 - How
  • 遊戲應該最後長什麼樣子 - What

我們往往從What去著手,比如要設計出一個轉珠遊戲,要設計出一個守城遊戲,這些都是一個遊戲的最終呈現。我們真正該著手的是Why,這個遊戲的核心是什麼?它能為玩家帶來什麼?比如神奇寶貝,通常小孩子都有一個夢想:擁有一隻酷炫的怪獸,神奇寶貝實現了,而且越來越著重在培育出「自己的」神奇寶貝,你可以跟他互動,可以把自己的願望投射進遊戲裡。再比如MineCraft,它的核心在於創作,玩家不必去研究複雜的3D模型,它提供給你模型,讓你隨心發揮,做出來還能發佈給大家觀賞,這也能帶給玩家莫大的成就感。一個遊戲該在乎的是玩家的感受是什麼,而不是一味的塞東西給玩家,跳脫What的思維框架,往往能成就一個更有趣的遊戲,推銷的核心也呼之欲出了,我想在現今的APP市場中,掌握這種思維是相當有利的。

        至於行銷方法我認為也是一個類似的概念,要有推銷的核心。思考兩個問題,什麼遊戲最好玩?什麼遊戲最有病?我想後者帶來的印象會深刻些,雖然這在某部分也會限縮住客群,哈利波菜特別於此有提到一個失誤:其實這個遊戲一開始是瞄準大學生跟OL的,不過主要下載者都來自於中小學生,這在收費策略上出了些問題,因為沒有引入My Card機制,雖然下載量相當高,成本還是不大能回收。其實這讓我蠻訝異的,一個App排行前10,累積下載量近30萬的作品居然不算賺錢,這可能令不少獨立遊戲者望之卻步。

        感謝NCKU遊戲工作坊,感謝哈利菠菜,讓我回想起選擇資工的理由。尤其是看到桃轅傳 


有劇情,有配音,有音效,有美術,又有遊戲模式,我從沒想過在大學時期能做到這個地步,這場演講真是太精采了!

2014年10月3日 星期五

自由軟體 - 俠益千里

Course 2 - 俠益千里 ‧ 扶餘海外

紀宗衡講師@真理大學資管系


  • 行動的初衷 :
讓外國的孩子看得懂外國的新聞。因為他們的家園正在一點一滴的消失,愈來愈多的草原瀕臨沙漠化,愈來愈多的土地被賣出,但是苦於地理與資訊上的隔閡,孩子缺乏了危機意識。
起床,電車,四小時辦公室或工廠的工作,吃飯,電車,四小時的工作,吃飯,睡覺,星期一,星期二,星期三,星期四,星期五,星期六,大部分的日子一天接一天按照同樣的節奏周而復始地流逝。可是某一天,『為什麼』的問題浮現在意識中,一切就都從這略帶驚奇的厭倦中開始了。『開始』,這是至關重要的。厭倦產生在機械麻木的生活之後,但它開啟了意識的運動。
-薛西弗斯神話
我把我的一切都交了出來,財產,作品,只把日記留給我自己。如果你還要折磨我,我就出走!我就出走! 
-托爾斯泰  
俠益千里,就是跳脫日復一日的框架,出走 。
  • 當我們透過資訊去服務時,不是工程上的思維,而是管理上的
    • 志工:
      • 追求更好的生活民質,透過志工想想自己究竟能做什麼
    • 因為有需求,才能達到真正的資訊應用
    • 不是透過鍵盤,而是實實切切的用自己的手去幫助別人
  • 寫程式與志工之間,究竟有什麼關係 ?
  • 青年的四個大夢
    • 一個人在17~33歲之間,如果沒有完成這四個大夢,將影響他往後會成為怎樣的人
  • GitHub
    • Social Coding : Code/do-ing together
    • 思考如何分工合作、如何做自己想做的,如何做得更好
  • 出走
    • 你敢不敢走一條未曾走過的路,從安逸的大夢中醒來? 
    • 因為走出去,而會與當地有了很深的連結,從文化,從語言,那將是跟著你一輩子的記憶,甚至改變一個人。
    • 活動 :
      • 偏鄉最大的問題,就是年輕人不回去了,即便我們現在把年輕人找回來,也必須面對他們的就業問題,於是,我們決定著手在留下這一代的年輕人。
        • Arduino + Scratch + 布袋戲
        • 讓寫程式不只有寫程式,而是包含了環境與文化
      • 2013滾滾江原
      • 2014俠益千里 : 哈薩克~台灣5500公里
        • 服務 : 
          • 建置一間電腦教室
          • 一個自由軟體與英文的培訓團隊

Course 2 - 科技啟蒙


  • 發表就是最好的記憶
  • 鼓勵實作與研究,提供一個發表的舞台
  • 科技啟蒙 = 對新手最友善的研討會

2014年10月2日 星期四

Excel維護 - 第一次會議

第一次開會,閒聊時間比我想像來的長~~很~~多~~~,主要都在自我介紹跟分享開發經驗,不過大家都沒說幾句話,當下感覺氣氛超沉悶的崩╰(〒皿〒)╯潰,期待日後能慢慢的有話聊,至少在半年間合作愉快XD

資訊顧問,這個名號感覺纏繞著霸氣,可惜我不是吃了Excel果實的EXEX人,為了不辜負這個名號,只好照三餐問候那張圖表,看著看著就日久生情有了點心得,也寫了一些函式嘗試去改進它

不過我沒聽說過要在會議上發表啊啊啊啊啊!!!!!!!!!
    
 看到會議通知的當下

我的Excel真的只有學了一個禮拜,加上當天重感冒又跑C4 Labs,還來不及進旅店就被拖進了會議室,我在麥克風前就只是隻HP=1的風中蟾蜍。真心認為,這次的發表不甚理想,雖然我本來就是個不擅言詞的人(?),但是回想不出自己說過什麼還是頭一遭,那時可能真的就靠直覺去做判斷吧,下次應該先擬好一份簡報,至少在狀況差時還能做些應對,幸好沒被Shut down

我個人其實對除錯蠻感興趣的,不過是在ACM以外的地方,比方是這次的Excel。主要的錯誤是在Google試算表上可得的值,到了Excel裡變成 0,到了Number會少值,而錯誤是出現在多個sumproducts的Arrayformula跟vlookup上

Number會少值其實是我的誤判。Number在遇上函式不相容時,會先把儲存格內容轉為文字型態而非實際數值,這使得countif > 0會少算了浮點數。

Excel在這方面就乾脆多了,直接把所有的值都換成0,讓你不得不跟他來場生死決鬥。

除了一開始在編輯器上錯誤的嘗試之外,曾經想過把sumproducts轉換成sum,可惜功力不夠,參不透所有運算表達的意義,而且對vlookup是無解的。之後又把腦筋動到Arrayformula,結果還是Fail T_T,最後只好嘗試這兩個無效的函式剩下的的交集,都導入了其他試算表的資料,我猜應該是在這方面不太嚴謹吧,當初看到沒有用indirect就感覺毛毛的。
  
       距離下次會議還有兩個禮拜,或許有時間把一些危險的東東糾正過來,之後再對所有問題做個小統整吧~