2017/01/03

2017年年賀状

今年もよろしくお願いします。



白い封筒を探す

転職することにした

いろいろあって、転職することにした。働きながら情報収集するのは難しいため、転職エージェントの力を借りることにし、準備を進める。

白い封筒がない

採用面接では、履歴書や職務経歴書を持っていくことがほとんどだ。クリアファイルに入れ、白い無地の封筒にしまうのだが、問題はこの白い封筒。コンビニではなかなか売っていないのだ。文房具専門店に行ってもなかなかない。新宿西口のヨドバシカメラの文具コーナーでなんとか見つけたのだが、入手が難しい一品のようだ。

早めに通販で入手を

こういったものは応募先の企業に関係なく必要になるので、早めに通販で手配しておくのがよい。面接直前に、こういった形式的なものの入手で気をもむのは得策ではない。




2016/12/23

SourceTreeをアンインストールする

高機能Gitクライアント

SourceTree - Windows と Mac 対応 Git & Mercurial 無料クライアントGitのクライアントソフトはいろいろあるけど、これとコマンドラインで十分だろうと思っている。だから、アンインストールすることはないだろうと思っていたのだが、消す日が突然訪れた。

普通に消せない?

Windows7 64bitな環境でアンインストールしようと、コントロールパネルの「プログラムと機能」を開いてみた。あれ?SourceTreeがいくつもある。適当に選んで「アンインストール」してみたけど、エラーが表示される。インストール先のフォルダを見ると、ファイルが丸々残っていて、アンインストールできなかった模様。
プログラムと機能の画面に「SourceTree」がいくつもリストされるという時点で、怪しさ満点。

アンインストールする方法

ググってSourceTree version 1.6.12 by Atlassian - How to uninstall itというページを発見。若干バージョンが違うが C:\ProgramData\Caphyon\Advanced Installer\{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx} にある SourceTreeSetup_xxxx.exe をコマンドプロンプトから実行する とうまくいくらしい。

一度「プログラムと機能」の画面からアンインストールしようとすると、失敗した状態のままになってしまうので、最初にWindowsを再起動しておく。
次に、Windows Explorerで上記フォルダを開き、Shiftキーを押しながら何もないところを右クリック→コマンドウィンドウをここで開く を選択して、コマンドプロンプトを開く。
コマンドプロンプトに

SourceTreeSetup_1.9.10.0.exe /uninstall {xxxxxxxx-xxxx-xx}
と入力する。{xxxxxxx-xxxx-xx}の部分は、フォルダ名と同じ。{や}も入力する必要がある。

これでファイルが削除される。上記ページにあるように、いくつかのファイルは残ってしまうので、気になるようであれば手動で消す。レジストリは、まぁ、消しておいたほうが再インストール時のトラブルを防げそうな気がするけど、無理してやる必要はないかな?
「プログラムと機能」のリストには残っているけど、選んで「アンインストール」すると、「リストから消す?」と確認ダイアログが表示されるので、OKを選んで消せばOK。



2016/11/23

パソコンの大掃除

パソコンも大掃除が必要

大掃除の季節。パソコンも大掃除が必要だ。大掃除(クリーニング)と言っても、不要なファイルを消して回るのではなく、ほこりをはらう掃除。最近のパソコンは、埃が溜まって通気が悪くなり温度が上がってくると、スピードを落として発熱を抑えるような動きをする。あるいは、どんどん排熱しようとファンの回転数を上げて、うるさくなることもある。だから、キーボードの掃除だけではなく、本体の蓋を開けてほこりをはらうという大掃除が必要なのだ。

メーカーによっては、蓋を開けることによって保証が効かなくなることもあるので、以下、自己責任で。

エアダスターでほこりを払う

パソコンは精密機械だ。静電気に弱い。だから、直接手でつかんでほこりを取るのではなく、エアダスターというスプレー缶で空気を吹き付けて払う。埃が舞うので、場合によってはマスクが必要かもしれない。

掃除する

事前に再起動の確認をする

掃除の前に動作確認。パソコンをシャットダウンして、1,2分たってからスイッチを入れる。掃除の前に確認しておかないと、動かなくなったとき、掃除が原因かどうか判断できなくなる。ここで動かないようであれば、掃除するだけ無駄。新しいパソコンを買ってこよう。

ケースを開ける

まずはケースを開ける。縦型のパソコンの場合、前面から見て左側のパネルが開けられるようになっている。開け方はケースによって異なるので、説明書を確認してほしい。開けると、右側が前面となる。左の上側に電源がある。

空気を吹き付けてほこりを払う

パソコンは精密機械である。だから直接内部に触れることは避ける。エアダスターという空気が出てくるスプレーを使って、溜まっているほこりを吹き飛ばす。電源ファンやCPUファンにも埃が溜まっているので、綺麗に吹き飛ばす。

掃除機で吸い取る

ケースの外側に面している部分は、エアダスターの他に、掃除機で吸い取るという手も使える。

