twitterで見つけたネタにマジレス。
Q「*nix系のコマンドってどうやって覚えるんですか」 A「毎日使えば覚える。GUI作業とかあめぇ」 Q「僕に何をさせようというのですか……?」 A「コマンドライン覚えるとGUIの100倍早く操作出来るんだぜ!!」 Q「でも、習得までに100倍時間かかるんでしょ?」 A「まぁね」
まずGUIを使った場合の単位時間当たりの仕事(dW/dt)をw_guiとする。GUIの場合、以下。
dW_gui(t)/dt = w_gui (0 <= t) W_gui(0) = 0 W_gui(t) = w_gui * t + C W_gui(0) = w_gui * 0 + C = 0 C = 0 W_gui(t) = w_gui * t (0 <= t)
コマンドの習得中には、単位時間当たりの仕事がw_guiの100分の1倍になる。
dW_cui(t)/dt = w_gui / 100 (0 <= t <= t1) W_cui(0) = 0; W_cui(t) = w_gui * t / 100 + C W_cui(0) = w_gui * 0 / 100 + C = 0 C = 0 W_cui(t) = w_gui * t / 100 (0 <= t <= t1)
コマンドの習得が済んだ場合、単位時間当たりの仕事がw_guiの100倍になる。
dW_cui(t)/dt = w_gui * 100 (t1 < t) W_cui(t1) = w_gui * t1 / 100; W_cui(t) = w_gui * t * 100 + C W_cui(t1) = w_gui * t1 * 100 + C = w_gui * t1 / 100 C = w_gui * t1 * (1 / 100 - 100) W_cui(t) = w_gui * t * 100 + w_gui * t1 * (1 / 100 - 100) (t1 < t)
W_guiとW_cuiまとめると以下。
W_gui(t) = w_gui * t (0 <= t) W_cui(t) = w_gui * t / 100 (0 <= t <= t1) W_cui(t) = w_gui * t * 100 + w_gui * t1 * (1 / 100 - 100) (t1 < t)
W_guiとW_cuiの交点は、以下のようになる。guiを使う人は、コマンドを使う人にコマンドの習得が終わったのとほぼ同時に仕事で追い抜かされるということ。
0 <= t <= t1: (t, W_cui) = (t, W_gui) = (0, W_gui(0)); t1 < t: (t, W_cui) = (t, W_gui) = (t1 * 1.01, W_gui(t1 * 1.01)); w_gui * t = w_gui * t * 100 + w_gui * t1 * (1 / 100 - 100) w_gui * t * (1 - 100) = w_gui * t1 * (1 / 100 - 100) t * (1 - 100) = t1 * (1 / 100 - 100) t = t1 * (1 / 100 - 100) / (1 - 100) t = t1 * 1.01
実際問題として、コマンドの習得に必要な時間t1はコマンド習得中の単位時間当たりの仕事の低下率(1/100)と相関がありそう。そこでコマンドの習得に必要な仕事をW1とする。t1は以下のようにかける。
W_cui(t1) = w_gui * t / 100 = W1 t1 = W1 / w_gui * 100
コマンドの習得がいつまでも終わらない場合(t1 ~ +inf)はgui使った方が良い。