まだ重たいCMSをお使いですか?
毎秒1000リクエスト を捌く超高速CMS「adiary

2006/07/10(月)adiary β1の公開

開発途上版、adiary Version 1.00β1を一般公開します。最新snapshotからの変更点は以下の通りです。

βリリース情報

  • 基本的な機能としては十分使える程度に安定しています。
  • デザインの細かい変更などが、web上から行えません。
  • 一部仕様が決まっていない部分があります。
  • ドキュメントが全く整備されていません(汗

今後の改変予定など、細かい部分はToDoを参照ください。β版についての質問、疑問、バグレポートなどはこの記事へどうぞ。

2006/07/06(木)画像アップローダ

「せりかのアルバム」システムと adiary の連携はとてつもなく便利なのですが、Perlがあればどこでも動くをウリにしている adiary としては、ユーザーランドでの make が必須であるアルバムシステムがないと画像アップできないのは問題だろうということで。

今アップローダー書いてます。そのうちに、フォーム処理のセキュリティーホールを見つけました……。んんー、これだけセキュリティに気を遣って書いてるのに、まだセキュアな問題があったとはなぁ*1

というわけで adiary は数日中にもβ配布予定です。

*1 : bugではないんだけども……

2006/06/16(金)最近の開発

最近の開発

最近はもっぱらC++ですよっ。というのは画像アップロードのために某アルバム用プラグイン&adiary専用プログラム*1の作成なわけです。

受け側であるadiaryの機構もいい加減何か考えないとなぁーという感じで、そこもちょっと悩み中。というわけで客観的に見せられる成果もなく停滞気味に映ると。

もう一つ開発中

トラックバックや更新通知Ping用に簡易なHTTPエージェントモジュールがあるのですが、そいつを改造してCookieを食べられるようにしています(笑) 本格的に作り始めると巨大モジュールになるので、その辺も適度に簡易実装。

さて何を作る気なのか……は、お楽しみに。

*1 : 承認プラグインはダメだけど、メイン部は他blogシステムでは十分流用可能

2006/06/10(土)久しぶりにToDo

7/7現在のToDo

この前書いてから大分経ちますが、久しぶりのToDoです。しかしこの前のToDoみるとずいぶん進化しましたねぇ(苦笑) テキストパーサーすらなかったんですか、あのころは。 とても考えられません。この便利すぎるパーサー、もう手放せないですよ(ぉ

βリリースまでに

消し線は現在実装済。

  • 標準の画像アップロード機能
  • 書き込み日時などの管理仕様の調整(表示含む)

早期対応予定

  • 記事のユニーク指定
  • Google Analytics
  • カテゴリの実装の修正(カテゴリ編集画面改良、親カテゴリ指定エクスポートなど)
  • カテゴリ別の日記一覧表示
  • すべての日記を再構築する機能
  • pod casting対応
  • サイドバーに月別リスト。ページトップに月別リスト(tDiary/はてな方式)の機能
  • ページ送りモード

その他

  • ドキュメント整備
  • モバイル機能
    • メール更新機能*1
    • モバイル向けテンプレート(誰か作らないかなぁ)
  • デザイン
    • テーマ作成用サンプルHTMLの提供
    • ユーザーテンプレート(スケルトン)機能、リンク先一覧など
    • ユーザーテーマ(指定した日記を好きなテーマで見られるように→cookie使用)
    • 広告
      • Amazonのおすすめ(Amazonライブリンク)
      • Google ADS機能
  • 機能拡張の仕様 \設定部や日記執筆部の項目をプラグイン式にするなど
  • 入力機能
    • 入力支援機能(色指定など)
    • ユーザー定義タグに色指定機能 β3のタグ拡張にして対応
  • mixiの日記ログ、インポート機能*2
  • スケルトン高速化(forexec)
  • 多重ログインの問題
  • 機能追加
    • 新着があるとすぐに分かるような仕組み
    • 記事ID(diary_pkey)のインポート/エクスポート β4

テンプレート機能自体は、すでに備わっているのですが、直接システムのファイルを触る必要がありまして……。ユーザーがWeb上からデザインを書き換えられる仕組み作成したいなぁーというところですが、セキュリティとの両立がなかなか難しく悩み所です。

追伸。オフラインツールなどの関連ツールを作ろうと思う方が居ましたら、なるべくご連絡ください。目的にあった専用のAPIを実装したいと考えています*3

さらにその他

宣伝(笑) いや重要なんだってば!(激汗

機能要望は

この記事にコメントするか、Trackbackでよろしく。バグ報告などもこちらへ。

*1 : どうしてもサーバに依存してしまうのですが、ここ(blog.abk.nu)に欲しいなぁ。

*2 : backup mixiがイマイチなので悩みどころ

*3 : HTMLをパースするのでは、サーバ側、クライアント側双方にとって非効率極まりないので

2006/05/31(水)インポータ/エクスポータ

インポータ・エクスポータあれこれ

はてな形式エクスポーターを実装しました。結構苦労しましたが、これの元ソースを突っ込んでも、きちんと表示されるぐらいに変換する(でも*見出しや-のリストなどはそのまま残す)ルーチンを作りました。

結局4~5種類のインポート/エクスポートを作成しましたが、かなり気合い入れてます。どうも他のブログシステムだと入力本文によっては自分自身ですらインポートできなかったり*1、改行を<br>に置換するフラグすらまともに設定してなかったり*2、書式を拡張したせいで一部ツールと互換性なくなってたり*3とか、ものによってはファイルフォーマット(形式)だけ変えて中身そのままってそれ変換って言わないですから。

例えば、tdiary2adiaryコンバータのはてな形式変換ならば、tDiaryの入力スタイルを適切に判断して最も近い形のはてな形式に変換、はてな形式→adiaryインポータでは記法の非互換部分を変換ルーチンで吸収(の山*4)、その他インポーターでは特殊な意味をもつ本文入力をエスケープ処理。

エクスポーターでは『使用しているパーサー』と出力方式によって変換方法を切り替えてます。はてな形式への出力に至っては、adiaryなら互換性の高い部分は元の文章をのこしつつ非互換な部分は部分的にパーサーを通して整形し、tDiary形式ならばtdiary2adiaryに実装されているはてな向けコンバータと同様の処理をして、シンプルパーサーならば、はてな向けの特殊記法のエスケープ処理を噛まして……という具合です。

もっともエスケープ処理ぐらい当たり前の話なんですけど、大半のblogはそれすら……(以下略


一応全部(境界条件にて)デバッグしてますが、完全じゃないので、何かうまく行かない問題があったら遠慮なくどうぞ。あと対応して欲しい形式があったら、エクスポートしたログファイルと一緒にどうぞ。

*1 : Movable Typeの「-----」問題、はてなのUTF8問題など

*2 : はてなのMovable Type形式エクスポート

*3 : Serene BachのJUGEM XML。XMLの要素を追加するのは構わないと思いますが、既に定義されているDATEの書式を変更するのは問題かと……

*4 : はてな記法と似ていますが、adiary標準パーサーはできるだけ例外的な処理をなくすという方針のため、非互換部分が結構あります