タバコを吸う人は副流煙を吸い込んでヤニでベトベト、スライムみたいになっているかもしれないので、ウェットティッシュでふき取る必要があるかもしれない。

とにかく、せっかくケースを開けたのだから、目に付いたほこりは吹き飛ばしてしまう。ケースの外側の汚れは、ふき取ってしまう。

ケースを閉めて元通りにする

一通り掃除が終わったら、ケースを閉めてキーボードやディスプレイなど、元通りに繋げてからスイッチを入れる。パソコンが動かないようであれば、ケーブル類が緩んでいないか確認する。ケースを開けたとき、ケーブルをひっかけたり手で触ったり水滴を落としたりといったことがなければ、壊れることはまずないだろう。

ノートPCやMacはメーカーに持ち込む

ノートPCやMac、MacBookなどは、パズルのように組み立てられているので、素人には手を出せない。そういったものの場合は、蓋は開けず、外側から掃除機で吸ってみたり隙間からエアダスターで風を送ったりする程度にとどめておく。Apple製品であれば、ジーニアスバーに持ち込んで掃除してもらうというのも手。



2016/11/21

ガラケーではモバイルEdyの決済サイトを開けない

Amazonの支払いがガラケーでできない

Amazonの支払いをモバイルEdyで行おうとした。
ガラケーに支払いのメールが来たので、リンクをクリックして決済サイトを開こうとしたところ、SSLが切断されたというメッセージが表示されてサイトに遷移しない。

そういえば、 nanacoモバイルが使えなくなった時、SSLの証明書が関係していたことを思い出し、ググってみたところ、 電子マネー「楽天Edy(エディ)」 | 重要なお知らせ | 一部の携帯電話での、モバイルEdy支払いサービスの提供終了についてというページがヒット。支払いサービスが終了になっていた。

Edyにチャージはできるからnanacoよりマシ

使えなくなるのはモバイルEdyでの支払い。チャージや店舗での支払いは可能なので、モバイルnanacoよりは遥かにまし。まだ使える。ただ、携帯電話が古くて本体更新がもう行われないので、代わりの手段を考えておいた方がよさそうだ。



2016/11/12

Electronの開発環境をDocker上に作ってエラーに対処する

JavaScriptが人気

JavaScriptが人気だ。人気なのか、他に選択肢がないから使われているのか、よくわからないけど。
ブラウザの中だけかと思っていたら、デスクトップアプリケーションもガンガン作られている。Electron - Build cross platform desktop apps with JavaScript, HTML, and CSS.なんてものがあり、 Visual Studio Codeはこのプラットフォーム上で作られているとのこと。

Docker上でElectronを試してみる

そこまで流行っているのであれば、チュートリアルくらいやってみて雰囲気をつかんでおこう。ということで、今更ながらやってみた。題材はこれ、Electronでアプリケーションを作ってみよう - Qiita

こういうお試しに便利なDocker環境。Dockerfileはこんな感じ。 起動スクリプトはこれ。 コンテナを起動したら、sshでリモートログインして、X Windowの転送機能を使って画面を表示させる。エディタはVisual Studio Code。

libudevのエラーに対処する

この環境で写経してみたところ、Electronアプリを作って実行させる際に

libudev: udev_has_devtmpfs: name_to_handle_at on /dev: Operation not permitted
のエラーが出る。調べてみてたどり着いたページがこれ、athenapdf/quick-start.md at master · arachnys/athenapdf。Docker v1.10.0から、docker runする時に --security-opt seccomp:unconfined を付ける必要があるとのこと。このオプションをつけて起動するようにして、解決。



2016/10/22

無料ドメインのサービスで新たにドメインを取得した

無料ドメインを取得

ネットを見ていたら、無料のドメインを取得する(2016年10月) - Qiitaという記事を見つけた。Freenom - 誰でも利用できる名前というサービスがあるのだそうだ。

そういうわけで、なんとなくyoyogi.gaというドメインを取って、借りているサーバにWordPressを入れて、ブログサイトを作った。無料ドメインを使ったし、すでに借りていたサーバを使ったし、DNSやメールの設定もすでに使っているサーバに自分で設定したから、追加費用は0、無料。

実際に取ってみてわかったのだが、すべてのドメインが無料というわけではない。みんなが知っていそうな単語のドメインだと、有料の場合が多いようだ。

無料ドメインでよいのか?

個人のブログサイトなので無料ドメインのサービスを使ったが、会社のサイトとかブランドのサイトとかに使うのであれば、お金を払ってjpやcomのドメインを使った方が良いだろう。.gaとか.tkとか、見慣れない(と言ってしまうと語弊がありそうだが)ドメインのサイトが、どの程度信用されるのか?.comや.netでも怪しいサイトはいくらでもあるが、これは、サイトにアクセスしに来る人がどう感じるかという問題だ。変なところでケチって信用を落とすことはないだろう。

それは無料ドメインではなくサブドメインという

