愛と勇気と缶ビール

ふしぎとぼくらはなにをしたらよいか

未知の領域で開発を始める時には、環境を整えすぎてはいけない

未知の領域って何ぞいな、というとだいたい以下の二つ。

  • 開発経験のないプラットフォーム。場合によっては触ったことのない言語を含む。(e.g. iOS, Android)
  • 今まで触ったことのない言語を用いた開発。

世の中にはエディタ・IDEからCIまで沢山の開発を支援するためのツール・枠組みがあるが、新しい領域に挑戦する時にはこれらの開発環境をあまり整えすぎない方がいい気がしている。

というのは、最初から「エディタも完璧に設定して、テストも全部書いて、JenkinsでCIするようにして、デプロイの前にビルドが走るようにして…」というようなセットアップを全部やろうとしてしまうと、それ自体に時間がかかって、それだけである程度満足してしまうから。単なる経験則だけど。

環境構築に時間をかけ、その結果に満足してしまうと一番初めのプロダクトに使うためのモチベーションと時間が消費されてしまう。(なんか誰かが同じようなことを書いていたような気もする。忘れた。)

新しい領域で、何かまとまったものを一つ作ってしまう。作りきる。それが大事かつ最も大変なことなので、ノイズは乗せない。初めから全てうまくやろうとしない。かっちょいい開発プロセス、効率的な開発環境が欲しければ後からいくらでも整えればいい。

そんなわけで、何か新しいことをやろうとする時に、最初から完璧に環境を作ってしまおうとするアナタは結構危険である。そのモチベーション、使いドコロが間違っているかもしれない。