gae
GAEにどんどん機能が追加されていく中、なかなか実装されないのが全文検索。品詞がとれるセグメンターだけでも提供してくれたら全然便利だと思うんだけどそんなアナウンスはまだ有りません。なきゃ作ればいいじゃんという事で、全文検索もどきを実装してみま…
1日で作ったのでエラーありまくりですが、一通り動いているのでURL公開 http://a2c-fts.appspot.comngram(TriGram)でプチプチ切って、エントリーのKeyNameを転置IndexのListにAppendしてます。 元ネタは、search.twitter.comから httpが含まれる日本語の検索…
Lingrが熱い。http://lingr.com/ 半年間位には復活してたけど、なかなか利用者が増えるほどにはなっていなかったけどこの数日でDjango-jaもJava-jaも出来た。id:yoshiori氏が、PythonでLingrを使えるライブラリを作ってくれたのでそれをGAEで使えるように改…
AppEngineには、どんな処理も30秒以内に終わらせないとダメって言う通称30秒ルールという神の掟があってこれを破るとプロセスをKillれてしまいます。ほとんどの処理は30秒もかからないので問題ないですが、クロールとか形態素解析とかやりだすと30秒なんて一…
昔はUstream+IRCクライアントですんでたけどどうやらSocialStreamと一緒に見た方がUstは楽しめるのでSocialStreamをインプリしてみた。力量不足でUstreamAPIからSocialStreamのエンベデットを抜き取ることが出来ない。今のところマニュアルでSocialStreamの…
Ustreamのサーチには、言語指定がない。どれくらい人気があるかは取れるが英語のチャンネルだらけ。 日本の方が大勢みているチャンネルをMultiUstreamViewer(http://ustview.appspot.com/multi)で利用するためにスクリプトを書いてみた。GAE上ではたぶん動…
開発サーバとappspot.comで、アプリに返すURLを適宜変更する部分を書くのに手間取ったけど、なんとか簡単に使用出来るようになったので晒してみる。ツッコミ歓迎です。思いっきり公開先書くの忘れてた。http://bitbucket.org/a2c/gaezoo/今動いているのは、g…
いろいろな言語でGyazoクローン作られてるのに、なぜか相性が良さそうなGAE版がなかったので作ってみた。 最近GAEに機能追加されたブロブストアを使ってみようと思ったけど面倒くさかったので不採用。 その代わり、アクセスが多くなりそうな、投稿後2分間は…
ここ数日悩んでいたKayの起動に関してひとまず決着した感じ。Port版の2.6や2.5だと、推奨バージョンじゃなかったり、必須モジュールが別パッケージになっていたり、色々大変なのでPort版で動かすのは、ややめんどくさい感じです。お勧めの構成は、python.org…
インスコしてあるPythonの状態 $ python --version Python 2.6which python /usr/local/bin/python Project作ってみる Running on Kay-0.0.0 /Users/atusi/repos/google_code/kay-framework/kay/lib/werkzeug/__init__.py:109: UserWarning: Module yaml was…
GAEは、10個前でしかサブドメインが取れない制限がある為、一つのAppIDの中にパスを切ってアプリを複数詰め込むと言う使い方をしている。app.yamlに飛び先を書くだけで、サブディレクトリ以下で完全に分かれて動作するので簡単に作れるくせに、ちゃんと動く…
昨日参加したGDDのハッカソン(GAE)も終わり、今年のGDDは無事に終わった。今年も得るものが、とても多く、知識だけではなく物理的にタオルやらDevPhoneやら得る事が出来た。GDDのセッション自体の客観的な内容は、当日に書いた下記エントリに譲るとして、今…
jQueryで.ajaxし出すと、テンプレート書いたりするのがマジでばからしい気がしてくるとかしてこないとか。データは、Jsonだけ返せばいいよねみたいになる。ならない?そんなときに、ゴキちゃんのレスポンスの表示エリアだけだとイマイチ綺麗に見えないし、め…
今回のDjangoHackathonは、Disc8。場所は市ヶ谷健保会館 会議室F(たぶん一番デカイ部屋)参加者が47人とHands onとhackathonをメインにしたイベントでは大所帯となった。DjangoとGAEのハンズオンとHackthonがそれぞれテーブルに分かれ行われた。詳細はhttp:…
週末のGAEハカソンでどうやってcron的な処理をしようかなぁと思っていたら本家から、cronが発表になった! ありがたくソレを使って見ることにした。使い方というほどの物でもないけど、cron.yamlをapp.yamlと同じ階層に作成して、 説明 叩きたいURL 叩く頻度…
GAEの動作が意外に遅い。もっとぱぱっと保存なり、処理が終わると思いきや意外と数秒、時には20秒とかかかる。 EC2使えばもっと快適に出来るそうだよとか、そんな声も聞こえるが、Deployの簡単さやIOの拡大がノーコンフィグだったりするところは大変魅力なの…
RemoteAPI使ってデータ消してる時に、気づいた。消し方によってはめちゃくちゃ時間がかかる。以下、実際のShellをペースとして、適宜コメント付けてみる。 今回は転置インデックスの構造を変えたので、以前のデータが要らなくなったので消す作業 # 転置イン…
あまりテストをしてないけど、少なくとも100倍くらい速いし、まず時間かけ過ぎで落とされない。これはとても大きい。 以下、コード def uniqueInverseIndex(feed_id, text): try: ngram = NgramTokenizer(feed_id, text) ngram.setNgramArr(2) except: respo…
Python旅館ネタ。これまた、tmatsuo氏に教えてもらた。 googleAppEngine内で、何の処理にドンだけ時間が掛かってるとか、どの処理が何回呼ばれてるとかそういうのが知りたい時にprofileを使うとある程度分かります。やり方は凄い簡単で、デフォで使ってるmai…
GogoleAppEngineで、日本語検索作ってたら、転置インデックスの作り方ミスった。簡単に直ったんだけど既にappspot.comで作成された転置インデックスが邪魔なので一気に消したいが、デフォルトのDashBordでは一気に消せるインターフェースが用意されていない…
「GAEのDatastoreって1000件しかデータがとってこれないよねぇ、大変だよねぇ」という、意味が有るのか無いのかよく分からない会話をしたりする訳ですが、1000件というの数が、どこに効くのかなぁと思いテストコード Model.all()が1000件ずつ区切られて、そ…
複数人で共有出来る付箋が非常に面白いとVoluntas氏から聞かされ、付箋の共有もかけてもらったのだが、全然情報が流れてこない。くやしいので、GAEで付箋アプリもどきみたいなのを作ってみた。Googleの付箋がうらでどらくらい賢い事をしているか判らないが、…
GAE上でやっぱり全文検索は欲しい訳でそれが無いならば、作るしか無い訳で、今それを頑張っている所。tinySegmenter使ったやつはもう出来たけど、コレ取れるだろとか言う簡単なのが取れなかったりするので、N-Gramで絶対取れるようになるのを目的とする。多…
とりあえづ、必要っぽい機能を最低限盛り込んめた気がする。wassr検索(http://a2c.appspot.com/wassrhub)を作る時に、ひっかかった所と対処をリストアップする。 epocタイムを,datetime型にする方法 wassrのjsonAPIで返ってくるデータは、epoc timeでなんか…
pyspaで、何を作るかモンモンとしてばかりも居られないのでDTFを作る事にした。「考えるな感じろ」というなの、勉強会補助アプリ何かのカンファレンスに行ったり、勉強会に行った際にそこに来ている人が使える様なWebアプリです。機能的には プロフィール登…
XcodeとObjCをいじった結果、コンパイラーがやっぱり嫌いなんだなぁと、痛感した。このままじゃ、のー成果になっちゃうので、Dashcodeを利用して、GAEアプリのiPhoneインターフェースを作ってみました。アプリは、単語帳的なモノでそれぞれの単語名(タイト…
注)この時間ではWindowsだと、出来ないかも知れません。実際に、GoogleAppEngineをやる時にまずはじめにやる事は、環境構築。ここでつまづくと何も出来ないので、ムービーにしてみました。標準でhello world!のページが作られるので、それを修正して、文言…
JUI2008に参加してから、いつかやってみたいと思っていたDragインターフェースを作ってみた。http://a2c.appspot.com/iu普通にやるのは、いろんなところで書いてあるので、今回はGoogleI/Oで発表のあったAjaxLibraryを使用してjQuery使いました。アプリは、…
gaeの情報交換出来たらいいなと、freenodeに#gae-ja立ててみました。ircのリンクってどうやってHPに貼るんだろう・・・
昨日アップしたImageAPIのサンプルにmemcacheAPIを追加してみた。 mattn氏のブログを参考にさせていただきました。 http://mattn.kaoriya.net/software/lang/python/20080529202100.htmキャッシュへの登録とレンダリング cache_time = 60 memcache.set('inde…