そもそも、「無料ドメインとは」という問題になってしまうのだが。ブログサービスをやっているところが無料で「サブドメイン」を提供しているので、それを使うことを「無料ドメインを使う」と言っているサイトが多い。ま、アクセスするときの完全修飾ドメイン名(FQDN)を無料で手に入れられるので、嘘ではないのだろうけど、紛らわしい。



2016/10/15

IIJmioのSIMカード変更にかかった日数

iPhoneにするならnanoSIMにしないと

ZenFone Selfieがとろく、ポケモンGOで認証している途中でエラーになってしまう。バッテリーがへばっているNexus5でやってみるとログインできるので、性能不足だろう。あるいは、プレインストールされているソフトが悪さをしているのかもしれない。
いずれにせよ、使えない子決定でiPhoneに乗り換えることにした。高いけど、ストレス発散のためのゲームをやろうとしてイライラするくらいなら、とても早い自分へのクリスマスプレゼントということでいいだろう。

Nexus5はmicroSIM、ZenFone SelfieはmicroSIMかnanoSIM、iPhoneはnanoSIM。ということで、サイズ変更をしなければならない状況になった。

変更申し込み(0日目)

SIMのサイズ変更をすることを決心して、IIJmioのサイトで変更手続きを21時前に行う。手続き受付のメールが21時前に届いた。

今まで使っていたSIMで通信できなくなる(1日目)

会社に到着する寸前に通信できなくなった。だいたい9時50分頃だろう。社外での打ち合わせや作業の予定はない日だったので、大した問題にはならず。so-netの0SIMをいれたMADOSMAが帰り道のお供を務めた。

SIM到着(2日目)

申し込み完了と発送の案内メールが8時半過ぎに到着。クロネコさんが10時過ぎに持ってきたようだが、運悪く受け取れず再配達依頼。結局受け取れたのは16時頃で、半日無駄にした。

パッケージが小洒落たものに変わっている。SIM自身は相変わらずあの名刺みたいなカードにくっついているのだが。


最初に申し込んだパッケージと、ZenFone Selfieに同梱されていたものがあったので、並べてみた。特に意味はない。

キャンペーン実施中

サイズ変更のキャンペーンはやっていなかったので割引はなかったのだが、SIMを追加しても手数料は変わらなかったのかな?ただ、月々の料金が少し上がってしまうので、迷うところかも。

2017/3/31までは紹介キャンペーンをやっているので、ここから申し込むと2ヶ月間データ量が10%分多く使えるようになる。ずば抜けて安いというわけではないけど、安いから繋がらない/遅いっていう格安SIMは使い物にならないので、ちょうどいいところではないかと。他の格安SIM業者にも卸しているくらいだし。



2016/09/24

Zenfone SelfieをAndroid 6にアップグレードする

Android6.0 Marshmallowがようやく到着

Marshmallow アップグレード
一時期アップデートが取り下げられていたZenfone Selfie向けのAndroid 6.0 Marshmallowがようやく登場。今までNexus 5でAndroid 6を使っていたのだが、突然文鎮化、急遽中古で入手したNexus 5もバッテリーがバテて使い物にならなくなってきていたので、ポケモンGOができる安い機種ということで、Zenfone Selfieを購入していたのであった。ケースはNexus 5に傷1つつけなかったTPUタイプ一択。


アプリは全て内蔵ストレージに移動する

ASUSシステム更新のダイアログにあるように、アプリは全て内蔵ストレージに移動しておく必要がある。大容量のSDカードを挿してそちらにアプリをインストールしていた場合、この内蔵ストレージに移動させる作業が一番大変だ。容量の関係で、アプリの断捨離を行う必要があるかもしれない。

幸いにも、Zenfone Selfieを入手して日が浅かったので、インストールしてあったアプリもそれもどなく、全てを内蔵ストレージに移すことができた。

バッテリーは40%以上充電済みであること

充電 40%

システム更新(アップグレード)しようとすると、バッテリーの状態がチェックされる。たとえ充電中であっても、40%チャージ済みでないと更新できない。更新作業中にケーブルが抜けて充電されなくなると、作業中にシャットダウンされてしまうこともあるので、賢明な処置だ。
一旦offにして電力の消費を抑え、40%になるまで待った。


トラブルなくアップグレード終了

バッテリーが40%になってから、アップグレード作業開始。作業中も充電し続けたが、完了後に見てみたら39%になっていた。40%必要と警告されているが、この結果を見ると、充電ながらアップグレードしたほうがよさそうだ。

ポケモンGOの起動とか、少し早くなった気がする。アプリをすべて内蔵ストレージに移動しているので、その影響かもしれない。いずれにせよ、Nexus5よりは遅くてイライラすることに変わりはないが。

ポケモンGOは、まぁ、動くしそこそこプレーできるのだが、起動は遅いしメモリなくなってくるし、快適にプレーできるスマホではないだろう。Zenfone SelfieはIntel CPUなので、そのあたりの問題もあるような気がしている。



