2016/03/01

[Linux] vim-youcompleteme installation



Project: http://valloric.github.io/YouCompleteMe/#ubuntu-linux-x64-installation

一個讓vim具備程式碼自動完成的plugin


(每年都有學弟妹抱怨在Linux上拿vim coding很難用...我想大概跟打洛克人一樣,素身X當然不好用啊www)

除了透過專案網址提供的方法,Ubuntu/Linux Mint也可以利用下列方式安裝:

sudo apt-get install vim-youcompleteme
sudo apt-get install vim-addon-manager
vam install youcompleteme

Reference: http://blog.csdn.net/pdcxs007/article/details/49103981


2016/01/18

[Android] Debug Without USB (use Wi-Fi)

不想要每次Debug時都拿USB線拔來拔去,可以透過無線網路的方式來取代
需要注意的是運行Android Studio開發工具的PC跟Android Device必須在相同區網
傳統方法是自行下指令切換ADB連接模式,後來有人把它寫成Android Studio的plugin


[Android Studio Plugin]

從工具列 File -> Settings -> Plugins
搜尋wifi adb,把它裝起來就可以



















Android裝置第一次使用要先用USB連線,再點工具列上面的plugin圖示
它會出現連線成功與否的提示訊息,之後斷開USB,按執行就能透過Wi-Fi來做debug了







Project on Github: https://github.com/pedrovgs/AndroidWiFiADB



[Manual in Command Line]


1.
首先進入Android Studio SDK的路徑,預設安裝路徑應該長得像下面這樣
C:\Users\使用者名稱\AppData\Local\Android\sdk\platform-tools

2.
(將Android Device以USB線連接到電腦)
開啟命令提示字元

adb devices
可以檢視連接的裝置名稱,如下圖






記下裝置名稱(像圖中HT33BTP00443的部分)

3.
adb -s Android裝置名稱 tcpip 5555





4.
adb connect  Android裝置IP
出現連線成功訊息後,就能在Android Studio中選擇作為debug裝置
之後想變更連線類型的話,請參考下面這篇的作法
http://cms.35g.tw/coding/adb%E4%BD%BF%E7%94%A8wifi%E9%80%B2%E8%A1%8C%E9%99%A4%E9%8C%AF-adb-wifi/

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...