ディスカッション (10件)
開発者の皆さん、ようこそ。ここは終わりのない修正と技術負債にまみれた、ある意味で「地獄」のような場所です。覚悟を決めて突き進みましょう。
で、肝心の同期問題だけどさ。APKを逆コンパイルして、バイナリプロトコルをリバースエンジニアリングして、BLEの攻撃スクリプトまで書いたのに……結局原因はスマホの方だったっていう。サイクルコンピュータじゃなくて、スマホ。心中お察しします。
オチが最高。
システム内の複雑でよく分からない箇所が近くにあると、デバッグで妙なパターンに陥ることあるよね。「たぶん原因はここだ」って思い込んじゃって、そこに膨大な時間を浪費しちゃうやつ。逆街灯効果みたいなものかな。LLMにコーディングさせても同じ傾向があるんだよね。何でもないところで問題が起きても、よくテストされた複雑なサブシステムの方ばかりに気を取られてしまう。
これは面白い。急勾配をペダル漕ぎながら自分のサイコンを眺めてて、中身はどうなってるんだろうってずっと思ってたんだ。電子変速機やシフターが何で動いてるのかも気になるね。
タイトルは「壊れた自転車の同期から、Wahooの隠しデバッグモードをリバースエンジニアリングするまで」だね。
Claudeっぽい言い回しが多すぎてすごく読みづらかった。「定番の」鶏と卵の問題とか、ダッシュが39個も使われてたり、無意味な箇条書きがあったり。記事を書く手間すら惜しむような内容なら、こっちが時間かけて読む価値あるの?
こういう系統の話を読むの、大好物!
デバッグのためにラップトップを自転車のハンドルに固定して、走行コンピュータに繋ぎながらライブデータを取る姿を想像しちゃった。そんなデバッグ方法してたら、交通事故で死なない方が難しいよね。開発者地獄へようこそ!
これが当たり前じゃないってのがもどかしいよね。記事でも指摘されてたけど、この「エクスプロイト」だってデバイスの持ち主にしかできないんだから、アンロックしたところで誰も困らないはず。それなのに、Mac以外のPCやSBCを除けば、販売されるデバイスの95%は完全にロックダウンされてて、所有者が好きなように使うことすら許されてない。