2016/09/08

通信エラー AMBE02 でnanacoモバイルが使えない

古いガラケーのiアプリは使えないんだと

久しぶりにnanacoのチャージをしようとiアプリを起動したら、バージョンアップの処理の途中で通信エラー。アンテナ3本立っているから、電波状態の問題ではないと判断して、何度か試してみるも、状況変わらず。

ググってみて、こんな書き込み発見。電子マネー nanaco 【公式サイト】 : SHA-2非対応の携帯電話、およびパソコンをご利用のお客さまへというのがペロッとでていた。
ドコモのページを見たらソフトウェア更新されないので、nanacoモバイル使えないということか。現在チャージされている分は使えるけど、ネット経由での操作ができないということなので、使い切ったらタダの肥やしだな。nanacoカード、タダで手に入れられないかな?



2016/09/04

homebrewのroot権限を落とす

brew updateがエラーになる

Macでパッケージシステムを使うとき、コマンドをインストールするユーザと使うユーザとは分けておいたほうが安全だ、ということで、Homebrewをrootでインストールしていたのだが、最近、brew updateすると
Updating brew...
Error: Running Homebrew as root is extremely dangerous. As Homebrew does not
drop privileges on installation you are giving all build scripts full access
to your system. As a result of the OS X sandbox not handling the root user
correctly HOMEBREW_NO_SANDBOX has been set so the sandbox will not be used. If
we have not merged a pull request to add privilege dropping by November 1st
2016 running Homebrew as root will be disabled. No Homebrew maintainers plan
to work on this functionality.
Error: Running Homebrew as root is extremely dangerous. As Homebrew does not
drop privileges on installation you are giving all build scripts full access
to your system. As a result of the OS X sandbox not handling the root user
correctly HOMEBREW_NO_SANDBOX has been set so the sandbox will not be used. If
we have not merged a pull request to add privilege dropping by November 1st
2016 running Homebrew as root will be disabled. No Homebrew maintainers plan
to work on this functionality.
Updated Homebrew from 8bf787c to d39eeac.
Updated 6 taps (caskroom/cask, homebrew/boneyard, homebrew/core, homebrew/versions, mackerelio/mackerel-agent, motemen/mackerel-agent).
==> New Formulae
 :
と、エラーが出るようになった。rootでHomebrewを使うのは危険だし、root権限を途中で捨てるような処理を入れるつもりもないよ。ということのようだ。

brew doctorで修正方法を調べる

今までrootで使ってきたのだが、再インストールしないとだめなのか?それは面倒だから勘弁してほしい。
まずはbrew doctorしてみる。
dummy $ brew doctor
Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry and just ignore them. Thanks!

Warning: /usr/local/Frameworks isn't writable.

This can happen if you "sudo make install" software that isn't managed
by Homebrew. If a formula tries to write a file to this directory, the
install will fail during the link step.

You should change the ownership and permissions of /usr/local/Frameworks back to
your user account.
  sudo chown -R $(whoami) /usr/local/Frameworks

Warning: /Users/dummy/Library/Caches/Homebrew isn't writable.
This can happen if you run `brew install` or `brew fetch` as another user.
Homebrew caches downloaded files to this location.

You should change the ownership and permissions of /Users/dummy/Library/Caches/Homebrew
back to your user account.
  sudo chown -R $(whoami) /Users/dummy/Library/Caches/Homebrew

Warning: /usr/local is not writable.

You should change the ownership and permissions of /usr/local
back to your user account.
  sudo chown -R $(whoami) /usr/local

Warning: /Users/dummy/Library/Logs/Homebrew isn't writable.
Homebrew writes debugging logs to this location.

You should change the ownership and permissions of /Users/dummy/Library/Logs/Homebrew
back to your user account.
  sudo chown -R $(whoami) /Users/dummy/Library/Logs/Homebrew

Warning: /usr/local/opt isn't writable.

You should change the ownership and permissions of /usr/local/opt
back to your user account.
  sudo chown -R $(whoami) /usr/local/opt

Warning: Some directories in /usr/local/share/locale aren't writable.
This can happen if you "sudo make install" software that isn't managed
by Homebrew. If a brew tries to add locale information to one of these
directories, then the install will fail during the link step.

