35歳からの中二病エンジニア

社寺・鉄道・アニメを愛でるウェブ技術者の呟き

湘南に越してきて驚いたこと

焼けた肌の人がやたら多いとか、老若男女問わず公道を水着やウェットスーツで歩いているとか、何ならサーフボードを担いで歩いているとか。そういうのは湘南あるあるすぎて逆に驚きは無かったのだけれども、意外な所で驚いたことがあった。

横断歩道で一時停止する地元車が明らかに多い

コレが今の所引っ越してきて一番驚いたことだと思う。体感ではあるけれども、江の島近辺では8割以上の車が横断歩道で一時停止してくれる。

jaf.or.jp

JAFの調査記事が記憶に新しいけれども、その中で最高値を叩き出した長野県の68.6%よりも高い。体感ではあるけれども。

ただ面白いことに、海から離れると一時停止率は明らかに下がっていって、大船や藤沢の市街地まで出ると東京都内とほぼ変わらない体感値になる。これは一体どういうことなのか…。

海は人を大らかにするのか

そういえば、僕自身こっちに越してきて、東京都内に住んでいた頃よりも精神的な余裕ができた気がする。スーパーやコンビニのレジで小銭をジャラジャラ数えている人が前に居てもイライラしなくなったし。時の流れが全体的にゆったりしているというか、落ち着いた感じがする。

海が近くにあって、鳶や鶯、夕方になれば蜩が鳴いて、風が吹けば磯の香り。そんな穏やかな日常に囲まれることで、この地の人々は大らかになるのかもしれない。神奈川県内で地域毎にストレスチェックを実施してみれば、湘南の海沿いはかなり低い値を叩き出すような気がする。知らんけど。

舌下免疫療法を始めて1年経った

花粉症根治を目指して舌下免疫療法を始めたのは以下の記事の通り。

aikawame.hateblo.jp

aikawame.hateblo.jp

すっかり治療が習慣化したので記事にするのを忘れていたけれども、気付けば治療を始めてから1年経過していたので状況を書き残しておこうと思う。

明らかに症状が軽くなった

治療を始めて最初のハイシーズンとなったこの春、例年であればティッシュが箱単位で無くなる日が必ず発生していた所、今年はまさかのゼロだった。

確かに、今年は例年よりも花粉の飛散量は少なかったらしい。ただ、僕はどんなに飛散量の少ない年でも必ず数日は発作的な症状でぐったりしていたので、これは明らかな改善だと思われる。舌下免疫療法はリニアに効果が出てくる治療だと言われているので、来年、再来年と更に盤石になるのであればかなりのQOL向上が期待できる。

副作用は相変わらずゼロ

当初は恐れていたアナフィラキシーどころか、副作用らしき症状はハイシーズンも含めて一度も自覚しなかった。

勿論個人差はあるので、副作用が出る人には出るのだろうけれども。一応服用後は5分ほど飲食NGとか激しい運動は避けるとか注意事項はあるのだけれども、余りに何も無いので忘れてしまいそうになるのがちょっと危ういまである。

飲み忘れは無くなった

最初の半年くらいはちょくちょく服用を忘れていたけれども、今ではキッチリ毎朝服用できている。

ただ、これは変えようとして変えた部分もあって、朝食を摂るというルーチンを定着させたのが大きい。鎌倉に引っ越してから、毎朝ごみを出してバナナを1本食べるというルーチンを定着させたので、そのついでにシダキュアも必ず飲むように習慣付けられた。どうにも忘れっぽいという人は、ルーチンを組み合わせてみると良いかもしれない。

転院していない

引っ越したのに転院はしなかった。ハイシーズン以外はリモート診療で対応してもらえるということだったので、お言葉に甘えている。ただ、新型コロナの影響次第では次のハイシーズンに毎月新宿へ出て行くというのも微妙なので、今後の懸案事項ではある…。

おわりに

去年の6月から舌下免疫療法を始めて1年、ハイシーズンも越えたのでその時の状況も含めて纏めてみた。効果は明らかに実感できているので、治療の負担の少なさも相まってあと2年も楽に続けていけそうだ。次はまた来年あたりにでも、「舌下免疫療法を始めて2年経った」のタイトルで続編を書いていこうかと思う。

NURO光を申し込んだら1ヶ月後にauひかりが開通した件

タイトル詐欺なのであらかじめお断りしておく。特段大きなトラブルが起きたわけではない。

概要

引越に際して新居ではNURO光を申し込んだが、工事ができずにキャンセルとなったためauひかりで申し込み直したところ、爆速で開通して速度も旧居より上がった。概ね満足しているが、ソニーファンとしてはNURO光を契約できなかったのは悔しい…。

なお、申し込みと新居への引っ越しからの日数経過は以下の表の通り。

進捗事項 申込から 引越から
NURO光への申込 0 -21
新居への引越 21 0
NURO光宅内工事 24 3
NURO光工事キャンセル連絡 36 15
auひかりへの申込 38 17
auひかり工事日調整 45 24
auひかり工事・開通 49 28

マンションインターネットからNURO光へ

旧居ではマンションの賃貸契約にインターネット接続サービスが含まれていたので、それをそのまま使っていた。グローバルIPアドレスは無かったけれども下り300-500Mbps程度出ていたので、全く不満には感じていなかった。

一方、新居では自分でインターネット回線を契約する必要があったので、以前から気になっていて以前職場にも導入したことのあるNURO光を契約することにした。最大2GbpsでONU内蔵の無線LANルーター無償貸与、更に月額料金も安いという良いこと尽くめのサービスなので、繋がるのが楽しみだった。

NURO光の工事の遅さ

ところが。これはネット上では有名な話だけれども、NURO光は開通までに宅内工事と宅外工事が必要であり、しかも宅外工事はかなり待たされることが多い。僕の場合は電話でサポートセンターに確認した際に、「宅内工事から約3週間で宅外工事日の調整を行い、実際の工事日はそこから更に2週間以上、場合によっては数ヶ月掛かる」と説明されて仰天した。

ただ、このモタモタ具合についてはソネットだけの問題ではなくて、宅外工事はソネットがNTTに委託しているらしい。そのため、どうしてもフレッツやauひかりと比べるとタイムラグが発生してしまうのは致し方ないだろう。

幻のNURO光用ONUと光ローゼット

一応NURO光も宅内工事は実施されているので、その際にONUを受け取った。NURO光のONUと言えば少し前まではHUAWEIかZTEの2択ガチャだったのだけれども、最近ここに台湾Sercomm製のFG4023Bが加わったようで、僕が受け取ったのはそれだった。個人的に台湾好きなのと筐体がこれだけ白いのもあって運が良いと思ったのも束の間、工事キャンセルになってすぐに返却となるのだが…。

あと、キャンセルになった場合は光ローゼットや宅内の配線は残置される。撤去する場合は先方理由のキャンセルでも有償になるという残念対応なので、そこは気を付けておいた方が良い。多分これ、延々待たされた挙げ句のキャンセルに加えて有償撤去と言われたらブチ切れる人も多いんだろうな…。

無念の工事キャンセル連絡

NURO光の工事キャンセル連絡は、まさかのSMSでやって来た。当然長文は無理なので、アッサリと「設備の問題で工事キャンセルになった、すまん」だけ。しかも電話サポートの受付時間を過ぎた夕刻だったので、翌日までモヤモヤする羽目に。

翌日は朝一からサポセンにキャンセル理由の確認連絡を入れた。曰く、電柱の高さが規定値(5m)に足りなかったとのこと。これについては正直な所不可解で、最寄りの電柱は12mあるのを確認していたし、入居時にはフレッツの光ローゼットが残置されていたので、普通に考えれば同じ電柱から工事を行えそうなものだ。ただ、先方の説明ではNURO光に関してはもう1本の電柱が工事で必要らしく、そこの高さが足りていないとのNTT側からの説明を受けているということだった。NURO光は同じNTTのダークファイバーを利用しているはずなのに…と、不思議に思いつつも僕からはそれ以上突っ込めなかった。

