Ruby Twitter Gemを使ったらTwitter botが9行で書けた
microneを使ったらApp EngineのTwitter botが14行で書けた
これ読んだ時なんかしっくり来なかったんですよね
ここの記事ではなぜかTwitter botをつくるのにWebサーバ+Webフレームワークを用いるという謎なことをやっています。14行で書けた! とのことですが、普通のマシン上で動く普通のbotはもっと短いです。
自分はPythonはあんまり書けないのでendの分だけPythonより行数が増えると言われているRubyで
# coding: utf-8 require 'twitter' Twitter.configure do |config| config.consumer_key = '*****' config.consumer_secret = '*****' config.oauth_token = '*****' config.oauth_token_secret = '*****' end Twitter.update(open('twitter.txt').readlines.shuffle.first)
やってることが少ない分コードも短くシンプルになります。当然ですね
ちなみに元ネタのコードをRubyの代表的なマイクロフレームワークsinatra再現するとこんな感じになるはず。
# coding: utf-8 require 'twitter' require 'sinatra' Twitter.configure do |config| config.consumer_key = '*****' config.consumer_secret = '*****' config.oauth_token = '*****' config.oauth_token_secret = '*****' end get '/post' do Twitter.update(open('twitter.txt').readlines.shuffle.first) end
sinatraの部分が無駄っぽいのがお分かりいただけたでしょうか
さらに
ためしに実行するだけでもブラウザにURL打ち込んで叩く必要があったり、
デプロイ作業が必要になったりと、Webアプリとして作るのはなんだか面倒そうです。
まとめ
適材適所なのがベター。
BotのようにWebへの出力がない/少ないサービスを開発するのにGAEというWebアプリ用の環境を使うのはそもそもおかしいのではないか