Webエンジニアは結局どのOSを使えばいいのか?

Webエンジニアの皆さんは、どんなOSを利用しているのでしょうか。Macが良いとか、Linuxが好きだとか、Windowsが便利だとか、こだわりが出るところだと思います。私も紆余曲折を経て、ひとまず自分なりの結論が出ましたのでそちらについて書いてみます。

Webエンジニアの開発環境としては、まずはMacが筆頭候補でしょう。私がMacを使い始めたのは2015年で、UIもIDEもターミナルもとにかく使いやすく美しくてとても感動したものです。一方で今まで使っていたWindowsについては、なんというかガラクタのように思えました。Macが最高でこれ以上のものはないと信じて疑わない時期が続いたのですが、やがてMacに外部モニタを3つ、4つと付けまくっていくと明らかにパフォーマンスが低下することもわかってきました。そんなにモニタはいらないのでは、という議論は置いておいて、性能向上のためにMacの買い替えを考えたものの、新しい機種は非常に高価なので手が出ず、徐々に不満も出てきます。

続いて2018年頃から、LinuxをメインOSに使い始めることになります。Macの価格の1/4に過ぎない余り物マシンなのに、マルチモニタ環境ではMacよりも遥かにレスポンスが良く、とても信じられない思いでした。またその頃、Linuxデスクトップ用のアプリが次々と登場してきて、Linuxデスクトップの時代が来たか?と考え始めていました。
そうなら良かったのですが、今度は周辺機器のドライバのサポート状況が不十分なことに気づきます。マウスやキーボードなどのメジャーな機器は良いのですが、ちょっと特殊な機器(ディスプレイドライバを要するものなど)とは相性が悪く、苦労してドライバを入れてもしばらくすると動かなくなったりして、やはりこれもベストとはならないかなと思い始めます。

そして2020年、なんとなくWindows再入門ということで利用PCをWindowsに切り替えます。当然ながらドライバのサポート状況は最強のOSですから、Linuxで感じた不満は一掃されました。さらにWSL(Windows Subsystem for Linux)なるものが登場して、WindowsなのにLinuxのコマンドが使える!Dockerも動く!ホストのファイルにもアクセスできる!と、WindowsとLinuxの良いとこ取りができてしまっています。UIの美しさは相変わらずな出来ですが、そのあたりに拘りが薄い私としてはもうMacとかLinuxをメインOSとして使う理由もなくなったと感じました。
しかし問題は尽きないもので、WSLではVagrantの機能が限定される(ホストのWSL内のフォルダをVM側でマウントする、など)ようです。最近ではVagrantを使うプロジェクトは少ないのですが、それでも使えないとなると代替手段が必要になり、Linux OSを入れたマシンと併用するようになります。これはこれで面倒で、どうにか1台で全てできるようにならないかと考えるようになります。

そのあたりを考えると、Linux VMをWindowsホストの中で使うのが良いのでは?という発想に思い当たります。デバイスドライバはWindowsに任せて、OSの機能自体はLinux VMを使うと真の意味で良いとこ取りができます。Linux VM内でもDockerやVagrantを使うためには、Hyper-Vの無効化やメモリ整合性の設定関連で少し工夫が必要ですが、それさえすれば制限なく利用できます。VMに十分なリソースを割り当てるためにホストのスペックは多少高いものが求められますが、それでもMacよりも全然安いです。

Windowsだとハードウェアの選択肢も多いです。薄型軽量機とか
写真は15.6インチの画面なのに1.0kgと不安になる(?)ほどの軽さです

ということで2023年2月時点での私のマシン構成は、WindowsホストにFedoraのVMを入れて使う形に落ち着きました。今はこれで文句はないですが、Linux OSでのデバイスドライバのサポート状況が劇的に変わってくることがあればWindowsを使う理由がなくなるので、そういう状況も少し期待したいですね。Linuxデスクトップのシェアが激増しない限りは難しいでしょうか、、、

この記事が気に入ったらサポートをしてみませんか?