2008-01-01から1年間の記事一覧

プロプライエタリへの回帰

ソフトウェアがオープンソースで公開されることが一般的な世の中になってきました。「ソフトウェアのコモディティ化」という言葉で表される通り、企業が自社のシステムを構築するにあたって一般的なオープンソースソフトウェアを組み合わせ、必要最小限のプ…

fixturesが使い物にならない…

開発者モードからは一歩後退したものの、ちょこちょこいじっているGoogle App Engine。目下のつまづきは、「dumpdataでデータを出力できない」ことと、試行錯誤で作ってみた「initial_data.jsonが読み込めない」こと。 後者はgoogle-app-engine-djangoの問題…

MDAの可能性

すでに死に体とすら言われているMDA(Model Driven Architecture)ですが、日本の受託開発プロジェクトの"問題"を解決する特効薬だと個人的には思っています。 膨らむ仕様 "問題"にはいろいろありますが、その一つに「仕様がどんどん膨らんで納期/予算をオーバ…

twitterの定説に異議あり!

twitterがなぜ人気があるのかという説明に、(誰が初めに言い出したのか知らないけど)「ゆるいコミュニケーションがうけている」という言い回しがよく出てくる。最近「それはちょっと違う」あるいは「言葉が足りないんじゃないの?」と感じる。twitterの魅力…

djangoformsを使ってみた

内部のマスタメンテ用にはいいかもしれんが、シンプルすぎて公開には耐えない。でもせっかく動くコードがあるので残しておく。 必要に応じて修飾できそう(ウィジェット — Django v1.0 documentation)。後でもっと勉強する。とりあえず現時点でのコードは以下…

templateでverbose_nameを使いたい

{{ (インスタンス名).properties.(プロパティ名).verbose_name }}で使える。日本語もOK。 例えば、 hoge.piyo = '"piyo"はプロパティです' return render_to_response('detail.html', {'hoge': hoge}) という感じでテンプレートにインスタンスを送っている…

クラウドらしいサービス

商品開発サービス ユーザの意見を試作し、レビューしてもらって改良し、商品化する。そういうサイクルを支援するためのサービスです。「そんなことをしたらライバルに簡単にコピーされるじゃないか!」というのは旧時代の発想。新商品の情報、開発状況は秘密…

クラウド・コンピューティング - 窓から雲へ

マイクロソフトがGoogle App Engine対抗サービスを予告 | 日経 xTECH(クロステック)を読んで考えたこと。 似て非なるものたち クラウド・コンピューティングが紹介されるとき、「Amazon EC2」と「Google App Engine」と「Salesforce.com」がよく引き合いに…

技術の相性

Google App Engine と REST Google App Engine(以下、GAEと略します)のBigTableではRDBで言うところのjoinが使えないらしいです。それを聞いて最初は「何?じゃあ、他モデルのデータを同時に参照させたかったら自モデルにデータを書き込まなきゃならんのか?…

divは空要素じゃない

…って基本ですか?私はこれで無用なハマリを経験してしまったので、恥を忍んでさらします。Ajaxの定番パターンの一つに、 <div id="hoge"></div> と書いておいて、 document.getElementById("hoge").innerHTML = result // result=Ajaxで取得したデータ というのがあります。この…

多次元CRUD

データの種類によっては「変更履歴」を残さないといけない場合もある。こいつが絡んでくると二次元の表(≒リレーショナルデータベース)ではすんなりと扱えないのでコーディングへの負担がぐっと増してしまいます。さらにモデルの継承とか考えると多次元の話に…

多層CRUD

二層のCreateとDelete 日本の業務用システムの多く?には「下書き」機能と「論理削除」機能があります。 「下書き」とは、一応データとしては起こすものの、まだ入力途中なので公開はしたくないという状態です。これは『Create済みではあるもののReadを許さ…

CRUDについて新たな気づきがあったので書いてみます。よければ前エントリ「"CRUD"ってくくりは不適切? - TODO: ブログの名前を考える」も併せてお読みください。

Twitter型TODO管理

世の中にTODO管理ソフト/サービスは数多くありますが、こんなのはまだないんじゃないかな。「それいいね!」と思った方はコメントください。作ります。 "Twitter型TODO管理サービス〜いまなにをするべき?" 概要(案) TODO表示画面には常に一つのTODOしか表示…

今のところの感想

上記のせいでユーザビリティが低いイメージを持ってしまった models.pyに全てのモデル定義を書くのか…プロパティ?が多くなっても、クラスが多くなっても大丈夫なんだろうか?適宜アプリを分割するのか? Google App Engineではデータのjoin操作ができないら…

