プログラミング

コンピュータは素直に動いている

プログラミングで大事なことが何か今日分かった気がした。

コンピューターはあくまでも常に素直に動いていて、うまく動かないときには、

“原因は書いている、もしくは設定した人による。”

ということだということが腑に落ちた気がする。

 

 

VirtualBoxとVagrantを使ってLinuxの環境をWindows上に設定して、

そこで、Rails on Railsのファイルを触っていたけど、どうもうまく行かない。

 

原因としては、僕自身が構築した環境が問題だった。

VirtualBoxで構築したOSとホストOSであるWindowsで共有のディレクトリが作られる。

そこのディレクトリでrailsのアプリケーションを動かそうとすると、

Errno::ETXTBSY: Text file busy @ apply2files

なんていうエラーになったりする。

エラーが出ているそのディレクトリにあるファイルはLinuxのファイルシステムではなく、あくまでもWindowsのファイルシステムで保存されているものでありLinuxからすると、別物を触っているという認識が非常に大事だと気がついた。

 

共有ディレクトリで動かすための方法として、Rubyのライブラリであるgemをその共有ディレクトリ以下に保存しないようにしたり、database.ymlで、dbの設定ファイルをその共有ディレクトリ以外の場所を指定して動かしてみたりするような解決方法が見つかったが、

そのどれらも、元々、Linuxで素直に動かしたら設定しなくてもいいようなものだと思った。

 

試しに、Vagrantのホームディレクトリ以下で、

railsアプリケーションを構築してみたら、素直にサーバーまで立ち上がってくれた。

 

このことで、プログラムはあくまでも素直に動いていて、それを操作する自分自身の操作ミスであることに対して、深い理解を得られた。

 

これまで、環境構築の問題などで躓いて

うーん。。。となっては、その繰り返しをしてきて、かなり時間を無駄にしてしまい、

肝心なコードを全然書いてこれなかった。

 

そのことに反省しつつ、これからは、

素直に環境を構築して、ガシガシコードを書いていきたいと思った。

ABOUT ME
moto
約5年間勤めた公務員から転職しました。 日頃の学びをここにアウトプットしていきます。 御朱印集めと筋トレが好きです。