2017.01.22

Windows10

母のパソコンが、またインターネットに繋がらなくなったということで実家へ。
前回がデバイスドライバが原因だったりしたので、結構手強いだろうなと予想はしていた。

今回も、なかなかのものだった。

なんで繋がらないのか全然わからず、修復をすると、IP構成がありませんとかいう謎のエラーメッセージ。
私のPCで割り当てられた IPアドレスを参考に、手動で設定したら、つながった。
現象からすると、DHCP による自動割り当てがバグってるような。

その現象から検索したら、わりとすんなり解決策は出てきた
ありがたい。

どうやら Windows Update の不具合で DHCP がうまく動いてないらしく、
その後で配布されたアップデートを当てないといけないらしかった。

でも、DHCPがダメでIPが割り当てられてなくてネットにつながってないのだから、Windows Update もできてない。
だからその修正が自動で当てられることもなく、つながらないままになっていたというわけ。

これは、普通直せないよ・・・

前回もそうだけど、Windows10 のアップデートは、なぜこんなに素人泣かせの致命的なバグばかりなんだ・・・

 


Posted 2017.01.22, 21:14 by mera and filed in PC関係, 実家
Windows10 はコメントを受け付けていません。
2015.03.21

音声対応SIM

昨日電話番号が止まったという通知が来ていたので、そろそろかなーと思っていたが、今日届いた。
microSIM なのに、なぜか A4 の封筒。

SIMカードを端末に入れて、ついでにSDカードも入れて、電源ON。
SIMカードは無事に認識された。

OCN の LTE の設定はすでに入っていたので、案内の紙と同じになるように少し修正をして、
Wifi を OFF にしてみたが、電波が入って H と表示されるけど、すぐ切れてしまう。
端末を再起動したら、ちゃんと 4G と表示されたままつながるようになった。

Skype から自分の番号に電話をかけてみて、ちゃんと着信することを確認した。

あと 050 plus を設定しろと書かれているが、肝心の番号・パスワードが来ていない。
ここで作業は中断か。

あとは、

・docomo の SIM を返却する?
・OCN のデータ通信用 SIM を 1枚減らす

ってことをしないといけないのかな。

ここまでいろいろやってきた気がするけど、結局、
タブレット1つがデータ通信メインで、スマホ1つが音声+データという、極めて普通なことになった。

 


Posted 2015.03.21, 19:12 by mera and filed in PC関係, お買い物
音声対応SIM はコメントを受け付けていません。
2015.03.20

MNP進行中

まだかなまだかなーと待っていて、今日、OCN からの SMS が来ていた。

【MNP 転入による番号停止のお知らせ】
これよりモバイルONEへの切替を開始いたします。弊社より送付するSIMカードで利用再開いただけます。

ということで、docomo から OCN に番号が移ったってことかな。
明日くらいに SIM カードが届いてくれると嬉しいんだけど。

この土日でいろいろセットアップしたい。

 


Posted 2015.03.20, 22:21 by mera and filed in PC関係
MNP進行中 はコメントを受け付けていません。
2015.03.20

Macbook Air 13-inch Early 2015

注文していた Macbook Air が到着した!

・ディスク256GB
・メモリ8Gに増設
・CPUも2.2GHz(Intel Core i7)
・USキーボード

会社で Macbook Pro を使っているので、操作は慣れている。
ほとんどターミナルで使ってるから、Linux と似ているところが気に入ってる。

だから買ったのかというと、そういうわけでもなく。

もうすぐ転職するのだが (ようやく会社で発表されたので解禁。あとで詳しく書く。)
次の会社ではデスクトップだったら支給で、ノートを使いたいんだったら私物というルールなのだ。
このことに関しては条件面談のときに聞いた上でOKしたので、納得している。

いつかプライベートで OSS とか貢献できる人間になりたいので、そっちの用途プラス、仕事用。
やっぱり仕事用PCとプライベート用が分かれていると、プライベートでコードに触れる時間が減るみたい。
今持ってるノートPC はバッテリーが2時間ももたないから、持ち歩くのは厳しくなっていたのだ。

