2013年6月28日金曜日

Scientific LinuxにRをインストールする

Scientific LinuxにRをインストールしようとしたのですが、最初にちょっと手間取りました。実は簡単にインストールできるコツがあるのでメモ書き。ポイントは2つです。
(1)EPELリポジトリの追加
Rは実はyumで一発でインストールすることができます。しかし標準のリポジトリではだめで、EPELレポジトリを指定する必要があります。

(2)EPELを指定したyumの実行
yumでEPELを指定するだけです。あっという間にインストールは完了です。
それでは、快適なR生活をお楽しみ下さい。

2013年6月26日水曜日

Kinect Interactionsのグリップ情報(HandEventType)を検知する

Kinect for Windows SDK1.7には、
  • Kinect Fusion ・・・リアルタイム3Dモデリング
  • Kinect Interactions
という2大新機能が実装されました。今日は後者の話です。Kinect Interactionsでは、手のひらの状態を検出できるようになりました。具体的にはグー(Grip)とパー(GripRelease)の状態を検知できます。そのために、stream_InteractionFrameReadyというイベントメソッドが新たに用意され、この中で手の状態(HandEventType)を調べることで、状態を検出できます。具体的には下記のような記述になります。



OpenCVにてUSBカメラの映像を表示する(OpenCVSharp利用)

OpenCVSharpを利用して、USBカメラの映像を取ってくるサンプルです。



2013年6月22日土曜日

GitHubで一時的にアカウント停止状態になったしまってわかったこと

昨日、GitHubのアカウントが一時的に停止状態になってしまったので、その件について、、、

突如アカウント停止に
最近、GistにハマっているのでいつものようにGistにコードを流し込んでいたところ、突然、アップした結果が見れなくなり、下記のようなメッセージも出てくるようになりました。


“our trusty robot, Hubot, seems to think you are not a human.”って、特に変なアップをしたわけでもなく、アカウント情報にも特に不備はなく、、、何かの間違いだろうと思ったのですが。

アカウント停止になるとどうなるか?
(1)第3者がGistにアクセスした場合
以下の様なメッセージが出ます。これは、「存在しないgistのURLにアクセスした場合」と同じ意味です。
(2)第3者がGithubにアクセスした場合
以下の様なメッセージが出ます。これは、「存在しないGithubのURLにアクセスした場合」と同じ意味です。


(3)BLOGへの埋め込みはどうなるか?
コードの部分は全く表示されません。

データが消えてしまうのか?
結論から言うと、データは残ってます。アカウント停止と言いましたが、実際には以下の状態になります。
(1)ログインは可能
(2)パスワードの変更も可能
(3)GistへのコードのアップロードもOK
(4)自分のGithubのレポジトリーは見ることができる(アップは試してません)
(5)アップした自分のGistのコードを見ることはできない(上記のWhoopsメッセージがでる)
つまり、上記のように第3者からは全く見ることはできなくなりますが、中身は生きているということになります。

解決方法
サポートへ「私は人間です」とメールをするだけです(笑)。問い合わせサイトからもできますが、念のためメールにも送りました(もちろんちゃんとした文章は書きましょう。もちろん英語で)。
今回については、アカウント停止が発覚した夕方にサイトを経由して問い合わせをしたのですが、なかなか返事が来ないので、夜の23時頃にメールで問い合わせをしました。そうすると、よく朝の8時にメールに対して返事が来ていて、無事回復していたようです。

クラウドサービスの以外な盲点
この手のクラウドのサービスが利用できなくなった場合の怖さをちょっと感じました。この手の世界的なサービスが突然終わるということはまずないと思ってますが、こういう形で使えなくなるとは、、、今回はちょっと盲点でした。
個人的には、
  • サーバ類を自前で管理する
  • サーバ類をクラウドサービスに任せる
ということの双方の利点と欠点を考えた上で、後者を選んでます。その考えは今回の件があっても変わらないです。ただ、100%頼るのもよくないなとあらためて思いました。

Github/Gistはこれからも使い続けますよ
こういうことがありましたが、Github、とくにGistについてはこれからもガンガン使い続けるつもりです。ラボの学生へのサンプルコードを示すときにGistはとてもいい媒体になりますし、BLOGにも反映できますしね。暇な時は、おちラボのGistを覗いてみて下さい。




2013年6月20日木曜日

C#:DynamoDBにMapperを利用してデータを保存するサンプル

C#でもDynamoDBを操作することになりそうなのでそのサンプルです。Javaの場合は高レベルAPIであるMapper系のクラスが用意されていましたが、C#でも同様にありました。データクラスにアノテーションを書いて、クライアントクラスで利用するといった感じで、使い方もほぼ同じだと思われます。

本家チュートリアル(Using Amazon DynamoDB Object Persistence Framework - An Introduction)を参考にしました。

2013年6月16日日曜日

Goolge Apps Script勉強会

2013年7月5日(金)に、京都リサーチパークにて、KyotoGASとGDG京都主催のGoogle Apps Script勉強会を開催します。

私は、GDG京都スタッフとしてGoogle Apps Script(GAS) 概要について最初に話しますが、他にもGASをビジネスで利用されている方の事例紹介や、Google Developer Expertの方のHangout等の予定されています。

GASについては、本BLOGでも最近取り上げていますが、教育システムへの利用も含め、いろいろなポテンシャルを秘めていると思っています。
興味のある方は下記を御覧ください。
KyotoGASさんとGDG京都のGoolge Apps Script共催勉強会