
フリーランスの開発環境、MacとWindowsが混ざったとき私はこう割り切った

👋 はじめに
「次の案件はWindows支給です」と言われた瞬間、Macで積み上げてきたショートカットやターミナル設定が全部ムダになる気がして、少し憂うつになりますよね。私も会社員時代はずっとMacで開発していたので、フリーランスになって初めて支給Windowsを渡されたときは、正直かなり戸惑いました。この記事では、複数クライアントの支給マシンに対応するなかで私が落ち着いた「環境を完全に統一しようとしない」やり方を、納期と単価に効くところだけ揃え、それ以外の差分は割り切るという判断基準でまとめます。
💸 1. 揃えるべき差分は「納期に効くか」で決める
最初の支給Windows案件で、私はまず自分のMac環境をまるごと再現しようとしました。シェル、エイリアス、ウィンドウ管理、クリップボード拡張。結果、初日の大半を設定に使い、肝心のリポジトリを動かすところまで届きませんでした。これは今思うと、優先順位を完全に間違えていました。
フリーランスの立ち上がりは、クライアントから見ると「いつから戦力になるか」そのものです。稼働開始の数日をどう使うかが、その後の評価と契約継続に直結します。そこで私は、OS差分を次の3つに分けて考えるようになりました。
差分の種類 | 影響するもの | 私の判断 |
|---|---|---|
アプリが動くまでの手順(ランタイム、DB、コンテナ) | 納期 | 初日に最優先で揃える |
コードの品質に触れるもの(フォーマッタ、Lint、改行コード) | レビュー工数=実質の単価 | プロジェクト側の設定に従う |
手癖(キーバインド、シェル、ランチャー) | 自分の気持ち | 初週は放置、慣れなければ後で寄せる |
この分け方をしてから、初日の目標は「テストが1本通ること」だけに絞りました。手癖の再現は、報酬に一切影響しないと自分に言い聞かせるのが、意外と一番効きました。
📝 2. 「同じ環境」ではなく「同じ結果」を出す設定にする
とはいえ、毎回ゼロから組み直すのは非効率です。私が落ち着いたのは、dotfilesをOSごとに分岐させるのではなく、OSに依存しない層とOSに依存する層を最初から分けて持つやり方でした。
OSに依存しない層は、Gitの設定、エディタのキーバインド、プロジェクト側の.editorconfigやフォーマッタの設定です。VS CodeならSettings Syncでアカウントに紐づけておけば、MacでもWindowsでもサインインするだけで拡張機能とキーバインドが降りてきます。ここは揃える価値があります。
OSに依存する層は、パッケージ管理とシェルです。MacならHomebrew、WindowsならwingetやWSL2の中でapt、と割り切ります。私はWindows支給のときは基本的にWSL2の中で開発し、WindowsそのものはVS Codeとブラウザを動かす箱として扱っています。こうすると、シェル周りの手癖はほぼLinux側に寄せられるので、Macとの差分が小さくなりました。
そして一番大きかったのが、DockerやDev Containersでアプリの実行環境をリポジトリ側に置くことです。ランタイムのバージョンやDBの起動手順がコンテナ定義に入っていれば、ホストOSが何であっても「同じ結果」が出ます。ただし、Docker Desktopのような開発ツールは利用条件がライセンス規約で定められているので、支給マシンに入れる前にクライアント側のライセンス方針を確認する必要があります。
もう1つ、地味に詰まりやすいのが改行コードです。Windows側でcore.autocrlfが有効になっていて、触っていないファイルまで差分に出てしまい、レビュアーに迷惑をかけたことがあります。改行コードとフォーマッタは、自分の好みではなくリポジトリの設定に必ず合わせるのが、レビュー往復を減らす最短ルートだと思います。
今の経験で、どんなフリーランス案件を狙える?
スキル・経験・希望条件から、自分に合う案件の選択肢を確認できます。
💻 3. 私物Macを使えるかは、好みより契約と経費で決まる
「支給PCが合わないなら、自分のMacで作業すればいいのでは」と思う方もいると思います。私も最初はそう考えました。ただ、業務委託でも、クライアントの情報セキュリティ規程で私物端末からのリポジトリアクセスが禁止されているケースは珍しくありません。契約書や誓約書に端末の指定があれば、それは好みで覆せる話ではないので、着手前に必ず確認する必要があります。
私物Macの利用が認められている場合や、案件をまたいで使う自分用のマシンを買う場合は、経費の扱いを先に押さえておくと気が楽です。青色申告をしている個人事業主で、常時使用する従業員数の上限(400人以下)などの要件を満たす中小事業者であれば、取得価額10万円以上40万円未満(2026年3月31日までに取得したものは30万円未満)の資産を、年間合計300万円に達するまで取得した年に全額必要経費にできる「少額減価償却資産の特例」があり、2026年度(令和8年度)税制改正で対象は2029年3月31日までに取得したものに延長されています。上位モデルのMacBook Proはこのラインを超えることがあるので、構成を決めるときに私は取得価額の上限を意識しています。もちろん、私用と兼用するマシンは家事関連費になるので、業務の遂行上直接必要な部分を明らかに区分できる場合にその部分だけが経費になります。事業で使う割合に応じた按分が必要になるため、税理士や税務署への確認をおすすめします。
私自身の結論としては、支給マシンがある案件では支給マシンで完結させ、自分のMacは個人開発と学習用に切り分けるというものです。案件のコードを私物に持ち出さないことは、事故を防ぐうえでも、次の契約で信頼を得るうえでも、結局は一番コストが低い選択でした。
✅ まとめ
MacとWindowsが混ざる働き方は、フリーランスを続けるかぎり避けられません。だからこそ、環境を完璧に揃えることより「揃えないと納期に響くところ」と「揃えなくても報酬に影響しないところ」を分けて考えるほうが、精神的にも楽でした。私ならまず、次の案件のリポジトリを開いて、実行環境がコンテナ定義やREADMEでOS非依存に書かれているかを確認します。そこが弱ければ、初日の目標は手癖の再現ではなく、その手順を整えることに置きます。





