選擇一個能夠用十年的系統,不要隨意更換系統。系統的軟件都不要用最新的,用次新的,就是穩定版!html
讓系統儘量簡單,不要隨意添加無心義的內容。內核和編譯器層面的的東西,本身不懂就不要亂動。java
能夠用mac,也能夠用Linux,可是絕對不能用windows(在沒有server的狀況下)python
conda + pythonios
R R-3.6.1.pkg + xquartzgit
jupyter notebook + jupyter_contrib_nbextensions 設置遠程訪問github
IRkernel 必須先把上面兩個先裝好chrome
Rstudiodocker
xcode + macOS_SDK_headers_for_macOS_10.14 ( cd /Library/Developer/CommandLineTools/Packages/ ) + Xcode Command Line Tools ( xcode-select --install )macos
開啓遠程ssh鏈接,系統設置裏開啓vim
無格式複製,系統設置裏開啓
clang/gcc/java (有須要時再裝)
系統、數據、代碼最好要作到彼此獨立。
就數據分析而言,jupyter秒殺其餘一切工具。
chrome + sync bookmarks
sougou輸入法
office套裝 - HKU
iterm2 + dracula主題
filezilla
sublime
有道詞典
slack
parallel
AI
Acrobat
spotify
印象筆記
grammarly
artpip
typora - markdown for log file
MacTeX for bookdown
cytoscape
IGV
Google drive
Dropbox
Time machine
移動硬盤
1. 如何防止系統隨時間變亂,變得不受控制?
變亂的主要緣由就是會手賤,沒事就喜歡裝新東西上去玩,致使系統變得愈來愈亂,最終出現問題時無從溯源。
案例:在github上看見一個百度網盤的破解軟件,裝上後,前期確實能用,後面百度封了bug,最終卸載破解軟件時才發現系統裏面被修改了,此後系統裏就隱藏了一個未知的bug。
教訓:不要隨便裝一些未知軟件,真的有可能對系統形成不可逆的傷害。
2. 如何防止文件愈來愈多,最終沒法管理?
作科研,數據是不斷積累的,結果也在不斷積累,若是隻是有數據就往裏添,有結果就不斷積累,那最終確定會亂到沒法管理。
並且多個項目之間的數據多是交互的,這樣就讓代碼更加難以管理。
策略:多思考,多整理,不經常使用的文檔儘快打包整理,備份到歷史庫,不要再放在工做目錄裏。
這樣,即便一年作十幾個項目都不會以爲混亂。
經常使用Linux的必定要設置好bash,能夠顯著提升效率
複製粘貼的設置,選中複製,雙擊複製,郵件粘貼。
# 如今默認要用zsh,不想換能夠忽略 export BASH_SILENCE_DEPRECATION_WARNING=1 # 在iterm標籤顯示信息 export PROMPT_COMMAND='echo -ne "\033];${PWD##*/} : macMini\007"' # PSII export PS1="\[\033[01;31m\]\u \[\033[00m\]\[\033[01;32m\]\h\[\033[00m\] \[\033[ 01;33m\]\t\[\033[00m\] \[\033[01;34m\]\w/ \n\[\033[00m\]$ " # export home="/Users/surgery/Project/HOME/1-projects/1.scRNA-seq/2-smart-seq" export githome="/Users/surgery/project/HOME" #export user="/ifs4/BC_RD/USER" #export app="/share/app" export script="$githome/myScript/RAW" export prj="/Users/surgery/Project" # use bash very frequently wd="/Users/surgery/project/work_dir" alias swd='pwd | cat - > $wd' alias wd='cat $wd' alias lt='ll -rth' alias qs='qstat' alias qsb="echo 'qsub -cwd -l vf=5g -P HUMDnab -q bc.q'" alias app="ssh software-install" alias cmd="vi $githome/CommonCMD" alias qj="qstat -j" #alias cgs="ssh lizhixin@hpcf.cgs.hku.hk -p 22" alias cgs="ssh lizhixin@hpcf2.cgs.hku.hk -p 22" alias gitpush="git add . && git commit -m 'change' && git push" alias nb="jupyter notebook" alias cls='tput reset' alias egrep='egrep -G' alias fgrep='fgrep -G' alias grep='grep -G' alias l.='ls -d .* -G' alias ll='ls -l -G' alias ls='ls -G' alias vi='vim'
發現Mac下主要再用clang而不是gcc來編譯。那麼Clang 比 GCC 好在哪裏?
手賤更新了最新的macOS,不少編譯出現了問題,如今只能往回裝。
How to make a bootable Mojave drive to downgrade from macOS Catalina
How to downgrade from macOS Catalina back to macOS Mojave
ctrl+R format disk
alt/option start from external USB
install mojave can be very quick
macOS基本設置:
關閉系統更新
docker基本設置
finder基本設置,標籤合併
R設置超大內存,防止Error: vector memory exhausted (limit reached?)
vi ~/.Renviron R_MAX_VSIZE=100Gb