nDiki : 互換性

2004年1月23日 (金)

[ WiKicker ] 憧れのサイドバー

Wiki はまぁ(ユーザからの視点において)シンプルな方が良いと思うのだが、やっぱサイドバーは出せてもいいかな。先日実装したIPC共有メモリを用いた直近のアクセスログ管理を使ってトップランキングも常にチェックできるようにしたいし。

tDiary テーマでサイドバー

レイアウトは tDiary のテーマにまかせる。 現在の blue-feather はサイドバー対応していないようなので、Nana 氏の flower に変更。 Wiki用に若干幅、配色等を修正。

で、WiKicker のフッタファイルに <div class="sidebar">...</div> を作ってそこに Google検索フォーム等を移動。

Access Top 30

IPC共有メモリに置いてあるアクセスログを使って直近300アクセスによるランキングをサイドバーに表示できるようにする。

アクセスログは刻々と更新されるのでトップランキングもできるだけ更新表示させたいのだが、一方各WikiPageはレスポンス向上・負荷軽減のためできるだけ 304 を返したい。

なのでページ中の更新表示させたいトップランキングの部分を、JavaScriptファイルとして別ファイルに生成しておくことにした(いわゆる JavaScript Include)。 HTML出力自体に変更がなくて304を返しても、アクセスログの変更に合わせてJavaScriptファイルだけ更新しておけばクライアント側で表示を更新してくれる。

JavaScript はできるだけ避ける方針できているが、アクセスランキングは付加的情報なのでJavaScript off によって表示されなくてもそれほど問題ないと判断。 document.write だけだから互換性の問題もほとんどないだろうし。

JavaScriptファイルの更新は、RecentLogへアクセスがあった時についでに生成するという形で行うようにしてみた。 一応 cron で1時間毎に

 wget --quiet -O - http://www.naney.org/wiki/RecentLog.html > /dev/null

して、最低でも1時間に1回は更新されるようにしておく。

スポンサード リンク
[ 1月23日全て ]

2004年4月22日 (木)

テストセンター

rimage:http://www.naney.org/img/2004/U/U2004-04-22-0001.jpg 開発しているソフトウェア互換性テストを実施しに、新宿にあるテストセンターへテストセンターへ行くのは昨年の7月以来。

貸し出し機種も随分くたびれてきている感じがするな。 電源供給しない AC アダプタ(接触不良?)用意されてもねぇ。 同メーカーの別の機種も借りていたのでそちらのを流用。 わざわざクレームつけるのも面倒だし。

[ 4月22日全て ]

2005年3月13日 (日)

テスト。More。

WiKicker のテストスクリプトの作成には Perl 5.005_03 でも標準バンドルされている Test モジュールを使用している。 テストのためだけに追加のモジュールを要求するのも悪いかなと思って。

しかし Perl 5.6.2 以降にはすでに標準バンドルされている Test::More にそろそろ移行したい。

5.005_03 で WiKicker を使っている人も少ないようだし WiKicker 0.25 からは Test::More を PREREQ_PM に追加することにしよう。 Test モジュールと Test::More モジュールは互換性がないので、順次テストスクリプトを修正していく予定。

[ 3月13日全て ]

2005年6月6日 (月)

[ WiKicker ] Storable 永続化データの互換性

fkimura 氏から WiKicker の障害レポートをいただいた。 Perl 5.8.6 へ移行した環境で WiKicker 0.26 を試してみたところエラーになってしまうとのこと。

 "Error
 action: do_read: Byte order is not compatible at blib/lib/Storable.pm
 (autosplit into blib/lib/auto/Storable/thaw.al) line 366,
 at /usr/local/lib/perl5/site_perl/5.8.6/WiKicker/DB/File.pm line 161
 at /usr/local/lib/perl5/site_perl/5.8.6/WiKicker/CGI/AbstractController.pm line 93"

(FreeBSD 4.11-RELEASE-p9)

Storableエラーを吐いている。 Storable データ形式に互換性のない環境 (Perl and/or Storable) 変化があったようだ。

