nDiki : 日記システム

2003年11月20日 (木)

やっぱハイパー日記システム

tDiary に随分傾むいていたのだが。

自分自身の使用としては、

  • tDiary で SUB できない?
  • tDiary で 旬単位表示できない? (月まとめ表示はちょっと大きすぎる気が)
  • tDiary には hns の log.cgi に当たる機能がない?
  • Ruby プログラム、 hack できない (これを機に覚えれば良いのだが)
  • WiKicker との連動コードを簡単に埋め込めなくなる(WiKickerPerl)
  • Unison 導入により hns 関連ファイル管理の整理ができたので、そこら辺が綺麗で気にいった tDiary のメリットが少なくなった。

といった感想。 最初から tDiary だったら問題を感じなかった部分も多いだろう。 慣れの問題。 あとこれから日記システムを提供してあげる予定の Tarebouzuさんに対しては、

  • hns でも tDiary のテーマが使える事が判明した(tdiary-hns-theme 使用)ので、レイアウトの選択肢が広まった
  • hns にも Web インタフェースがあるし
  • hnf 記法の方が、tDiary 記法より簡単 (私が慣れているだけかもしれないが。まぁ教えやすいし。)

といった感想。 で、二転三転したが結局 hns でいこうかと。

hns のセットアップ、theme の入れかえ、mod_rewrite の設定あたりまで終わらせる。 後は、Namazu とかそのあたり。 週末には稼働できるかと。

スポンサード リンク

www.naney.org のファイルを全て Unison で同期

www.naney.org 上のコンテンツは、ローカルで一旦構築したファイル(ディレクトリ構造)を rsync で1方向に sync している。

しかし細かくみてみると

  • (L) ローカルで xml -> html し、サーバに送るファイル (html/ 以下のファイルなど)
  • (L) ローカル上で直接作成し、サーバに送るファイル (etc/ 以下のファイルなど)
  • (L) ローカルから定期的に送るファイル(webcamの画像など)
  • (S) サーバ上でインストールし、オリジナルがサーバにあるファイル (local/ 以下のファイルなど)
  • (L) サーバ上でインストール後、ローカルにコピーし改変して送るファイル(設定ファイルなど)
  • (S) サーバ上で生成されるファイル (Wikiデータベース、ログなど。var/ 以下)

とかなりかなり混在中。(L) はローカルにマスターがあるもの。(S) はサーバにマスターがあるもの。

できるだけ(L)と(S)を分離するようにはしているのだが(例えばサーバでインストールしたものの中で手元にコピーして編集したファイルは別ディレクトリにまとめておいて、サーバ上ではそちらへ symbolic link を張るとか)、これはこれで訳がわからなくなってしまう訳で。 rsync の実行も --exclude オプションがからみあい、--delete を付けられたり付けられなかったりとちょっとトリッキーな状態。

Unison で同期

日記システム関連の導入検討の前に、一旦ここら辺を整理し簡略化したい。 ということで、これからは Unison を使って www.naney.org とローカルを基本的に同期させてしまう事にした。

これならばどれがサーバオリジナルのファイルで、どれがローカルがオリジナルのファイルか迷わなくて済むようになると。

で、設定。ローカルの /usr/local/www.naney.org ディレクトリで同期させる事にする(ディレクトリ名は実際は違うところ)。 ローカルホストの ~/.unison/naneyorg.prf に

 times = true

 # Roots
 root = /usr/local/www.naney.org
 root = ssh://www.naney.org//home/naney

 # ignore backup
 ignore = Name *~
 ignore = Name .*~

 # ignore files
 ignore = Path .cpan
 ignore = Path .union
 ignore = Path var/log/access_log

 # hns
 ignore = Name referer_log
 ignore = Name referer_batta_log

と書く(ignore は一部抜粋。ディレクトリ等は実際は微妙に違う)。 で、

 unison naneyorg

で同期。 同期処理中に、(ログファイルなど)書き換わってしまうものがあるとそれを含むディレクトリの同期がごっそり abort させられるようなので、ignore を調整しつつ何回か実行して完全に同期をかける。

