Softbank の iPhone 4S を Docomo 回線で利用できるようにしてみる

さて、仕事で徹夜とかもだいぶ減ってきて、余裕が出てきたので秋葉で MVNOSIM カードを買ってきた。IIJmio のウェルカム パック。コイツは Docomo 回線を利用した MVNO だ。月 980 円でデータ回線と SMS が使える(当時)。
これとは別に iPhone 4S 用の SIM ロックを解除する SIM カードが会社に届いた。

と言うわけで、Softbank の iPhone 4S を MVNO で利用できるか実験してみた。

ここに至るまで、実は色々な検討があった。
元々は iPhone 4S を親にプレゼントしようと思ったのだ。だが、Wi-Fi しか使えない状況だと、親がまったく使わないと言うことが判明した。やはりどこにいてもネット回線が使えなければ、あまり使う気にならないようだ。
かといって Softbank に 1 回線契約したら、月 1 万近くかかってしまうことになる。そこで MVNO の出番となるのだが、MVNO の回線はほとんどが Docomo 回線であり、Softbank の iPhone 4S では SIM を挿しても使えない。
Softbank の MVNO(と呼んでいいかは解らないが)といえば Y! モバイルだが、コイツは音声コミで月 2980 円。Docomo 回線の MVNO は月 1000 円くらいなのになーと思いながらも、ヨドバシカメラの Y! モバイル ブースに行って話を聞いてみると、iPhone 5 以降なら動作実績はあるが、iPhone 4S は解らない、「賭け」になってしまうと言われてしまった。

そこでネットで検索すると、iPhone 4S では Y! モバイルの SIM ではダメだったというブログを見付ける(その時のツイート)。となるとこれはいよいよ SIM ロックを外すしかないということで今日に至るのである。

操作は簡単。ゲタと SIM ロック解除用の SIM(?)を重ねて入れてセット、その後、画面に出るロックを解除したいキャリアを選ぶ。そして、次にゲタと Docomo の SIM をセットすれば終了。
ばっちり、Docomo の SIM を認識
普通にネットが使えるようになった。

おおー、これで今度こそ Softbank とオサラバだ。
MVNO バンザイ!

