2008年 02月 06日

天才と器用貧乏

天才な女の子よりは、器用貧乏な女の子のほうが萌える。

書類不備

学校に出した書類が不備で送りかえされてくるらしい。なんかほんと書類書くのが苦手だ。

ああいうのアナログのって送ってみるまで妥当性検証されない。すごい無駄。しかも、その検証は人がやるから、全ての書類に対して同じような検証がかかるとは言えない。そのくせ、殆どの検証は機械にやらせようと思えるばできることだ。バカバカしいことこの上ないと思う。重要な書類ほど機械に処理させるべきだ。入試のときも同じことを思った。(マークシートは機械で処理されるけど、マークされているかどうかの閾がユーザにわからないのでクソだ)

自分は、心の根本的な部分の成長が遅い感じを中学ぐらいから感じていて、それがところところで、威力を発揮しだして、めんどうくさい……だいたいの人は、なんだかんだいって、友達をつくることができ、ある程度安定した場みたいなのを築けるみたいだけど、そういうのができない。たくさん人がいるところでの、社交性みたいなのが、全くわからない。

そこらに沢山人がいるところでの、独りである感覚、絶望感、みたいなの。賑やかな孤独。知らない人はもちろんだけど、中途半端に知っている人もダメだ。飲み会みたいとかでの、ふと気分が下った瞬間から感じるそういう真っ暗で冷い感じがどうしようもなく嫌だ。人が多いほど、制御すべきことが多くなって、気分を上げにくくなる。誰だってあることだ。

誰でも、社会的な役割を無意識に感じとっていて、それに収まるように行動してる感じがする。みんな嫌だろうがなんだろうが、繋っているようだし、その繋っている部分で、バランスを調節しあってる。誰かがいなくなると、そこに近い人がそれをおぎなってく。嫌な人が一人いなくなっても、誰かにその役割を譲るだけだ。誰かとっくの昔にいってるはずだこんなこと

TODO

バカがバカなりに生きていく方法を考える。

lt と gt

僕の覚えかたは、lt の l は left で < です。

あぁ、説明不足だったんですが、僕はだいなり・しょうなりってどっちがどっちだかわからないバカなので (同じように東と西もわからなかった)、gt/lt が何の略か知っていてもそれが記号に一致しないんです。でも l は left の l とバカでもわかるように覚えておけば、左手に近いほうの Shift+, をおせばいいというのが直感的に理解できるんです。バカのバカなりの考えかたです。

Ruby の Jabber(XMPP) ライブラリ

xmpp4r-simple がつかいやすいみたいかな。xmpp4r のラッパで、作者が twitter の中の人みたい

require "rubygems"
require "xmpp4r-simple"
require "pit"

config = Pit.get("jabber", :require => {
	"username" => "username of jabber account",
	"password" => "password of jabber account",
})

im = Jabber::Simple.new(config["username"], config["password"])

Thread.start do
	loop do
		im.received_messages do |msg|
			p msg
			p msg.from
			p msg.body
			p msg.type
		end
		sleep 1
	end
end
#im.deliver("to@example.com", "foobar")

sleep

received_messages は常に non-blocking なのでループさせる必要がある。xmpp4r のほうはコールバックになってるから、特に non-blocking にしたくないんだったら im.client.add_message_callback do |msg| end したほうがいいかも。

im.subscribed_to?(jid) とか便利なのもあるけど、接続直後だと、どんなアカウントでも false をかえしたりする。

特別いろいろやりたいんじゃなかったら xmpp4r-simple のほうがめんどくさくなくてよさげ (なにがめんどいって最初のコネクションだけど、あと接続きれたときの処理とかもめんどいし、そこらへんかってにやってくれるのは嬉しい)

require "rubygems"
require "xmpp4r"

config = ...

jid    = Jabber::JID.new(config["username"])
client = Jabber::Client.new(jid)
client.connect
client.auth(config["password"])
client.send Presence.new(nil, "") # 現在の状態をセット。しないと他の人にはオフラインのままにみえる
client.add_message_callback do |msg|
	p msg
end

エラー処理もいれないといけなくて、エラーがおきて re-connect したらまた Presence をおくらないといけなくて、みたいな感じでめんどい。