Vagrant

仕事でVagrantを使い始めて意外と便利かもと気づきました。
いままではVmwarePlayer WorkStation FUSION ESXiやXENも
VirtualBOXもそのまま使ってきたけど、
コマンドラインで仮想マシンを操作できるのはいいですね。
AWSのインスタンス起ち上げみたいに気軽にできて壊すのも簡単。怖いですが。

新しく開発ツールとしてPHPStormも使い始めてますが、
IDEとしてとても優秀ですが長年のEclipseの感覚が染みついてイマイチ馴染みづらいです。
Xcode使ってるときのような違和感ですかね。
この会社のIDEは他言語だとRubyやObCもあるので慣れておくとよさそうですね。
それよりVisualStudio2013が無料化の方が驚きでこっちを先にインストールしてしまいました。

Dropbox

DropBoxの有料プランに。
つまり1TB使えるようになったんです。

とこの記事を書いている間にWordpressのバグがでてきて書きづらい。
ぐぐったら以下のページを見つける。

http://ja.forums.wordpress.org/topic/138791

IMEが勝手に確定されてしまいますね。
私の環境はwindows8 IE11 Atokですが、まさにいまこの症状が発生しますね。
しょうがないのでテキストモードで作成です。
このビジュアルモードのプラグインを仕事で使おうとしてましたが、
WP側なのかCKEditor側なのか不明ですが気をつけないといけませんね。

Mac スリープ失敗

Macbook Air Mid 2012を使ってます。
ここ最近、スリープからの復帰に失敗しまくりです。
VMWareFusion6を入れたあたり?頃からでしょうか。
それまでも復帰に時間が掛かるとかはありましたが、スリープ復帰の失敗はほとんどなかったです。

とりあえずの対処としてMacでメジャーな修復検証作業をやってみました。
・PRAMクリア
・SMCクリア
・AppleHardwareTest
・ディスク検証

このうち、ディスクユーティリティのディスクを検証をしたら、このMacintosh HDは壊れていますと。。。

とりあえず指示にしたがって再起動後Command+Rを実行しリカバリモードにして修復。
ここで一カ所ハマリどころがありました。
なんとディスクユーティリティ画面でボリュームが薄くなっていて復旧ができない。
実はFileVoultで暗号化していたのが原因。
画面の上方にあるアイコンのロックを解除で暗号化を解除し、無事認識させる。
この後は普通にディスクを修復で修理。

これで直るといいなぁ。

組込み

1月にCで組み込みのお手伝いをしてから、また興味がわいてきたので調べつついろいろ購入してます。
Arduino UnoとBBB、Intel Galileoを購入。
定番のラズベリーパイはまだ買ってません。

Arduinoは1月にCで遊んでました。練習にLチカや液晶表示など。
お手伝い内容はRS-485通信とCAN通信。
RS485通信はうまくいきましたが、CANは時間がなくあきらめました。(CANシールドまで買ったのに。。。)
CAN通信専用のキットを借りて通信成功。
CANは単純な01だけのシリアル通信ではなく、プロトコルがあるようでこれにハマった感じ。
超安価なオシロだとRS485の確認まではできましたが、CANは難しいですね。ロジアナが欲しくなります。
てか本格的なオシロスコープもほしくなってきました。

それと秋月のキットでAruidno互換を購入、半田付けして組み立て。
久々にやると楽しいですね。

現在は、BBBにUSB通信アダプタを差し、単独で通信できるようにしようとしてます。
この後、GPIOでセンサーをいろいろくっつけて遊ぼうと思ってますが。
なかなかうまくいかなく、時間がとれてないです。

enchant

また間が空いてしまった。定期的にBlog書くのは難しい。

そしてゴールデウイーク最終日にenchant.js弄ってる。
今年のGWはほとんど家にいました。
以下の公式ページで使い方を勉強。
enchant.js – A simple JavaScript framework for creating games and apps.

VMのCentOS環境でチマチマ触ってました。
MacbookAirにしてからVM環境での作業が捗りますな。
CentOSとWin7,Win8入れて作業してます。
Win7からTeratermでCentOSにSSHしてVimでシコシコ。
いまだにMacのフォントになれないのでWin7メインで使ってます。

とりあえず、パズルゲーっぽいのを作ってみる。

enchant();
window.onload = function(){
    var game = new Core(320, 320);
    game.fps = 15;
    game.preload( "images/chara0.png", "images/map0.png");
    game.onload = function(){
        game.rootScene.addEventListener("enterframe", function(){
            if(game.frame % 30 == 0) {
                var bear = new Sprite(32,32);
                bear.image = game.assets["images/chara0.png"];
                bear.x = 0;
                bear.y = 0;
                bear.frame = 5;
                bear.addEventListener("enterframe", function(){
                    if(game.frame % 15 == 0)
                        if(this.y < 288)
                            this.y += 32;
                    this.frame = this.age % 2 + 6;
                });
                game.rootScene.addChild(bear);
            }
        });
    }
    game.start();
};

机上で紙にルールとか書いてアイデア捻ってみたけどまずは使ってみるところからですね。
すげぇ簡単に動かせるが、なんとかお作法がわかってきたところで睡眠の時間が来た。