2010年04月30日

Twitter における Bot (API) のポスト数制限

さて、公式の資料(たとえば http://help.twitter.com/entries/15364 )によれば、

> Updates: 1,000 per day. The daily update limit is further broken down into smaller limits for semi-hourly intervals. Retweets are counted as updates.

となってます。
ここで、Updates というのが、実際には、ポストに相当するわけですが、1日あたり、1,000ポストまで、というのが見えます。
ただ、そのあと、The daily update limit is further broken down into smaller limits ... というのが書かれているのですが、ああ、broken down ―― 壊れる? もしかして、規制が無視される例外ケースがあるんだなと、まあ、1,000ポストなんてしないから、まあ、いいや、と、そう思ったのですが。

実際の投稿数規制は、 20ポスト/30分 なんだそうです。
そこで、冷静に和訳すれば

「一日あたり、1000ポスト。この制限は、同じ比率で、30分間隔で判断される」
ということで、1000ポスト/日 = 41.6ポスト/時 = 20.5 ポスト / 30分 となりまして、実際には、この数値でカウントされているということです。

実は、ここで動かしている Bot に、「50地域の日の出君」と「50地域の月の出君」というものがあります。
その名の通り、日の出・日の入り(そして、月の出・月の入り)の時刻に、つぶやくわけです。それもまた、 名前の通り、50地域を担当しています。

この設定だと、季節によって、短い時間にポストが集中してしまうわけですね。実際、2010年4月27日に、04:28:47 - 05:08:30 の約30分間に、25個のポストをして、そこで、制限に引っかかりました。

結局、同じような時刻のポストをまとめるようにして、この制限を回避しました。こんな感じ。

【旧バージョン】
4:28:47 《稚内》    日の出
4:34:52 《札幌》    日の出
4:41:35 《青森》    日の出
4:41:54 《盛岡》    日の出
4:45:29 《仙台》    日の出
4:46:00 《秋田》    日の出
4:47:35 《山形》    日の出
4:47:56 《福島》    日の出
4:50:08 《水戸》    日の出
4:52:13 《宇都宮》   日の出
4:52:48 《千葉》    日の出
4:53:25 《新潟》    日の出
4:54:14 《東京》    日の出
4:54:16 《さいたま》  日の出
4:54:53 《横浜》    日の出
4:55:45 《前橋》    日の出
4:56:28 《小笠原》   日の出
4:58:52 《長野》    日の出
4:58:54 《甲府》    日の出
5:00:41 《静岡》    日の出
5:02:40 《富山》    日の出
5:05:08 《金沢》    日の出
5:06:15 《名古屋》   日の出
5:06:27 《岐阜》    日の出
5:07:39 《福井》    日の出
5:08:30 《津》     日の出
以上 26ポスト/30分


【新バージョン】
4:29:00 《稚内》        日の出
4:36:00 《札幌》        日の出
4:42:00 《青森》・《盛岡》   日の出
4:45:00 《仙台》        日の出
4:46:00 《秋田》        日の出
4:48:00 《山形》・《福島》   日の出
4:50:00 《水戸》        日の出
4:52:00 《宇都宮》       日の出
4:53:00 《千葉》・《新潟》   日の出
4:54:00 《東京》・《さいたま》 日の出
4:55:00 《横浜》        日の出
4:56:00 《前橋》・《小笠原》  日の出
4:59:00 《長野》・《甲府》   日の出
5:01:00 《静岡》        日の出
5:03:00 《富山》        日の出
5:05:00 《金沢》        日の出
5:06:00 《名古屋》・《岐阜》  日の出
5:08:00《福井》         日の出
5:09:00 《津》         日の出
以上 19ポスト/30分


posted by 麻野なぎ at 13:03| Comment(0) | TrackBack(0) | Twitter と Bot の周辺

2010年04月18日

節気さん Bot の憂鬱

まあ、タイトルほど大げさな内容ではないのですが
まず、節気さん Bot の紹介から。
Twiter 向けに、そういう Bot を書いております。

詳しくは、
http://www.nagi.asano.name/twit_bot.html
をご覧いただけばと思います。

また、具体的につぶやいている内容は、
http://twitter.com/asano_nagi/sekki-series
のリストで確認いただけるかと。

さて、この Bot ですが、実は、Twitter のリアルタイム性に着目したものです。
もともと、二十四節気の該当日に、それをつぶやくということからスタートしたのですが、この、二十四節気、単に、「今日は(たとえば)夏至です」というだけではなく、「今日のxx時xx分が夏至です」という、時刻まで定義されているものです。
そういうわけで、その時刻に、「ただいま夏至です」というつぶやきをする、というコンセプトで始まったわけです。

そうすると、二十四節気の正確な時刻が必要なわけですが、これは、国立天文台の「暦要項」というページ
http://www.nao.ac.jp/koyomi/yoko/
で入手できます。

この Bot も当初、このページから入手した情報を元に、つぶやきのタイミングを決めていました。

さて、本日、二十四節気のタイミングを、Bot のプログラム内部で計算するように変更しました。
もっとも、内部で計算しましたといっても、本質的には、『日の出・日の入りの計算』(長沢工著、地人書館)の内容を流用しているわけですが。

この計算式は、非常に精度が高く、おおむね30秒くらいの精度で、二十四節気の時刻や、新月・満月の時刻などを算出できます。
それでも、数秒の誤差が、(つぶやくときの、時刻表示が分単位なので)見かけ上1分の誤差になることがあります。
結果的に、わざわざプログラム内部で時刻を計算して、それが、国立天文台の発表と異なるという結果になります。

ここで、苦労して自力で計算するよりも、天文台の発表をそのまま使った方が良いのではないか? むしろ、そのまま使うべきではないのか? と、そういう思いに悩まされるわけであります。

まあ、そう悩みながらも、やっぱり、「自分で計算してみたい」という欲求から、本日から、「自力計算バージョン」で出発するわけですが。

【時間区切りの怖さ】

さて、ここまでは、計算結果に数秒〜30秒以内の誤差があり得る、それが、見かけ上1分の誤差になって表れるというお話でした。
ただ、「時間区切り」というものがあるので、本当は、もっと恐ろしい誤差が出る可能性があります。
たとえば、冬至が、ある年の 12/20 25:59:58 などというポイントで発生するとしましょう。わずか5秒の誤差で、12/21 00:00:03 秒が、冬至であるという計算結果が出かねません。
そうすると、世の中より、1日遅れて、「今日は冬至です」というつぶやきをしかねないのです。

冒頭の、「1分の誤差」は、なんと言っても、「国立天文台の発表に対して、数分の誤差はあります」といって、認められる範囲だと思いますが、「今日は冬至です」が、翌日になってしまったら、ちょっと様にならないなぁと思うわけであります。

ま、ここ数年は、こんなシビアなタイミングはないようですが。

時間区切りという話では、関連して、「日本と中国における旧暦の日付がたまに、1日異なる」という現象も発生します。
これは、日本と中国の時差が1時間あることと、旧暦の「(その月の)1日は、朔(新月)の瞬間を含む日」という定義の関連です。
つまり、日本時間の午前0時から1時の間に朔の瞬間があると、中国時間では、まだ前日ということになります。
つまり、日本時間1月10日の午前0:30 が朔の瞬間であれば、1月10日が日本における旧暦の1日(ついたち)となります。
しかしながら、中国では、その瞬間1月9日なので、1月9日が、中国における旧暦の1日になるわけです。
さらに、ベトナムあたりまで範囲を広げると、旧暦の「月の決め方」の関係で、(旧暦における)新年が、一ヶ月近くずれると言うこともあるようです。
posted by 麻野なぎ at 16:49| Comment(0) | TrackBack(0) | Twitter と Bot の周辺

2010年04月14日

500円玉と10円玉のお話

これまたどこかで聞いたお話。
ある施設の少女。彼女に取っては、500円玉より、10円玉の方が価値があるのだという。
なぜなら、10円玉があれば、その施設の赤電話で大好きなお母さんに電話ができるから。

本当にこの通りだったか、あるいは、話者の意図はどうだったか、不確かな面もありますが。

これを読んだとき、「ああ、500円玉の方が価値があるに決まっている」などと、こちらの価値観を押しつけてはいけないのだなと思いました。
でも、ちょっと待て?

実際には、500円玉の方が価値があります。もちろん。
なぜ、だれも、彼女に「一枚の500円玉は、50枚の10円玉になるんだ」と教えなかったのでしょう。
悪意で考えれば、「お母さんの声が聞こえる」といって、500円玉を渡すべきところで、10円玉を渡すようなことも考えられます。

本当にすべきなのは、「今すぐにお母さんの声を聞くには10円玉」ということではなく、「ちょっと手間はかかるけど(両替しなければならないから)500円玉は、10円玉50枚になる」と教えることなのではないかと思うわけです。

さて、そしてこれは、なにも、彼女だけのことではありません。
私たちは、往々にして、「今までできていたやり方」「今やっているやり方」に固執しがちです。
もしかしたら、「両替する」という手間を惜しんで、10円玉をかき集めているのは、私たち自身なのかもしれません。
posted by 麻野なぎ at 21:32| Comment(0) | TrackBack(0) | 雑感

「送付」という言葉

以前、「送付という言葉は、『送りつける』と書くように、ぞんざいな言葉である。だから、ビジネスの場で使ってはならない」と、そういう主張を、複数のサイトで見た記憶がある。
はたしてそうだろうか?
試しに辞書を引いてみると。
「品物や書類を送りとどけること。〔改まった言い方〕」(学研国語大辞典)
「品物や書類を送り届けること。「請求書を─する」」(明鏡国語辞典)
と、いずれも、ぞんざいな言葉だという解釈ではない。
学研の辞書などは、わざわざ、「改まった言い方」とまで断っている。

漢和辞典で、「付」を引いてみると。

{動詞}手渡す。▽相手の手中にぴたりとつける意から。
{動詞}相手にくっつけて任せる。たのむ。また、預ける。
(いずれも、学研漢和大字典)

とある。
さらに、「つける」を引くと、
「動作の勢いが激しい意を表す。強い勢いで…する。「打ち付ける」「たたき付ける」「どなり付ける」「叱り付ける」」
(学研国語大辞典)
が、「送りつける」の意味としては該当する。
しかしながら、この意味での使用は、「接尾語」であって、熟語の成り立ちとして、動詞+接尾語という組み合わせも不自然である。

また、万一、「送付」という単語の元々の意味が、「送りつける」であったとしても、たとえば、「貴様」という単語の元々の意味が、尊称であったとしても、現時点においては、「ビジネスの場で使ってはならない」のと同じで、どこでどう言葉を使用するかは、その時点における意味づけを考慮すべきであろう。

同じように、お客様からのメールに「了解しました」と返すのは失礼だとも書かれていた気がする。
辞書を引いてみると。
「理解して承認すること」であり、承認とは、「〔同意して〕みとめゆるすこと。聞き入れること」(いずれも、学研国語大辞典)との解釈が見られる。
なるほど、これは、失礼であろう。
posted by 麻野なぎ at 21:21| Comment(0) | TrackBack(0) | 雑感・ことば

2010年03月20日

ご挨拶

このたび、こちらの方でブログ開設の運びとなりました。
といいつつ、そんなに継続的なアップはできない気がしますが、何かの弾みで、短期間にそれなりの頻度でアップしたりする可能性もあります。

というわけで、まずは、ご挨拶まで。
posted by 麻野なぎ at 20:44| Comment(1) | TrackBack(0) | 日記