メモ

調べたり思いついたりしたことをメモします

SoftbankからIIJの「みおふぉん」にMNPしてみた

f:id:uenoshin:20130503212804j:plain

私はもともとsoftbankiPhone4Sを使っていたのですが2年以上使っていたため月々割もなくなり、毎月のスマホ代が重くなってきました。

だいたい月6000円ぐらいの負担になったのでどこかにMNPしようかと思っていたところ、IIJの「みおふぉん」が4月からMNPでポートインできるようになっていたので早速申し込んでみました。

これは音声通話+データ通信ができて、月々2000円程度~で運用できるMVNOです。音声通話はほとんど待ち受けのみでデータ通信は月1GBも使わない私の使用状況にピッタリなプランと言えます。

softbankからMNP予約番号をもらう

iPhoneからはMySoftbank経由で番号をもらうことはできません。 「*5533」に電話して音声案内ガイドに沿って番号ボタンを押していくことでMNP予約番号を発行してもらえるようです。 http://faq.mb.softbank.jp/detail.aspx?cid=369&id=369

やってみたところ何が悪かったのか音声ガイドだけでは無理だったようです。オペレータ(人間)に転送されました。

ところが、「混み合っていますのでお待ちください」「改めてお掛け直しください」のような音声が流れるばかりでいっこうにつながりません。徒歩圏内にsoftbankショップが数件あるので店に行くことにしました。

softbankショップに出向きMNP予約番号を発行してほしい旨を伝えると、店員さんは硬い表情で「*5533」に電話してくださいと主張。つながらないから来たんですけどと言っても主張を曲げず。

公式サイトにはsoftbankショップでも対応可能と書いてあったのですができないんですか?と質問したところ、質問には答えず「お電話で・・・」の繰り返し。対応マニュアルでもあるのかもしれませんね。

もう少し歩いたところに大きめのsoftbankショップがあるのを思い出してそちらまで足を運びました。対応は全く同じでした。今度は少しだけ強めに対応を要望したところなんとか願いが叶いました。MNP予約番号が書かれたプリントアウトを受領、同じ番号がSMSでも通知されていました。

SMSといえば、引き留め策だと思いますが機種変更専用のポイント15000円分を進呈するとのSMSも同時に来ていました。もし機種変更するつもりだったらMNP予約番号だけでも取ってみるのが得なのかもしれませんね。番号を取るだけならペナルティは何もないのですがポイントがもらえるようですし。

IIJに申し込み

こちらのサイト https://www.iijmio.jp/hdd/service/order.jsp です。

Nexus5で使うつもりだったので microSIM を選択、プランはミニマムスタートプランです。

本人確認証類は、運転免許証等の写真をスマホで撮ってそのJPEGデータをアップロードする形となります。完全にペーパーレスでした。

サイトには一週間から10日ぐらいかかると書かれていましたが、私の場合は結構早かったです。 2014/04/28に申し込みを済ませたあと、翌日4/29に本人確認完了メールが届きました。そして翌日4/30にはsoftbankが解約され、5/2に開通となりました。 一週間かかってません。

使用感

Nexus5に入れました。APN設定はプリセットされていたものをそのまま選択するだけでOKでした。なにも苦労することなくあっさり使えます。 OCNモバイルONEと比べてもデータ通信の速度感はほぼ変わらず。たんに音声通話プランが付加されたような印象です。

総評

スマホライトユーザにとってMVNOは本当に最強です。音声通話付きのプランが徐々に出始めているので今後もっと流行るでしょう。 キャリアメールや留守番電話サービスのような付加機能はありませんが、いらないと割り切れる人ならMVNOにしない理由はありません。

IIJ IIJmio SIM 音声通話 パック みおふぉん IM-B043

IIJ IIJmio SIM 音声通話 パック みおふぉん IM-B043

grepの高速版「ag」 (The Silver Searcher)

grepを使う場面のほとんどはソースコードの検索です。
むしろそれ以外のケースで使うことはほとんどないのではないでしょうか。

ですので使い方の多くは

$ grep keyword *.cpp

とか

$ find . -name \*.cpp | xargs grep keywork

のようなコマンドをタイプすることになろうかと思います。

ですが .svn や .git の下は対象外にしてほしい、.gitignoreで無視指定されたファイルは対象外にしてほしい等、細かなケースでの融通を利かせるには少々不便であることが難点です。なによりタイプする字数が多くて面倒です。

