2013年7月12日金曜日

F-11Dでadb接続

 すっかり書くのを忘れていたけど、スマートフォン(F-11D)とやらを購入しますた。 IIJ の SIM を契約したり、IP 電話を契約したり、色々面白かったけど、その話はまた後日書きます。

 で、さっそく USB デバッグを on にして USB 接続して、
adb devices
したものの、Ubuntu 環境では「???????」のような表示が出てコマンドが打てず(未解決)、Windows環境ではデバイスの存在すら認識されなかった。

 Windows 環境で adb 接続できない問題は解決できたので、それについて以下に記す。

 NEXUS 7 を adb 接続したときは特にドライバをインストールしなくてもスムーズにいったと記憶しており、今回はよく分からなくてしばらく放置していた。が、さっき調べてみたら、どうやらスマフォのメーカーが出しているドライバが必要らしいことが分かったので、富士通のサイトから
をダウンロードしてきた。

 Windows のデバイスマネージャー(スタート > コンピュータ右クリック > プロパティ > 左側にあるデバイスマネージャー)を開く。すると「ほかのデバイス」のところにスマフォが入っているので、右クリックして「ドライバソフトウェアの更新」を選択する。

 セキュリティ上の警告が出てくるかもしれないが、メーカーのサイトからダウンロードしてきたドライバなので続行し、ダウンロードしてきて展開したファイルの場所を指定すれば、ドライバがインストールされる。

 そんな感じで、F-11D に対して adb を使えるようにした。


2013年7月7日日曜日

gem install pg

 久しぶりのブログ更新ですね… (汗)

Ruby で PostgreSQL を使おうと思い、bundle install によって pg ジェムをインストールしようとしたしたところ、
An error occurred while installing pg (0.15.1), and Bundler cannot continue.
Make sure that `gem install pg -v '0.15.1'` succeeds before bundling.
というエラーが。

ググってみると、ハマっている人が結構多かった。
僕の環境(Ubuntu 13.04)では
sudo apt-get install postgresql-server-dev-all
して解決した。他のディストリビューションでも、恐らく似たようなパッケージがあると思う。

2013年5月2日木曜日

Ubuntu 13.04でSkypeを起動させた

 Ubuntu 13.04 で Skype が起動しない問題を解決したので、私が採った方法について書こうと思う。

 先日、OS を Ubuntu 13.04 にアップデートしたのだが、私の環境では、見事に Skype が起動しなかった。対応策が日本語で書いてある記事があまり見当たらなかったので、英語の記事を参考に、Ubuntu 13.04 で Skype が起動するようにした。

参考:Fix Skype Not Working In Ubuntu 13.04 Raring Ringtail [For Users With Proprietary Nvidia Or AMD Drivers]

 私が実際に打ったコマンドは、以下の通り。
$ sudo mv /usr/bin/skype /usr/bin/skype-bin
$ sudo vim /usr/bin/skype
$ sudo chmod 0755 /usr/bin/skype
まず、1つ目の mv コマンドで、既存の /usr/bin/skype を /usr/bin/skype-bin に移動した。

 次に、2つ目の vim コマンド( /usr/bin/skype というファイルを作成する)を打って、
#!/bin/sh
export LD_PRELOAD=/usr/lib/i386-linux-gnu/mesa/libGL.so.1
exec skype-bin "$@"
と記述し、保存する。中身が肝心なので、テキストエディタは何でも良い。参考にした元の記事では、 gedit を使っていた。

 最後に、3つ目の chmod コマンドで、パーミッションを 755 に設定した。

 私の環境では、これで Skype が起動した。

 ここまでの変更をもとに戻すには、 /usr/bin/skype ファイルを消して /usr/bin/skype-bin を /usr/bin/skype に戻してやれば良いので、
$ sudo rm /usr/bin/skype
$ sudo mv /usr/bin/skype-bin /usr/bin/skype
というコマンドを打てば良い。


2013年4月29日月曜日