これで、ローカル・サーバどちらでファイルを書き換えてもOK。

rsync よりパスの指定が簡単だし(rsync はパス指定最後の / の有り・無しでの挙動の違いをいつも忘れてしまうので怖い)、なかなか使い勝手が良いかも。

ちなみにローカルで xml -> html しているファイル群だけは一旦別ディレクトリに生成してから、ローカルの www.naney.org 同期ディレクトリへ rsync で一方向 sync するようにしておいた(その後サーバと同期するという2段階処理)。

はまり所

最初 -times オプションを指定していなかったので、サーバからローカルへ同期したファイルの更新時刻が全て現在のものになってしまった。 後から -times オプションを指定して unison しなおすと、全部再同期しようとしてしまうようだ。 よくわからないので、一旦同期ディレクトリを消して全部取り直し。

[ 11月20日全て ]

2003年12月27日 (土)

[ WiKicker ] 日記機能開発開始

WiKickerMVC2フレームワークから Wiki に依存している部分を分離して、日記システムと共用できる部分をスーパークラス化。

Perlリファクタリングが面倒だよ(名前の変更忘れとかの発見が遅れるので)。


[ DiKicker ]

[ 12月27日全て ]

2003年12月29日 (月)

[ WiKicker ] tDiaryテーマ互換モードの実装

WiKickerベースの日記システム実装に合わせて、Wiki の方も tDiaryテーマ互換モードを実装しておく。

div の追加、class の変更など。 当然ではあるが表示要素が異なるので tDiaryのテーマの要素にうまくマッピングできないものが出てくるな。 どうしたものか。 できるだけ、近そうなものにはマッピングしてみたが。

補助用に複数の外部スタイシートを指定できるようにもしておく。 新し目のCGI.pm だと

 start_html(-style => {-src => [ 'a.css', 'b.css' ]})

のように直接複数指定できるのだが、古いやつだと駄目。-head の方に Link({-rel => 'stylesheet'...}) で複数指定する必要あり。

[ 12月29日全て ]

2003年12月31日 (水)

私的10大ニュース2003

今年の大事件、マイブームなど。

[web] WiKicker 公開

オリジナル WikiEngine 「WiKicker」を公開し、 www.naney.org での運用を開始。 機能追加、負荷軽減など定期的にメンテナンスを継続中。 今年も1年 Wiki の年だった。

12月からは WiKicker ベースの日記システムDiKicker」の開発も開始。

[comp] cool programs

[net] ADSLトラブル

モデム

春の数ヶ月間悩まされ続けた。 一度常時接続に慣れてしまうと、もう戻れない。 結局モデムの故障。 その間「@FreeD」も契約してみたが、ADSL復旧に合わせて解約。

P-in Free 1P

[comp] 適応型ソフトウェア開発

仕事でのソフトウェアプロジェクトでの適用を開始しはじめてみた。

[comp] ThinkPad X31 2672-PHJ

ThinkPad

3年ぶりのメインノート PC の買い換えPentium M 1.6GHz + 1GBメモリ。 また3年は頑張ってもらわないと。

[camera] TC-1GR1s修理

TC-1 GR1s

愛用のTC-1が故障したため修理修理費16,300円也

GR1s修理

新規に購入したのは、Ai Nikkor 45mm F2.8P(10月12日)、 F3接眼補助レンズドンケ F-2 ぐらい。 あまり散財しなかった。

接眼補助レンズ ドンケ F-2 Ai Nikkor 45mm F2.8P

今年は撮影枚数が伸びず。

近所のミニラボが閉店したのも痛い。

[misc] レザークラフト

昨年買ったままだったレザークラフトセットを使ってレザークラフトを始めた。 パスケース、LEDフラッシュライトケース x 2、ツールナイフケース x 2、露出計ケース などを製作。 最近は何も作ってないな。 また何か作りたい。

LEATHERMAN MICRA 革ケース ツインメイトカバー SureFire エクゼクティブ・エリート E1e + KL1 レザーケース マグライト ソリテールケース Leatherman juice S2 レザーケース Arc-LS 用レザーケース