ただ、サポート担当の方は非常に丁寧に説明してくれたのは良かった。NURO光の工事については悪評が多いけれども、少なくともソネットの中の人達は真摯に対応されていると思う。

auひかりへのスライド

さて、ここで善後策として2つの選択肢がある。フレッツ光かauひかりか。まぁ、僕はNTTが個人的に嫌いだし、NURO光の工事周りでもNTTに対する鬱憤が溜まっていたので、考えるまでもなくauひかりを選択した。

と言いたい所だけれども、一応両方を比較検討している。携帯電話の契約はIIJmioなので、フレッツ光の光コラボでIIJmioひかりという選択も現実的ではあった。ただ、フレッツ光はPPPoEだと輻輳問題があるし、IPoEだとIPv6のポート開放問題がある。一方、トータルコストでは特に工事費や解約時の諸費用を勘案するとフレッツ光の方が有利ではあった。とはいえ、新居にはそれなりに長く住むつもりなのでランニングコストがそこまで変わらなければ良いだろうと、auひかりを選ぶことにした。

幸いソネットは、フレッツ光もauひかりもプロバイダーとして対応している。NURO光が運悪くキャンセルになった場合にも、代替措置としてフレッツ光かauひかりを斡旋されるので、プロバイダーに拘りが無ければそれに応じて契約をスライドさせてもらうのが楽だ。既にソネットには諸々の個人情報を登録済みなので、auひかりのプラン内容について電話口で調整するだけで良い。電話口だと変なオプションとかを付けられないだろうかと若干構えたけれども、auひかりは解約時の撤去工事や違約金があるから短期契約ならフレッツ光の方がお勧めとか、説明がめっちゃ丁寧で良心的だった。

ところで、僕は工事キャンセルの理由を確認した際にすぐにauひかりへのスライドを希望したけれども、NURO光のキャンセル手続が完了するまでは他のサービスへの申し込みはできないということで、そのため最初のキャンセル連絡からauひかりへの申し込みまでは2日空いている。

爆速開通

auひかりに申し込んでからは早かった。1ヶ月は掛かるだろうと覚悟していたら1週間で案内書類が届き、書面に記載されたURLで工事日の空きを見てみたら、なんと4日後に空きがある!

いやいやまさか、それにONUはそんなに早く届かないだろう…と半信半疑で待っていたら、ちゃんとONUとホームゲートウェイも2日後には届いた。そして工事も無事に終了。バッチリ開通。爆速過ぎる…。

何だろう、NURO光の待ちで時間が無駄になった分、ソネットの中の人が頑張ってくれたのだろうか…。いやいや、auひかりではあくまでプロバイダーなので、契約や工事周りまでは何ともならないはず。あとはコロナ禍の中で光回線を申し込む人も減っていたということなのだろうか…。NURO光の宅内工事は結構埋まっていたけどなぁ。

通信速度も上々

auひかりの現行プランは1Gbps、5Gbps、10Gbpsと3種類の速度があって、5Gbpsは2年間は割引で1Gbpsと同額なので、それならと5Gbpsのプランを選択してみた。ただ、よくよく考えてみると我が家の通信機器で1Gbpsを悠々超えられるものが無いことに気付く。MacBook Proはいけると思ったけれども、Touch Bar無しモデルはまさかの867Mbpsだった…。

というわけで、会社の検証用iPhone 11 MaxがWi-Fi 6対応かつ最大1.2Gbpsということで、これを計測用に使用した。

結果は概ね下り800Mbps程度。最大1.2Gbpsで携帯端末ということも考慮すると、端末側がボトルネックになっている可能性もある。いずれにせよ旧居より更に高速になって満足だ。折角5Gbpsのプランで契約したので、いずれ2.4Gbps対応のWi-Fiモジュールを積んだPCとかで試してみたい。

不満点

褒めちぎりのauひかりだけれども、不満もある。

一番はONUとルーター(ホームゲートウェイと呼ばれている)が別々になっていること。おまけにどちらも外付ACアダプターが大きいので置き場所に困る。BL1000HWがWi-Fi 6に対応しているのは良いけれども、そのタイミングでONU内臓にできなかったものだろうか…。

あと、そのBL1000HWのWi-Fiアンテナがしょぼいこと。これはAterm伝統の内蔵アンテナが災いしているのだろう。NECプラットフォームズ的は以前から「ロッドアンテナと比べて遜色無い」と言い張っているけれども、以前使用していたAtermもやっぱりロッドアンテナ搭載の他社製品と比べて電波が弱かったので、素直に付けてほしい。

そして最後に、そうやってホームゲートウェイへの文句があっても外せないこと。auひかりのホームゲートウェイは毎日認証処理が行われているため、他のルーターをONUに繋げるとインターネット接続が弾かれてしまう。技術的には他のルーターを繋ぐことは問題無いはずで、実際毎日の認証さえ無ければ普通に使えてしまえるのだけれども、まぁ文句があるなら他社を選べということになるので…。オプション料金を出さないと無線LAN機能を使わせてくれなかったりと、正直阿漕な商売をしている感は拭えない。

おわりに

多少の不満はありつつも、今の所はauひかりにして安定した高速通信ができている。短期契約だと工事や撤去や違約金等の費用が嵩むとか、貸与される機器が微妙とか、その辺りに折り合いを付けられるのであれば、フレッツのように輻輳と色々面倒なIPv6の二択を迫られることも無く快適に使えるので、そこそこお薦めできると思う。でも、やっぱりNURO光が良かった………。

f:id:aikawame:20200620220424p:plain

旧居と新居が同じアニメの聖地になった件

完全に自己満足で他人が読む価値は皆無の記事なのだけれども、こんな偶然は滅多に無いと思ったので記念に書き記しておく。

発生事案

多分今後の人生で二度とこんな偶然は無いと思う。というか自宅が映る時点でレアすぎる。アニオタ冥利に尽きるというものだ…。

f:id:aikawame:20200627212610j:plain
東新宿駅前

f:id:aikawame:20200627212634j:plain
鎌倉七里ガ浜から腰越・江ノ島の眺め

蛇足

かくしごと、推し声優の安野希世乃・佐倉綾音両女史も活躍していて、内容的にも謎含みのハートフルコメディー、そして綺麗に12話で纏まっているという、作品の方も良いものだった。江ノ電も忠実に描かれていたし。気が向いたら一番の聖地である七里ヶ浜駅前の階段路地を登ってみようと思う(普段は下から眺めるだけなので)。

新宿から鎌倉市腰越に引っ越した

f:id:aikawame:20200610221740j:plain
小動神社から望む腰越漁港と江ノ島

コロナ禍にあって余り大っぴらにするのは憚られたけれども、少しずつ落ち着いてきた感があるので忘れない内に書き綴っておきたい。ちなみに、初耳だ!聞いてないぞ!という方は安心してほしい。引っ越したことは一部の親族と勤務先の人にしか話していなくて、これがほぼ初周知となる。

概要

滋賀から東京都内に出てきて、10年ほど新宿に住みつつ近辺に通勤していたが、鎌倉市腰越の築浅アパートを借りて引っ越した。部屋は1LDKから2LDKに増えた一方、家賃は2/3の10万円になって生活に余裕が生まれた。今は完全な在宅勤務をしながら、余暇は鎌倉の町並みを散策したり海沿いを自転車で走ったりしている。住む場所は人によって相性があるだろうが、多少の利便性と引き換えに住み良い環境を求めるのもこれからの時代にはあり得る選択ではないかと思う。

引っ越した背景

主に人口10〜20万人程度の地方都市を転々とした後、10年ほど前から新宿で妻と同居していた。