そこで ag が便利です。
ggreer/the_silver_searcher · GitHub
正式名は The Silver Searcher というそうです。

ubuntu 13.10以降ではこんな感じにインストールできるらしいのですが

$ apt-get install silversearcher-ag

私はubuntu12.04を使っているためうまくいきません。ですがソースからビルドするだけで簡単にインストール可能でした。

$ sudo apt-get install -y automake pkg-config libpcre3-dev zlib1g-dev liblzma-dev
$ git clone  https://github.com/ggreer/the_silver_searcher.git
$ ./build.sh
$ sudo make install

これで /usr/local/bin にインストールされます。
これのメリットは使い方が簡単でタイプ数が少なくて済むことと、grepよりはるかに高速であること、出力結果がファイル毎に分けられていて読みやすい、という所にあります。

$ ag keyword

使い方はこんな風にするだけでカレントディレクトリ配下のソースコードを検索してくれます。
くわしいオプションなどはこちら参照で。

なにより *.cpp みたいにShiftキーを使わないと書けない「*」を使わなくて良い点がかなりストレスを減らしてくれます。一度使い始めるともうこれしか使わなくなるほど便利です。

無接点充電の「Qi(チー)」を試してみた

Panasonicの無接点充電パッド「QE-TM101-W」。しばらくAmazonヨドバシ.comをウォッチし続けていましたがようやくゲットしました。 Amazonがやけに値下げしていましたので。

f:id:uenoshin:20140331232440j:plain

写真はNexus5(赤)を充電している所です。Nexus5はQi対応なのでこのパッドの上にポンと乗せるだけで充電が始まってくれます。 乗せる位置は何も気にしなくて適当に置くだけでいいようです。

QE-TM101の給電能力は最大5Wですので、PCのUSB2.0(5V×500mA=2.5W)よりも大きく安心です。ちょうどNexusやiPhoneの充電器相当ですね。体感的に十分短い時間でNexus5が満充電されました。

いろんな人のブログで書かれている事ですが、たしかにポンと乗せるだけで充電できるというのは本当にラクチンです。わざわざUSBの線をちっこい穴に差し込まなくてもいいという便利さは最高です。

ほんの1~2日でバッテリ切れを起こすモバイルガジェットが増えつつある現在、充電を便利にするグッズは大変ありがたいです。 Nexus5,Nexus7(2013)だけでなくエネループやモバイルバッテリーなど対応機種は案外多いです。今後も増えていってくれることに期待しています。

Panasonic 無接点充電パッド ChargePadチャージパッド ホワイト QE-TM101-W

Panasonic 無接点充電パッド ChargePadチャージパッド ホワイト QE-TM101-W

wikiエンジン Wikitten を試してみた

PukiWikiは更新が止まっているようですし、雑多なメモを書いていける今風なWikiエンジンを探していたところ Wikitten にたどり着きました。

WikittenはあまりWikiという感じはしませんが。。

インストール

PHPApacheが必要です。手元のubuntuには入ってなかったので、入れました。

$ sudo apt-get install php5
$ sudo apt-get install apache2

デフォルトでは /var/www/ が DocumentRoot になってますので、この場所で

$ git clone https://github.com/victorstanciu/Wikitten.git

のような感じに Wikitten を clone してくるだけでインストール完了です。

ブラウザから http://localhost/Wikitten のようなURLにアクセスすればデフォルトのコンテンツが表示されます。

f:id:uenoshin:20140325234618p:plain

単純にこれだとパスがうまく設定されずリンク切れのような現象になりました。Apacheを入れたまんまで何も設定してなかったのが原因です。mod_rewrite が動けるようにしてあげる必要があります。
Apache設定ファイルの <Directory /var/www/> の箇所に AllowOverride All を設定することでOKでした。

使用感

Wikitten/library 内にあるファイル構成が表示されることになっています。ここに置いたファイルは左側のサイドバーに表示され、リンクが設定されます。ページが迷子になってしまうことはありません。

ディレクトリを作れば自動的にサイドバーに階層ディレクトリ構造で表示してくれます。

ページの登録・削除をブラウザから行う機能は無く、自力でファイラやエディタを使って行うことになっています。wiki的にブラウザ上での文書編集は一応可能(HTML/Markdown)ですが、編集機能はオマケ程度のもののようです。

sambaで library配下を共有するとかしてファイルアクセスできる状態にして使えば、markdownやhtmlファイルをこのディレクトリへ格納するだけでそれなりにサイトを構築してもらえます。 既存の資産としてmarkdownファイルがたくさんある場合などに便利ですね。

