2015/12/09

我的分享時光 jserv & walkingice

由資工系學會主辦的活動,當初看到報名有人數限制就衝了,最後亂入成功XD

舉辦地點就在交大北大門口飲料店二樓,空間布置上感覺很free,不會像一般校內講座位置一樣死板,主要是談opensource的小型聚會,個人滿喜歡這樣的感覺,講師為黃敬群老師(jserv)走冰(walkingice,他說不要稱呼他老師,這樣有身分高低的感覺XD)有食物跟飲料自取。

憑印象紀錄一下演說的內容

前半場,jserv: 因為時間太短沒做簡報(阿 被你發現了)所以你就隨便拉,拉到哪裡我就講哪裡 
(jserv的講話方式幽默,能引起聽者興趣,演說期間台下也很歡樂XD)

1.負責輸出的筆電鍵盤故障,jserv表示: 就叫你用Linux/opensource software了吧! 

2.寫opensource的東西,不要只為了contribute而contribute,解已經存在的issue會比自己弄個看似很酷卻不實用的東西有貢獻 (jserv:你有想過使用者的感受嗎?沒有,因為你只想到自己)

雖然有時候會被其他人罵得很慘(ex: code style不符合規範、作法太爛等等)
如果能被Linux Torvalds本人罵,還能截圖下來到處炫耀

3.學生都不寫報告怎麼辦?只好由教授來寫了,如果學生還是不寫呢?教授就繼續幫他寫,寫到他愧疚期中就會自己退選了。

4.有人問想要作為opensource的貢獻者,要如何入門,jeserve提到: 最年輕的Linux貢獻者年紀只有,4歲。 (我四歲的時候在幹嘛 =口=)

5.有人問台灣國內國外資工系學生的不同,jserve表示這個問題並不實際,如同以十二星座斷定人的個性(雙子男花心、獅子男熱情),一竿子打翻一條船,創造個人的強項才是重點。

6.從opensource中可以得到的成就感,舉例來說: 當你曾經寫了android某個功能或者patch,以後看到有女生正在使用的時候,就能跟他說: "謝謝妳讓我曾經走進妳的生命之中",雖然這可能只會讓你被當成變態。

7.一門技術要學得深學得廣,否則不同領域的人只要利用手邊的工具,也能解答出自己領域的問題,這樣自己的優勢就不存在了。 

8.踏入opensource領域,善用三種工具: Github、Hackpad、IRC

9.要能讓別人把你跟某種強項連結,例如做kernel、web,如果你只能跟OO大學的名稱連結,那其實是平庸的。

例如談到林軒田教授,我們就會直接想到機器學習
(林軒田教授有把機器學習的教學放上Youtube,講義的話在這邊)

10.交大學生很厲害,靠北交大上罵教授都能條列出一堆,要滑3頁才滑得完。


後半場是walkice,主要介紹g0v零時政府跟opensource的精神,整個演講內容比較四平八穩

提到了一些opensource領域的前輩,像是唐鳳等等
還有g0v的源起以及運作方式,今天才知道原來零時政府也是源自於黑客松所衍伸出來的產物
(還有其他像是給設計領域的設計松,只要喜歡都能發起個OO松,號召同好一起完成某件事)
因為不喜歡政府資訊的不公開,所以由各種不同領域,並不限定工程師,因為不同領域的意見與技能都是完成一件事情很重要的,舉例來說:UI是否吸引人,是決定使用者要不要長時間停留的要素,但是工程師通常比較...缺乏美感。透過定期聚會的方式,提出想要做的東西,然後分配工作下去執行,要打造方便大家了解、參與政治的平台。其他提到的作品還有萌典vTaiwan

walkingice也提到了opensource入門,Git是一定要會的工具(他大學時期使用的是svn),即便現在業界還是一堆人用壓縮檔、資料夾在管理專案(汗)
有時候上頭交代給你兩小時找出某某project,用Git只要5秒鐘就拉回來了,剩下時間就拿去做自己喜歡的事,時間到再默默拿出早就抓好的project

整個流程比預定的早了30分鐘左右,剩下的時間就給與會者跟講者交流,因為jserv那邊爆滿了無法趁機亂入,所以全部時間就和walkingice聊,談了學術與工程上的差異、社群活動、opensource。

也認識了幾位資工系的學長,在結束後也稍微聊了一下,小小的結論是,參加黑客松團隊裡配備一個懂UI設計的人是很重要的XDD
(這也透漏了主辦方跟參賽者對於"黑客松"內涵理解的差異...)

另外一個共同的看法是,自己有興趣的東西未必會有時間去做 (恩...交作業大學嘛)
或者做出來的東西被認為學術性不足而被打槍,都是滿無奈的。

整體來說很滿意,能在自由的空間跟氣氛下聽取業界先進跟大師的演說,希望之後也有機會多參與這樣的社群活動。

2015/11/29

[Raspberry Pi] Ubuntu Mate 安裝紀錄

不知道要選哪個OS的話,可以參考這篇有介紹:
Raspberry Pi 的基礎 - 24 套作業系統大集合,我該選誰?
http://blog.itist.tw/2015/11/how-to-choosing-operating-system-for-raspberry-pi.html

1.安裝完Ubuntu Mate之後,要手動分配空間給系統,否則只會用到3.7GB左右的空間

  sudo fdisk /dev/mmcblk0
  接著參數依序為d、2
  sudo resize2fs /dev/mmcblk0p2
  接著參數依序為n、p、2、enter、enter

2.酷音輸入法
   sudo apt-get install fcitx-chewing
   重新登入後就能選擇中文輸入

   後記: 重裝系統之後因為不明原因,輸入法圖示跑不出來,就換成gcin了
   sudo apt-get install gcin

3.遠端控制
   sudo apt-get install xrdp