15.5万円で1LDKのマンションを東新宿駅近くに借りていたが、数年前に貸主が転売によって変わって以来、契約更新の度に賃料の値上げを迫られて突っぱねるのに辟易していた。また近年では住民間トラブルも出てきて、近隣住民の勘違いで警察沙汰に巻き込まれたこともあった。そんなこんなで、2019年の夏頃からは「次の契約更新までに」くらいの緩い目処で引越を意識するようになり、東京都内の郊外地域をぼちぼちと散策していた。

転機がやって来たのは今年2020年に入ってからのことだ。年初からエアコンが故障して修繕を放置され、その後やって来たコロナ禍、更に勤め先の会社が恒久的なリモートワーク化に舵を切るという大きな意思決定があって、最適解をパズルのように試行錯誤していくことになった。

当然ながら、コロナ禍が落ち着くまで現状維持という選択肢が最初に立った。ただ、入居から10年の更新を迎えるに際して再び賃料の値上げで面倒な遣り取りが発生するのは確実で、その上電気給湯器やIHコンロ等の電気系統もいつガタが来てもおかしくないし、また放置されたら堪らない。更に、部屋の間取りが1LDKだと仕事専用のスペースが確保できなくて、既に家族のストレスが高まっているという事情もあった。付け加えるならば歌舞伎町に隣接する地域柄、繁華街を行き来する人達との接触が避けにくい点も気になっていた。

一つ一つの事情は必要火急とまでは行かずとも、足し合わせると数え役満という所だろうか。そんなわけで、これらの事情を勘案しつつ「もし本気で住みたいと思える賃貸物件があれば」という縛り付きでネット上での部屋探しを継続することにした。

部屋探しの条件

前述の理由で貸主との面倒事に悩まされたので、大手管理会社のサブリース物件を中心に検討することにした。持ち家については僕が飽き性ということもあり眼中に無く、以下の条件を満たす範囲で安くて綺麗な物件を探そうということになった。

  • 部屋の間取りは2LDK以上
  • 東京都心まで片道1時間程度まで
  • 最寄り駅から徒歩15分以内
  • IHコンロ完備

東京都心まで片道1時間というのは、ずっと在宅勤務が約束されるのであれば緩和しても良かったかもしれない。ただ僕の場合はITベンチャー勤務でいつ何が起こるかわからない(実際、恒久的なリモートワーク化という大転換があったわけで)ので、いざとなれば都心との行き来がある程度しやすい場所に絞った。

あと最後のIHコンロについては、家族の安全を考えてのこと。今までにも何度かヒヤリとする出来事があったので、料理をするのであればガスコンロでなくIHコンロ必須ということにした。後付けの製品もあるけれども、2口以上で出力が大きいものとなるとやはりビルトインになるので、完備された物件に絞った。

ただこの条件が曲者で、物件検索でチェックボックスをオンにした瞬間、検索結果が9割減!やはりまだまだガスコンロ強し。ということで、路線や地域から掘り下げていくのではなく、IHコンロ完備の物件を片っ端からチェックしていくという何ともマイナーな部屋探し方法となった。

鎌倉市腰越という地域

前述の条件で色々と物件を探していると、見つかるのはやはり所沢とか中央林間とか、鉄道会社がドカンと誘致した郊外都市が強い。そんな中でひょこっと家族が見つけてきた物件を見て、目を疑ってしまった。

「江ノ島駅徒歩n分・鎌倉市腰越」

GJすぎる。僕は何を隠そう社寺&鉄クラスターの端くれであり、鎌倉は観光等で既に7回訪れているくらい好きな場所だ。ただ、僕の中では鎌倉というと鶴岡八幡宮でお馴染みの若宮大路から大仏でお馴染みの長谷あたりまでの印象が強く、観光には強いが住む街としては今ひとつピンと来なかった。しかし、Wikipediaの記事 を見てみると鎌倉の複数の側面が見えてくる。

三方が低い山で囲まれ海に面する地であり、かつては鎌倉幕府が置かれ政権の要の地となり、日本史の時代区分でもある「鎌倉時代」の由来にもなった。今日では旧腰越町や旧大船町など、いわゆる「三方を山に囲まれた鎌倉」の外側に位置する地域も市内に含まれる。(中略)明治初期、現鎌倉市域を含む鎌倉郡を管轄する郡役所は戸塚(現横浜市戸塚区)に置かれた。明治中期以降、保養・別荘地として、昭和以降に観光地として改めて「都市・鎌倉」の発展を見たのである。ゆえに中世以来の建造物はほとんど存在せず、文化遺産として価値の高い中世都市の遺構の多い地域といえる。

つまり、所謂「武家の古都」としての鎌倉以外にも、腰越や大船のような後から合併した地域や、保養・別荘地として発展した地域が入り混じっているのが今の鎌倉市ということだ。

その中で腰越という地域を見てみると、鎌倉市唯一の漁港である腰越漁港を有しており、街は概ね海に面している。一方、街の中心部には江ノ電の併用軌道区間(所謂路面電車)が現存していて、この電車通りが商店街を兼ねている。Googleストリートビューで見てもわかる通り、街全体が昭和感に溢れていて、隣の七里ヶ浜や江ノ島界隈のようなパリピの巣窟とは一線を画している。

………めっちゃ僕好みやん。

2LDKで10万円は妥当か

さて、そんな鎌倉市腰越の家賃相場はどうかというと、鎌倉市内の江ノ電沿線の相場では概ね最安だ。

江ノ電沿線は見た限り、生活の利便性よりも観光地・別荘地としてのプレミアム感で家賃も動いているらしく、鎌倉駅近くは当然のこと、七里ヶ浜や稲村ヶ崎等の人気観光スポットは家賃も高く、東京都心寄りの郊外よりも高いということが普通にある。一方の腰越は穴場扱いなのか、1Kであれば5万円台で借りられるくらいの妥当と思われる相場感になっている。

2LDKで10万円という家賃については、条件を選ばなければもっと下げられることは事実だし、東京都内でも十分に探せる。ただIHコンロのある物件は選択肢が狭い分相場も若干高めで、見つけた所は管理会社も大手のしかも築浅物件だ。そこまで加味すれば妥当だし、何より今までの2/3にまで圧縮できるというのが大きい。旧居はネット回線付きだったのでその分を考慮しても、毎月5万円浮くわけだ。

場所良し、間取り良し、家賃良し、ということで引越決行となった次第である。

住んでみての所感:住まい

ここから実際に住んでみての所感を3段階評価と共に列挙していきたい。ざっくり◎は旧居より良い、◯は同等か十分満足、△は悪いという感じで。

◎ 家賃は下がり部屋は増えた

家賃は15.5万円から10万円へと一気に下がり、逆に間取りは1LDKから2LDKに増えたので、増えた1部屋を仕事部屋にできた。また鉄筋コンクリートから軽量鉄骨になったので、部屋の角や天井の出っ張り等も無く間取りが自然なのも良い。

◎ 景色や空気が良い

何と言っても部屋から海が見える。そして空が広い。これは精神衛生上非常に良い。旧居では隣もビルで大通りに面していたので窓の外なんて見る気にならなかったけれども、新居では気分転換に外を眺めてリフレッシュできるようになった。

あと、旧居とは比較にならないくらいに空気が美味しい。新宿の空気は排気ガスやら飲食店の換気口からの臭いやら地下鉄の換気口からの臭いやら、色んなものが混ざった淀んだ感じだったけれども、そういう混じりっ気が一切無い。その代わりに磯の香りがデフォルトなので、苦手な人には辛いかもしれない。

◎ 水道水がそのまま飲める

これは職場だと問題無かったので住居設備にもよるかもしれないけれども、旧居では水道水は沸かしてお茶やコーヒーにしても臭くて飲めたものではなかった。新居では水道水をガブ飲みしても平気なので、浄水ポットが要らなくなった。

◯ 虫が少ない