[misc] LEDフラッシュライト

LEDフラッシュライトに興味を持つ。 SureFire E1e + KL1ARC-AAAArc LSL-P などを購入。

SureFire E1E-HA Arc-AAA Arc LSL-P

[ 12月31日全て ]

2004年2月21日 (土)

[ DiKicker ] 実装作業

コアの部分をガリガリ書く。 以前に想定していたいくつかの仕様を見直し

  • 1日1ファイルではなく、1記事1ファイル
    • 日記システムとしては1日1ファイルの方が書きやすいと思う。ただ各記事の取得が面倒だったり各記事のメタ情報を記述するよい場所がなかったりと問題もあり、今回は記事毎に別ファイルに。
  • 記事IDを任意に。
    • 最初は通し番号にする予定だったが、各記事を個別ファイルにすることで記事順に番号を振らなくてよくなった/振れなくなった。ということでその日の内で任意の記事IDを振れるようにしてみた。
[ 2月21日全て ]

2004年5月11日 (火)

過去の今ごろ

過去の5月11日より。

  • ハイパー日記システムで日記を開始
    • 動的ページ生成型のコンテンツ管理システム(日記システムWiki など)を使い始めたのがこの時。それ以前は静的生成にこだわっていた。負荷やレスポンス速度など考えなければならないこともあるが、コンテンツの管理はぐっと楽に。もうやめられない。
[ 5月11日全て ]

2009年1月19日 (月)

Web 日誌 / Web 日記を書き始めてから10年

当初「コンピュータ日誌」として日付ベースの記事を書くようになって(記事)から満10年。

当初は m4 ベースで HTML テンプレート処理をしていた。 その後記事を XML 形式にし、Perl スクリプトで HTML ページ生成する方式に変更。 2001年5月には Naney's Diary としてハイパー日記システムを使い始めた(記事)。 2004年2月に名前を nDiki と改め、自作 WikiEngine をベースとした日記システム DiKicker で記事を書くようになった(記事)。

文章はあいかわらず上手くなってはいないけれど、書き続けることでいろいろ得ることも多かったと思う。

  • 記事化を念頭に、仕事・生活の中でアンテナを張りより物事を考えて生活することが習慣になった。
  • 自分にとって有用なパーソナルナレッジベースが築けた。
  • 各種 Web 技術をトライする実験場となった。
  • 多少人の役にたった。
  • 多少収入になった。

みんなも書くといいよ。

[ コンピュータ日誌 ]

[ 1月19日全て ]

2013年4月16日 (火)

今日のさえずり: 3年目始めます

2013年04月16日

  • 07:58 2年前ぐらいの日記あげた。
  • 08:04 明日の「おかあさんといっしょ」録画予約した。
  • 09:51 3年目始めます。 (@ 株式会社ミクシィ (mixi, Inc.)) http://t.co/8NJXZ5ppCw
  • 10:19 チタンのスプーン・フォーク・ナイフを家から持参した。これで大丈夫。
  • 13:13 和文タイプライターライクなキーボードが完全普及したら、ブランチ日本語でも許すかも。
  • 13:26 picnic は高かった。 (@ お弁当の大臣) http://t.co/wvcKw0dMIz
  • 14:21 HK 変態仮面、TOHOシネマズ 川崎か。
  • 14:46 ユーザーサポートマネージャーの、この規模のCS部門の戦略立てられる経験てなかなか無いぜっていうセリフに惚れた。
  • 20:30 あした新卒懇親会があるのでひげ剃り買った。
  • 20:38 RT @nissen: あまり信じていただけないのですが、当アカウントは商品・サービスに関する通常のお問合わせも承っております。細かい確認が必要な内容や、お客様情報の照会が必要な内容はお客様窓口へお願いしておりますが、それ以外のことであればぜひお気軽にリプライくださいませ。スミス
  • 21:27 ここ数日マスク無しにしているけど、ちょっぴりアレグラで押さえきれないぐらいはまだ浮遊しているっぽい。
  • 21:43 「課題に対して、どう優先度をつけて解決に導くかを楽しみながらチャレンジできる方に来て欲しいですね。」 / “株式会社ミクシィユーザーサポート・健全化開発エンジニア 転職 求人情報” http://t.co/8tjNlN7h7t
  • 21:50 土曜日の夜に注文した Aterm、届くの6月2日から6月15日ぐらいかぁ。イーサーネットコンバータセットじゃなくて単品ずつで買うと2300円増しだけど明日には届いちゃうのでそっちにするかなぁ。
  • 22:04 注文しなおした。
  • 22:34 ISP も乗り換えようかな。So-net とかどうなんだろ。
  • 22:52 シェアでいくと OCN か。
  • 25:38 日記システムは「システムの寿命よりもデータの寿命を特に重視して設計されていなければならない」と個人的に思ってる。
