2017-01-31

開発環境づくりに疲れないような開発環境づくり

開発環境づくりはやめられない、、

zshやiTermをいじっていると、ネット上には面白そうな情報があって、試してみたくなってしまいます。
先日もzplugというプラグインマネージャを見つけてネット上の記事を見て回っていました。こういう、管理のアップデートというのはとても面白いと思います。
カスタマイズに手を出すと自分のエネルギーを消費してしまうのはわかっているのですが、やめられないですね。
なぜ、やめないのか?
これまでの経験である大切なことに気付いています。
私のこれまでのITのスキルは、カスタマイズ時に検索したサイトから得ているのです。
カスタマイズは知らない世界に突入していく行為です。環境づくりと一言で言いますが、それぞれの仕事や趣味の道具をつくる訳ですから、参考にするサイトやブログは私の知らない世界だらけです。
例えば、私はvim派なのでEmacsについての記事は積極的に見ることはなくて、Googleの検索窓にEmacsと入力することはありません。ただ、shellや言語名で検索した場合にzsh使いでEmacs使いみたいな方がいらっしゃると、その記事を読んで勝手にEmacs情報を見る機会を得ます。そうやって、少しずつ私の知る世界が広がるのです。
カスタマイズは、現在の自分の環境に対する不満の解消という目的はありますが、同時に現在の環境に対する思い入れでもあると思うのです。思い入れのある事象に対しては労力を惜しみなく使い、検索ラッシュが始まります。「吸収しよう。取り入れよう。」という積極的な脳の状態なので主題の周辺のテーマにも枝がわかれて関心が広がっていきます。

ところがです。

カスタマイズをやっていると、あれ?何のためのカスタマイズだっけ状態になることがよくあります。多分、疲れている証拠です。だからといってそのカスタマイズの価値が絶対的に下がったのではありません。疲れというのは、カスタマイズに限らずそういう心理を生むものだと思います。必要なのは休憩です。休憩。休憩はとても大事。


Awesome!ユーザーフレンドリー


話を戻しますね。
これからzplugでばりばり管理してカスタマイズするぞーと意気込んでました。その時、ふとそのブログのページにあったリンクを2~3連続して踏んだのです。
そこにあったのは、fishというシェルへのリンクでした。
正確にはあるブログにAwesomeShellへのリンクが貼ってあり、まずそこへ飛び、Shellのリストを見たのでした。そこにはzshはもちろんありますが、以前から興味のあるxikiも紹介されています。そこに並んでfishが紹介されていました。
fishって何かの悪ふざけのシェルだろうと勝手に思っていて「---shって言いたいだけじゃん!」と。そこからfishの検索が始まりましたが、、、fishという名前は検索には適していないですよね。なのでfish + shellなどで検索しました。それでも 魚 + 貝なので、あれですね、、。
検索している中で見つけたそこにあった言葉は
ユーザーフレンドリー
この言葉って、危険な香りのする言葉で、避けたいキーワードです。少しネガティヴな初心者向きというイメージを持っています。
しかし、fishのここでいうユーザーフレンドリーは
「カスタマイズはしなくてもだいたいの機能や見た目はデフォルトで入れてあるからね」
ということのようです。
疲れているその時の私には、優しく呼び止められたように感じてしまいました。
とりあえず、fishを試してみよう。デフォで使ってみよう。使って不都合があるなら、fishをカスタマイズしても良いし、zshに戻っても良いし。とりあえず休憩しよ。(笑)

fishをインストール


こちらのサイトにそれぞれのプラットフォーム別のインストール方法があります。
osxの場合

> brew install fish
> echo "/usr/local/bin/fish" | sudo tee -a /etc/shells
> chsh -s /usr/local/bin/fish

その後、ターミナルまたはiTermを再起動です。詳細・使い方はまた今度書きます。

大げさですが、人生で大切なこと

それは、手を休めて、休憩すること。
です。
今回、疲れないような開発環境づくりの手法として、ユーザーフレンドリーなものを使うことを選択しました。私は基本的にshellもエディタもシンプルなものを好んで選んで使ってきたつもりでした。しかし、自分専用にしたいために、いくつものプラグインを入れたりして、、、管理することに対して少しずつ負担を感じるようになっていたのは事実です。この辺はバランスが大事なのでしょうね。エディタとのバランスもこれからぼちぼち考えていきます。