意外すぎて拍子抜けしたのがコレ。都会を離れるとそれに反比例するかのように虫が増えるものと覚悟していたけれども、今までに住んだ所と比べると全然大したことない。勿論新宿よりは多いけれども、夜に窓を開けていてもシーリングライトのカバー内が虫の死骸で埋め尽くされたりしないし、部屋に入り込んでくるとしても蜘蛛が大半なので全然気にならない。

どうやら海の近くというのは真水が少ないので、蚊をはじめ虫が育ちにくいらしい。滋賀に住んでいた頃は琵琶湖が淡水のおかげで塩害は無かったけれども、虫がビックリするほど多かったのを思い出す。虫と塩害、どっちがマシか。究極の選択である…。

△ 塩害と風と湿気が凄い

というわけで塩害は想定内ではあったが、玄関先に置いた宅配ボックスの南京錠が2週間で錆だらけになった時は衝撃を受けた。自転車にはカバーを掛けてあるので今の所は平気だけれども、屋外である以上劣化は早まると思われる。

そして塩害よりも盲点だったのが強風だった。置いてある自転車が総倒れになるくらいの強風が週に一度は吹くので、頭髪のことをとても心配している。あと、湿気については梅雨入り前の晴天時でも風向きによっては70%を超えることが頻繁にある。洗濯物は磯の香りが付くこともあって室内干しがデフォルトになった。

△ ごみの分別が細かい

燃やすごみと燃えないごみが有料なのはまぁ仕方ないとして、プラスチックでも容器包装プラと製品プラに分かれていたり、紙でもミックスペーパーとボール紙・クラフト紙とダンボールに分かれていたり、引っ越してきた当初はごみ分別の説明冊子とにらめっこする毎日だった。また、旧居では粗大ごみ以外は各階のごみ保管庫をいつでも利用できたので、燃えないごみや製品プラの回収が月に一度という事実には目眩がした。まぁこういうのは慣れなので、今ではそこそこ要領良く処理できるようになったけれども。

△ 珍走団が喧しい

これは地方都市あるあるだけれども、週末の夜になると珍走団が湧いてくる。ただ、これについては生まれ育った街でも同様だったのでそんなに気にならない。むしろ旧居のように昼夜を問わず消防署からサイレンが鳴り響くよりは、週末の夜寝る前に限定される分だけマシかもしれない。勿論、あくまで快適さについての話であって、緊急車両のサイレン音は必要なものだが珍走行為は取り締まられるべきなのは言うまでもない。

住んでみての所感:周辺環境

観光都市鎌倉の面目躍如となる部分。逆に言うと、このあたりに魅力を感じなければ利便性に優れた郊外都市や都会に住んだ方が幸せになれるだろう。

◎ 海岸や漁港が近い

近所の人達が水着で家から泳ぎに行く程度には砂浜が近い。シャワーや更衣室が混雑していても関係無いのは嬉しい。あと、シーズンオフであっても漁港があるので、桟橋からぼけーっと海を眺めるのも悪くない。

◎ 江ノ電の併用軌道区間が近い

併用軌道というだけでも気分が上がるというのに、江ノ電は車両の形式が多いので毎度何が来るか楽しみになる。特に最古参の300形と腰越商店街の組み合わせは絵になる。

ただし、道幅がそんなに広くないので慣れない車や自転車がよく電車の走行の妨げになってしまい、警笛がしょっちゅう聞こえてくる。商店街を歩く時も気を付ける必要があるし、鉄道に興味の無い人にとってはデメリットかもしれない。

◎ 名所旧跡が近い

鎌倉は小さな都市なので、名所旧跡のほぼ全てに自転車でサクッと行ける。鎌倉市街までだと市を東西に横断することになるけれども、それでも自転車で20分程度だ。その間海沿いを行けば七里ヶ浜や稲村ヶ崎、由比ヶ浜等のビーチスポットを快走できるし、少し中に入れば極楽寺や長谷のような社寺と緑溢れる閑静な地域をまったり走れる。

あと、住所は鎌倉だけれども腰越は市境なので、江ノ島にも徒歩で行ける。こっちはオンシーズンだと普段から人が多いので日や時間を選ぶけれども、仕事上がりに弁天橋から夕日を見るという贅沢が日常になるというのは良いものだ。

△ 高低差が激しい

鎌倉は三方を山に囲まれ一方は海という天然の要害。これは鎌倉幕府の成立のあたりで習う有名な話だけれども、要するに市内は山だらけということだ。実際、少し内陸寄りの道を走ろうとしただけで大抵は心臓破りの坂にぶち当たる。車やバスでの移動は慢性的な渋滞が厳しすぎるので、現実的な移動手段は原チャリか電動アシスト付自転車だろう。

住んでみての所感:利便性

鎌倉市がというか、腰越が意外なほどに便利な地域だった。車の必要性を全く感じない。鎌倉市内でありながら、湘南最大の街である藤沢駅にもそこそこ近いのが強かった。

◎ スーパーと薬局が近い

これは鎌倉だと住む地域によって全く様相が異なる。昼間は観光客で賑わう地域でも、普段使いの買い物ができる店が皆無という場所も多いので、物件を選ぶ時には慎重を期する必要があるだろう。幸いなことに、新居からはスーパーが徒歩3分以内、薬局も徒歩5分以内なので、日常生活の食料品や消耗品の買い物には全く困らない。コンビニも徒歩10分以内で大手3社が揃っているし、郵便局も美味しいパン屋も5分以内で行ける範囲にある。

旧居は隣がコンビニだったので便利ではあったけれども、スーパーと薬局が今よりも遠かったので、むしろ日常の買い物だけならより便利になってしまった…。

◯ 3線利用可

これまた鎌倉の中でも腰越や江ノ島界隈に限った話だけれども、江ノ電・小田急・湘南モノレールの3線を利用できてしまう。地方都市でこの鉄道の充実ぶりは凄い。おまけにどの路線も日中ダイヤで毎時5本以上列車があるので、「列車の時刻を考慮した行動」という地方都市あるあるな制約が全く無いのが嬉しい。

ただし、同じ鎌倉でも鎌倉市街と江ノ島近辺以外は江ノ電しか選択肢が無くなるので注意されたい。

◯ 片瀬江ノ島駅・藤沢駅から始発で座れる

土休日であれば片瀬江ノ島駅から、平日は江ノ電で藤沢駅まで出れば新宿行きの始発に座れる。座れても混雑が嫌だというのであれば、ロマンスカーに乗るという手もある。幸い小田急は長距離運賃が安いので、片瀬江ノ島から新宿まで運賃は640円、特急券は630円で行ける。これならいざ通勤が必要になったとしても、ロマンスカー通勤しても家賃が浮いた分と相殺してまだ8割くらい残る。

△ 百均の店が近くに無い

これは地味に痛い所。ホームセンターや無印やニトリが遠くても百均があれば大体何とかなると思っていたら、藤沢駅前まで出ないと無かった…。逆に駅前にはダイソーだけで3店舗、キャンドゥやセリアもあるし、3COINSだってある。そのダイソー、1店舗だけで良いから分けてくれ…。

ちなみにこれはかなり贅沢な不満で、藤沢駅前には自転車で15分も走れば着いてしまう。その程度は地方都市では十分に近いと言えるはずなので、いかに自分が新宿に毒されていたかがよくわかる。

△ 他地域のソウルフードが少ない

僕は引越が多かったので各地のソウルフードを食べてきたのだけれども、そういう店が全くと言っていいほど無い。例えば東京であれば、味噌煮込みうどんとかチャンピオンカレーとか近江ちゃんぽんとか、そういうご当地ソウルフードを近場で楽しむことができたのだけれども、こっちには辛うじて天下一品が大船にあるくらい。そもそも天下一品ってもはや全国区だし…。そういうのが恋しくなったら、東京都内に出るついでに食べるしかない。

おわりに

住む場所を選ぶのは就職活動と似た所があると思っていて、それはどちらも「誰にとっても最高」というのは無く、相性で良し悪しが決まるということだ。