Datastore Viewer

http://mars.shehas.net/~tmatsuo/misc/appengine_helper_for_django-ja.htmlを参考にモデルの定義とかして起動。Datastore Viewerでデータの作成や修正をしようとしたが、 Sorry, there are no entities of kind "Poll" in your datastore. とか出て、全然…

Google App Engineにトライ

してみました。申し込み時にケータイのメールアドレスを聞かれたので、いろいろと深読んでしまいました。しかし、選択肢の中に"q.vodafone.ne.jp"だけない…九州・沖縄はGoogleに認知されていないのか(ネタです)…このためにわざわざ、softbank.ne.jpに移行し…

個人が作るWebサービス

今まで3つのWebサービスを作成して、公開してきた。その結果、感じたこと・考えたことを書いてみる。 ユーザは待ってても来ない サイトを公開して、こうやってブログからも誘導しておけば、少ないながらも人が訪れて、その中には興味を持って他人に勧めてく…

マンガ・マッシュアップ・サイト

最近CAPSULE×DaftPunk×BeastieBoys×IKZO -StarrySky IKZOLOGIC Remix- - ニコニコ動画というマッシュアップ・ミュージックがお気に入りです。 マッシュアップの対象というと今のところ「Webサービス」「音楽」がメイン?なわけですが、他の分野でもマッシュ…

GORM - Serializableなクラスをメンバとする

ここのところ、ず〜〜〜っと悩まされてきた問題が解決したので、エントリにまとめる。…って、このブログ、一ヶ月も放置してたんだなあ…。 問題:com.sun.syndication.feed.synd.SyndFeedImpl型のメンバが保存されない 例えば、下記のようなドメインクラスを…

URLをメールアドレスに変換する

上記の整理をして思いついた。"TinyURL"は任意のURLを短い別のURLに変換する。応用として、任意のURLをメールのアドレスに変換するサービスがあったらどうだろう? そのメールアドレスへの送受信が、URLへのPOST/GETメソッドに対応するわけだ。本文が一定の…

ソーシャルブックマークって何だろう

コンピュータでやれることは結構パターン化されていて、まったく違う概念の間にも同様のパターンが見られる。それをソーシャルブックマークサービス(SBM)で探してみる。 相似する機能・サービスを明確にすることで現在のSBMに欠けている機能、SBMの潜在的な…

最新情報はどこにある?

Web上での情報収集についてあれこれ考えた結果、次の結論に至った。 「ソーシャル系サービスから最新情報は得られない」 以下、結論に至るまでの流れ。 Web上の情報には一次情報と二次情報がある 一次情報とは、現実世界(アナログ)からWeb(デジタル)に変換さ…

friendfeedを本気で使ってみた

Facebook - ログインまたは登録は、話題になり始めた頃に一度使ってそのままほったらかしにしていた。しかし、今回自分が使っているサービスを見直すにあたって、少し腰をすえて使い込んでみることにした。 私がfriendfeedに期待したことは… 使用中のサービ…

さらに[考察] "R"の次元

リレーショナルデータベースにしろ、最近復活の兆しを見せているXMLデータベースにしろ、データの次元て三次元まであるなと気づきました。リレーショナルデータベースを引き合いに出すなら、 一次元→レコード=詳細表示 二次元→テーブル=一覧表示 三次元→外…

"CRUD"ってくくりは不適切?

データに対する操作としてよく"CRUD"がセットで紹介されるが、これらは明らかに等質ではない。 まず、"R"と"CUD"は参照系と更新系という決定的な違いがある。"R"はビューとの関連が強く、RxC, RxU, RxDという具合に更新系の各操作との組み合わせが考慮される…

IME on AJAX

http://ajaxime.chasen.org/を見て思ったのは、この仕組みを応用してmicroformatsを埋め込むようにしたら、microformatsが爆発的に普及するんじゃないかなあということ。 Webを経由する処理(AJAX)はローカルで完結する処理に比べてはるかに低速なので、使用…

ブログのタイトル

急に思い立ったのでまだブログの名前を考えていない。 開発者らしく?"TODO:〜"と仮に入れておいたが、マンガのタイトルとか結構仮のものが正式になっちゃったりするんだよね?このブログもそうなったりして…そして、それも悪くないと思っている自分がいる。

ブログリニューアル

Webサービス開発者として新たに出直す。このブログをその拠点として活用していきたい。