カルト化した「ケータイ」産業

 先週のことなのだが、講義が1コマ空いていたので教科書を買いに行こうとしたところ、大学の敷地内に出店してるソフトバンク代理店の若者(以降「店員」と表記)に「iPhone に変えないか」と声をかけられた。

 しつこいので話を聞いてみたのだが、どうも店員の言うことが面白おかしく、ちょうどスマートフォンの購入を検討していたところだったので、色々質問してみることにした。

 面倒くさいし阿呆くさいので、やりとりの全てを逐一細かく書くのは割愛するが、店員の話を総合すると、以下のようになる。

  • 「解約金を支払ってあげるのはウチだけ」
  • 「Android は電池パックが外せるから壊れやすい」
  • 「iPhone は電池パックが奥深くにあるから落としても壊れない」
  • 「iPhone5 はデジタルな電波を発するため、アナログ電波を発する 4S よりも通信速度が早い」
  • 「Android の一般的な容量(ストレージのことを言いたかったらしい)は 500MB」
  • 「ストレージって何?」
  • 「bps って何?」
  • 「Android の通信速度は『2ギガ』」
  • 「Windows7 には iTunes が標準搭載されており、 iPhone アプリが開発できる」
  • 「iTunes から自作アプリがインストールできる」

 強いて言うなら、Android には Xperia arc ( SO-03C 等) という機種があったらしく、この機種はストレージ自体の容量が本当に 500MB 程度だったらしい。だがしかし、これは一般的なストレージ容量ではないし、店員は「ストレージ」という言葉も知らなかった。

 とりわけご苦労なことに、私が「その壊れやすい電池パックは、iPhone の場合どこにあるのか」と訊ねると、首を捻りながら苦し紛れに「中の方のちょっと左下の側、奥深くにあるんですよ」と、デタラメな話まで聞かせてくれた。

 彼は「知らない」と自分の無知を認めることは無く、私が矛盾点に対して質問を重ねる度に、彼は嘘を塗り重ねていき、次第に苦しそうに喋るようになった。

 こんな知ったかぶりを言う人は初めて見たので、正直驚いている。一体全体、どうして店員の口からこんな発言が飛びでたのか。

 よく言われる話だが、日本人の携帯電話普及率は総務省のサイトにも書いてあるとおり、既に加入率 100% を超えている。つまり、日本人 1 人あたり 1 台以上の携帯電話を持っている計算になり、キャリアは既存の顧客を奪い合う形となっているわけだ。いわゆる「 2 年縛り」のシステムを見ても分かるように、中途解約に違約金を課すことで顧客を引き止めようとするが、それに対抗して別のキャリアが「乗り換えなら違約金を支払う」と言い、顧客の激しい奪い合いが展開されている。

 私は店員に「LTE はめっちゃ早いっすよ…(>_<)」って言われたので、「通信速度はどれぐらいか」と訊いたところ「3G だとサイトを開くのに 3 秒ぐらい待つんですけど、LTE はホント一瞬っすね」と答えをいただいた。通信速度の単位も知らず、個体差の激しい例を出して抽象的な表現で答えられても、何の説得力も感じない。

 彼らは顧客の獲得(奪取)に必死になるあまり、このように「とにかく契約さえ出来れば、その場しのぎでも何でも良い」という代理店まで登場した。契約にこぎつけるまでに必要な「マニュアル的知識」だけを一生懸命丸暗記している店員にとって、客に嘘・デタラメを言うことは罪悪ではなく、契約が全てなのかもしれない。「知らない」と無知を告白して顧客を逃がすことを恐れていたのだろう。

 このように苦し紛れに嘘を塗り重ねつつも強引に契約しようとする代理店の姿を見て、カルトの勧誘に似たものを感じざるを得なかった。このようなケータイ産業の構図について遺憾の意を表明したいという思いもあったが、ケータイ産業に「従事」する側である店員にそのようなことを言っても何かが変わるわけでもない。その上、次の講義の時間も迫っていたので、私はやむなく退散することにした。

 当然、私がこの代理店と iPhone の契約をすることは無かった。

 なんとも虚しい話だが、このような激しい顧客の奪い合いにおいて、「高度な情報機器」である携帯電話は、押し売り販売じみた商売の「道具」にされている印象すらある。ケータイ産業にとって顧客が「大量消費時代の商売のコマ」でなく「高品質な通信機器を提供する相手」になることを切に願いたい。

 余談だが、このような常軌を逸した虚偽を吹聴する代理店に場所を提供する大学側もいかがなものだろうか。



2013年4月13日土曜日

userstreamジェムをインストールした

 Ruby の userstream ジェムをインストールしようとしたら詰まって、ちょっと面倒くさかった。
qb@qb:~$ sudo gem install userstream
[sudo] password for qb: 
Fetching: oauth-0.4.7.gem (100%)
Fetching: yajl-ruby-1.1.0.gem (100%)
Building native extensions.  This could take a while...
ERROR:  Error installing userstream:
 ERROR: Failed to build gem native extension.

        /usr/bin/ruby1.9.1 extconf.rb
