Ruby初級者ですが、使いやすい環境にこだわりがありまして、
もしかしたら私の意見でも参考になるかと思いまして書いてみました。
・Mac限定のRubyプログラミングスクールを、Windowsで乗り切りました (今までそこまで拘る人はいなかったらしいです)
・Linux(Ubuntu・CentOS)・Mac・Windows・Winodws & Cygwin(Winodws上にUnixをエミュレートするソフト) 全て使っています
この開発環境にRubyやRuby on Rails入れて、プログラミングしても大丈夫でしょうか?
問題ないと思います。
コードもLinux上で書く場合は、使い勝手がWindowsと違うので、私はストレスを感じました。
VMの共有フォルダにRubyのファイルを置きWindows側でコードを書く場合、
エディタ(拡張機能)やターミナル、gemによって読み取り・書き込みエラーが発生する場合がありました。
が、私は、後者の方がやりやすかったです。
ubuntuじゃなくて、CentOSなど他のLinuxのOS入れて仮想環境作って、そこにRubyなど入れる方がいいのでしょうか?
ウェブサーバーには、CentOSの方がUbuntuより多いので、そういった意味では、CentOSでも良いかもしれませんが、
私のレベルですと、CentOS・Ubuntu・Macでの違いはほとんど感じませんでした。(OSの違いによるエラーなど)
Mac限定のスクールだったので、Macをサーバーとして、WindowsからSSHしていたこともあります。
私の肌感覚ですと、VM上のLinuxやDockerを使うよりも、初級のうちはMacで開発したほうが、
ネット上の情報が多く、アドバイスがもらいやすいとは感じました。
WindowsでRubyの開発されてる方は、どんな開発環境でされてますでしょうか?
Windowsに直接Rubyを入れるには、主に2種類ありまして、
・Ruby installer (勝手に自動で入れられます)
・chocolately(コマンドで入れます)
chocolatelyの方が自由度が高いため、今の私でしたらchocolatelyを使っていますが、
初めのうちはRuby installerの方が情報が多いので、良いと思います。
結局いまはどのOSをメインで使っているかというと、
Windows10にCygwinというUnixをエミュレートするソフトを入れて使っています。
Windows単体ですと、初めのうちはあまり困らないのですが、
(現在のRubyは以前ネットで言われているほどWindowsに不利ではないですが)
使えないgemがあったり、文字化けしたりすることが確かにありました。
また、初心者のうちは、それがWindowsによるものなのかが分からなかったります。
Macはやっぱり情報が一番多いです。
(MacProも使っていますが機体が邪魔なので、私は裏技でWindows内にMacのVMを入れました)
しかし、私はこだりが強くWindowsしか無いソフトウェアや自前のソフトも持っていまして、
MacやLinuxでは、どうしてもそれに代替するソフトがなく、
メイン機ではWindowsを使いたかったため、Windows & Cygwinにたどり着きました。
Cygwinは、Unixをエミュレートするため、
直接Windowsに入れた場合に動かないものやWindowsによる不具合などを吸収してくれます。
今の私の段階では、Linuxとの違いを感じたことは、ほぼありません。
しかし、Cygwinというソフトは、VMやコンテナが流行る前に流行っていたものでして、
今この方法を使っている人は非常に少なく、また初心者のうちは、導入もかなり難易度があります。
まとめますと、
(1) Windowsに拘りがなく、予算があるようでしたら
実機はMacがおすすめ (やはり情報が多いです。私はMacは制限がありすぎて使いにくいです)
(2) 予算がないなら、現在のWindowsにCentOSを入れる。
もしくは、そのままUbuntuを使う
(3) Winodwsネイティブで使うなら、Ruby以外にあまり複雑な(Railsやgem)を入れない程度であれば大丈夫です
(4) Windowsが好き過ぎて、サイレントマジョリティーになりたくない私のような変わり者は、
Ruby初心者 → 初級者にレベルアップした段階で、Windows & Cygwinを使うと幸せになれます。