さて、写真は鍋は「ポアル館」のカレーうどん、そして右はミニストップにあったムリヤリなのり弁。揚げ物のオンパレードに玉子、その下のご飯はそんなに多くないが、弁当そのものはずっしりと重かった。これで 310 円だったかなぁ。泊まり込みには有難い(結局、仕事で泊まってるじゃん!)
猫の写真は、まぁウチの猫。寝ていたところを起こしてやった(ぁ

1501201115 1501201111 1501201117 1501201107

雑談、アレコレ(主に iPhone の話)

iPhone の UI がクソなところ

ボクは周りからはそう思われていないのだが、実は Jobs 信者である。Apple の Macintosh は今まで一度も所有したことはないが、ボクがコンピュータ業界で頑張っていけるのは、実は Jobs がいたからである。彼の「誰でも理解出来る概念さえ提供すれば、どんなことでもユーザはついてくる」というのに感動し、様々な考え方を教わったからだ(要するにプレゼンテーションがうまい、もっと下世話な良い方をするとウソがうまいと言えるのかもしれないが)。
まぁそんなわけで、Windows を毎日使っている身からしても、Mac のユーザ インターフェース(UI)はよく出来てるなと思うし、初めて Android に触れたとき「なんだこりゃ?」って思って iPhone を使ってみたら、「おお、やりたいことが一発で解る」と感動したものである。でも Mac は絶対買わないけど(ぇ
そんな信者であるボクでも唯一許せない UI が iPhone にはある。
それは時計の時間の入力である。直感的であることを優先したのかどうか解らないが、iOS で時計を合わせる(もしくはアラームなどを設定する)時、ダイアル式なのだ。どういうことかというと、「時」と「分」が左右に並んでいて、それらは縦に回るダイヤル(スロットマシーンの絵柄の部分)になっていて、上下に指をこすることによって数字が 1 ~ 12、00 ~ 59 とスライドされていくのだ。
なので、イチイチ指をなぞって目的の数字に設定しなければならない。
これがめんどくさい。
普通にテンキーなら、4 回ボタンを押すだけなのに(例:12:50 にセットしたければ、1 → 2 → 5 → 0 と押せばいいのだ)。

なんでこんな UI にしたんだー!! やめてくれー!!
テンキーも表示してくれよ!

IMG_2475

たまきんの歴代 iPhone

去年の 11/22 に iPhone 6 に機種変したんだけど、それ以降忙しくて、それまで使っていた iPhone 4S がほったらかしになっていた。で、机の上に放置していたので、磨いたり液晶保護シートを貼り直したりして、ようやくキレイにして箱にしまった。
ボクは iPhone 5 も持っていたのだが、こちらは開発に使われていて、普段持ち歩いておらず、料理の写真を撮ったりとかにはまったく使われていない(現在は iPhone 6 を二台持っており、一台を開発に使っている)。
でもこうしてみると、スマフォはずっと Apple の機械を使っていたんだなーと何となく感慨深くなってしまった。あんなに Mac 買いたくないとか言ってたのにな(今でも言ってるけど)。
ボクが Apple の機械を買いたくない理由の一つが、これは非常に申し訳ない話だし、ボクの偏見でしかないんだけど、Mac ユーザにロクなヤツがいなかったのに起因している。これもまたボクの偏見で有り思い込みでもあるのだが、Jops がバカでも使える機械にしたおかげで本当にバカばっかりが使ってるんだろうな……っていう、そんな思い込みがあるのだ(絶対数で言えば Windows ユーザの方が絶対にバカは多いはずだが)。それくらい Mac ユーザにはひどい目にしか遭ってない(笑)。
なので今この記事を読んでいて Mac ユーザの人がいたら申し訳ない。でもそれくらいボクは Mac ユーザにひどい目に遭わされたと言う所だけは解っていただければと(汗)。

ちなみに Android は 1 年半ほど使っていた(Android 2.4)。ただ Android がクソなところは Android のせいではなくて、メーカー製 Windows みたいに最初から良く解らんソフトが一杯入っていて、そのせいで電池がすぐなくなったり高温になったりして、まったく使い物にならなかったってところが大きいような気がする(笑)。
Nexus みたいな機械を買えば良かったのかもしれない(と言ってもその当時、そういう機械はなかったけど)。

1501181102 1501181103

菊の御紋

艦これはボクはやってないんだけど、周囲でやってる人は多いし、Twitter の Timeline にも流れてくるので、まったく知らないわけではないのだが(ちなみにボクはかつて艦船好きではあった)、気になるのが菊の御紋である。天皇の家紋。艦これのエロ同人誌は一杯でているが、あの菊の御紋が精液で汚されたりとか、そもそも菊の御紋が省略(天皇のは花びらが 16 枚)されてたりしてないのかなぁ、とか思ってしまった(笑)。
そしてそうなってたら、右翼の人はやっぱり怒るんだろうか(爆)。

iOS 版 Atok を入れてみた

iOS が 8 になり、アプリだけでなくデバイス ドライバサードパーティが提供できるようになった。というこの一文だけで、その意味が理解出来る人は少ないと思うので噛み砕いて説明し直すと、iOS は今までアプリしか Apple 以外の会社が提供することは出来なかった。
アプリ以外何があるんだよ、っていうとそれはデバイス ドライバと言われるモノで、特定のデバイスをコントロールするプログラムだ。デバイス ドライバのように常にメモリ上に常駐し、ハードウェアを制御するようなプログラムは、通常のアプリよりも高い権限が与えられる。
なぜ高い権限が必要かというと、デバイス ドライバは全てのアプリから利用できる必要があり、さらに必要に応じてアプリよりも優先度が高く実行されなければならないからだ。例えばキー入力や画面タップを扱うプログラムは、各アプリにキーや画面が押されたことを伝えなければならないし、アプリの動作に関係なく、人間は勝手にキーや画面をタップするので、アプリの動作をいったん止めてでも、その人間様の操作をとりに行かなければならない。なので、デバイス ドライバは通常のアプリよりも優先して動くように作られているのだ。
そのため、悪さをするソフトウェア(マルウェア)の自由度も広がってしまい、さらに通常のアプリからは排除できないなどの問題も出てくるため、Apple 以外では配布できないようになっていたのだ。
それをどのようにクリアしたのか、ボクは調べてないのだが(マテ)、iOS 8 からはサードパーティ(Apple とは関係ない存在)からもリリースできるようになった。

で、案の定 Atok という日本語を入力/変換するドライバの iOS 版が今日リリースされたので、さっそく入れてみた。
今まで iOS にも Atok はあったのだが、それはメモ帳として提供され、そのメモ帳でのみ Atok が使えるというものだった。常にメモリに常駐し、ユーザからの入力をすべて乗っ取って(プログラムでは、フックという)動作するようには今まで書けなかったからだ。

でね、解ったことは、スマフォで文章を入力する場合、圧倒的に単文節変換+予測変換なのよ。例えば、「今日は東京はいい天気です。そちら、青森の天気はいかがですか?」って入力しようとすると、パソコンの場合、最後の「いかがですか?」を入力したところで初めて変換ボタンを押す(ボクの場合は自動変換を用いているので、変換ボタンさえも押さないが)。
ところがスマフォだと、「今日は」「東京は」「いい天気です。」「そちら、」「青森の」「天気は」「いかがですか?」と文節毎に変換していき、その途中で予測変換で合致したモノがあれば、それを採用していく。
となると、文章全体から予想される同音異義語の変換(例えば「貴社の記者が汽車で帰社した」みたいな文章)というのは余り効果を発揮しない。結局、文節毎に変換するので、どちらかというと「過去に何を入力したか」の方が大事になってくる。
なので「頭がいい」と評判の Atok である意味が、あんまりないのだ。
もちろん既に変換し終わった文章からも推測してくれてはいるようだが、スマフォでは圧倒的に過去に変換したものと予測変換(但しこれも過去に変換したものに大きく影響される)を頼りにしているので、Atok じゃなくても特に問題ないのだ。

つまり正直な感想、Atok にする意味って……ないような気がする。

まぁ、スマフォでも連文節変換すれば Atok でもいいような気がするんだけど、ボクは今のところスマフォで連文節変換をする気にはなれない。なぜなら変換途中のままずらずらと長い文字列を表示できるほどスマフォの画面って広くないし、入力間違いや変換間違いを見付けたとき、そこまで戻ってそこを修正して、また文末まで戻るとかそういう操作がやりづらい UI なのだ。

あと Atok にはもう一つ難点があって、やはりまだデバッグ不足なのか、時々お亡くなり(フリーズ状態)になる。そうすると文字入力が一切出来なくなってしまうのだ。こうなってしまった場合、現在のアプリをいったん終了してから起動しなおすと文字入力できるようになる。
それともう一つ、Siri が使えなくなってしまうのも問題だ。標準の文字入力から Atok に切り替えると Siri の呼び出しボタンがない。
ボクは両手が塞がっているときなどに Skype や SMS に応答するとき、Siri を使って文字入力している。Atok にしておくと Siri が呼び出せないのだ。

そんなわけで、iOS 版 Atok、今のところ……うーん、イマイチという感じだ。

IMG_2302 IMG_2303

レスポンシブ デザインのめんどくささ

今回はレスポンシブ ウェブ デザインの話。レスポンシブ ウェブ デザインって何かっていうと、一つのデザインですべてのプラットフォームとブラウザに対応することである。つまり PC でアクセスしてもスマフォでアクセスしても、同じデザインで出力される……というわけではなくて、一つのデザインしか定義してないんだけどそれで PC でもスマフォでもちゃんと表示されることである。

今やっているスマフォのゲームも最初、レスポンシブ デザインで作っていた。
このレスポンシブ デザインの肝は簡単に言ってしまえば%で作ると言うことである(ぁ
どういうことかというと、例えば 2 段組をするとき、全体幅が 1024 ドット、左側がメイン コンテンツで 640 ドット、右側がメニューとかで 384 ドットにしよう……ってのが今までの作り方。
レスポンシブ ウェブの場合は、全体幅は 100% で作り、本文左側は 62.5%、メニューとかの右側は 37.5% にしようってこと。そうすればどんな機器だろうが割合で区切られるので、それらの機器に従った大きさになる。
これはレイアウトだけでなく、画像の大きさに至るまで何もかも%で指定する。

ところが、この作り方には二つの欠点がある。

  • 文字の大きさは変わらない
  • ドット単位の微調整は不可能

ブロック要素や画像などは画面の大きさに従って勝手に変わってくれるのだが、文字の大きさはそれに追随してくれない。なので細かいディスプレイに出しても、荒いディスプレイに出しても同じ大きさ(ドット)で表示されてしまうため、要素の中に表示される文字数が変わってしまい、結局レイアウトが乱れる。
これはディスプレイの画素数と CSS ピクセル比ごとに文字の大きさを定義しておく必要がある。
さらにゲームではインターフェースに凝るため、ドット単位でのボタンやゲージ(メーターやプログレス バー)などの表示が必要となる。ブラウザは小数点第三位くらいまでの%値しか見てくれず、ドット単位での微調整はできない。これの回避方法は、ドット単位で組んだあと、Javascript や CSS の ZOOM を使って最適な大きさに表示するのだが、iOS の Safari などでバグが発生し使えないことが多い。これに関しては、まだボクの中では特に解決策は見いだせていない。
今回はドット単位で調整が必要なところは、合成した画像を変化する種類分作って対応するというわりと原始的な方法で回避した(^^; どういうことかというと、下地があってその上にボタンをドット単位で並べなければいけないような場合、下地とドット単位で並べたボタンを合成してしまい、どのボタンが光っているかというパターン分の画像を用意することによって、ドット単位での調整をしなくて良いようにした。ただこの方法は、パターンが膨大にある場合は使えない……。

まぁ、一番いいのは Javascript の ZOOM である。コイツさえ正常に動いてくれれば、レスポンシブ デザインは一気に楽になる。何故かというと、ドット単位で自由に作れるからだ。従来の作り方のように、例えば全体幅を 1024 ドットとか 640 ドットとかと固定して自由にレイアウトした後に、Javascript で機器のディスプレイの大きさに合わせて拡縮するようにすれば楽ちんなのである(爆。

他にも Table を使うのが難しかったり、横幅を必要とするモノがどうしてもスマフォなどだレイアウトが崩れてしまったりなど、一つのデザインで様々な機器に対応するのは一筋縄では行かない。TAMA Networks も燃費なんかの表の部分や、説明付きの画像の場合はスマフォで見ると崩れてしまう。
この辺、何とかしたいなぁと思いつつ……。
写真はこの日食べたもの。バーガーキングのブルーベリーのハンバーガーと、秋葉原の万豚記。

1412080730 1412080731 1412080737 1412080740 1412080741 1412080747

Webkit オンリーで組んでも……

スマフォの開発を相変わらずしているんだけど、今回の案件は別に PC で動作する必要はない。で、スマフォというと iOSAndroid が主流で、他のプラットフォームに関しては、ほぼ無視して良い(ゲームの場合の話ね)。となると、ボクが思ったのは「じゃぁ、Webkit に対応して作ればいっか」であった。
iOS に搭載されている Safari も、Android の Chrome も Webkit というレンダリング エンジンで作られているからだ(Chrome は Webkit からさらにフォークして Blink となった)。

ところが、けっこう iOS と Android で表示が違うんですな。
更に困ったのが Android の標準ブラウザ。
実は Android に最初からついてくるブラウザというのは Google Chrome ではない。なんでなのかというと、これはボクの予想でしかないのだが、Android デビューに Chrome は間に合わなかったからだと思われる。ちなみにエンジンは Webkit である。
Android 版の Chrome は Android のバージョンが 2.3 だか 2.4 だかくらいにようやくデビューした。なので Android には「標準ブラウザ」という、別のブラウザがずっとついてきている(Android 4.4 でようやく標準ブラウザが Chrome となった)。

この標準ブラウザがとにかくタコい。
まず Javascript の実行速度が圧倒的に遅い。そして HTML5 からついた修飾(ぼかしや縁取り、グラデーション)などの再現率が低い。特にぼかしがおかしい。

次に Safari。コイツのフォント処理はおかしい。とにかく文字の大きさが合わない。
なんだこれー!?
しかもバグがあって、Javascript で拡縮をやると正しい大きさにならないという……orz(CSS でも ZOOM を使うと同じ症状が出るらしい)
これが実に問題で、先の記事の CSS ピクセル問題で、CSS を書き直しせず、Javascript で最適な大きさに拡縮するという風に逃げたのだが、この Safari のバグのおかげで結局この方法は使えなくなってしまい、CSS を全面書き直さなければならなくなった。

だ、ダメすぎる……orz

だが今回、「ブラウザの場合分けはしない」というポリシーで組んでいる。これは別にボクの勝手なポリシーなんだけど。場合分けってのは何かっていうと、Safari だとこっちの処理、Chrome だとこっちの処理というようにブラウザことに処理をわけることだ。
CSS / HTML は一種類の定義ですべてのブラウザで通用するように書いた。まぁ、なんだかんだ言ってもレンダリング エンジンが一つだったというのが大きいだろう。これが PC だとこうは行かなかったと思う。

機種変

機種変しに Docomo に行った。浅草橋には広くてあんまり人が来ない Docomo ショップがあるのだ。で、壊れかけたフィーチャーフォン(ガラケー)を iPhone に変えるのだ。
その前に、まずボクの回線契約状況を説明しよう。
ボクは何故か携帯回線を 4 回線も持っていた(汗)。内訳は、以下の通り。

  1. 主回線(Docomo)
  2. データ回線(Docomo) -> ノート PC とかでネットをするため
  3. 開発用回線(Softbank
  4. おまけ回線(Softbank)

Softbank 回線はまだ Docomo が iPhone を扱ってなかった時代に iPhone の開発案件があって契約したものだ。それが開発用回線で、当時 iPhone 4S だった。で、おまけ回線とは何かというと、iPhone 4S を iPhone 5 に機種変するとき、iPhone 4S にも何故か新しい電話番号をくれたのだ。そしてこれは無料で使って構わないという(但し、データ通信はできないし、電話をすれば電話料金がかかる)。そこでこのおまけ回線は電話受け専用& WiFi マシンとなった(Softbank が加入者数を増やすカラクリの一つかもしれない?)。

で、まず、おまけ回線を Softbank のショップに行って解約。
そして主回線を iPhone 6 に、さらに開発用回線を MNP を使って Docomo 回線にした。そうなのだ、今回機種変することになったのは、Softbank の二年縛りがちょうど  11/20 で切れるからなのだ。これをずっと待っていた。
これで完全に Docomo 回線一本となり、Softbank 回線からオサラバできた。今まで Docomo 回線に毎月 \15,000、Softbank 回線に \8,000 払っていたのだ。
Softbank から MNP するとき、Softbank のおねーさんからスゲー引き留められた(笑

で、Docomo には「パケットパック」という仕組みがある。今までパケホーダイは各機種毎に紐付けされており、それぞれにパケホーダイのお金が必要だった。このパケットパックはパケホーダイが回線契約者本人に紐付けされる。
つまりボク本人がパケットパックを契約し、ボクが使っている端末はそのパケットパックの中からデータが使用される。これによって回線数はコストとイコールではなくなった。おかげで大幅に毎月の支払が安くなった。
どれくらい安くなったかというと、月 10GB のパケットパックで 1 万円となった。
3 回線で 1 万円。Softbank とあわせて 23,000 円払っていたのが半分以下となった。

そしてさらに今回 iPhone 6 にしたおかげでテザリングが使えるようになった。つまり携帯回線を持たないノート PC とかも無線 LAN があれば iPhone 6 を経由してインターネットが利用できるようになった。と言うことはつまり 3 回線のウチのデータ回線も不要となる。ところがコイツは 2013 年の 9 月に機種変をしてしまって二年縛りがまだ残っている。こちらは今年の 10 月に解約できればいいなと思っている。

写真は会社帰りに寄った中野の定食屋さん(そして iPhone 6 で一番最初に撮った写真かもしれないw)。吉野家とかそういうチェーン店系以外でなんかないかなぁと思い、中野で車を降りて歩いて見付けた。夜中の 3 時過ぎだというのに、ほぼ満席だった。まぁそんなに広くはないけど。
そして出前もやってるらしく、料理を待っている間もじゃんじゃん出前の電話がかかってきていた。いったいどういうお客さんなのかしら??

味? んー、まぁ、見た通り予想通りみたいな。期待を裏切る味ではない。それが重要なんだと思う。麻婆豆腐と言われて何となく予想するそのままの味。美味しくいただきました。

1411230008 1411230004 1411230006 1411230007

iPhone 4S に iOS8 を入れる

iOS7 のセキュリティ ホールとかが色々と目立ってきて、ボクの iPhone 4S もいつまでも iOS7 じゃ問題だなぁと思っていた。とは言え、iOS8 は iPhone 4S ではもっさりという噂が流れてて、二の足を踏んでいた。
でも色々調べて見ると、iOS6 -> iOS7 にしたときのようなもっさり感と書いてある記事があって、うーん、それなら別にイイかと思ってやってみた。

iOS6 -> iOS8 にしたらかなりもっさりに感じるだろうけど、iOS6 -> iOS7 で iOS7 がもっさりと感じていないなら、意外にも大丈夫なんじゃないだろうか、と。

で、結果的に、ボクは大丈夫でした(その時のツイート)。
もっさりというか、確かにアプリの起動は少し遅くなったような気がする。
が、特に使っていてコレと言った遜色はなかった。それにもっさりだったとしても、そもそも iPhone 4S は 3G 回線なので、そんなに問題にならないし。

と言うわけで、今のところ快適に使えています。
とは言え、今月中に機種変しちゃうんだけどね(^^;