/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- mkmf (LoadError)
 from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
 from extconf.rb:1:in `<main>'


Gem files will remain installed in /var/lib/gems/1.9.1/gems/yajl-ruby-1.1.0 for inspection.
Results logged to /var/lib/gems/1.9.1/gems/yajl-ruby-1.1.0/ext/yajl/gem_make.out
どうやら、 mkmf というライブラリが無いのが原因らしい。 mkmf を使うには ruby-dev というものが必要らしいので、 ruby-dev をインストールすることにした。
qb@qb:~$ sudo aptitude install ruby1.9.1-dev
sudo: aptitude: コマンドが見つかりません
すると今度は、ruby-dev をインストールするために使おうとした aptitude コマンドが無いことが発覚。
qb@qb:~$ sudo apt-get install aptitude
aptitude コマンドを使えるようにした。気を取り直して ruby-dev をインストールする。
qb@qb:~$ sudo aptitude install ruby1.9.1-dev
無事に ruby-dev のインストールが終わったので、 userstream ジェムのインストールを再開する。
qb@qb:~$ sudo gem install userstream
Building native extensions.  This could take a while...
Fetching: hashie-1.2.0.gem (100%)
Fetching: userstream-1.3.0.gem (100%)
Successfully installed yajl-ruby-1.1.0
Successfully installed hashie-1.2.0
Successfully installed userstream-1.3.0
3 gems installed
Installing ri documentation for yajl-ruby-1.1.0...
Installing ri documentation for hashie-1.2.0...
Installing ri documentation for userstream-1.3.0...
Installing RDoc documentation for yajl-ruby-1.1.0...
Installing RDoc documentation for hashie-1.2.0...
Installing RDoc documentation for userstream-1.3.0...
こうして、無事に userstream ジェムのインストールが完了した。
 mkmf については Ruby のリファレンスマニュアルに書いてある。エラーにも出てたように、拡張ライブラリを使うために実行される extconf.rb が require "mkmf" してるらしい。

 別件だが、そろそろ Ruby 2.0.0 にアップデートしたいものだ。

2013年4月11日木曜日

UbuntuでTeX環境を整えた

参考:Linux/Ubuntu - TeX Wiki

どうやら、最近は簡単に TeX 環境が整えられるようだ。
$ sudo apt-get install texlive-lang-cjk texlive-fonts-recommended xdvik-ja
パッケージのインストール自体はこれで終わり。
\documentclass{jsarticle}
\begin{document}
  HelloWorld!!
\end{document}
あとは、上の HelloWorld 文書を記述して、helloworld.tex と名付けて保存した。
$ platex helloworld.tex
$ dvipdfmx helloworld.dvi
$ evince helloworld.pdf
1行目が dvi ファイルの生成、2行目が pdf ファイルの生成、3行目が pdf ファイルの閲覧をするためのコマンドである。

2013年4月7日日曜日

Ubuntuで開発環境を整えている

 連日いろいろと必要不可欠なツール等をインストールして、環境を整えている。

VIM

sudo apt-get install vim

Heroku

公式サイトの指示にしたがってコマンドを打つだけ。ログインは後日やりたい。
wget -q0- https://toolbelt.heroku.com/install-ubuntu.sh | sh

Dropbox

公式サイト の指示にしたがってパッケージ取得のコマンドを打つ。私の Ubuntu は 32bit なので、以下のように打った。
$ cd ~ && wget -O - "https://www.dropbox.com/download?plat=lnx.x86" | tar xzf -
$ ~/.dropbox-dist/dropboxd

Chrome

ソフトウェアセンターからインストール。

Skype

公式サイトからパッケージをダウンロードして、ダウンロードしたディレクトリに移動。
パッケージ(~~.deb)をダブルクリックすると、ソフトウェアセンターが開いてインストールが始まる。
インストールが終わったらコンピュータを再起動すれば、Skype は使える。

日本語入力 (Mozc)

まずはインストールするためにコマンドを打つ。
sudo apt-get install ibus-mozc
再起動して iBus の設定を開く。[インプットメソッド]タブの[インプットメソッドを選択]をクリックして、[日本語] > [mozc] を選択して [追加]。
これで Mozc が追加されたはずなので、あとは自由に切り替えられる。
邪魔なので私は Anthy を削除した。