よく考えればブラウザ上の操作でwikiにページ追加する操作って案外めんどうだったりするので、置くだけでよいというのは直感的です。あまり巨大でない個人用途には良さそうです。

登録・削除・編集はファイラ・エディタでやると割り切って、ブラウザでは閲覧(一応編集も)するだけ、という使い方が想定されているようです。ローカルLAN向きですね。

Nexus5にOCNモバイルONEのSIMを入れた

タイトルそのままですが、こないだ発売されたときに速攻でぽちったNexus5のブライトレッドに格安SIMをいれてみました。

まだ入れたばかりなので使用感ってほどではないですが、第一印象を書いておきます。

端末(Nexus5)

とてもいいです。気に入りました。 それまで使っていたのがiPhone4sだったこともあり、画面の大きさやさくさく感など何をとっても次世代機感が半端ないです。 今時のAndroidは操作性においてもiPhoneと大差ないですし、むしろアプリ連携系ではAndroidの方が便利な事も多いため、私の利用形態でいえばAndroidの方が向いていると思いました。 ネットストレージ上においたファイルを読み込んできて任意のアプリで起動させる事ができるのがいいですね。iPhoneはこういう操作が苦手ですし。

ブライトレッドは結構赤いです。オレンジに近い赤です。派手です。

OCNモバイルONE

Nexus5はいろんなSIMのAPN設定がプリセットされているのですが、このOCNモバイルONEのはありませんでした。自力で設定します。といってもAPN・ユーザ名・パスワードあたりを入れる程度です。超簡単に立ち上がりました。

スピードテストしてないので速度はわかりませんが、Facebookのニュースフィード更新して写真がばらばらっと読み込まれる速度の体感は3GのキャリアSIMとそれほど変わらないかな!?ってとこです。ストレスはありません。ネットの噂だと時間帯や場所によって混雑度合いが変わってくるので変動が激しいということでした。

SMSのプランにしました。googleのハングアウトで設定しました。ちゃんと受信できています。


とりあえず現時点で特に問題も文句もありません。良い感じと言えます。

改善点はやっぱり音声通話でしょうね。音声通話ができればiPhoneからMNPしたかったのですが出来ないために二台持ちです。。これについてはいずれプラン見直ししてどっかに乗り換えることで解決を図ろうと思います。

こんな風にカットアンドトライでいろいろ遊ぶ人にとっては期間縛りのないMVNOや、Nexus5のようなSIMフリー端末はありがたいです。もうSIMロック機種には戻りたくないですね。

NTTコミュニケーションズ OCN モバイル ONE SIMパッケージ SMS対応 マイクロSIM T0004028

NTTコミュニケーションズ OCN モバイル ONE SIMパッケージ SMS対応 マイクロSIM T0004028

kindle paperwhite を購入しました

kindle paperwhiteの2013年版(?)をゲットしたので簡単にレビューです。

Kindle Paperwhite(ニューモデル)

先週からAmazonkindleで角川の本が7割引セールになっており、思わず大量買いしてしまったのです。で、快適に読むには手持ちのNexus7(2012年版)よりは電子ペーパーの方がいいかなと思ってポチった次第です。キャンペーン時に買っておけばよかった・・。

で、さっそく使い始めたので使用感を書いておきます。

重さ

これまでずっとNexus7のKindleアプリで読書していたせいか、とても軽く感じます。文庫本一冊の重さとほぼ変わりません。

大きさ

コミックを読むには小さいと感じました。個人的に、コミックを読む場合は23インチぐらいのPCモニタで読みたい人なのでコミック中心の人にはお薦めできないです。kindle for PCのリリースに期待し続けていますがなかなか出ないですね。Kinoppy はPCで読めるのに。

小説のような文字だけの本を読むなら最適サイズだと思います。ちょうど文庫本の紙面サイズとおなじぐらいなので当然かもしれませんが。

画面

購入時のデフォルトではバックライトが少々明るめに設定されていましたが、好みに合わせて暗めにしてみました。うちの照明はバイオライトのスタンドを使っているのですが少し暗めにしたpaperwhiteがとても良い感じに読めます。まさに「紙の本」ですね。評判通り読書感は最高です。よくこれほど良いものを作ったと感心しました。

欠点を挙げるとすればページめくりなど画面を切り替える操作の時に時折暗転します。これは仕様なので仕方ないですが少し気になりました。
もうひとつ、iPhoneAndroidkindleアプリだとページめくりのアニメでスライド的な動きが設定できたりしますが、paperwhiteにはありませんでした。

