最初に
この数年間、業務およびプライベートでMacbookProを利用してきました。
Macを選択していた最大の理由は開発環境が容易に準備できるという点です。
ただ最近のWindows界隈ではLinux環境が充実してきたということでMacである必要性が乏しく感じたのでプライベートのPCをWindowsに移行することに決めました。
MacからWindowsに移行するにあたりWindowsでした環境構築を紹介します。
因みにPCは自作PCです、10年ぶりくらいに自作しました。
とりあえず
開発環境とは直接関係は無いかもしれませんがPCライフに欠かせないツールとして以下二点、Webエンジニアとして欠かせないブラウザであるChromeとIMEはGoogle日本語入力を利用しています。
- Google Chrome
- Google 日本語入力
実行環境
かつてWindowsを利用していた際はC#などでWindows向けのアプリケーションを開発していたためVisualStudioなどを用いていましたが現在はRailsなどでWebアプリケーションの開発をしているのでLinuxの開発が欲しくなります。
VMWareやVisualBoxで仮想環境を用意してもいいのですがWSL2を利用するのがいいかと思います。
Microsoft StoreでWSL2と検索するといくつかヒットしますがUbuntu
がベターでしょう。
WSL2をインストールしてしまえば実行環境/開発環境はLinux上での勝負なのであまりOS間の差異を意識しなくてもいいでしょう。
ターミナル
Mac時代はiTerm2を利用していましたがiTerm2にはWindows版がないので別のものを探します。
かつてはTeraTermを利用していましたがMicrosoft謹製のWindows Terminalを利用します。
デフォルトで起動するターミナルをPowershellからUbuntuに切り替えてます、Ubuntu上ではtmuxを起動させエディタはVim(nvim)を用いています、INSERTモードになるとバー状になる機能が地味ですが気にっています。
テキストエディタ
プログラムを書くときはvimを利用しています、vimはvimでもneovimというvimから派生したバージョンのvimを利用しています。
またプラグインはあまりインストールしてなくcoc.nvimぐらいです、カラースキームはmolokaiを長らく利用してます。
テキストエディタ界隈は昨今vscodeが猛威を奮っています、私も何度かvscodeに移行しようとしました特に最近Typescriptを業務で書くことがありその昨日の恩恵を受けましたが結局vimに戻ってきてしまいました、とにかくキーボードから手を離さなくていいのが気に入っているところです。
フォント
プログラムは文字で構成されるのでフォントの種類はこだわりたいところです、私のオススメはJetBrainsMonoですシンプルな見た目で読みやすいと思います。
キーボードとキーボードショートカット
MacのときはHHKBを愛用してきましたがWindowsに切り替えるにあたってRealforceを選択しました。
ずーっとUS配列を使ってきたのでRealforceもUS配列のものを購入しました。
ただUS配列のキーボードには半角/全角
キーが無いのでMacのときと同様にctrl + spaceで切り替えるようにショートカットを設定しました、またCapslockとctrlのキーバインを入れ替えることができるのでこれも適用しています。
DB(MySQL)のクライアントツール
Mac時代からDataGripを利用しています、シェアウェアなのでハードルは高いかもしれませんがvimキーバインドが利用できるプラグインとSQLの結果をMarkdownでコピーしれくれる機能が地味ですが重宝しています。
MySQL以外でも主だったDBMSには対応しています。
まとめ
WSL2の登場でwindowsでの開発に不便はしなくなった印象です、強いて言えばフォントの綺麗さはMacに分が大いにあります。
Dockerも動くので各種言語別の開発環境の構築に苦労はしません、またAWSなどのクラウドサービスが充実する昨今MacとWindowsの垣根はほぼ無いといって過言ではないでしょう。
私は業務ではMacを利用していてプライペートはWindowsにしました、WindowsとMacのどちらが開発用のマシンとして勝っているか議論がよく見受けられますが個人的にはどっちでもいいのでは?が私の感想です先述のとおり両者の隔たりはほぼなく開発環境の用意に苦労しないためです。
新しくPCを調達しようとしている方は先入観や偏った情報に踊らされることなくじっくりと吟味のうえ選択してください。