僕は20代から30代半ばにかけては仕事第一でハードワークどんと来いな感じだったので、旧居は通勤時間の短さと生活の利便性に振り切っていて、当時としては良い選択だったと思っている。ただ、これから40代にかけては若い頃のような無茶な働き方をしていたら心身を壊す(というか実際に壊した)ので、生活の豊かさに軸足を移していきたいと常々考えていた。新居はまさにその思いを実現してくれる場所だと思っている。

同じ人間でも年を重ねることで価値観が変わるわけで、他人ならば尚更のことだ。人によっては田舎よりも都会の方が合うかもしれないし、古くからの街よりもニュータウンの方が合うかもしれない。僕は今回海沿いの観光都市である鎌倉市の腰越を選んだけれども、これはかなり振り切った選択だという自覚はあるので、人には中々薦められない。

とはいえ、コロナ禍を機に生活や仕事の環境が大きく変わった人々も今は多かろうと思うので、大都市よりも人混みの少ない地域へ引っ越そうとか、アウトドアの娯楽が多い地域へ引っ越そうとか、多少の利便性と引き換えに住み良い環境を求めるのも良いのではないかと思っている。

蛇足

腰越という地名について、歴史に造詣のある方であれば源義経の腰越状(頼朝から鎌倉入りを許されなかったアレ)を思い浮かべるかもしれないが、まさにこの地のことであり、由来とされる書物や逸話が町内の満福寺に伝わっている。

あと、冒頭の腰越漁港の写真、これは今期アニメとして放送されているかくしごとのOPサビで映し出される漁港そのままだったりする。こうしたネタが近所に散りばめられているのはとても楽しい。いつかは飽きる時が来るとしても、当面は満喫できそうだ。

f:id:aikawame:20200617231002j:plain
江ノ島弁天橋から眺める夕日

AnsibleでWSL2上のUbuntuを構成管理する

MacからWindowsへの移行シリーズもいよいよ最終回。今回は、WSL2配下のUbuntuの構成管理ついて触れていきたい。なお、シリーズの目次は上記リンクから辿ってほしい。

aikawame.hateblo.jp

ここでやること

  • Ubuntuを構成管理するためのAnsible Playbookを作る

成果物

github.com

Ubuntu on WSL2を準備する

今までに紹介したPowerShellスクリプトの中で、実はWSLもUbuntuも準備されているのだけれども、どこで行われていたのかをスルーしていたので改めて触れておきたい。

まず、autounattend.xmlMicrosoft-Windows-Subsystem-Linux を追加することで、無人セットアップの中でWSLが自動的に有効となる。

次に、install_packages.ps1wsl-ubuntu-1804 のパッケージを追加することで、Ubuntu 18.04がインストールされる。これはWindows Storeからインストールするのと同じ結果となる。

更に、78行目の下記コマンドでUbuntuの動作環境をWSL1からWSL2に変換している。

wsl --set-version Ubuntu-18.04 2

これでUbuntu on WSL2の準備は完了だ。

Ansible Playbookを作って実行する。

ここからは一般的なAnsible Playbookの作成なので、Macをゴリゴリカスタマイズしていた諸氏にはお手の物かと思う。実際、僕もUbuntuの利用経験はほぼ無かったけれども、サクサクとPlaybookを作ることができた。もしハマることがあったとしても、公式ドキュメントなり各種記事を参照すれば大丈夫だろう。

ちなみに、成果物のinstall.ps1ではPowerShell側からAnsible Playbookを実行しているため、そのままだと日本語が文字化けするという問題がある。別に英語にすればいいやとスルーしたけれども、この辺の文字コード周りの問題はまだWindowsには残っていることは注意されたい。

あと、僕の作ったPlaybookではAnsible Vaultを利用しているため、Playbookが走り出すタイミングでパスワードを要求されてしまう。ここも改善しようかと思ったけれども、Windowsへの移行に挫折してしまったので放置状態になっている…。

おわりに

ここまでの流れで、Windowsをそこそこ使える状態にまではできるかと思う。僕はフォントの見にくさもあって一旦移行を保留したけれども、ARM化など今後のMac界隈の趨勢次第では再び本気で移行を考えることもあるだろうと思い、折角長期間試行錯誤した成果だし書き残すことにした。これからWindowsへの移行を考えている方の参考になれば幸いだ。

【新パッケージ】Windows 10 Home 日本語版/May 2019 Update適用/パッケージ版

【新パッケージ】Windows 10 Home 日本語版/May 2019 Update適用/パッケージ版

  • 発売日: 2019/09/13
  • メディア: USBメモリスティック

Windows 10の設定をPowerShellから一発適用する

aikawame.hateblo.jp

MacからWindowsへの移行シリーズ第3回では、インストールされたWindows 10に設定を自動適用していく。なお、シリーズの目次は上記リンクから辿ってほしい。

ここでやること

  • Windowsを設定するためのPowerShellスクリプトを作成する
    • 不要なUWPアプリの削除
    • Package Managementの設定
    • Package Managementによるアプリケーションのインストール
    • レジストリファイルによるWindows設定のカスタマイズ

ちなみに先に断っておくと、ここでの内容もやろうと思えばAnsibleで実現できなくはない。ただ、AnsibleとWindowsの接続にはWinRMというSSHとは異なる仕組みが必要で、その準備が面倒だったり、SSHへの対応もまだexperimentalだったりと過渡期な感じなので、個人的に現時点ではPowerShellでやった方が楽だという結論に達した。興味のある方はAnsibleの公式ドキュメントを参照していただきたい。

成果物

github.com

土台のスクリプトを用意する

さて、先述の処理を全て1つのファイルにまとめることも可能ではあるけれども、長くなるので土台のスクリプトから呼び出すようにしたい。土台のスクリプトは成果物のinstall.ps1として用意してあるので、順に説明していく。

1行目の Set-ExecutionPolicy は、スクリプト実行についての設定で、クライアント向けのWindowsエディションだとデフォルトは Restricted となっている。この状態だとスクリプトを実行できないので、最初に RemoteSigned とすることでポリシーを緩めている。当然セキュリティー的な観点からは褒められた行為ではないので、一連の作業が完了したら元に戻しておきたい。

2行目の $ErrorActionPreference = 'Stop' は、エラーハンドリングに関する設定だ。デフォルトは Continueとなっていて、エラー発生時にも処理が続行されるので、止めるように設定を変更している。

4行目からの処理では、構成管理用のリポジトリーをWindowsの一時ディレクトリーに展開している。Invoke-WebRequest を使わないのか?と思われるかもしれないが、ヤツはファイルの書き出しが非常に遅いのでサイズの大きなデータには適さない。そのため、今回紹介しているスクリプトでも極力使わないようにしている。

10行目から呼び出しているスクリプトは、それぞれ先に箇条書きした処理の内容となっている。続く14行目からがレジストリファイルの呼び出しだ。レジストリ設定についてはPowerShellで書くこともできるが、レジストリファイルの方がレジストリエディターやサードパーティーツールでのインポート・エクスポートが便利なので、こちらのやり方をオススメしたい。

19行目からのWSL関連の処理は最終回で紹介するので、ここでは触れない。最後の処理は見ての通り、一時ディレクトリーの後始末だ。

不要なUWPアプリを削除する

Macだと、プリインストールされているアプリケーションはたとえ「チェス」であっても削除できない(SIPを無効にすれば削除できるが…)。一方のWindowsでは、デフォルトで削除できるようになっている。一部のアプリケーションはスタートメニューからは削除できないが、PowerShellを使えば可能だ。

ただし、一部のアプリケーションは削除すると他のアプリケーションとの依存関係で不具合が発生することもあるので、サンドボックス等の壊れても構わない環境で確認しておいた方が安全だ。この辺り、安全側に倒した代償としてユーザーの自由を奪うMacと、比較的自由だが弄って壊れても自己責任なWindowsという、両者の思想の違いがよく表れていると思う。