保存容量

4GBは少ないか?と直感的に思えるのですが、まったく問題ありません。 コミックを入れない前提で考えることにしたので。

本棚

kindleアプリと変わりません。コレクションという名のタグ付け機能があるにはあるのですが、「整理」という目的には使いづらいです。

最初、「コレクション=フォルダ」なのかな?と誤認していて、コレクション配下に幾つかの本を登録したのですが、ルートディレクトリ(という言い方でいいのか?)からは消えず全ての本がぶちまけられた状態が変わりませんでした。つまりコレクションはフォルダではないので、その下に移動するという概念ではありません。

kinoppyでは「本棚」という概念で、1階層だけのフォルダのように使えました。シリーズ物や作者別で括るのにちょうどよかったのですがkindleはその点がいまいちです。

操作感

慣れてくるとすごく良いです。最初はページめくりや本棚めくり(フリック操作)がちょっと違和感ありましたが応答性能に慣れてくると全然OKです。

画面の手触り感はNexus7やiPhoneのようなつるつる画面でなく、すこしざらつきのある質感でこれがなんとも手になじみます。

本体のSW

ハードキーはON/OFFのボタンが1つあるのみのシンプル仕様です。kindleアプリのAndroid版は音量ボタンでページ戻る・進むが出来たのですがそういうのはないようです。

総評

とても良いです。買って良かったと思います。本棚が十数ページあるので、さすがに今の本棚の仕様だと選びにくいですね。本棚だけは改善を期待したいところです。

Raspberry Pi (ラズベリーパイ) でFirefoxOSを動かしてみました その2

RaspberryPiでのFirefoxOS第二弾です。試しに前回とは別な手順もやってみました。

今回はこちらの手順になります。
http://www.philipp-wagner.com/ffos-for-rpi/manual/index.html

手順は書いてあるそのままですが、すこし日本語化しておきます。

環境の準備

私の作業環境は ubuntu12.04 64bit版です。
Yoctoプロジェクトの一式をビルドできるようにします。必要な環境は openembedded と poky ですのでこれらの必要とするものを入れておきます。

https://www.yoctoproject.org/docs/current/yocto-project-qs/yocto-project-qs.html
http://www.openembedded.org/wiki/Getting_started#Ubuntu

上記2カ所が参考URLです。どちらにも同じような事が書いてありますとおり下記インストールを実行します。

sudo apt-get install gawk wget git-core diffstat unzip texinfo build-essential chrpath libsdl1.2-dev xterm

git clone

Yoctoプロジェクトのpocyと、メタファイル一式をもらってきます。作業用ディレクトリをつくってその中で下記のようにします。

$ git clone git://git.yoctoproject.org/poky
$ cd poky
$ git clone git://git.yoctoproject.org/meta-raspberrypi
$ git clone git://git.openembedded.org/meta-openembedded
$ git clone git://github.com/imphil/meta-b2g.git

ビルドディレクトリ作成

pokyディレクトリの直下に「oe-init-build-env」というファイルが出来ているはずです。これはAndroidで言うところの「envsetup.sh」みたいなもので、各種環境変数をセットしてくれるスクリプトです。

. ./oe-init-build-env rpi-build

こうやって実行します。rpi-buildという名前は任意の名前です。この名前でpokyの直下にビルドディレクトリが作成されます。

bbplayers.confの書き換え

rpi-build/conf/bbplayers.conf というファイルが出来上がっているはずです。これを今回の構成にあわせて書き換えます。
参考リンク先と同じですが記載します。BBLAYERSの箇所にmeta-raspberrypi~meta-b2g の5行を追加です。

# LAYER_CONF_VERSION is increased each time build/conf/bblayers.conf
# changes incompatibly
LCONF_VERSION = "6"

BBPATH = "${TOPDIR}"
BBFILES ?= ""

BBLAYERS ?= " \
  /home/USERNAME/src/poky/meta \
  /home/USERNAME/src/poky/meta-yocto \
  /home/USERNAME/src/poky/meta-yocto-bsp \
  /home/USERNAME/src/poky/meta-raspberrypi \
  /home/USERNAME/src/poky/meta-openembedded/meta-oe \
  /home/USERNAME/src/poky/meta-openembedded/meta-networking \
  /home/USERNAME/src/poky/meta-openembedded/meta-gnome \
  /home/USERNAME/src/poky/meta-b2g \
  "
