【原文】https://www.toutiao.com/i6594291159911105031/
Ubuntu 我現在已經基本不開windows了.學習娛樂開發基本都在Ubuntu
- 首先你要接受的是,沒有QQ, 因為我本來平常生活就不需要用QQ. 如果你對QQ需求很大的話建議不要裝Ubuntu. Ubuntu下基本沒有好的QQ解決方案.
- 當時想轉到Ubuntu是因為以后要做web后端開發必須要很熟悉Linux, 其次是覺得Ubuntu的整個UI要比Windows好看. 所以我建議裝好以后可以把Ubuntu折騰漂亮一點. 比如裝Unity Tweak Took, compizConfig Setting Manager等配置軟件, 看看網上的教程可以把Ubuntu弄的很炫酷..各種透明,動畫,3D效果....還有推薦一套圖標主題: Numix Circle 主題圖標, 非常好看強烈推薦
- 其次是輸入法, 強烈推薦搜狗輸入法, 安裝稍有點麻煩
- 辦公系統那一套, 三種解決方案, LibreOffice, WPS和Google doc. 如果不是需要經常修改MS word,上面三種寫寫文檔都夠用...
- 開發相關, 工具應有盡有...文本編輯器推薦Sublime Text, IDE推薦Intellij那一套. 其他什么工具需要就直接terminal輸sudo apt-get install ... 搞定
- 用Ubuntu一定要會Google!!!! 很多問題中文資料根本查不到....
之前寫代碼的時候是在 Windows 上,某一天舍友大人裝完 Ubuntu 回來,給我 show 了一下,看了第一眼,那時覺得好神奇好酷炫,於是在某天我也裝了,那時還是 Ubuntu 12.10,然后擱置了一年╭(╯3╰)╮,轉眼過了一年,升級到 13.04 后終於下定決心在 Ubuntu 上干活,推薦題主裝 64 位的。
說了這么多,體驗來了!
1. 裝軟件:剛開始什么 deb、tar.gz、.run 完全看不懂,最后發現一條神奇的命令
sudo apt-get install
什么 emaces、vim 無痛安裝。當然如果你選擇的是 deb 格式的安裝包的話,我推薦 GDebi 這個軟件,安裝 deb 非常的方便。
2. 開發工具:咳咳!作為一個前端工程師偏愛的編輯器是要的,Sublime Text: The text editor you'll fall in love with 什么!sublime 輸入不了中文! 當然一個編輯器可能滿足不了你寫代碼的欲望,vim 的配置:spf13-vim - The Ultimate Vim Distribution
3. 娛樂:聽課基本上就是豆瓣 FM 還有網易雲音樂。
4. 通信:QQ 用的是 wine QQ,用着還好
- 5. 終端:肯定是這貨 Oh My Zsh 。
我從windows轉到ubuntu有兩三個月了,最開始確實有很多不習慣。
諸如
1.ubuntu常常開機就遇到的 內部錯誤 是么東西。
2.在編輯器里中文輸入法各種不能使用是怎么回事
3.網頁版qq真的不好用啊,wineqq又各種掉線
4.想看個視頻 字幕沒有咋辦啊 在線匹配字母的效率也太低了吧
5.讓做個ppt, linux下的ppt真心不好用。。 要修改個圖片沒有photoshop怎么辦?GIMP試了一下,有點無從下手
6.啊,想玩游戲了,讓我打兩盤魔獸吧,紅警也行
好處
1.想要安裝個軟件,真心方便,apt-get 一條命令搞定。文件的管理,配置等等終端里一條命令搞定。
2.想體驗最新的版本,也是超方便,終端里一條命令搞定。
3.終端或者說命令行真強大(恩)
4.對程序員來說,確實也很方便。。。(這個怎么說呢。。 其他人補充吧)
5.不用擔心病毒了什么的
但是還不能用qq,玩魔獸,所以現在我用virtualbox虛擬機裝了個xp系統。
然后開啟virtualbox的無縫模式,之后的事。簡直跟同時用兩個系統一樣。
1.virtualbox安裝xp 給的配置並不高,但足夠其運行。主要是分給其兩核+1G內存+32M顯存。本人的電腦配置是I5 3520(好象是。)+6G內存+HD4000+GT630 ,所以剩余的配置足夠運行調試程序了。
2.替換了ubuntu 14.04里默認桌面成gnome3,這個穩定性確實很好,而且對中文輸入法的支持也很不錯。
3.不要使用ubuntu kylin.雖然增加的對中文的支持,但是各種不好用。
綜合來講 10.04版本的綜合體驗是最好的。
然后我就切換到 Fedora了,一直到現在。
Ubuntu的系統升級也是相當酸爽的,尤其是半途中 Adobe, LibreOffice 下不下來什么的。就算能下下來,升級過程也會問你很多的傻逼問題,深夜睡不着的時候可以嘗試折騰一下還是相當有趣的。你可以猜測一下下一個問題會在幾個小時內問。當然了,當然了,這些都是小事情,深夜看球,或者看個WWDC什么的不是也得熬夜嘛。其實升完級以后發現無線網絡驅動不起來了才真的酸爽呢。
驅動無線網絡需要重新升級內核,發行版里的內核永遠都是連不了無線的,據說這叫FEATURE,這不叫BUG。重新升級內核需要能夠聯網,無線網絡不通可以連有線,上京東買網線需要聯網。別說什么手機上京東就買了,Ubuntu 1x的時候移動互聯網還不知道在哪兒呢。當然還有一個終極解決辦法,單位肯定是有網線的,對吧?升級Ubuntu這么高風險的事情當然是休長假的時候才會干的。不要跟我說到中關村買根線不就完了嗎?坐466來回四個多小時買根線就為升級個Ubuntu我還不如跑趟單位呢。
如果是軟件開發的話,是沒有什么問題的。畢竟游戲資源比較少這個問題和日常工作的相關度不大,所以沒什么不可以的,而且對於開發者來說個人推薦使用“類 UNIX 系統”,Linux 也好, Mac 也好,就是不要使用 Windows,除非你開發的是 .net,原因會在下文介紹。
Linux 坑還是有的,Ubuntu 自己的坑也是一樣的。
年前重裝過系統后,現在的系統每次開機都要顯示出現了問題,雖然我都沒感覺出來出現了什么問題,自然也不影響正常使用。如果你想折騰電腦的話,推薦你去使用 Arch Linux,這樣你會更有快感的,但是作為實用的系統的話還是用 Ubuntu 就可以了。我絕對不會告訴你,我只用兩年更新一次長期支持版本。既然要工作,還是少折騰為妙,畢竟時間還是很重要的,特別是你可能還沒有什么 Linux 平台的經驗。
在 Linux 這個平台上,坑還是有的,我個人感覺比較突出的坑就是刪除文件,特別是系統文件。曾經為了刪除一個軟件的殘留文件把主目錄給刪除了,后來通過復制了一份 Guest 賬戶的主目錄才給恢復了,后來又干過把 /usr/bin 目錄給刪掉了,通過安裝光盤才給恢復的。所以在這個平台上刪除文件的時候最好小心點,特別是使用 root 賬戶的時候。特別是 Linux 的文件是可以在使用的時候修改的,所以可能你刪除了某些文件你都不知道,但是等到下次開機的時候就坑了,並且你還不知道為什么。因此除了准備了一個安裝光盤外,對於重要的數據我都會備份,以防下次不小心誤操作后的帶來的重大損失。如果你不幸真誤操作了,詢問 Google 會是一個很好的習慣。
另外,我最早裝的時候,是用 Windows 系統來引導的,這直接導致了系統檢測不到筆記本的電池,最后造成關機的時候只會切斷電源關不掉屏幕。到了后來用了 Grub 來引導雙系統后以上問題就都消失了。所以,很多時候在 Linux 上的感覺就是為什么會這樣?怎么又好了……
從我用 Ubuntu 到現在,遇到了很多的坑,自己也重裝過很多次系統了,目前正在積極的幫身邊的同學裝系統中(因為可以突破瑞捷,開啟 wifi)。
為什么不推薦使用 Windows 呢?
(1) 考慮了國內的大環境。Windows 太糟糕,太糟糕。我的 Windows 里裝了一個360,因為我自從安裝了“獵豹wifi”之后就經常被金山殺毒給欺騙了,不得不用360來清理。而今天360贈送給我360手機助手和360移動版,所以我決定讓它去面壁了,畢竟太主動了我害怕。而我又比較懶,比較粗心大意。
(2) 另外 Linux 能夠取代 Windows 最大的理由就是 Linux 的 Shell。之前用 Shell 寫了一個爬蟲把全校學生的入學照片都爬了下來,還順帶統計了一下沒有修改默認密碼的學生數,感覺無比很方便。這種方便指的是編寫方便,使用方便。而如果換到 Windows 平台,我真沒有想到有什么好的解決方案。
(3) Linux 文件特殊的結構也是一個優勢。在 Linux 下要搜索文件可以通過命令來查詢,而如果在 Windows 下,你要面對那么多的分區,每次查找文件的時候總是慢得要死。而且 Linux 也更方便管理,自己的信息就放在主目錄下,命好名字,往往都是很好找的。另外 find 命令也是很強大的。
(4) 字符編碼,中文的問題太嚴。現在是跨平台的時代,不是 utf-8 的都太折騰,可惜 Windows 下就不是 utf-8,為了保證兼容我還得下個文本編輯器,這樣的體驗實在太不好,另外 Git 這樣的工具也是基於 Linux,更加堅定我放棄 Windows 的決心。所以目前除了玩游戲,已經不怎么用 Windows 了。
Ubuntu 如何入門 ?
個人感覺 Ubuntu 已經很像 Windows 了,如果你不用命令行的話,它其實就是一個另類的 Windows(操作體驗上來看是這樣子的)。所以,你可以通過點擊鼠標的方式上上網,安裝安裝軟件等。我覺得剛開始使用的時候,你是不需要去關注命令行的。因為,當初讓我選擇 Ubuntu 的原因是這個系統可以在校園網里很方便的開 wifi。所以你在前期你可以像使用 Windows 一樣來使用它,否則你會被太多太復雜的命令行嚇走的。就如我第一次接觸那樣的,借了一本命令行的書整天敲,敲到最后就記住了:
sudo shutdown -h now
然后我就放棄了。直到后來可以開 wifi ……
所以,對於初學者還是先培養興趣就好。然后就可以開始安裝軟件了,這樣你就會記住一大堆的命令。什么 apt-get ,dpkg ,tar 等等。所以,你也就入了門。
之后你可能得配置配置系統的環境,因為有些軟件就是需要系統環境,這下你就可以學習如何使用 Vim 這樣的工具了。再往下,如果你有興趣的話,你可以學習學習 wget,curl 這樣的命令,當你發現了 awk,sed 后你會深深的喜歡上這些工具的。這時候你可以再學學管道的知識。這樣你 Linux 的基礎也不算太差了。而且不會浪費時間。
當然作為一個開發者,你肯定不會滿足與這樣,你可以去嘗試嘗試 LAMP,用手輸入簡直是麻煩得不得了,所以你覺得你應該寫個腳本,更何況,有可能明天系統又崩潰了。所以你要學習 Shell。后來,你會發現你能用 Shell 做更多,這時候 Linux 真的已經擊敗了 Windows ,因為可能在開機的時候,你的電腦就已經開始在跑你寫下的腳本,而在 Windows 上,你根本不知道這要怎么做,或者它的學習成本太高了。
在Linux世界混,你看有多少跨平台軟件不是支持WIn+MAC+Ubuntu+源碼安裝???
去開發Rails去開發Django以及各種環境配置,ubuntu就幾條命令就搞定了,用別的還需要熟悉linux各種奇葩的坑(沒折騰過7-8個Linux系統,我敢這樣說?)
強調一下重點:
- 不要折騰Ubuntu的桌面,用它開發就好了。
- Linux的GUI真心不如Windows(誰要是能用Linux解決一下問題我全身心馬不停蹄的轉Linux)
- 誰要是能解決Linux下面用戶界面龐大的占內存問題以及有工具可以替代win上的(everything + totalcommad + autohotkey這種Windows神級殺手應用,我立馬轉那個系統)
- 但Linux的命令真心強大。(或者說,相對而言,Windows上的非圖形工具們不夠開源)
從04年開始用Linux,那時候用Fedora 4;06年工作開始用Solaris;08年開始用OSX。現在日常使用OSX,有一台uBuntu 16.04作為開發備用機。
Vim用的很熟練,平時寫腳步:python,shell,自己的tool就用vim,不用什么插件。但是真正做Java,Rails,Node的開發,我用IntelliJ,RubyMine(Node也可以用RubyMine)。
基本結論:uBuntu的桌面不太好用,比OSX差很遠。但是有時候要測試真正的平台特性,譬如:docker,譬如node的ps-node庫,我就會用這台uBuntu。我SSH上去,跑各種腳步,平時基本不需要界面。偶爾需要看看測試覆蓋率,我會用 python -m SimpleHTTPServer 9000開一個server,然后用chrome連上去看,很方便;如果再需要界面,我優先推薦X11 Forwarding。
Vim就是一個編輯器,沒必要把他整成IDE。他最大的優勢就是哪里都能用,編輯速度快。但是查看代碼覆蓋率,調試,重構,不是他的強項。IntelliJ Community免費,RubyMine 1年200$(個人用戶$89一年)。Oh-My-Zsh我卸載了,因為它啟動有些慢,或者說我不需要它那些我用不上的功能。我用原生的zsh,配合zsh-git-prompt,zsh-history,autojump,再把history設成10w條,然后alias一堆常用的路徑:譬如godev,就是到dev目錄,就足夠了。另外需要說明,有些tool在zsh上安裝完成之后需要手動做些改動(這一點zsh不如bash,因為用bash的還是多)。tmux我天天用,但其實我很少使用分割窗口的功能,所以其實screen更適合我:因為screen可以加密碼。但現在機器是我一個人用,所以就繼續用tmux了。
結論就是:如果你和我一樣寫Server程序,做雲端跑的程序,你應該選擇OSX或者