さて、アプリケーションを削除するコマンドは以下となっている。

Get-AppxPackage 'Microsoft.MicrosoftSolitaireCollection' | Remove-AppxPackage

このコマンドではソリティアのみを削除するが、成果物のremove_appx_packages.ps1のようにスクリプトファイルにしてパッケージ名を配列化しておけば、実行するだけで指定したパッケージを一括削除できるので便利だ。僕はほぼ全てのUWPアプリを削除するようにしている。

ちなみに、現在インストールされているアプリケーションを一覧したい場合には、以下のようなコマンドを使う。

Get-AppxPackage | Sort-Object Name | Select Name, PackageFullName

ところで、「UWPアプリ」と断っている通り、ここで対象となるのは最近登場したUWPアプリのみで、従来からのデスクトップアプリは範疇外となる。この辺り、近年のWindowsは過渡期な雰囲気でカオス感溢れているけれども、そこもまた後方互換性を重視するWindowsと過去をバッサリ切り捨てるMacの思想の違いということでひとつ。

Package Managementを設定する

不要なアプリケーションを削除したら、今度はアプリケーションのインストールだ。

MacだとここでHomebrewの出番なのだけれども、Windowsの場合はPackage Managementというパッケージ管理の仕組みが最近になって標準搭載されるようになった。一方、それ以前からChocolateyというサードパーティーのパッケージ管理ツールが存在していて、デファクトスタンダードとなっていた。

こうした歴史的経緯から、Package ManagementはChocolateyを含むパッケージ管理ツールを「プロバイダー」として取り込み、自身は共通のインターフェイスで動作するラッパーとしての役割を果たしている。というわけで、ここではChocolateyを含むプロバイダーをPackage Managementに設定する。

基本的なコマンドは以下のようになる。

Install-PackageProvider 'Chocolatey' -Force

成果物のinstall_package_providers.ps1ではよく使われるものとして4つのプロバイダーが指定されているけれども、NuGetはPowerShellGetが依存しているのと、ChocolateyとChocolateyGetはいずれもChocolateyのプロバイダーなので、実質2つである。もっと言うなら、PowerShellGetはPowerShellのモジュールを集めたプロバイダーだけれども、PowerShellを頻用するのでもなければ不要かもしれない。

Package Managementを使ってアプリケーションをインストールする

プロバイダーを設定したら、あとはChocolateyパッケージを指定してインストールすれば良い。パッケージの検索はChocolateyのサイトからでも良いし、コマンドでも行える。

Find-Package 'Chrome' -ProviderName 'ChocolateyGet'

あとは以下のコマンドでインストールすれば良い。この辺りは他のパッケージ管理ツールと大体同じだ。

Install-Package 'GoogleChrome' -Force -ProviderName 'ChocolateyGet'

ただ、ChocolateyもChocolateyGetも結構な頻度でコケる上に、再試行もしてくれない。それってパッケージ管理システムとしてどうなのか…?というツッコミはありつつも、成果物のinstall_packages.ps1では自前で再試行できるようにスクリプトを組んで何度かコケても完走するように改善してある。

ちなみに、ATOKやTablePlusのようにChocolateyに登録されていないパッケージもそれなりに多いので、その場合は手動でインストールするなり、自前でスクリプトを書く必要がある。この辺りはMacだとHomebrewにもMac App Storeにも登録されていないパッケージは稀なので、Windowsはちょっと面倒だなとは思う。

まとめると、パッケージインストールの流れとしては、コケる頻度がまだ低いChocolateyGetで検索、無ければChocolateyで検索、それでも無ければ自前という流れが良いと思われる。

レジストリファイルを使ってWindows設定をカスタマイズする

ここからは少し毛色の違う処理として、Windows設定のカスタマイズを行う。これはMacで言う所の defaults コマンドのようなものだと思っておけば良いだろうか。

Windowsでも、正に defaults コマンドのような形で設定を1行ずつ実行していくこともできる。実際、近年のカスタマイズ関連記事ではそちらの手法を紹介されることが多い。ただ、個人的には大量の設定をカスタマイズするので1行ずつ地道に書いていくのは億劫だと思っている。というわけで、旧来からの手法ではあるがレジストリファイルを使うことにしている。レジストリファイルの良い所は、Windows公式ツールであるレジストリエディターや各種サードパーティーツールでのインポート・エクスポートに対応していることだ。

具体的な手順としては、僕の場合はRegistryChangesViewというレジストリの差分チェックツールを使い、設定画面等で変更する前後での差分を取って、レジストリファイルにエクスポートするという手法を採用している。あとは、適当にググって当たったカスタマイズ記事を参照しても良いのだけれども、その場合は記事の内容が古くてきちんと動かないようなこともあるので注意されたい。原則としてレジストリを直接弄るのは自己責任ということは肝に銘じておくべし。

ちなみに、成果物に載せているレジストリファイルはWindowsの設定とコントロールパネルの項目を概ね網羅しているので、参考になれば幸いだ。ただ、デフォルト値とか各設定の詳細まで説明し始めるとそれだけで独立したシリーズになってしまうので、そのあたりはカスタマイズ専門のサイトにお任せしたい。

そしてWSL2の構成管理へ

ここまででWindows側は一通り設定できたので、次の記事はいよいよ最終回、WSL2配下のUbuntuの構成管理ついて触れていきたい。

aikawame.hateblo.jp

【新パッケージ】Windows 10 Home 日本語版/May 2019 Update適用/パッケージ版

【新パッケージ】Windows 10 Home 日本語版/May 2019 Update適用/パッケージ版

  • 発売日: 2019/09/13
  • メディア: USBメモリスティック

Windows 10を無人セットアップする

aikawame.hateblo.jp

MacからWindowsへの移行シリーズ第2弾では、いよいよWindows 10をインストールしていく。なお、シリーズの目次は上記リンクから辿ってほしい。

ここでやること

  • Windowsを無人セットアップするための設定ファイルを作成する

成果物

github.com

無人セットアップとは

無人セットアップとは、Windowsのインストール時の選択内容を応答ファイルと呼ばれるXMLファイルに予め書き出しておくことで、実際のインストール時の選択をスキップできる仕組みだ。あとはこの応答ファイルをインストールメディアの最上位ディレクトリーにコピーしてからインストールを開始すれば、応答ファイルで設定した箇所を飛ばしてインストールしてくれる。必ずしも全てを自動化する必要は無く、書き出した設定箇所だけがスキップされるので「ここは手動で選択したい」というような場合にも柔軟に対応できる。

詳しい内容はMicrosoftがリファレンスを提供しているので参照してほしい。

docs.microsoft.com

インストールメディアを作成する

では、まず最初にインストールメディアを作成していく。

Windows端末が手元にあるならば話は早いのだが、Macしか無い場合だとUnetbootinやdiskutilを使う方法などが検索結果として出てくるかと思う。ただ、オススメなのは仮想マシンにWindows 10をインストールして公式ツールを利用する方法だ。

本記事を読むような方であればWindowsをある程度カスタマイズするだろうから、予めVirtualBoxやParallels等の仮想環境での動作確認は行うと思われるので、その環境を利用して公式ツールからインストールメディアを作っておくのが一番確実で手っ取り早いだろう。手順もツールをダウンロードして実行、あとは指示に従うだけなので楽チンだ。

なお、WindowsのエディションはProを選択しておきたい。これはHyper-Vやサンドボックスなどの開発者にとって必須とも言える機能がHomeでは利用できないためだ。

応答ファイルを作成する

そして、いよいよ本題である応答ファイルを作成していく。

応答ファイルの名前は autounattend.xml とする。文字コードと改行コードは何も考えずにUTF-8とLFで問題無い。かつてのWindows界隈ではShift-JISとCRLFが跋扈していたけれども、最近では随分と柔軟になってきたものだ。