BBLAYERS_NON_REMOVABLE ?= " \
  /home/USERNAME/src/poky/meta \
  /home/USERNAME/src/poky/meta-yocto \
  "

local.confの書き換え

こちらはビルド環境に依存した設定です。修正は4カ所あります。

  • BB_NUMBER_THREADS
    使っている「CPUコア数×2」を設定すると良いようです。
  • PARALLEL_MAKE
    使っている「CPUコア数×2」を設定すると良いようです。
  • MACHINE
    「MACHINE ?= "raspberrypi"」 を「MACHINE ??= "qemux86"」の前に行追加
  • BBMASK、DISABLE_OVERSCAN、GPU_MEM それぞれ下記の例のように最下行へ追加
BB_NUMBER_THREADS = "8"
PARALLEL_MAKE = "-j 8"

MACHINE ?= "raspberrypi"
MACHINE ??= "qemux86"

DISTRO ?= "poky"

PACKAGE_CLASSES ?= "package_rpm"

EXTRA_IMAGE_FEATURES = "debug-tweaks debug-tools nfs-server"

USER_CLASSES ?= "buildstats image-mklibs image-prelink"

PATCHRESOLVE = "noop"

BB_DISKMON_DIRS = "\
    STOPTASKS,${TMPDIR},1G,100K \
    STOPTASKS,${DL_DIR},1G,100K \
    STOPTASKS,${SSTATE_DIR},1G,100K \
    ABORT,${TMPDIR},100M,1K \
    ABORT,${DL_DIR},100M,1K \
    ABORT,${SSTATE_DIR},100M,1K" 

CONF_VERSION = "1"

BBMASK = "meta-raspberrypi/recipes-multimedia/libav|meta-raspberrypi/recipes-core/systemd"
DISABLE_OVERSCAN = "1"
GPU_MEM = "64"

※ BB_NUMBER_THREADS と PARALLEL_MAKE の説明に関して、参考にしたサイトではCPUコア数を指定するのが良いとされていますが、YoctoのQuickStartの説明にはCPUコア数の2倍とされていました。上記ではYoctoのQuickStartに準じて記載しました。

ビルド

pocy直下で下記を実行するとソースの取り込みとビルドが動きます。かなり時間が掛かります。

. ./oe-init-build-env rpi-build
bitbake -v rpi-b2g-image

私の環境ではいくつかのエラーが出ていました。足りないモジュールがあった模様で・・・。 追加でapt-getしました。

sudo apt-get install libxml-parser-perl libsqlite3-dev python-pysqlite2

あといくつかエラーメッセージに請われるままに入れたかも!?しれません。
ですがそれでも最後まで消えなかったエラー「ntp-utilsが無い」というのだけはうまく解決できませんでしたので rpi-b2g-image.bb から ntp-utils を消してしまいました。
特に問題動作はしていないようです。

最後までビルドが通れば poky/rpi-build/tmp/deploy/images/rpi-b2g-image-raspberrypi.rpi-sdimg というファイルができあがるはずです。

書き込み

Raspberry PiなのでSDカードです。できあがったイメージを dd コマンドでSDに入れましょう。 下記で/dev/sdb としたのは私の環境での例です。必要に応じて変更してください。アンマウントの状態から書き込みます。

$ sudo dd -if=your-image.rpi-sdimg of=/dev/sdb
$ sync

動作確認

できあがったSDをRaspberry Piへ入れます。マウス、キーボード、LANケーブル、HDMIを接続したのち、電源となるUSBを刺せば起動します。
起動はHOMEとなるURLを環境変数に指定してから「b2g」を手でたたきます。

$ B2G_HOMESCREEN=http://www.mozilla.org b2g &

これで固定サイズブラウザにmozillaのトップページが表示されます。

覚え書き

パスワード無しのrootアカウントでログインするステキな仕様です。b2gだけでなくplugin-containerもrootで動いていました。

立ち上がるプロセスは b2g と plugin-container が1つです。

参考サイトの Limitations の項に、マウスが使えないようなことが書いてありますが、なんとか使えなくもないです。 マウスポインタが見えないだけで、ポインタ移動やフォーカス・クリックのイベントを送ることができている模様です。

最後に

このレイヤ構成ではGonkを取っ払ってopenembeddedを入れています。openembeddedを土台に構成されているので組み込みソフトとして様々なハードウエアへ搭載することを想定するなら「スジがいい」と言えるのではないでしょうか。