というわけで、こいつでコードを書き、こいつを持ち歩き、可愛がるつもり。

あらかじめ買っておいたブルーライト削減のシートを貼って、反射も抑えられた。
ディスプレイ枠の内側にぴったりのサイズだったので、Mac用を買ってよかった。

こうしてブログを書きつつ、USキーボードを思い出し、日本語・英語の切り替えにも慣れようとしている。

 


Posted 2015.03.20, 21:43 by mera and filed in PC関係, イイ感じで使用中
Macbook Air 13-inch Early 2015 はコメントを受け付けていません。
2015.03.13

Macbook

Macbook を買うということになって、新製品の発表があって、11インチと13インチで散々迷って、
結局コーディングを本気でするなら13インチのほうがいいだろうというアドバイスに従い、
(Macbook Proにしろという意見もあるだろうけど、重くてイヤなので・・・)

新バージョンの Macbook Air 13インチを注文した!

Air だけど、今の会社で支給されてる Pro よりもメモリもディスクも倍^^
こいつでガッツリとコードを書く人になる!

届くのは来週末らしい。

 


Posted 2015.03.13, 21:41 by mera and filed in PC関係
2015.03.08

VAIO P に Linux をインストール

以前やってみてUSBからブートできずに諦めた記憶があるが、
ネットでできてるって記事が多いので、もう一度やってみたところ、できた。
前はなんでできなかったんだろう。

1. Windows領域を縮小する
コントロールパネル → 管理ツール → コンピュータの管理 → 記憶域 → ディスクの管理
右クリック → ボリュームの縮小
参考: Windows7とUbuntu10.04.1 LTSのデュアルブート

2. Ubuntu Lubuntuを用意する
USBからブートできるように、Universal-USB-Installerを使ってISOファイルをUSBに入れた。
Lubuntuは32bit版にしないとダメ。
参考: Vaio P50にUbuntu 12.04 LTSをインストール&サスペンド有効化

3. VAIO P 起動時に F2 を押してBIOS画面を出す
External Device boot を Enable にして、External Device boot を一番上にする。

4. USBを VAIO P に差して起動する
Install Ubuntu を選択すると、なんかエラーが表示されるが、少し待つとインストーラが起動する。
あとはWindowsと共存するように選択して、普通のインストール。

意外にあっさりできたな。

Windowsだと起動後しばらく動きが遅くて使えないのだが、Ubuntuだとマシかな?

んー、そうでもないか・・・
webapp-containe, compiz というプロセスがCPUを食いつぶしている。

ということで、軽量という Lubuntu に入れなおし。
負荷が上がることもなくて快適ではあるが、音がちゃんと鳴ってくれないのがまだ直らない。

小さくて可愛いマシンではあるので、使ってあげたい。

 


Posted 2015.03.08, 09:53 by mera and filed in Ubuntu
VAIO P に Linux をインストール はコメントを受け付けていません。
2014.11.04

ElasticSearch

MongoDB の全文検索機能が日本語に対応していないということで、ElasticSearchを使ってみた。
例えば東京都って文字があるときに、東京ではヒットしてほしいが京都ではヒットしてほしくないみたいな検索。

ElasticSearch は Java で動いていて、データをインデックス化して保持している。
MongoDB とつなげるためのプラグインを入れて、MongoDB から ElasticSearch にデータを流し込み同期しておく。

バージョンの依存関係が強いので、MongoDB のバージョンに合わせて各モジュールのバージョンを選ぶ。
・MongoDB 2.4.9
ElasticSearch 1.1.1
Kuromoji Analysis Plugin 2.1.0
MongoDB River Plugin 2.0.0
Attachments Plugin 2.0.0

インストールはpluginというスクリプトが同梱されてるので、楽。

