2013-11-29

ノートカバーがなんとなくキニナル今日この頃

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク
なんとなく最近ノートカバーがキニナルのです。

調べてみるとコクヨ SYSTEMIC[システミック]というのが一番有名なようです。
こんな感じのです。


そしてキングジムからはノートカバー(マグネットタイプ)というのとレザフェスノートカバーというのがあるようです。
それぞれこんな感じです。


A5だったら以下のリングノート対応のコクヨのシステミックがよさそうかなぁとか思ったりしています。


今回はなんとなくA6サイズのものがほしいなぁとか思ってみているのです。
以下の4つどれも悪くないような気がしているのです。


どのように使うかのイメージがまったくないけど、なんかあると便利そうかなぁというイメージだけが先行しているので困ったものです。

とりあえずどれも1000円ちょっとのものだから衝動買いをしてみようかしらん。

2013-11-25

imapで特定のfromアドレスのメールだけを削除するものをrubyで書いてみた

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク
imapを利用しているメールで見取り込みのメールの中から特定のfromアドレスからのメールだけを削除するというものをrubyで書いてみました。

以下のような感じです。


# -*- encoding: utf-8 -*-
require 'net/imap'
require 'kconv'
SVR='sample.server.com'
USR='user'
PWD='pppppp'
ADR='target@sample.com'
class Net::IMAP::Envelope
def mail_address_formatted(value)
return nil unless ["from", "sender", "reply_to", "to"].include?(value)
self.__send__(value)[0].mailbox + "@" + self.__send__(value)[0].host
end
end
imap = Net::IMAP.new(SVR)
imap.login(USR,PWD)
imap.select('INBOX')
imap.search(['UNSEEN']).each do |msg_id|
envelope = imap.fetch(msg_id, "ENVELOPE")[0].attr["ENVELOPE"]
from = envelope.mail_address_formatted("from")
puts "#{msg_id}:#{from}:#{envelope.subject.toutf8}"
if from == ADR
puts "delete"
imap.store(msg_id, "+FLAGS", [:Deleted])
end
end
imap.expunge

2013-11-20

rspecでstubを作ってエラーをraiseさせる

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク
rspecでstubを作って、そいつにエラーをraiseさせる方法です。

Hoge.stub(:fuga).and_raise("dummy error")

みたいな感じでOKでした。

以下が参考になりました。
https://www.relishapp.com/rspec/rspec-mocks/v/2-6/docs/method-stubs

2013-11-15

railsでSQL serverに接続しているときに直接SQLを発行

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク
railsで時折、ActiveRecordではなくSQLを直接を発行したくなるときがあります。

調べてみると以下のような感じで実行するというのが見つかります。

sql = "select 'TEST' as col"
a = ActiveRecord::Base.connection.execute(sql)

SQL Serverに対してこれでやると
-1が帰ってきて、わけわからない感じでした。

よく調べてみると以下のようにexecuteでなくselect_allならばOKでした。

sql = "select 'TEST' as col"
a = ActiveRecord::Base.connection.select_all(sql)

この場合は、
[{"col"=>"TEST"}]
みたいな結果が返ってきます。

以下が参考になりました。
https://github.com/rails-sqlserver/tiny_tds/issues/85 



2013-11-06

Raspberry PiにつないだUSBカメラの画像をブラウザから確認するものをrubyで作ってみた

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク
Raspberry PiにつないだUSBカメラの画像をブラウザ経由で見れて、好きなタイミングで静止画で残せるものをrubyで作ってみました。

と言ってもカメラ画像をmotionでストリーミング処理して、その結果をimgタグで表示しているだけだったりします。

Raspberry PiにUSBカメラをつないでmotionで確認する手順は
Raspberry Piに大人の科学マガジンUSB特撮カメラをつないでみた
をご覧ください。

なのでmotionを動かしておくことが前提ですが、作ったのは以下のような感じのものです。

ざっくりした画面の説明は以下のような感じです。


sinatraを利用していて、ソースは以下においてあります。
https://github.com/vivahiraj/pi_camera


最低限motionの設定として以下をいじる必要があります。
control_localhost off
webcam_localhost off
output_normal off
#ファイルの出力先をsinatraで静的ファイルとしてみることができるpublic配下にする必要があります。
target_dir /home/pi/pi_camera/public/img/motion


ソースを取得した後の利用方法は、最初に
bundle install
をする必要がありますが、
その後、webサーバとして動作させるには以下のようにします。
bundle exec rackup
これで9292ポートでwebサーバが起動します。

撮った画像のリストが別に見れなくてもよいならばmotionが動いているRaspberry Pi上でなく別のマシンで動作させてもカメラ画像は見ることはできるはずです。