生産性を支える開発環境 開発環境をカンガエル

どうも、エンジニアのミヤマです。

今回はとてもエンジニアに特化したトピックです。


ところで、あなたは開発環境にこだわりはありますか?

弘法筆を選ばず、と言いますが、エンジニアなら開発環境にこだわるべきです。

なぜなら、それは生産性に直結するから。

ということで、今回はテーマは、開発環境生産性について考えます。

なぜ、開発環境にこだわるのか?

なぜ開発環境にこだわる必要があるのでしょうか?

それは、生産性のためです。

例えば、開発環境の一つとして、エディタがあります。

エディタについて『新装版 達人プログラマー 職人から名匠への道』(AndrewHunt, DavidThomas, 村上雅章では、このように言っています。

「あなたは一芸に秀出ている必要があります。単に直線的にタイピングを行い、マウスを使ってカットアンドペーストをしているだけではだめなのです。強力なエディタとあなたの指先を使えば、高い生産性を上げられるようになります。」

『新装版 達人プログラマー 職人から名匠への道』(AndrewHunt, DavidThomas, 村上雅章

更に『新装版 達人プログラマー 職人から名匠への道』(AndrewHunt, DavidThomas, 村上雅章では、そのエディタの選びの重要さについて、こう言っています。

「エディタを一つ選択し、徹底的に知り抜いて、それをすべての編集作業に使ってください。もし一つのエディタ(あるいは単独のキーバインディング)をすべてのテキスト編集操作で使えるのであれば、テキスト操作のたびに立ち止まって考え込む必要もなくなり、反射的にキー入力が行えるようになります。エディタは手の延長となり、軽やかなキー入力の音はテキストと思考の間を抜ける小道をわたる小鳥のさえずりのようになるのです。それが目標です。」

『新装版 達人プログラマー 職人から名匠への道』(AndrewHunt, DavidThomas, 村上雅章

『新装版 達人プログラマー 職人から名匠への道』(AndrewHunt, DavidThomas, 村上雅章では、エディタについてこのように言っていますが、開発環境レベルでこのことが言えるのではないでしょうか。


例えば、いつも使うコマンドやターミナル、手に馴染むキーボードだって、もっと言えばノートやペンも。


これらは思考をアウトプットする道具という意味では、エディタと同じです。


つまり、開発環境レベルで熟知することが重要であり、それが生産性に繋がるということです。

どんな開発環境を選ぶか

『新装版 達人プログラマー 職人から名匠への道』(AndrewHunt, DavidThomas, 村上雅章では、エディタ(ここでは開発環境と拡大解釈する)を選ぶ条件として、このような条件を提示しています。

  • 設定可能であること
  • 拡張性があること
  • プログラム可能であること


僕はここにもう一つ付け加えます。

それは、どこでもフリーで手に入ること、です


これは他の現場に行ったときや、マシンが突然死んだらということに備えるためです。

サーバを設定でも、アプリ開発するときでも、vimやvscodeならどこでも手に入ります。

特にwebアプリ開発においては、サーバをビルド&スクラップしがちなので、どこでもフリーで手に入ることは重要です。

なので、僕はvim(サーバ用)とvscode(アプリ用)、設定をデフォルトにして使っています。

開発環境は生産性に直結する

エンジニアの仕事は知的労働です。

頭を使う仕事である以上、思考をストレスなくアウトプットできるか、というのは重要るなってきます。

なので、体を鍛えるように、自分の開発環境にこだわって、それを使い込み、体に馴染ませるトレーニングをするべきです。

ところで、あなたは今どれくらい開発環境を使いこなせていますか?


と、こんなところで今回は開発環境について考えました。

今回のテーマのヒント↓

  • 『新装版 達人プログラマー 職人から名匠への道』(AndrewHunt, DavidThomas, 村上雅章


あとがき↓

僕はブログを書くときも工夫して親指シフトを使っています。

これも思考をストレスなくアウトプットするためです。

ローマ字入力では、頭の中で一度変換する必要があるんですが、親指シフトはそのストレスがありません。

まるで指で喋っているような感覚です。おすすめです。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です