Tuesday, June 25, 2013

海とインフラもくもく勉強会とRRDtoolと

ちょっと遅かったですが、6/22(土)にインフラもくもく勉強会に参加したのでレポートです。
あと、海とかの。

安定のクリレジ。

今回、気になったのは @masakyst さんより紹介のあった RRDtool 。
ちょうど、お仕事でいろんなログを集約する場面に遭遇しそうな気配でしたので、いろいろ勉強になりました。

RRDtool は多種な言語バインドがあるとのこと。GrowthForecast とか。

https://github.com/kazeburo/GrowthForecast

CloudForecast というものもある模様。薄いラッパーとは。

https://github.com/kazeburo/cloudforecast

HRForecast も。

https://github.com/kazeburo/HRForecast

使ったことがないので、これらの違いはよくわからないですが(汗)

@k_nishijima さんの Fluentd な話も興味深かったです。

Fluentd のバックエンドに S3 使って、インスタンスのログを集める話。
書き込み速度とかではなく、とにかく、インスタンスはいつ消えちゃうかわからないのでログを S3 にアーカイブするが吉と。

このあと懇親会で、インスタンスが走っている物理サーバが計画停止されるとき、AWS さんから、いついつ停止します〜 みたいなメールが届くとの話も聞けました。その場合、自分でマイグレする必要とかあるんすかね?と訊いてみたところ、どうも再起動するだけで良い模様。逆に、再起動後、同じ物理でインスタンス起動してくることが稀とか。

むむ。なるほなるほ!

今回も勉強になりました。



海。@nefo_mi さんと @tompng さんと、あと会社の中の人と。

すっかり夏が完成していました。

ウミウシ様!

ツバメウオ様!

透明度すごいです。しばらく雨降ってなかったからかな。

ただクラゲ多かったです。すこし刺されました(泣)

真栄田岬の 6 月はクラゲパラダイスなので、ウェットスーツ着用のフルアーマー装備で潜るのが吉ですね。

海のあとはアジアン食堂 シロクマ。

うまかったです。

Monday, June 17, 2013

gFab 2013/6/16

MG Wave Inc. 様にて開催の gFab にいってまいりました。

到着すると@mgwsuzukiさんと、のぶなが君がすでにもくもくモードに。

XBeeもくもくしてました。

のぶなが君はソーラーカーのTeam OKINAWAの方だそうで、中学生とのこと。
最近の中学生はArduinoやXBeeを嗜むとは、これはすごい!すごいですよ!

ひとしきりもくもくの後、BluetoothとXBeeの使いドコロの話があり、Bluetoothは一対一向けで転送量多めのレスポンス重視、XBeeはアドホックネットワークのように振舞う不特定多数向きで転送量は少なくけど長距離向け。

うう、理解があってるかちょっと不安(汗)

今回も、いろいろ、ためになる話が聞けてよかったです。
久しぶりにお会いする方もいらっしゃってて、話もはずみました。

参加させてもらって、ありがとうござました。



gFabでこっそりもくもくしていたものです。

写真に写ってないですが、クリップの先に曲げセンサーついてます。
これでグローブ型キーボードを作ろうかと(笑)

一応、キーボードっぽい動きのイメージはつきましたので、次はグローブに曲げセンサーを仕込んでみようとしてますが、手頃なグローブが見つからず。いっそ軍手にしようか悩み中。

Bluetoothもそろそろポチろうかな。

あとはソースコードです。ちょっと手入れ不足ですが、ひとまず次回に向けたメモということで。

# -*- coding: utf-8 -*-
require 'rubygems'
require 'serialport'
@serial_port = '/dev/tty.usbmodem1421';
@serlal_baudrate = 9600;
@serial_databit = 8;
@serial_stopbit = 1;
@serial_paritycheck = 0;
@serial_delimiter = "\n";
sp = SerialPort.new(@serial_port,
@serial_baudrate,
@serial_databit,
@serial_stopbit,
@serial_paritycheck);
sp.read_timeout = 5000;
sleep 3;
class BendingSensor
attr_accessor :sig
def initialize()
@sig = 0
end
def update(sig)
@sig = sig || 0
end
def flag
if @sig < 770
false
else
true
end
end
end
class SensorGlobe
def initialize
@sensors = (0..4).to_a.collect { |n| BendingSensor.new }
end
def update(rxsig="")
sigs = rxsig.split(",").collect { |sig| sig.to_i }
@sensors.each { |sensor| sensor.update(sigs.shift) }
end
def stat
@sensors.collect { |sensor| sensor.flag }
end
end
class MyKeyboard
def initialize
@mykey = {
"10000" => "a",
"01000" => "b",
"11000" => "c",
}
end
def type_(stat)
k = @mykey[stat.collect { |m| m ? 1 : 0 }.join];
print k if k
end
end
@globe = SensorGlobe.new
@keyboard = MyKeyboard.new
while (rxsig = sp.gets) do
@globe.update(rxsig)
@keyboard.type_(@globe.stat)
end
void setup() {
Serial.begin(9600);
pinMode(12, OUTPUT);
}
void loop() {
int in0, in1;
in0 = analogRead(0);
in1 = analogRead(1);
Serial.print(in0, DEC);
Serial.print(",");
Serial.print(in1, DEC);
Serial.print(",0,0,0\n");
if (false) {
if (in0 >= 706) {
digitalWrite(12, LOW);
} else {
digitalWrite(12, HIGH);
}
}
//delay(200);
}

Monday, June 3, 2013

gFab + モノビジ部 #2

行ってきました。最近はMGWave様に入り浸りでございます(笑)

gFab Open Day + モノビジ部 #2

今回はカッティングプロッタもくもく

Vimんちゅステッカー作っている人もいました。凄くいい(笑)
一方、自分は汚んちゅステッカーを作ろうとしてましたが、Gimpの日本語がうまくいかず途中で挫折してました><



gFab 2013/5/26で作成した基板はこのようになりましたとのこと。こちらも凄いです!

立体配線という

@k_nishijimaさんから件の秘密結社情報の話もありました。

8月までイベント目白押しで楽しみです。

ちなみに自分はひたすらカー用品を修正してました。写真はちょうどバラバラに分解してしまってたとこです。

原因はケーブル断線。アームの頭にUSBポートきてますが、頭20回転もさせたらそりゃケーブル切れますよね。なかみ開いて見たところ、案の定ねじ切れてました(泣)

でも久しぶりに半田ごて使わせてもらったし、ちゃんと直ったので満足♪