iPhone5のヘンな挙動

先週日曜日、いつもの様にiPhone5をいじっていたら突然ヘンな挙動を示すようになりました。

指をタッチパネルに当てているとランダムなタイミングでタッチパネルから指が離れた判定がされその後指を離すまで一切タッチパネルが反応しなくなるのです。

例えば、ホーム画面で左右にスワイプし指を離せばページが切り替わる様な場所でタッチパネルを押さえ続けると指を離していないのにページが切り替わり、その後は左右にスワイプしても全く反応しなくなります。もちろん指を離して再度触れば反応します。

些細な不具合なのですが一部のゲームでは致命的でして。

ホーム画面でも再現すること、どのアプリでも再現すること、アプリのインストール等無く突然発症したこと、一度電源を切ってiOSを再起動しても再現することからハードウェアトラブルと判断、早速iPhoneのApple Storeアプリから渋谷のGenius Barを予約して月曜日に行ってきました。

店舗で担当についてくださった方も「こんな症状は見たことが無い。オモシロイ。」とのこと。

切り分けのためにiOSを復元したいとのことでハードウェアトラブルだと思っていたので時間がかかってイヤだなあ、早く新品交換してちょ、と思いつつ快諾。

数分後、まっさらになって例の現象が解消したiPhone5が…。

帰宅してバックアップから復元してみてもちゃんと動いています。いったい何が起きたのやら。
iOSではホーム画面まで影響を及ぼす様なソフトウェアを脱獄なしに作るのは難しいでしょう。
何かiOSのレアなバグを踏んでしまったのでしょうか。

こんな症状が出た方は一度復元を試してみると良いと思います!

日常のレーシングアクシデント

近年、みんな「仕事は増えるが人は減る」状態になっていて人手が足りている職場なんて1つも無いのではないかという状況になっています。
こうなるともう皆が事故を起こさない様に、しかし最高速で走る「レーシング」をすることが求められてきます。

仕事の場では何かしらの事故が発生すると必ずその原因を追及し、再発防止策を考え、ルールを作って対処します。
これをうまく運用しないと仕事には新しいルールがどんどん増え、その結果速度を保つことがすごく難しくなってきます。

F1ではアイルトン・セナ選手の死に学び、安全性向上のための新しいルールが日々導入され、結果として世界トップクラスの安全なモータースポーツになっています。そしてそのルールは速度を落とすことをしていません。現に同じコースで安全に走行しているのに最速ラップタイムはどんどん更新されています!

我々も仕事において何らかの事故が発生した時に盲目的に対症療法としてルールを作るのではなく本当にそのルールが必要なのか、速度を落とさないで同等以上の効果のあるルールが無いかを考え続ける必要がありますね。

F1などのレースではクルマがぶつかった時にどちらに非があるかという判断がスチュワード(レース審査員)によってなされ、その結果どちらにも明らかな非が無い場合は「レーシングアクシデント」として不問にする習慣があります。

世の中にはレーシングカーの様に少しこする程度の事故は許されるクルマがあればハイヤーの様に安全性が最優先されるクルマもあります。

要求される速度を常に考え、速度が要求される場合には日常にも「レーシングアクシデント」の存在を認める必要があるのではないでしょうか。

iPhone5用クレイドル(ドック)自作

iPhone3G & 3GS用、iPhone4 & 4S用とAppleから提供されてきたクレイドルですがなぜかiPhone5用のものは提供されていません。
以前から帰宅したらクレイドルにつっこむという生活をしていたのに突然それが出来なくなってとても悲しかったので、iPhone4 & 4S用のクレイドルを改造してiPhone5用にしてみました。

途中の写真撮っておけばよかったなーと後悔しているのですが、ざっくり以下の感じで作っています。

(1)LightningケーブルのiPhone側のプラスチックカバーをニッパーなどではぎ取る。

中に基板が入っているのでそれに傷を付けないように慎重にやりましょう。

(2)iPhone4 & 4S用のクレイドルを分解し、30pinコネクタを取り外す。

異常に小さいネジが使われていたりします。今回の場合は壊してしまっても良いのでネジに合うドライバが無ければ基板をニッパーなどで切り取っても良いでしょう。

(3)Lightningコネクタをホットボンドで固定する

クレイドルの上部分のパーツにiPhone5を置いて位置を決めた上でホットボンドでコネクタを固定します。土台部分は後述の樹脂風粘土で作るのですがLightningコネクタは樹脂風粘土の剛性では維持出来ず、ホットボンドを使用しました。

(4)樹脂風粘土で土台を作る

開封すると粘土だけどほっとくと樹脂のように固まる「樹脂風粘土」で土台を作ります。
今回使用したのは下記。

(5)カッティングシートを貼ってかざりつける

樹脂風粘土とiPhoneクレイドルは色合いが違うのでそのままだとちょっとカッコ悪いです。
なので最近お得意の「カーボン調カッティングシート」を貼ってごまかしました。

そして出来上がったのがコレ。写真で見るとそれなりの見た目に見えますね。

これでiPhone5でもお気軽クレイドル生活が出来ます。
でも純正じゃ無くてもいいので土台がこんなに分厚くないクレイドルが欲しいなあ…。

iPhoneの液晶パネルの撥油コート

iPhoneは3GS以降、画面に油のつきにくい撥油コートがされているのですがこれ、1年たたないうちに効果が薄れてくるんですよね。
その結果画面が常にバッチイ状態に。

この現象はiPhone4の時から困ったなーと思っておりそれに対するソリューションがこれでした。

撥油コート付きの保護フィルム。

最近iPhon5もちょっとはげてきたかもー?なんて思っており調べてみたらiPhone5版も出ていた。

これを買って使うか、と思っていたら別の選択肢もみっけた。

画面に塗布するタイプの撥油コート剤とのこと。

先の保護フィルムの方は使い勝手分かってるので今度はこっちを試してみようかな、という自分用メモエントリでした。

open or die

弊社ではエンジニアの方がジョインする時に業務経歴書とあわせてご本人が書いたプログラムを見せて頂いています。
そんなプログラム群の中にこんなコードがありました。(内容は変更しています。)

[php]
$fp = fopen(‘data.txt’, ‘r’) or die(‘file open error’);
[/php]

この構文は割と有名な構文ですが、ふと「どういう理屈で解釈されているんだろう」と気になりました。
最初はisset()みたいに利便性優先の構文だろうと思ったけど、考えてみるとこれは通常のPHPの「式」でした。
続きを読む open or die