萌えキャラとは何だったのか

ギークにも絵描きにもなれない者の末路

最近p5-Ikusanを作ったり、それで衣玖さんのIRCボット作ったりして衣玖さんへのロマンティックが止まらないmix3です

github.com/mix3/go-ikusangithub.com/mix3/go-irc

最近golangを触ってる事が多いのですが(絶賛開発中の社内アプリがgolangだけどそっちにはあんまり関わってなかったりする)

適当になんか作りたいなぁと思っていたところに最近衣玖さんへの愛が溢れ出してきてたので、そりゃ「go版ikachan作ろう」となるのは自然な事ですよね

でgoでircってどう触るんだろうとgithubを漁ったところ

辺りがirc触るためのライブラリとして有名どころなのかなぁということが分かって、その辺り使って作ろうとしたのですが、

とか

とかでなんか微妙に使いづらいなぁとなってしまい、じゃあいっそそっから作るかということで両方の間の子みたなの作ったりしました。github.com/mix3/go-irc

出来るだけ薄くしておきたかったのと、IRCについて知識はまるでないので難しいことはしないようにしたかったので

  • ircサーバへのリクエストが出来る
  • ircサーバからのレスポンスを受け取れる
  • ircサーバからのレスポンスを元にコールバックを呼ぶがディスパッチャみたいなことはしない
  • ircサーバからのレスポンスのtimeoutを待たずに落ちる事が出来る
  • 落ちたタイミングで何かしたいこともあるだろうから、別途落ちたタイミングでコールバックを呼ぶようにする
  • flagは使わない
  • loggerはデフォルトでgithub.com/umisama/gologを使うけどinterfaceが定義されてるので差し替え出来るハズ

ぐらいを満たすような感じでgithub.com/thoj/go-irceventgithub.com/fluffle/goircからコピペしたりしなかったりしました

たまに落ちるときにWaitしたまま帰ってこないみたいなことがある感じなので、明らかにここマズいとかあったらプルリクあると嬉しいです

で、これを元にgo版ikachanことgo-ikusannを作りましたとさ

とってもキュートな衣玖さんがお出迎えしてくれるwebインタフェースも作ってやはり衣玖さんは最高だなって思いました

なおAAの画像は「衣玖 AA」で検索して見繕ったAAなので著作権的に問題あったら非常に心苦しいですが消します