4.FTP
  sudo apt-get install vsftpd

  #vsftpd設定檔 (IPv4跟IPv6同時Listen好像會有問題)
  sudo vim /etc/vsftpd.conf

  FileZilla連上FTP後中文亂碼的問題: (強制使用UTF8編碼)
  https://twnoc.net/support/Knowledgebase/Article/View/143/0/filezilla

5.LAMP

Reference:
http://www.unixmen.com/how-to-install-lamp-stack-on-ubuntu-15-10/
http://www.codingstartup.com/how-to-setup-lamp-on-ubuntu/

6.Transmission-Daemon

Reference:
https://wwssllabcd.github.io/blog/2013/04/22/how-to-setup-transmission-deamon-in-raspberry-pi/
https://help.ubuntu.com/community/TransmissionHowTo
To be continued...

2015/11/14

[Git] 使用TortoiseGit & Google Drive

1.首先電腦必須安裝mysisgit,這裡的git GUI以TortoiseGit為例 (也可以選擇命令列介面)

  詳細步驟請參閱: https://backlogtool.com/git-guide/tw/intro/intro2_1.html

2.利用Google Drive空間作為Git Server(主要是Github之類的git repository服務,要免費使用的話就得將程式碼開源)
 
  只要開好Google Drive的共用權限,並設定好Git的遠端路徑,就可以讓多人協作一個repository了

  詳細步驟請參閱: http://www.coder.com.tw/blog/system/windows_tortoisegit_googledrive/

2015/11/01

[Linux] pscp傳檔

(Linux部分皆以傳至Raspberry Pi帳戶pi為例,IP Address請依實際IP來指定)

(1)Windows to Linux:

pscp D:\testfile.txt pi@192.168.0.101:/home/pi/Downloads

(2)Linux to Windows

pscp pi@192.168.0.101:/home/pi/Downloads/testfile.txt D:\

如果要傳送整個目錄,需在路徑之前加上 -r

2015/08/30

[Windows] 光碟機消失解決辦法

從升級方式升到Windows 8或者Windows 10
有時候系統會抓不到光碟機

解決方法是以系統管理員權限執行命令提示字元
並輸入以下指令

reg add "HKLM\System\CurrentControlSet\Services\atapi\Controller0" /f /v EnumDevice1 /t REG_DWORD /d 0x00000001

並重啟電腦

2015/08/28

[Android] Google USB Driver

開發Android App時想要利用實體裝置來Debug
如果系統無法辨識Android裝置,則需要手動下載Google USB Driver來安裝
步驟詳細紀錄如下(點圖可放大)

2015/05/29

[C++] Polymorphism

java上課時提到與C++的polymorphism、virtual觀念做比較 複習一下C++,code及註解如下

2015/05/06

[轉] eclipse 快捷鍵

常用:
ctrl+/ 註解
ctrl+\ 取消註解
ctrl+o 快速搜尋method
ctrl+e 快速切換分頁
ctrl+h 搜尋資料
ctrl+k 搜尋相同資料 +shift(上一個)
ctrl+g 工作中申明
ctrl+. 下一個錯誤
ctrl+1 快速修正
ctrl+q 回到最後編輯行
ctrl+t 查看類別結構
ctrl+m 放大編輯視窗
ctrl+shift+/ 多行註解
ctrl+shift+\ 取消多行註解
ctrl+shift+r 搜尋檔案
ctrl+shift+i 顯示變數資訊
ctrl+shift+g 參照搜尋
ctrl+shift+p 找對應括號
ctrl+shift+l 查看其他快捷鍵
ctrl+shift+f 格式化程式碼
ctrl+shift+o 引入package(all)
ctrl+shift+m 引入package
ctrl+alt+h 查詢引用
ctrl+alt+s svn
alt+up or down 當行上下移


2015/04/25

[Linux] ubuntu建立桌面捷徑

在桌面新增一個空白文件,並增加內容如下:

 [Desktop Entry] Name=File Name 
Type=Application Exec=File Path 
Terminal=false
Icon=Icon Path
Comment=Integrated Development Environment
NoDisplay=false
Categories=Development;IDE;
Name[en]=File Name

紅字部分依照需求變更

2015/04/24

[C++] 字串解碼範例(中英夾雜)

輸入 2a3c => 輸出 aaccc
輸入 4維8德 => 輸出 維維維維德德德德德德德德 
以前寫C中文處理是用char[]傳入IsChinese判斷
用C++我改為直接傳string進去
猜測這裡用substr()取出兩個byte能行,沒想到真的成功了XD

2015/04/11

[Life] 落寞

雖然網誌標題包括了記錄生活點滴
不過真正在這裡寫心情 還是頭一遭
意料之外地是
居然是懷著一點惆悵 有點沉重的敲著鍵
可能是晚餐的咖啡作祟吧
(又或許這只是想將原委給推託到咖啡因的頭上?)
白天考完三科考試 現在居然不覺得倦怠

2015/03/19

[Java] Eclipse WindowBuilder Plugin (Swing GUI Designer)

Help->Install New Software  (這是Eclipse安裝plugin的標準動作!!)


從下面的網址找到跟自己Eclipse版本一樣的選項
複製Update Site欄位的site網址,並貼到"Work with"欄位中,勾選所有選項後按Next


一樣Next,同意他的說明後開始安裝,如果碰上警告就按確定






2015/02/25

[Java] Notepad++的Java開發環境設定

(1)透過Notepad++的Plugin Manager安裝好NppExec






















(2)按下快捷鍵F6,在對話框中貼上以下內容並按save,存成你想要的名稱

cd $(CURRENT_DIRECTORY)
javac $(FILE_NAME)
java $(NAME_PART)














(3)之後只要把code存成java source file,就能在Notepad++裡面透過快捷鍵F6來執行