You should `sudo chown -R $(whoami)` them:
    /usr/local/share/locale
    /usr/local/share/locale/af
    /usr/local/share/locale/af/LC_MESSAGES
    /usr/local/share/locale/am
    /usr/local/share/locale/am/LC_MESSAGES
    /usr/local/share/locale/an
    /usr/local/share/locale/an/LC_MESSAGES
    /usr/local/share/locale/ar
    /usr/local/share/locale/ar/LC_MESSAGES
    /usr/local/share/locale/as
    /usr/local/share/locale/as/LC_MESSAGES
    /usr/local/share/locale/ast
    /usr/local/share/locale/ast/LC_MESSAGES
    /usr/local/share/locale/az
    /usr/local/share/locale/az/LC_MESSAGES
    /usr/local/share/locale/be
    /usr/local/share/locale/be/LC_MESSAGES
    /usr/local/share/locale/be@latin
    /usr/local/share/locale/be@latin/LC_MESSAGES
    /usr/local/share/locale/bg
    /usr/local/share/locale/bg/LC_MESSAGES
    /usr/local/share/locale/bn
    /usr/local/share/locale/bn/LC_MESSAGES
    /usr/local/share/locale/bn_IN
    /usr/local/share/locale/bn_IN/LC_MESSAGES
    /usr/local/share/locale/bs
    /usr/local/share/locale/bs/LC_MESSAGES
    /usr/local/share/locale/ca
    /usr/local/share/locale/ca/LC_MESSAGES
    /usr/local/share/locale/ca@valencia
    /usr/local/share/locale/ca@valencia/LC_MESSAGES
    /usr/local/share/locale/cs
    /usr/local/share/locale/cs/LC_MESSAGES
    /usr/local/share/locale/cy
    /usr/local/share/locale/cy/LC_MESSAGES
    /usr/local/share/locale/da
    /usr/local/share/locale/da/LC_MESSAGES
    /usr/local/share/locale/de
    /usr/local/share/locale/de/LC_MESSAGES
    /usr/local/share/locale/dz
    /usr/local/share/locale/dz/LC_MESSAGES
    /usr/local/share/locale/el
    /usr/local/share/locale/el/LC_MESSAGES
    /usr/local/share/locale/en
    /usr/local/share/locale/en/LC_MESSAGES
    /usr/local/share/locale/en@shaw
    /usr/local/share/locale/en@shaw/LC_MESSAGES
    /usr/local/share/locale/en_CA
    /usr/local/share/locale/en_CA/LC_MESSAGES
    /usr/local/share/locale/en_GB
    /usr/local/share/locale/en_GB/LC_MESSAGES
    /usr/local/share/locale/eo
    /usr/local/share/locale/eo/LC_MESSAGES
    /usr/local/share/locale/es
    /usr/local/share/locale/es/LC_MESSAGES
    /usr/local/share/locale/et
    /usr/local/share/locale/et/LC_MESSAGES
    /usr/local/share/locale/eu
    /usr/local/share/locale/eu/LC_MESSAGES
    /usr/local/share/locale/fa
    /usr/local/share/locale/fa/LC_MESSAGES
    /usr/local/share/locale/fi
    /usr/local/share/locale/fi/LC_MESSAGES
    /usr/local/share/locale/fr
    /usr/local/share/locale/fr/LC_MESSAGES
    /usr/local/share/locale/ga
    /usr/local/share/locale/ga/LC_MESSAGES
    /usr/local/share/locale/gd
    /usr/local/share/locale/gd/LC_MESSAGES
    /usr/local/share/locale/gl
    /usr/local/share/locale/gl/LC_MESSAGES
    /usr/local/share/locale/gu
    /usr/local/share/locale/gu/LC_MESSAGES
    /usr/local/share/locale/he
    /usr/local/share/locale/he/LC_MESSAGES
    /usr/local/share/locale/hi
    /usr/local/share/locale/hi/LC_MESSAGES
    /usr/local/share/locale/hr
    /usr/local/share/locale/hr/LC_MESSAGES
    /usr/local/share/locale/hu
    /usr/local/share/locale/hu/LC_MESSAGES
    /usr/local/share/locale/hy
    /usr/local/share/locale/hy/LC_MESSAGES
    /usr/local/share/locale/id
    /usr/local/share/locale/id/LC_MESSAGES
    /usr/local/share/locale/is
    /usr/local/share/locale/is/LC_MESSAGES
    /usr/local/share/locale/it
    /usr/local/share/locale/it/LC_MESSAGES
    /usr/local/share/locale/ja
    /usr/local/share/locale/ja/LC_MESSAGES
    /usr/local/share/locale/ka
    /usr/local/share/locale/ka/LC_MESSAGES
    /usr/local/share/locale/kk
    /usr/local/share/locale/kk/LC_MESSAGES
    /usr/local/share/locale/kn
    /usr/local/share/locale/kn/LC_MESSAGES
    /usr/local/share/locale/ko
    /usr/local/share/locale/ko/LC_MESSAGES
    /usr/local/share/locale/ku
    /usr/local/share/locale/ku/LC_MESSAGES
    /usr/local/share/locale/lt
    /usr/local/share/locale/lt/LC_MESSAGES
    /usr/local/share/locale/lv
    /usr/local/share/locale/lv/LC_MESSAGES
    /usr/local/share/locale/mai
    /usr/local/share/locale/mai/LC_MESSAGES
    /usr/local/share/locale/mg
    /usr/local/share/locale/mg/LC_MESSAGES
    /usr/local/share/locale/mk
    /usr/local/share/locale/mk/LC_MESSAGES
    /usr/local/share/locale/ml
    /usr/local/share/locale/ml/LC_MESSAGES
    /usr/local/share/locale/mn
    /usr/local/share/locale/mn/LC_MESSAGES
    /usr/local/share/locale/mr
    /usr/local/share/locale/mr/LC_MESSAGES
    /usr/local/share/locale/ms
    /usr/local/share/locale/ms/LC_MESSAGES
    /usr/local/share/locale/nb
    /usr/local/share/locale/nb/LC_MESSAGES
    /usr/local/share/locale/nds
    /usr/local/share/locale/nds/LC_MESSAGES
    /usr/local/share/locale/ne
    /usr/local/share/locale/ne/LC_MESSAGES
    /usr/local/share/locale/nl
    /usr/local/share/locale/nl/LC_MESSAGES
    /usr/local/share/locale/nn
    /usr/local/share/locale/nn/LC_MESSAGES
    /usr/local/share/locale/oc
    /usr/local/share/locale/oc/LC_MESSAGES
    /usr/local/share/locale/or
    /usr/local/share/locale/or/LC_MESSAGES
    /usr/local/share/locale/pa
    /usr/local/share/locale/pa/LC_MESSAGES
    /usr/local/share/locale/pl
    /usr/local/share/locale/pl/LC_MESSAGES
    /usr/local/share/locale/ps
    /usr/local/share/locale/ps/LC_MESSAGES
    /usr/local/share/locale/pt
    /usr/local/share/locale/pt/LC_MESSAGES
    /usr/local/share/locale/pt_BR
    /usr/local/share/locale/pt_BR/LC_MESSAGES
    /usr/local/share/locale/ro
    /usr/local/share/locale/ro/LC_MESSAGES
    /usr/local/share/locale/ru
    /usr/local/share/locale/ru/LC_MESSAGES
    /usr/local/share/locale/rw
    /usr/local/share/locale/rw/LC_MESSAGES
    /usr/local/share/locale/si
    /usr/local/share/locale/si/LC_MESSAGES
    /usr/local/share/locale/sk
    /usr/local/share/locale/sk/LC_MESSAGES
    /usr/local/share/locale/sl
    /usr/local/share/locale/sl/LC_MESSAGES
    /usr/local/share/locale/sq
    /usr/local/share/locale/sq/LC_MESSAGES
    /usr/local/share/locale/sr
    /usr/local/share/locale/sr/LC_MESSAGES
    /usr/local/share/locale/sr@ije
    /usr/local/share/locale/sr@ije/LC_MESSAGES
    /usr/local/share/locale/sr@latin
    /usr/local/share/locale/sr@latin/LC_MESSAGES
    /usr/local/share/locale/sv
    /usr/local/share/locale/sv/LC_MESSAGES
    /usr/local/share/locale/ta
    /usr/local/share/locale/ta/LC_MESSAGES
    /usr/local/share/locale/te
    /usr/local/share/locale/te/LC_MESSAGES
    /usr/local/share/locale/tg
    /usr/local/share/locale/tg/LC_MESSAGES
    /usr/local/share/locale/th
    /usr/local/share/locale/th/LC_MESSAGES
    /usr/local/share/locale/tl
    /usr/local/share/locale/tl/LC_MESSAGES
    /usr/local/share/locale/tr
    /usr/local/share/locale/tr/LC_MESSAGES
    /usr/local/share/locale/tt
    /usr/local/share/locale/tt/LC_MESSAGES
    /usr/local/share/locale/ug
    /usr/local/share/locale/ug/LC_MESSAGES
    /usr/local/share/locale/uk
    /usr/local/share/locale/uk/LC_MESSAGES
    /usr/local/share/locale/vi
    /usr/local/share/locale/vi/LC_MESSAGES
    /usr/local/share/locale/wa
    /usr/local/share/locale/wa/LC_MESSAGES
    /usr/local/share/locale/xh
    /usr/local/share/locale/xh/LC_MESSAGES
    /usr/local/share/locale/yi
    /usr/local/share/locale/yi/LC_MESSAGES
    /usr/local/share/locale/zh_CN
    /usr/local/share/locale/zh_CN/LC_MESSAGES
    /usr/local/share/locale/zh_HK
    /usr/local/share/locale/zh_HK/LC_MESSAGES
    /usr/local/share/locale/zh_TW
    /usr/local/share/locale/zh_TW/LC_MESSAGES

