カレンダーイベントが25個以上検索されない(Python/GData API)

GData APIでカレンダーイベントを取得したら、なぜか一定以上のデータが取れてこない。
調べてみたら、CalendarEventQueryの結果はデフォルトで25個までしか取れてこない仕様だった。
デフォルト値をうんと大きくセットすることにした。
query = gdata.calendar.service.CalendarEventQuery(username, ‘private’, ‘full’)
query.max_results = 1000

参考:Setting max_results on private CalendarEventQuery for non-default calendar

2010年を振り返る

今年も色々なことがありました。

  • 5月 「みんなのシフト表」OEM版 「東光オーエーシステム NBS The Shift」が本稼働開始しました。
  • 8月 技術評論社 Web+DB Press Vol.58にインタビュー記事が載りました
  • 10月 「みんなのシフト表」をGoogle AppsドメインにインストールできるSaaSアプリケーションとし、Google Apps Marketplaceより販売をはじめました。
  • 11月 クラウド業務アプリケーションの日本の第一人者であるベイテックシステムズ様に販売総代理店になっていただきました。またサイトの名前が「サテライトシフト表」に変わりました。

来年も皆様よろしくお願いいたします。

ImportError: cannot import name timegm

GAE/Pthonでこんなエラーが出た。

from calendar import timegm
ImportError: cannot import name timegm

色々調べてみてわかったのが、「calendar.py」という名前でモジュールを作ったところcalendarライブラリと勘違いして読み込んだらしい。
「calendar.py」を「calendar_xxx.py」 みたいな名前にしてソースをEclipseの右クリックメニューから「Refresh」し、もう一度やり直したら出なくなった。

40

今日で40歳になった。名実ともにオッサンである。

この年をしていったい何をやっているんだろうと思うこともある。思えば社会に出てから明日がどっちにあるのかずっと確信が持てなかった。ずっと不安定で不安定であるという点では安定していた。ITの世界を選んだのだからそれは仕方がない。これしかできなかったのだ。

長男とは30歳差で、父とも30最差だ。つまり長男は今年10歳で、父は今年70歳になる。

稼働監視

AmazonEC2の日本語コンソール「Cloudworks」がバージョンアップした。

http://www.cloudworks.jp/2010/04/27/バージョンアップのお知らせ/

今回のバージョンアップの目玉は、デイリーで稼働状況がメールで送られてくる事だ。これは、自分には非常にありがたい。

Webサイトを運営していると、如何にして稼働監視をするかが課題になる。自分は「SiteAlert」や「AlertMe」を使って外部から無人監視をしているのだが、Cloudworksの稼働監視はアカウント内全インスタンスの稼働レポートを送ってくれる。外部からの監視とは違う切り口なので、補完的に運用できる。

新たな課題

非常に地味な記事かと思ったら刺激的な記事だった。

情報社会の新たな課題~消えた年金のシステム問題~

記録システムの百万件以上のデータが間違っている。86年の段階で社保庁もSIerも認識していた。なのにそのままシステム移行した。なぜそんな事が起こってしまうのか。恐ろしいのは、当時と今で構造的問題が何一つ変わっていない事だ。

ブラフ

当時自分はエンジニアの人材派遣会社に登録してそこから仕事を紹介してもらっていた。いわゆる「客先常駐」というやつだ。仮に常駐先をA社としよう。実際にはA社の社員という肩書きでI社に常駐していた。身入りは会社員をやっていたころよりもずっと良かったが、派遣会社に相当抜かれていることは薄々感じていた。

派遣会社を通した1年契約も終わりに近づいた日、ダメもとでA社の部長に掛け合った。

「部長、自分と直で契約してください。」
「ああ、いいよ。一人月〇〇円でどうだ」
「そんなにもらえるんですか」
「派遣会社のK君にはこの事は言わないように」
「わかりました」

K氏は派遣会社の私の担当者だった。K氏には1年契約が終わったら更新しないことを告げた。

K氏「次の仕事はどうするんですか」
「それはあなたに言う必要はありません」
「今辞められると困るんだよ。部長に対してもうちの面目がたたないじゃないか。引き抜かれたのか?」
「…」
「あなたが言わなくてもこちらで次の仕事先を調べさせてもらいます。クレームを入れますよ」
「…」

暗澹たる気持ちで部長に相談した。

「A君、そりゃブラフだよ。その程度でびびっちゃいかん」

「ブラフ」自分はその一言で目の前が明るくなった。かけられていた魔法が解けたような気持ちだった。

K氏「あなたの行き先を調べさせてもらいますよ」
「どうぞご自由に」

自分がまだフリーになったばかりの頃の話だ。今はもうA社もその派遣会社もない。

IEの場合だけoffset.topが絶対座標を返さない(jQuery)

マウスオーバーでメニューバーの「上に」メニューを表示する機能を実装していたら、IEの場合だけoffset.topの値がおかしい事に気づいた。

日々の小ネタ:IEにおける座標の取得

またもや先人達の貴重なページのおかげで、IEの場合だけoffset.topの値がスクロール量を差し引いた「表示画面内の位置」、IE以外はスクロールを考えない「ドキュメント全体内の位置」を示している事に気づいた。jQueryでもいまだに解消されていないブラウザ間の差異だ。
仕方なくブラウザで場合分けしたコードを書いた。

var v_parent_menu_top = $(‘#parent_menu’).offset().top;
if ($.support[‘cssFloat’]) {

var v_new_top = v_parent_menu_top – v_menu_box_height;

} else {

var v_new_top = v_parent_menu_top – v_menu_box_height + $(‘html:first’).scrollTop();

}

いつまでたってもシステム屋の苦労が絶えないわけである。

識別子、文字列または数がありません。(IE6のみ)

IE6でだけページロード時に「識別子、文字列または数がありません。」というJavaScriptエラーが出る。

IE8では出ない。FireFox3.5.5でも出ない。Chromeでも出ない。IE6でだけエラーになる。
のた打ち回っていろいろ検索してみたら、先人達のこんなページがあった。

識別子、文字列または数がありません。

自分のコードの怪しそうな所を虱潰しにあたってみると、こんなコードがあった。

$.post(
‘https://…..’,
{
‘data_id’ : v_data_id,
},
……..
)

カンマが一つ余計だったので、

$.post(
‘https://…..’,
{
‘data_id’ : v_data_id
},
……..
)

としたらエラーは出なくなった。
この世から早くIE6が消えて欲しいと思った。