ここから先は、拙作の応答ファイルを例に各項目について説明していく。

github.com

オプション機能のカスタマイズ

4行目からの package セクションでは、オプション機能のカスタマイズができる。例えば忌々しいIEを最初から無効にしておいたり、WSLや仮想マシンを有効にしておいたりできる。これらの設定は勿論インストール後に変更しても良いのだけれども、それだと地味に1件ずつの適用時間が長い上に再起動が必要になってしまう。

無人セットアップでやっておけばWindowsのインストール時間は変わらないし、再起動の必要も無く最初からWSLが使える状態にできる。なので是非ともここでカスタマイズしておきたい。開発によく使われるであろうWSLとDockerを使用可能な状態にするには、以下のパッケージは必須なので有効にしておくと良いだろう。

  • Microsoft-Hyper-V-All
  • Microsoft-Windows-Subsystem-Linux
  • VirtualMachinePlatform

なお、有効・無効にしたいパッケージ名を確認するには、PowerShellで以下のコマンドを実行すれば全てのパッケージ名を確認することができる。

Get-WindowsOptionalFeature -Online

地域と言語の設定

24行目からの Microsoft-Windows-International-Core-WinPE コンポーネントでは、地域と言語の設定を行う。

日本在住で日本語を使うのであればロケールは全て ja-JP を指定して入力ロケールは 0411:E0010411 としておけば良いけれども、海外在住だったり日本語以外のキーボードを使う場合などはここを弄る必要がある。僕の場合は英語キーボード愛用者なので、入力ロケールだけ 0409:00000409 としている。

エディションとプロダクトキーの設定

34行目からの Microsoft-Windows-Setup コンポーネントでは、Windowsのエディション選択とプロダクトキーの入力を行う。

Windowsのエディションは、今回はProを選択している。またプロダクトキーの W269N-WFGWX-YVC9B-4J6C9-T83GX はKMSクライアントセットアップキーというもので、本来はボリュームライセンスのライセンス認証に使われるものだが、ここでは無人セットアップにおけるエディション選択のために使う。ちなみにこのプロダクトキー自体はMicrosoftが公開しているものであって、やましいものではないのであしからず。インストール後に改めてライセンス認証する必要があるのは勿論言うまでも無い。

ユーザーアカウント制御の設定

54行目からの Microsoft-Windows-LUA-Settings コンポーネントでは、ユーザーアカウント制御(UAC)の設定を行う。

Macユーザーには聞き慣れないかもしれないが、非常に雑に説明すると、UACというのはUnix文化圏でいう所のsudoに近いものという所だろうか。MacのGUIだとソフトウェアのインストール時や設定画面等でパスワードを要求される、アレだ。Windowsは歴史的経緯で管理者アカウントを使うのが暗黙の了解になってしまったため、後からUACという仕組みが提供されて、管理者なのに要所要所でアレのような画面が出る。

セキュリティー的な観点からはこれを無効にするのは御法度なのだが、有効にした状態でこの先の初期設定を自動化するのは非常に骨が折れるので、初期設定が完了するまではUACを無効にしておいて、完了後に有効にする想定としている。

カスタマーエクスペリエンス向上プログラムの設定

59行目からの Microsoft-Windows-SQMApi コンポーネントでは、カスタマーエクスペリエンス向上プログラムの有効・無効を設定する。

協力したい方は有効にしていただければ。

コンピューター名やユーザーの設定等

残りの部分はコンピューター名やユーザーの設定等だ。大体の設定は見ての通りという感じ。

注意すべき点としては、再びプロダクトキーを記述する箇所があるが、これは仕方ないので先述の箇所と同じキーをコピーする。あと、 AutoLogon の回数を3回に設定している理由だけれども、これはインストール直後に何度か再起動が必要なタイミングが発生しがちなためだ。設定しておけばその回数だけ自動でログインして、その後はパスワードによるログインになる。

あと、パスワードについては PlainText セクションを false にすれば暗号化できるのか…というとそうではなく、 false の場合はbase64エンコードの文字列を受け付けるようになっている。なのでGitHubに上げるのはダミーパスワードにしておこうということで、今回の例では適当にしてある。

それからもう1つ全体的な所で、今時はレアだとは思うが32ビット版のWindowsをインストールする場合は processorArchitecture プロパティーの値を X86 にする必要があるので注意してほしい。

応答ファイルのコピーとWindowsのインストール

あとは出来上がった応答ファイルをインストールメディアの最上位ディレクトリーにコピーしたら、このメディアからWindowsをインストールするだけで良い。

ただし、今回紹介した応答ファイルでは1画面だけ、パーティション設定はしていないのであしからず。パーティション設定はインストールするPCの状況によっても最適な設定が異なってくるので、僕は毎回手動で弄るようにしている。もしそこも自動化する場合は公式リファレンスや各所の紹介記事を参照してほしい。

パーティション設定だけ手動で行えば、あとは自動でWindowsのインストールが進むはずだ。

そしてインストール後の設定作業へ

次の記事からはいよいよWindowsのカスタマイズを自動化する方法について触れていきたい。

aikawame.hateblo.jp

【新パッケージ】Windows 10 Home 日本語版/May 2019 Update適用/パッケージ版

【新パッケージ】Windows 10 Home 日本語版/May 2019 Update適用/パッケージ版

  • 発売日: 2019/09/13
  • メディア: USBメモリスティック

MacからWindowsへの移行を考えた背景

aikawame.hateblo.jp

MacからWindowsへの移行シリーズ第1回は、まず移行を考えた背景から。書いている人間のOS遍歴は移行検討の要素として大きいと思うので触れておくけれども、そんなのどうでも良いという方は飛ばしていただければと思う。

なお、シリーズの目次は上記リンクから辿ってほしい。

移行を考えた一般的な背景

今、Windowsが熱い。

20H1では待望のWSL2が正式リリースとなり、Windows Terminalや復活したPowerToysのような通好みのソフトウェアも開発が進んでいる。CEOがナデラに代わったあたりから、Microsoftが急速に開発者に向き合う姿勢を強めていることは論を俟たないだろう。

一方、「GUIのイケてるUnix」として開発者から支持されてきたMacの方は、ここ数年はiOSの傍らで放置プレイを食らっている感が強い。そのくせメジャーバージョンアップ毎にバグ祭りや後方互換消失で各所から悲鳴が上がっているのは気のせいだろうか。また、ARMチップ搭載Macの噂もいよいよ真実味を帯びてきて、PowerPCやIntelへの移行時のような過去の切り捨てがまた発生するのかという懸念も絶えない。

僕の周りだと、同年代以上は新卒時のPCがWindowsというのが当たり前だったので、一度Macに浮気しつつもWindowsに戻ってきたという声を聞くことが増えてきたのが印象深い。ただ、それより若いMacネイティブの人達はまだWindowsなど眼中に無いようではある。あとはアプリ開発に必要という理由でMacに縛られている人も多い。そういう状況なので、MacからWindowsへの移行というのは今の所大きなうねりではないように見受けられる。

移行を考えた個人的な背景

僕自身は、元々は生粋の窓っ子だ。3.1は親のPCで少し触ったくらいしか覚えがないけれども、中学の時から自分専用のPCを持ったことでWindows 95/98にどっぷりと浸かった。2012年から仕事でMacを使うようになるまでは、15年ほどの間メインのOSとして使い倒したことになる。

一方でMacの方は、1999年に5色のiMac Rev.Dがやって来たのかが最初。黎明期のOSXを無理矢理突っ込んで激重にしたのは今となっては笑い話だ。その後一時的に初期のIntel Macを所持するも、本格的に使い始めるのは2012年にgumiへ転職してから。メインOSとしては8年ほどで、ようやくWindowsの半分を越えた所だった。

そんなわけで、WindowsもMacもかなり使い込んでいるし、信者のような偏った考えも持ち合わせていないので、ある程度客観的に両者の良し悪しを判断できると思っている。