Warning: Some directories in /usr/local/share/man aren't writable.
This can happen if you "sudo make install" software that isn't managed
by Homebrew. If a brew tries to add locale information to one of these
directories, then the install will fail during the link step.

You should `sudo chown -R $(whoami)` them:
    /usr/local/share/man/de
    /usr/local/share/man/de/man1
    /usr/local/share/man/es
    /usr/local/share/man/es/man1
    /usr/local/share/man/fr
    /usr/local/share/man/fr/man1
    /usr/local/share/man/hr
    /usr/local/share/man/hr/man1
    /usr/local/share/man/hu
    /usr/local/share/man/hu/man1
    /usr/local/share/man/it
    /usr/local/share/man/it/man1
    /usr/local/share/man/man4
    /usr/local/share/man/man5
    /usr/local/share/man/man7
    /usr/local/share/man/man8
    /usr/local/share/man/pl
    /usr/local/share/man/pl/man1
    /usr/local/share/man/pt_BR
    /usr/local/share/man/pt_BR/man1
    /usr/local/share/man/pt_PT
    /usr/local/share/man/pt_PT/man1
    /usr/local/share/man/ro
    /usr/local/share/man/ro/man1
    /usr/local/share/man/ru
    /usr/local/share/man/ru/man1
    /usr/local/share/man/sk
    /usr/local/share/man/sk/man1
    /usr/local/share/man/zh
    /usr/local/share/man/zh/man1