[ 4月16日全て ]

2013年5月14日 (火)

今日のさえずり: 発車メロディをいい日旅立ちにして欲しい。1分ぐらい停車してもいい。

2013年05月14日

  • 09:22 出勤前に日記システムの不具合が出てるのに気がついて、とりあえず secondary database 削除して家を出た。
  • 11:40 Android 版待ちきれないので iPad 2 にノハナをインストール中。 http://t.co/p6ONuNr0cN
  • 14:05 午後の部。 (@ 株式会社ミクシィ (mixi, Inc.)) http://t.co/SAlc4yvR4q
  • 18:27 うちからだとちょっと遠かった。 / “グリーンセンター” http://t.co/LxbnhvJSgK
  • 19:50 発車メロディをいい日旅立ちにして欲しい。1分ぐらい停車してもいい。
  • 20:12 ワイドハイターEXパワーすげー。 / “拭いても綺麗にならない黄ばんだプラスチックを白くする方法【パソコン】【黄ばみ】【劣化】 - NAVER まとめ” http://t.co/HofIPMw1kn
  • 20:32 サクレレモンにしました。
  • 25:28 ビジネスオペレーション本部を設立。 / “グリー、健全化に関する取り組みを公開 ― 超過課金者1118人に2433万円を返還 (インサイド) - Yahoo!ニュース” http://t.co/vtm59JtdRz
[ 5月14日全て ]

2014年2月19日 (水)

いよいよ WiKicker から WikiEngine のコードを抜いて DiKicker のみにする

2002年10月19日から開発を始めてしばらく公開・運用をしていた WikiEngine だけれど最近は WikiEngine そのものは使っていなくて、今はそのコードをベースに作った日記システムDiKicker 部分しか使っていない。DiKicker の方は自分自身で今後も使っていくんだけれど、さすがにいろいろ古いのでそろそろ大改修しようかなと。基盤部分的には

  • Perl 5.005_03Perl 5.6 系との互換処理を捨てる。
  • 文字列処理をバイナリ文字列ベースから(いわゆる UTF8 フラグ界隈的な)テキスト文字列ベースにする。
  • CGI.pm ベースから PSGI ベースへ移行する。
  • 中間管理用のストレージを Berkeley DB から SQLite にする。

などをして今後も使っていけるようにしたい。既に使っていないアプリケーションとしての WikiEngine 部分は移行させていく手間をかける必要はないと思うので、コードを削除していくことにした。WikiForum 立てるなら既にいろいろ他の選択肢があるしね。

CVS での管理もやめて Git 管理に変更。最後の公開 tarball を展開して git init して最初のコミットとし、その後に変更した作業ディレクトリを Git 側の作業ツリーに上乗せしていったんコミット。あらためて最後の公開コードの上に差分を積んでいくつもり。

[ 2月19日全て ]

About Me

Naney Naney (なにい)です。株式会社ミクシィで SNS 事業の部長をしています。

nDiki1999年1月に始めたコンピュータ日誌を前身とする NaneyWeb 日記(兼パーソナルナレッジベース)です。ちょっとしたノートは nNote にあります。

※内容は個人的見解であり所属組織とは関係ありません。

月別インデックス
Process Time: 0.06298s / load averages: 2.23, 1.07, 0.90
nDiki by WATANABE Yoshimasa (Naney)
Powered by DiKicker