例えば Storableマニュアルによれば 64bit integer をサポートするように構築された Perl 5.6.0 や 5.6.1 で Storable 2.02 以前を使って書き出したデータを他の環境で読み出すと 'Byte order is not compatible' エラーが出るとある。

確認したところ前のバージョンは Perl 5.6.2 だそうなので、もしかしたら上記の非互換性にあたってしまったのかもしれない (FreeBSDPerl って 64bit integer サポートでビルドされるようになっている?)。

WiKicker での対応方法

WiKicker で使用している Perlアップグレードで上記問題にあたった場合、一番簡単な方法は Storable で書き出しているページ情報ファイルを一旦全部消してしまうという方法。

WiKickerデータベースディレクトリ (wikicker.database.directory プロパティで指定しているディレクトリ)の下の、info/basic/* を全て消してしまう(一応バックアップとしてコピーした方が良い)。

この場合、各ページの「最終更新時刻、最終更新者名、要約文」が消えてしまうが、これらの消えてしまった情報は次にページを更新した時に最新の情報で上書きされる。

WikiPage そのものおよび古いリビジョンは影響がなく全て残っているので、通常の運用ではまあ許容できる範囲の対処方法か。

情報ファイルを消したくない場合は、コンバートする必要があるけれど古い Storable データを読み出せる環境で export して、新しい形式で書き直す必要があるので作業する人にとってもちょっと面倒かもしれない。いや、新しい Storable ならば $Storable::interwork_56_64bit あたりを使えば両方をきりかえて読めそうであるので、新しい環境だけあればいいのかな。

[ 6月6日全て ]

2005年11月4日 (金)

フルハルタースーベレーン M400 を注文

rimage:/nDiki/Flickr/59871187.jpg

万年筆に興味を持ったので Web でいろいろ調べていたら、森山モデルで有名な万年筆のペン先研磨職人・森山信彦氏の万年筆専門店「フルハルター」が近所にあるというのを発見。

自分用に調整された万年筆。欲しい!

先月 TC-1 で大散財したばかりなので自粛モードのはずなのだが、欲しいものは欲しい。 調整をお願いしてから仕上がりまでの期間を考えるとちょうどクリスマスプレゼントではないか(勝手)。

しばらく前からいろいろ考えた結果欲しいモデルも絞れてきたし、万年筆の世界へ足を踏み入れてみますか。

フルハルター

家から歩いて5分ほど。去年からかかっている歯医者の隣のビル。なんだよく通っているところではないか。 「水銀電池代替アダプター」で有名な中古カメラ屋セレックが以前あったビルである(セレックは東京都大田区西糀谷に移転している)。

11:00すぎぐらいにお店にいくと、既に一人先客がいた。 隣に座って待つ間、話のやりとりを聞かせてもらう。 その後途中、スーベレーン M400 (多分)を受け取りにきた男性や、調整に出していたペンを受けとりにきた男性と森山氏とのやりとりにも耳を傾むける。 いろいろな話が聞けて非常に参考になる。 これフルハルターのスタイル。

その先客は広島から出張できたついでに立ち寄ったそうで、今回が2回目。 スーベレーンM1000グリーンを注文していった。1日の終わりに何とはなしに書くのに使うそうだ。

以下他の人とのやりとりなども含めて聞けた話。

使用方法・メンテナンス

  • キャップをつけて書くか、つけないで書くかなんてその人の全くの自由。そういうのを気にするのは日本人らしい。実際海外の工場の人はその質問を聞いて意味がわからなかったらしい。
  • キャップをつけた方が転がりにくいというメリットがあるけれど、書いていない時はキャップはしておいた方がいいからね。
  • インクを吸入する時はグリップ部分までインクにつけて。
  • 吸入したら少し逆に回して数滴インクを落とすとタレ防止になる (すぐ使うならば不要)。
  • インクを足す時は一旦全て出して。
  • 水洗いはできるだけしない方が良い。

インク

  • ブルーブラックは水に強いというメリットがあるものの、詰まった時などは水洗いではなおらずオーバーホールしなければならなくなるのでお薦めしない。
  • 基本的にペンとは違うメーカーのインクはお薦めしない。ケミカル的な相性があり、組み合わせによっては部品を痛める可能性がある。ただし、ペンはもちろん所有者のものであるので、使うのは全く自由である(メーカーの保証がきかなくなるかもしれないが)。実際、もし壊れたら修理に8千円と聞いて「なんだそれぐらいなら、どんどん使うよ」といったお客もいるらしい。
  • ドイツメーカー(モンブラン、ペリカン)の間でカートリッジの互換性があるのは、ドイツでは小学校万年筆を使わせていてどこでもカートリッジを入手できる必要があるかららしい。そういう意味で、これらのメーカー間では(今後も)お互いに他社のインクを使っても問題が起きる可能性が少ないのではないかとのこと。

調整

  • 調整しても必ず良くなるとは断言できない。使い手の書き癖というのも千差万別。時間をかけてゆっくり書き易いものにしていく。
  • 私の書き癖はまあ特に大きく変わったところもないようだ。
  • もっとも書き方に「普通」というものはなくて人それぞれ違うということにすぎない。
  • 人はその「年齢-5」ぐらいの間ものを書いてきてその人なり書き方のスタイルができあがっている。簡単に変えられるものではない。

選択

用途は仕事でミーティングのメモを取ったりするのが主。 RHODIA の 5mm 方眼紙に書くぐらいの大きさの字で考えている。 候補はペリカンスーベレーン M400 か M600 で考えてきた。

  • 試し書きをした字の感じでは、太さはFぐらいが良さそう。(方眼に)きっちりおさめたいならEFという選択もある、あまり気にしないで書くならFでも。M だとかなり太くなるので向かないであろう。
  • (ここでの)試し書きの紙は普通の紙より太めに書ける。
  • BからFへの研ぎ出しで。
  • M400 か M600 はいい選択ですね。
  • 速書きしますか? 速書きするならば一般に持つ位置が前めで立つ傾向があるので短めでもいいだろうし、遅書きなら逆に持つ位置が後ろめになるので長めがが良いかもしれない。
  • ポケットに入れて持ち歩くか? M600 は胸ポケットに入れると当たる感じがするかもしれない。

持った感じは M400 でも M600 でもどちらも違和感なく、馴染めそうであった。 うかがった話を参考に今回は M400 を選択。

ちなみにフルハルターでのお薦めはペリカンとアウロラ。

万年筆業界

  • 最近は100円ショップも増えて文房具屋も儲からなくなってきた。
  • 進学の際のプレゼントとして万年筆が売れていた昔とは違い、万年筆も売れなくなってきている。高いしね。もちろん一生使えるものと考えれば決して高くはないのだけれど。それで毎回書く楽しみが味わえるなら幸せなことだね。
  • フルハルターも開業当初はお客が少なかった。最近は万年筆に興味を持った人がネットでフルハルターを見つけて来店してくれる。雑誌などでは読んでも来る人は多くなかったけれど、ネットの場合は「欲しいと思った人」が検索してホームページを見て来店してくれる。
  • フルハルターのサイトは当初知人が管理されていたそうだが、その人が海外にいかれた後は、奥さまが更新されているそうである。

大井町

結局12:30までゆっくりおしゃべり。 仕上がりは1カ月ほどを見てくださいとの事。

森山氏は物腰のやわらかく押し付けることのない、それでいて万年筆への造詣と哲学をもっている素敵な方であった。 万年筆の仕上がりが楽しみである。

[ 11月4日全て ]

2006年7月3日 (月)

自前 PPM リポジトリの管理

Windows Perl アプリケーション用に PPM リポジトリを久しぶりに整理。

自分が使用する PPM パッケージは以下の理由から、以前より基本的に自前でビルド/保存し PPM リポジトリをローカルに作成するようにしている。

  1. 後でオフラインでインストールできるようにする。
  2. 「公開リポジトリが無くなった」あるいは「公開リポジトリに欲しいパッケージが無くなった」時に困らないようにする。
  3. 動作確認された組み合わせでの PPM パッケージセットを作成・保持できるようにする。
  4. ライセンス的にクリアなものだけを含むリポジトリを用意する。 (芋蔓式インストールで、ライセンス的にクリアでないパッケージが入ってしまうのを防ぐ)。

手元では以下のように管理

 PPM
  |-- <category>
  |   `-- 8xx
  |       |-- <projects A> [ 公開 / export ]
  |       |   |-- module1.ppd -> (A)
  |       |   |-- module1.tar.gz -> (B)
  |       |   `-- ...
  |       `-- ...
  `-- pool
      |-- module1-x.yy
      |   |-- module1.x.yy.tar.gz
      |   |-- some documents...
      |   `-- build817
      |       |-- module1.ppd (A)
      |       `-- module1.tar.gz (B)
      `-- ...
pool
  • pool ディレクトリに「[モジュール]-[バージョン]」ディレクトリを作成する。同じバージョンでも、異なるバージョンは両方とも別々にキープしておく。
  • その下にソース tarball を置く。
  • ライセンス情報ファイルなども置く (touch Perl-License 等空のファイルを作成しておく)
  • PPM パッケージPPM::Make で作成し、その時に使用した ActivePerlビルド番号別にサブディレクトリを作って .tar.gz と .ppd を置く。
リポジトリ
  • ActivePerlビルド番号別にリポジトリを作成する。基本的には 6xx 系、8xx 系それぞれの中ではバイナリ互換性がある (PAR などは、ビルド番号に1対1でしか互換性がない)。
  • 必要に応じてカテゴリ別サブディレクトリを用意 (アクセス制限の都合などにより)
  • 必要に応じてプロジェクト毎にサブディレクトリを用意 (プロジェクト毎にパッケージセットを作るため)
  • リポジトリディレクトリからは pool 内の .ppd、.tar.gz へシンボリックリンクを張る。欲しいモジュールのバージョン、ビルド番号を選んでリンクする。
公開
  • SambaApache などで、PPM ディレクトリ全部あるいは特定のリポジトリ部分を公開する。
  • 必要なら export して別サーバに置く。rsync や cp の -L オプションでシンボリックリンクを実ファイルに置き換えてアーカイブを作成する。
[ 7月3日全て ]

2006年9月20日 (水)

Impress を使ってみたいけれど今回は PowerPoint

明日は久しぶりにスライドショープレゼンテーションOpenOffice.org Impress でスライドを作ろうかと思ったけれど、互換性フォント問題に不安があったので、結局 PowerPoint で作成。

作成は Impress で行い OpenOffice.org 無し環境へは何かの形式でエクスポートして提供するようなスタイルにしたいところ。

ただし、これはこれで組織内で編集できる人がいなくて自分の仕事が減らないという罠。 OOo をはやらせるか。

[ 9月20日全て ]

2008年1月15日 (火)

今日のさえずり: もりもり加湿中

[ 1月15日全て ]

2009年2月19日 (木)

Impressive - PDF ファイルでプレゼンテーション

先週 IDEA*IDEA で紹介されていたプレゼンテーションソフトウェア「Impressive」が良さそげだったので、少しずつ触ってみている。

PDF ファイルでプレゼンテーション

PDF ファイルでプレゼンテーションできるので、PowerPoint / PowerPoint Viewer 不要。PowerPoint互換性による見えの違いも気にしなくて済む。

インストール不要

Python で書かれているが Windows 版のバイナリパッケージが用意されていて、配布されているパッケージを展開するだけで使える。ポータブルアプリケーションとして、USB メモリに入れておけばいつでも使える。

impressive.exe に PDF ファイルをドラッグ&ドロップすることで起動できるが、プレゼンテーション時にそれをやるのはちょっとスマートではない。 引数に PDF ファイルを指定して PStart あたりから起動するのがいいと思う。

Linux でも動く

ページ遷移・全スライド一覧が格好良い

ページ遷移が格好良い。OpenGL を使ったエフェクトで PowerPoint にはない一味違った表示ができる。

PDF ファイルのファイル名が slide.pdf ならば同じディレクトリに slide.pdf.info というファイル名で設定ファイルを書いておくと、実行時に一緒に読み込んでくれる。 めくる感じのエフェクトでページ遷移させるならば、以下のようなファイルを用意しておく。

 # for Impressive
 AvailableTransitions = [ PageTurn ]

また Tab キーを押すことで全スライド一覧表示に切りかわるのだが、これがズームですっと表示されるで格好良い。見れば良さを実感すること請け合い。

キー・ボタン操作のバッファリングには注意

起動すると impress!ve ロゴが表示されるのだが、その後最初のページが表示されるまで少し時間がかかる。 最初のページのロードが終わるとスライドショーが始まるのだが、自分はその前に impress!ve ロゴ画面でつい1ページ送ろうとマウスの左ボタンを押してしまった。 そうすると入力がバッファリングされていて、開始後2ページ目までに飛んでしまう。 この点については注意が必要だ。

特徴はこんな感じ。PowerPoint ラブではない*1ので、今後プレゼンテーションの際は使っていきたい。

*1とはいえ明日のプレゼンテーション資料は PowerPoint で作って PDFCreator で PDF ファイル化したのだけれども。

[ 2月19日全て ]

2010年11月15日 (月)

今日のさえずり: なんで事務系の IT 詳しくない人が Google Chrome 使ってるんだよ

2010年11月15日

  • 07:12 ぼちぼち起床。
  • 07:15 もしかして twicca って戻るボタンで閉じきっちゃうとアプリケーションが終了して定期新着チェックが働かなくなるのかな? #twicca
  • 08:02 何このぶ厚さ! (かなり久しぶりに4枚切り食べてる)
  • 10:55 なんで事務系の IT 詳しくない人が Google Chrome 使ってるんだよ。Internet Explorer を使ってください。
  • 11:04 ブラウザの互換性を理解している人は OK。事務系サイトの Web ブラウザ未対応にはまる人は NG。RT @Naney: なんで事務系の IT 詳しくない人が Google Chrome 使ってるんだよ。Internet Explorer を使ってください。
  • 15:18 なんでうちのオフィスは「重複」を「じゅうふく」と呼ぶ人が多数派なの? やめて伝染る。
  • 18:00 perlbrew install perl-<version> --as myproject-perl すると --as の名前の入ったディレクトリ名で -Dprefix されるのね。同じ Perl バージョンで別々の Perl を入れられることを確認。
  • 19:31 Mojolicious::Lite + Mojolicious::Plugin::Xslate で layout を使った時に、レイアウトテンプレート側では <: $c.content | mark_raw :> で受けとれたけれどこれでいいのかな?
  • 19:33 それと Mojolicious::Lite でのレイアウトテンプレートファイルを置く場所でちょっとはまった。直下の layouts/ ではなくて templates/layouts/ 以下に置かないと駄目だった。
  • 20:56 @__gfx__ ありがとうございます。Mojolicious::Lite の Pod ドキュメント見て最初 Xslate でも <: $content :> で参照できるのかと思ってましたがそうではないんですね。
  • 21:01 @__gfx__ content ヘルパが Mojolicious::Plugin::DefaultHelpers にあるというところまでは辿りついたのですが、どう処理が流れるのかまでは追ってなくて。
  • 22:16 @__gfx__ そうですね。layout にこだわりは無いので Xslate の機能使おうと思います。
  • 22:37 この間車がぶつかって曲がったポールがまた斜めってる。ライトの破片があるし、またぶつけられたな。
  • 23:59 Skype for Android 1.0.0.614 インストールしてみた。PC 上の Skype for Linux と通話できることを確認(Wi-Fi 接続)。ハウリングしたので音質はよくわからん。起動しておくと電池食うのかな? #Xperia
[ 11月15日全て ]

About Me

Naney Naney

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

About nDiki

nDiki1999年1月に始めたコンピュータ日誌を前身とする NaneyWeb 日記(兼パーソナルナレッジベース)です。

#nNote タグがついている記事は他の記事に比べて、より断片的・未整理・不完全なちょっとしたノートです。まだ結論に至っていない考えなども含まれます。頻繁/大幅に更新したり削除したりすることがあります。

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

Other Notes

ナレッジベースアプリケーション Obsidian で書いているノートの一部を notes.naney.org で 公開しています。

月別インデックス
Process Time: 0.063964s / load averages: 0.30, 0.38, 0.33
nDiki by WATANABE Yoshimasa (Naney)
Powered by DiKicker