Warning: /usr/local/lib/python2.7/site-packages isn't writable.
This can happen if you "sudo pip install" software that isn't managed
by Homebrew. If you install a formula with Python modules, the install
will fail during the link step.

You should change the ownership and permissions of /usr/local/lib/python2.7/site-packages
back to your user account.
  sudo chown -R $(whoami) /usr/local/lib/python2.7/site-packages

Warning: /usr/local is not writable.
Even if this directory was writable when you installed Homebrew, other
software may change permissions on this directory. For example, upgrading
to OS X El Capitan has been known to do this. Some versions of the
"InstantOn" component of Airfoil or running Cocktail cleanup/optimizations
are known to do this as well.

You should change the ownership and permissions of /usr/local back to
your user account.
  sudo chown -R $(whoami) /usr/local

Warning: /usr/local/var isn't writable.

This can happen if you "sudo make install" software that isn't managed
by Homebrew. If a formula tries to write a file to this directory, the
install will fail during the link step.

You should change the ownership and permissions of /usr/local/var back to
your user account.
  sudo chown -R $(whoami) /usr/local/var

Warning: Your XQuartz (2.7.8) is outdated
Please install XQuartz 2.7.9:
  https://xquartz.macosforge.org

Warning: You have unlinked kegs in your Cellar
Leaving kegs unlinked can lead to build-trouble and cause brews that depend on
those kegs to fail to run properly once built. Run `brew link` on these:
    gnutls2

Warning: Homebrew's sbin was not found in your PATH but you have installed
formulae that put executables in /usr/local/sbin.
Consider setting the PATH for example like so
  echo 'export PATH="/usr/local/sbin:$PATH"' >> ~/.bash_profile

Warning: Your Homebrew is outdated.
You haven't updated for at least 24 hours. This is a long time in brewland!
To update Homebrew, run `brew update`.
dummy $

修正方法が長々と表示されたが、
  sudo chown -R $(whoami) /usr/local
でほとんど片付いてしまうようだ。

brew doctorに従って修正する

brew doctorに従ってディレクトリの権限を直せば、移行作業終了。outdatedだとかunlinkedだとかはrootの問題ではないので、別途対応すればよい。でもこれ、間違って/usr/local/以下のファイルを消しても気がつかないよね。ファイルがないならエラーで気付くかもしれないけど、違う内容で上書きしていたら結構悲惨だ。
アプリケーションフォルダは
drwxrwxr-x+ 126 root  admin  4284  9  3 06:12 /Applications/
となっているから、多少マシか?でも、自分がインストールできるよう、adminグループに入れているだろうから、あまり変わらないか。
ますますTimeMachineでのバックアップが重要になったという気がする。


2016/08/23

梱包おしい!日本郵便

タイミングがあわずなかなか注文できなかったのだが、ようやくソフトウェアデザイン 2016年 09 月号 [雑誌]をアマゾンで注文。ところが、配送予定日が台風直撃となった。濡れてしまうかと思ったら、ビニールでラッピング。そこまでの対応は予想していなかったので、びっくり。
ただ、端のほうから染みてしまった。惜しい。


2016/08/02

ポケモンGOおすすめプレースタイル

あまりスマホを見ないでポケモンGOをプレイする

街中でスマホの画面を操作している人を本当によく見るようになった。以前から同じような位置ゲーでIngressがあったけど、やっているような操作をする人を街角で見かけることはあまりなかった。
ついつい画面に集中してしまうけど、あまり画面を見ないでプレイする設定があるので紹介してみる。

ネットストラップをスマホにつける

カプセルを投げたりポケストップで回したりと、操作するシーンが多い。手で持っているとそれだけ落としやすくなるので、手から滑り落ちても地面に激突しないよう、ネックストラップをつけることをお勧めする。

楽天でネックストラップを探す

Bluetoothヘッドホンを使う

ポケモンGOの設定画面で

  • 音楽→Off
  • 効果音→On