wget https://download.elasticsearch.org/elasticsearch/elasticsearch/elasticsearch-1.1.1.tar.gz
tar xzvf elasticsearch-1.1.1.tar.gz
sudo mv Downloads/elasticsearch-1.1.1 /home/mera/
sudo ln -s /home/mera/elasticsearch-1.1.1 /home/mera/elasticsearch
cd /home/mera/elasticsearch

bin/plugin -install elasticsearch/elasticsearch-analysis-kuromoji/2.1.0
bin/plugin -install elasticsearch/elasticsearch-mapper-attachments/2.0.0
bin/plugin --install com.github.richardwilly98.elasticsearch/elasticsearch-river-mongodb/2.0.0

文章を単語に分けてくれる機能が Kuromoji プラグイン。
これをデフォルトで使ってくれるように、設定ファイル(config/elasticsearch.yml) に以下を追加しておく。
index.analysis.analyzer.default.type: custom
index.analysis.analyzer.default.tokenizer: kuromoji_tokenizer

起動するときは、これでアクセスできるようになる。
/home/mera/elasticsearch/bin/elasticsearch -d

アクセスはHTTP経由で行うのが、ちょっと独特でおもしろいけど、RESTか。
ポートはデフォルトで 9200番。

$ curl -XPUT 'http://localhost:9200/test/'
{"acknowledged":true}

でデータが格納される場所ができる。
この場合は “test” というデータベース的なものができる。

消すときは、
$ curl -XDELETE 'http://localhost:9200/test'
{"acknowledged":true}

で、データは MongoDB から吸い上げたい。
そのためのプラグインが elasticsearch-river-mongodb

同期用の設定もPUTで書き込む。
こんな感じで、MongoDB にある “test” データベースを丸ごと、ElasticSearch の “test” に同期する。
$ curl -XPUT "localhost:9200/_river/test/_meta" -d '
{
  "type": "mongodb",
  "mongodb": {
    "db": "test",
    "servers": [
      { "host": "127.0.0.1", "port": 27101 }
    ],
    "options": { "secondary_read_preference": true, "import_all_collections": true }
  },
  "index": { "name": "test" }
}'

シャットダウンするときは、プロセスをKillするんじゃなくて、POSTで指令。
$ curl -XPOST 'http://localhost:9200/_shutdown'

データを検索するときは、
$ curl -XGET "http://localhost:9200/test/_search" 

とか、

curl -XGET 'http://localhost:9200/test/questions/_search?pretty=true' -d '
{
  "query" : {
    "simple_query_string" : {
      "fields": ["question_title"],
      "query": "難問 山",
      "default_operator": "and" 
    }
  }
}'

とか、いろいろ検索文は作れる。

どう組み立てていいかよくわからないときは、

bin/plugin -install mobz/elasticsearch-head
でプラグインを入れておくと、http://localhost:9200/_plugin/head/ でデータベースの中身が見れたり、
検索用のJSONクエリを「選択してボタン」って感じで作ることができたりして、わかりやすい。


Posted 2014.11.04, 22:39 by mera and filed in PC関係
ElasticSearch はコメントを受け付けていません。
2014.11.01

SIMロック解除

先日会社帰りにdocomoショップに寄ったが、2時間待ちで断念。
今日別のdocomoショップに行ったが同じく1.5~2時間待ち。

番号札だけもらって、買い物に出て、1時間半前に戻った。
まだ自分の前の番号が掲示されていたが、すぐに呼んでもらえた。

端末の確認と本人確認をして、軽く説明を受けて、
解除用のSIMを挿して何やら操作して、あっさり解除完了。

3240円を支払って、おしまい。

家に帰ってから、OCNのSIMを挿してみて、使えた。
そういやOCNのは元々docomo回線だから、解除前も確認しておくべきだったか。

Nexus 7は4Gで使えるけど、Garaxy S2は3G。
だったら、Xperia E1と同じか。

