[iOS] Xcode が開かない、もしくは開いてもずっとプロジェクトのロードが終わらない場合の対処法

Xcode を終了した後、以下のディレクトリを削除すると直る場合があります。~/Library/Saved Application State/com.apple.dt.Xcode.savedState/

[iOS] ‘weak’ cannot be applied to a property declaration in a protocol というエラーがあった場合の対応

結論から言うと、Protocol での記述は weak は特に気にしなくてよさそうです。Protocol は weak だろうが strong だろうが宣言できるが、実クラスではそれに従う必要はないため、混乱を招いてしまう。そのため、そもそもProtocol ではそれらの宣言をできないようにするべきだ、ということのようです。

振る舞い駆動開発(Behavior-Driven Development / BDD)とは

僕のイメージとしては「テストファイルに仕様を書いていく」「つまり、テストファイルを読めばコードやシステムの外部仕様が理解できる」ということを目指している開発手法、と捉えています。

[iOS][Xcode] error: Building for iOS Simulator, but the linked framework ‘Hoge.framework’ was built for iOS.というエラーが出たときの対処法

根本的ではないが簡単な対処法は、Build SettingsのValidate Workspaceの設定を一度Yesにし、その後Noに変更すれば解消できます。根本的な対処法としてはframeworkをXCFrameworkに差し替えます。

[Mac][Homebrew] brew update で unshallow を求められたときの対処法

brew update コマンドを打つと unshallow を実行するよう言われた場合。メッセージに書かれたコマンド2つを実行して数分待てば、問題なく brew update できるようになるかもしれません。

[Mac][Homebrew] brew reinstall で /usr/local/lib/ 配下のパーミッションエラーが出る場合の対処法

ターミナルを見ると、brew cleanup をしようとして失敗しているようです。パーミッションの問題で弾かれているようです。sudo chown -R ${LOGNAME}:staff /usr/local/lib/node_modules コマンドで解決しました。

[Mac] UNIX のユーザとグループの世界観、そしてwheel とは

ユーザは root と自分や他人のアカウント。あとは nobody とか daemon とか。グループは権限の持ち方を束ねるもので、そこにユーザを振り分けることで各ユーザに対する権限を、適切に効率的に管理することができる。wheel =特権グループの成り立ち。英語にはBig Wheel というスラングがあり、
それは大きな車輪の馬車に乗る人、つまり大きな権力を持つ者・組織の重要人物のことを指していたそうです。

[Mac][Android] Android Studio のキーボードショートカットが効かなくなったときの復元手順

Android Studio をアップデートしたらキーボードショートカットが全然効かなくなりました。設定が勝手に変更されてそうなった場合があるので、復元手順を載せます。秒で復元できます。