にすると、ポケストップに近づいた時やポケモンが現れた時に、音で知らせてくれる。なので、画面を見ながらウロウロする必要がなくなる。音はヘッドホンで聞けば良いのだが、スマホを頻繁に操作するので、ヘッドホンのコードが邪魔になる。
こういうときのために、Bluetoothがある。耳掛け式ヘッドフォン購入 | Hiroaki's blogには書いていないけど、Jabra DogTagデザイン Bluetoothステレオヘッドセット BT3030を使って、普通の耳掛け式ヘッドホンにつないでいる。bluetoothヘッドホンでいいのがないのであれば、こういったアダプターを使うのも手。

楽天でbluetooth イヤホンを探す

スマホを振動させる

設定画面で「振動」にチェックを入れておくと、ポケモンが現れた時にスマホがブルブルって震えて知らせてくれる。音を聞き逃してもブルブル震えて知らせてくれるので、これでバッチリ。

バッテリー節約のため、画面が消えるようにスマホを持つ

バッテリーセーバーをonにした場合、スマホを水平から少し向こうに傾けるように持つと、地図が消えてポケモンのロゴがうっすら表示された黒い画面になる。バッテリー節約の1つに画面を暗くするというのがあるけど、ポケモンGOでは少し向こうに傾けるだけでOK。音がしたりブルブル震えたりしてから画面を見れば、どこかにポケモンがいたりポケストップがあったりするので、プレイには困らない、はず。ARモードonでプレイしている人には無理だけど、そういうことをする人は、そもそもバッテリーをケチってはいけない。バッテリー2台持ちを検討しよう。充電を待っている時間をポケモン探しに振り分けた方がいいに決まっている。

画面の拡大、縮小をうまく使う

2本の指で画面をつまむようになぞると、より広い範囲が表示される。逆に押し拡げるようにすると、狭い範囲が拡大される。これをうまく使えば、遠くのポケモンを探すことができるし、ポケストップのそばにいてタッチしにくいポケモンも捕まえやすくなる。スマホの操作の1種だけど、こういった操作をうまく使って楽しくプレイしよう。カプセルが開かないとか、まだ荒削りの部分がある気がするけど、そのうち改善される、だろう。



2016/07/24

MacとWindowsでキーボードを共有するケーブル

MacとWindowsでキーボードとマウスを共有する

MacとWindowsを並べて使っている場合、1つのキーボードとマウスで両方とも操作できると便利だ。以前、Synergy復活 | Hiroaki's blogに書いたように、Synergyという共有ソフトを使用していた。ただ、バージョンによってはうまく動かず、案の定、MacをOS X El Capitanにアップグレードしたところ、動かなくなった。そこで、ソフトで共有するのは諦めて、MacとWindowsをお手軽接続することができる「KB-USB-LINK3M」を参考に、共有用のケーブルを購入することにした。

キーボード・マウス共有ケーブルKB-USB-LINK3M

サンワサプライ ドラッグ&ドロップ対応USB2.0リンクケーブル(Mac/Win対応) 1.8m KB-USB-LINK3Mはキーボードとマウスを共有するためのケーブルだ。Mac-Windowsだけでなく、Mac-Macでも、Windows-Windowsでも共有できるらしい。
今回は、Windows側のキーボード・マウスでMacも動かすことにした。

OS X El Captionで使うにはアップデートが必要

OS X El Captionで使うには、アップデートが必要らしい。ケーブルの根元に入っているであろうファームウェアを更新するのだろう。
更新手順はwww.sanwa.co.jp/support/download/driver/cable/link3mfw109/index.htmlにあるのだが、なぜだかアップデート用ファイルのリンク先が手順書のページになっており、ファイルの入手で迷子になってしまった。
正しい入手先は

Windows用
KB-USB-LINK3M のソフト(ドライバ)ダウンロード - サンワサプライ株式会社
Mac用
KB-USB-LINK3M のソフト(ドライバ)ダウンロード - サンワサプライ株式会社
である。
アップデートすると、古いMacでは使えなくなるらしい。更新手順の途中に記述がある。

アップデートはWindowsで行うべき

手順に従ってiMacでアップデートしてみたのだが、ケーブルを挿し直してもなぜか動かない。更新手順書にあるバージョン確認方法で確認したところ、手順書にあるバージョンにはなっていなかった。何度やってもバージョンが上がらないので、Macでのアップデートは断念。Windowsでアップデートしたところ、手順書通りのバージョンになった。ま、未だにMac版の扱いってこんなもんだよね。
これ、何度も挿したり抜いたりしないといけないので、USBがディスプレイの背面にしかないiMacでは結構大変だった。

「挿すだけ」は便利

Synergyの場合、共有相手のIPアドレスを設定する必要があったので、ネットワークの影響を受けているのか、設定の問題なのか、うまく動かない時の調査が面倒だった。また、環境の問題なのか、自動起動できず、再起動するたび手動でSynergyを起動させる必要があった。共有ケーブルだと挿すだけで済むし、マルチディスプレイだからといって別途費用がかかるわけでもないし、イイネ。