動作が軽くなることを期待して、Garaxy S2 は初期状態にリセットしてみた。
いずれにせよ、データ通信は Nexus 7 をメインで使うので、
Garaxy S2 と Xperia E2 は電話番号だけちゃんと入ってればいい。

まぁこれでSIMフリー端末が3台になった。

 


Posted 2014.11.01, 16:57 by mera and filed in PC関係, お買い物
SIMロック解除 はコメントを受け付けていません。
2014.10.04

Skype 通話

先月電話する用事があり、電話代がかなり高かったので、調べてみた。

タイプシンプル バリュー 30秒20円
Skype to 固定電話 1分2.6円

ネットがなければ使えないにしても、ネットがある環境ではこっちのほうが断然お得。
ちなみに先月のケースではネットがなかったので、ちょっと仕方ない点もあるのだけど。

早速使ってみたけど、普通に電話できた。
いいねー。

 


Posted 2014.10.04, 09:52 by mera and filed in PC関係
Skype 通話 はコメントを受け付けていません。
2014.05.27

mochijson2

Erlang で JSON からデータを取り出したくて、mochijson2 に辿り着いた。
https://github.com/bjnortier/mochijson2

やりたかったことは、Google Geocoding APIを使って、住所から座標を取り出すこと。

説明に書いてあるとおり、
http://maps.googleapis.com/maps/api/geocode/json?address=東京都新宿区
のように検索すると、結果が JSON 形式で返ってくる。

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "新宿区",
               "short_name" : "新宿区",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "東京都",
               "short_name" : "東京都",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "日本",
               "short_name" : "JP",
               "types" : [ "country", "political" ]
            }
         ],
         "formatted_address" : "日本, 東京都新宿区",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 35.7298939,
                  "lng" : 139.7451615
               },
               "southwest" : {
                  "lat" : 35.6731516,
                  "lng" : 139.6732487
               }
            },
            "location" : {
               "lat" : 35.6938401,
               "lng" : 139.7035494
            },
            "location_type" : "APPROXIMATE",
            "viewport" : {
               "northeast" : {
                  "lat" : 35.7298939,
                  "lng" : 139.7451615
               },
               "southwest" : {
                  "lat" : 35.6731516,
                  "lng" : 139.6732487
               }
            }
         },
         "types" : [ "locality", "political" ]
      }
   ],
   "status" : "OK"
}

この結果が 下記コードの Body に入っている。

構造としては、
 1. results の中の配列の一番目の塊の中
 2. geometry というキーのバリューの中
 3. location というキーのバリューの中
 4. lat, lng というキーの値がそれぞれ緯度経度
これを順に辿っていくことになる。

  Decoded = mochijson2:decode(Body),
  {struct, Results} = Decoded,
  Results2 = proplists:get_value(< <"results">>, Results),
  [H, T] = Results2,
  {struct, Items} = H,
  Geo = proplists:get_value(< <"geometry">>, Items),
  {struct, Locs} = Geo,
  Loc = proplists:get_value(< <"location">>, Locs),
  {struct, Latng} = Loc,
  Lat = proplists:get_value(< <"lat">>, Latng),
  Lng = proplists:get_value(< <"lng">>, Latng),

ポイントとしては、
・mochijson2:decode から値を取り出すと {struct, 本体} という形なので、本体のほうを分解していく
・キーの名前を指定するときは、バイナリ形式で < <"キー">> という形で書く
・配列の先頭を取り出すときに [H, T] という形に代入すると H が先頭(Head)
といったところだったかな。

参考になったサイトは、
Destructuring JSON in Erlang Made Easy
である。

最初にコマンドラインでちゃんと分解してみてから、アプリのコードに組み込むべし。
このあと住所の投げ方によって返ってくる形が違うことがわかり、If文とかを追加してちょっと複雑になった。

そんなこんな、誰が使うんだろうね・・・
Erlang が流行ってるのかどうか、全然知らない。

 


Posted 2014.05.27, 22:08 by mera and filed in Erlang
mochijson2 はコメントを受け付けていません。