WindowsとmacOSのメリット・デメリット

僕が長年WindowsとmacOSを使い込んで感じた双方の特徴をまとめると以下の表のようになる。デザインだのブランドだのといった信仰心に左右される要素は考慮せず、あくまで実用性に重きを置いている。

項目 Windows macOS
ハードの選択肢 ×
アプリの豊富さ
動作安定性
後方互換性
UIの洗練度 ×
カスタマイズ性
Unixとの親和性

ハードの選択肢

これは言うまでもないが、macOSはApple製品しか選択肢が無いのが痛すぎる。バタフライキーボードのような問題が発生した時に別メーカーという選択肢が存在しないのは大きなリスクだ。

アプリの豊富さ

これは使用するアプリケーションの分野にもよる。開発者であれば今はむしろmacOSの方が有利かもしれない。一方で業務系アプリケーションやゲームは今でもWindowsが圧倒的に有利だ。ただ、今はクロスプラットフォーム化やウェブの発展により、そこまで意識しなくても良くなりつつある視点かもしれない。

動作安定性

最近はWindowsもmacOSもOS自体はかなり安定しているので、まともな環境でクラッシュするのを見るのは稀だと思われる。そこは甲乙付けがたいのだけれども、ただWindowsは何かインストールしたり設定したりする度にOSごと再起動を求められることが多いので、そこはマイナス点。

後方互換性

これはWindowsの強い所。20年前のWindows 2000やXP対応のソフトウェアやハードウェアでも平気で動いたりする。勿論動作保証が無ければ自己責任とはなるけれども…。一方のmacOSはメジャーバージョンアップ1回でもバッサバッサと互換性が切り捨てられるので、財布と過去資産には全く優しくない。

UIの洗練度

macOSの圧勝。ぐぅの音も出ない。Windowsは最近だと設定項目の散らばりっぷりが酷い。モダンなUIの設定を推しているようだけれども、後方互換性を意識してなのかコントロールパネルも併存していて、一方にしか無い項目も多いので混乱する。あとシステムフォントがバージョン毎に変わっていて、アプリケーションによってフォントが違っていたりする。この辺は一本筋の通ったmacOSのUI哲学を見習ってほしい。

カスタマイズ性

Windowsはレジストリーを操作することで結構危ないチューニングも含めてOSの深い部分を弄り倒せる。また、レジストリエディターが標準提供されているのもありがたい。macOSはそこまで柔軟ではないが、元が洗練されているので「機械を人間に合わせるWindowsか、機械に人間を合わせるmacOSか」の選択になるということだろうか。

Unixとの親和性

近年Windowsが頑張っている部分。WSLの登場によってCygwinのような中途半端な互換レイヤーは過去の物となった。とはいえmacOSはUnixそのものなので比べる相手が悪い。WSLもまだまだ制約が多いので、今後に期待というところ。

具体的になぜ移行しようと思ったか

さて、これらを踏まえて今回なぜまたWindowsに舞い戻ろうと思ったかだけれども、一番の問題はアプリケーションのパフォーマンスだ。

僕は普段の開発でMacBook Pro 13(2017・TB無)を使っている。CPUをCore i7に変更しているし、デュアルコアとはいえそこまで非力なマシンではない。ソフトウェア環境Dockerを常用していて、更にIDEにはIntelliJ IDEAを使用している。また、外部ディスプレイとして以前の記事でも紹介したEIZOの4K製品を繋げている。

で、この環境がめちゃくちゃ重い。死ぬほど重い。どのくらい重いって、IntelliJで2〜3文字打ち込むだけでCPU使用率が200%を超えるくらい重い。あと、Affinityとかのグラフィック系ソフトウェアについても同様で、カーソルが紙芝居になる。

IntelliJのパフォーマンスについては公式のIssueで5年も前から議論が続いていて、Macの画面描画の特性にも起因していたりと根は深そうである。そうするとAffinityも難しそうだし、Dockerについてもファイルシステム周りの問題で遅くなっているので一朝一夕に改善できるものではなさそうだ。

なお、Macで高解像度ディスプレイを繋いだ場合のレンダリング負荷については以下の記事が詳しい。

infornography.blue

どうやら重い原因はMacの根本的な仕組みにありそうで、13インチクラスのMacBook Proではマシン性能でカバーするのも当面は難しそうだ。

そして移行作業へ

そうするとWindowsに移行するしか無いか?と考えた時に、先述の通り、両OSの比較については僕自身はどっちもどっちという見解だった。

ハードはガジェット好きなので選択肢は多いに越したことは無いが、一方で開発環境としてはUnixとの親和性は重視したい。あとはUIの洗練度については目を瞑れば何とかなるので、最終的には近年特に開発者に寄り添っていると感じられるMicrosoftの方に期待してみようと考えた次第だ。

次の記事からは実際の移行作業でやったことについて触れていきたい。

aikawame.hateblo.jp

【新パッケージ】Windows 10 Home 日本語版/May 2019 Update適用/パッケージ版

【新パッケージ】Windows 10 Home 日本語版/May 2019 Update適用/パッケージ版

  • 発売日: 2019/09/13
  • メディア: USBメモリスティック

MacからWindowsへの移行お試しで貯まった知見達

2020/10/08追記:その後めでたく完全移行した。

結論から先に触れておくと、開発環境をMacからWindowsへ移行しようと考えたものの終盤で挫折してしまった。

挫折した理由はフォントが見にくいという点と、見にくいフォントを改善するのが面倒という点だったので、僕のようにそろそろ目の老化を気にする状況でもなければ大きな問題ではないと思う。僕自身も今回は一旦保留したけれども、今後の環境変化で再び移行を検討する可能性は十分にあるし、今回貯めた知見を書き残しておこうと思う。

今回のゴール

今回は、Windowsの開発環境を整えるだけであれば簡単すぎるので、MacでよくあるAnsibleで構成管理するような感覚で、Windowsの環境構築をほぼ自動化する仕組みを作り上げる所をゴールとしている。勿論、今のMacでできることを全て可能にした上で。Windowsでもそうした事例は検索すれば大量に出てくるかと思ったけれども、大量に出てきたのは大規模組織向けのイメージ化・一括配布の手法だったので、あくまで個人向けにPowerShellとAnsibleで構成管理する手法を探っていく。

また、僕は仕事でも趣味でも構成管理の仕組みを使い回したいので、過度のチューニングはしない方針としている。趣味に振り切るのであれば、Windowsでは不要なプロセスを無効にしたりとか、システムファイルを入れ替えたりとかのディープなチューニングも厭わないのだけれども、さすがにそれが原因で仕事に支障を来すと拙いので、その手のネタは扱わない。個人的には好物だけれども。

目次

やったことが結構広範にわたるので、連載形式としている。章立ては今後変更する可能性があるのであしからず。

成果物

御託はいいから動くものを見たい人向け。

github.com

このリポジトリーの中身について順を追って説明していくことになるのだけれども、とりあえず以下の手順でWindowsをインストールするのがざっくりとした流れとなる。

  • Windows 10 バージョン20H1のUSBインストールディスクを作成する
  • 応答ファイルをUSBインストールディスクの最上位ディレクトリーにコピーする
  • USBインストールディスクからWindowsをインストールする
  • インストール終了後にREADMEに記載したワンライナーを実行する

なお、対象のバージョンは20H1のビルド19041で、特に大きな変更が無ければ正式リリースでも使えると思われる。

それでは、最初の記事ではまず今回MacからWindowsへの移行を考えた背景について書き綴っていきたい。

aikawame.hateblo.jp

【新パッケージ】Windows 10 Home 日本語版/May 2019 Update適用/パッケージ版

【新パッケージ】Windows 10 Home 日本語版/May 2019 Update適用/パッケージ版

  • 発売日: 2019/09/13
  • メディア: USBメモリスティック