hiromasa.zone : o)

2007/5/22 Tuesday 投稿時の月齢:5.9  月名:六日月  潮汐:中潮 Moon:5.9[六日月]今日の心技体 : 好調前不安定期好調期好調期

Web アプリケーションとユーザインターフェースの退化 このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加

日記 - 晴れ ひろまさ @ 15:47

アプリケーションの Web 化の流れが始まって、早 5、6年。 クライアントサーバ型のアプリケーションからの移植の案件もずいぶんありましたが、Web 化されるにあたって、こと業務用アプリのユーザインターフェースについては、操作性、生産性とも間違いなく退化しています。

たとえば、ちょっと前に仕事で書いた Web システムの一部、たった “1画面” の例。 クライアントサイドだけみて JSP(HTML) + JavaScript だけで軽く1万2千ステップを超えていました。 量の雰囲気だけつかんでもらうとすれば、WordPress は全体ステップで 8万ステップです。 おまけに画面をつくるのに全部ソースコード手書き。

ありえね~

なんだかんだ全部で 1/人月くらいかかっていると思いますが、同じ画面を Visual Basic でかいたらおそらく 1週間でできます。 ごくごく単純に言えば 1/5 の値段でできるわけです。

HTML の貧弱なフォーム機能と JavaScript / DOM による複雑な制御。 また、それらをつくるのにろくな開発環境がありません。 コンピュータ業界みわたしても、 XML (XHTMLね)とプロパティ(CSSね)を1から手書きするなんて分野は、Web だけです。 みんな慣れてしまって忘れていますが、これはかなり異常なことです。

…Web でやる必要ね~じゃん。。

って言いたいですが、今 Web を捨てるとなると形態がクライアントサーバシステムとなり、過去の過ち再びです。 前にもちょっと書きましたが、業務アプリケーションにおける Web 3層というのはクライアント(ホスト)、サーバの役割分担のバランスがうまくできていて、システム全体としては良い方式だと思います。

…クライアントサイドのユーザインターフェースの構築をなんとかすればいいんだ。

ってことで最近出始めているのが、RIA 技術。 リッチインターネットアプリケーション。 Adobe の Apollo や Microsoft の silverlight(WPF/E) とか、Mozilla の XUL も使おうと思えば使えます。

“インターネット” ってついちゃっているので、既存の Web の置き換えみたいに見えて、もちろん Adobe / Microsoft のプレゼンをみるとそれをねらっている節もあるわけですが、上記の通りまずはイントラネット内の業務用アプリケーションの構築用技術として使い始められるのではないかと思います。 業務用アプリにおいて RIA 技術は救世主にみえます。(特に Microsoft は得意分野でしょう)

それぞれ基盤となる技術は、 XML + DOM + JavaScript 。 + AJAX …とこの場合いうかわかりませんが、JavaScript から通信して表示を DOM で表示をかえるようなイメージになると思います。

DOM…。 Document Object Model というのは、プログラム言語から XML(ここでは画面) を操作するための規格の一つです。 これがまた、なかなか複雑。

じゃーってことで、Sun Microsystems からでてきた RIA、JavaFX。

【ハウツー】JavaFXの実態を暴け! JavaOne 2007で発表されたばかりの新RIA言語を試す (1) JavaFXの特徴 | エンタープライズ | マイコミジャーナル

補足すると、JavaFX Scriptは、Swingのようにプログラムを手続き的に記述してUIを構築するのではなく、UIコンポーネントの構造に近い形で”宣言的”にプログラミングできる。宣言的なUIプログラミング言語としてはAdobeのMXMLやMicrosoftのXAML、MozillaのXUL等があるが、それらと一線を画すのは「XMLベースの言語ではない」ということだ。

DOM 不要 XML じゃない UI 定義言語。 しかも、データ制御系に強そうな言語仕様です。 Java2D を使ったデモは Adobe 対抗みたいにみえますが、Java のフォームである Swing をそのまま使えるところをみると、Sun Microsystems だけにかなり業務アプリケーション向けをねらっているように思えます。(なぜか Microsoft の silverlight は Windows.Forms がまだつかえないようだ)

たとえば、ツリーとか Swing のフォームがそのまんま使えます。 これを DOM でやろうとしたらどんだけ大変なことか。

JavaFX

いまや業務用アプリケーションバックエンドのデファクトをとった Java。 最近は C# におされぎみですが、それでも Java の技術者はごまんといます。 既存の技術者を即投入できる JavaFX はもしかしたら、業務用アプリのフロントエンドをとるかもしれません。

まだ、early version で実行インフラも整っていませんが、そのうちリリースされるでしょう。 🙂

openjfx: ホーム

Project OpenJFX is a project of the OpenJFX community for sharing early versions of the JavaFX Script language and for collaborating on its development. In the future, the JavaFX Script code will be open sourced. The governance, licensing, and community models will be worked out as the project evolves.

企業からでている RIA で唯一オープンソースです。 すでに上記からランタイムや Eclipse のプラグインがおとせますので、ちょっと試してみることができます。 Eclipse では、実行するときに以下の設定が必要です。

JavaFX

書くまでもないかもしれませんが、ふつうの Java のプロジェクトを作成し、ファイル、新規追加で JavaFX ファイルを、実行するときは、引数につくった *.fx 名をかいてあげます。

なくならないと思っていた、固定電話がなくなりました。 つぶれないと思っていた銀行がつぶれました。 ライバルだったゲーム会社が合併しました。 もう、世の中何がなくなるかわかりません。

ここは特に進行が早いコンピュータ業界。 次になくなるのは案外 “Web ブラウザ” かもしれません。

なんて、ね。(笑)

2007/5/21 Monday 投稿時の月齢:4.3  月名:五日月  潮汐:中潮 Moon:4.3[五日月]今日の心技体 : 好調前不安定期好調期好調期

WordPress のオブジェクトキャッシュ このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加

日記 - 晴のち曇(21/8) ひろまさ @ 2:20

たしか 2.0 からだったと思うのですが、WordPress には内蔵のキャッシュ機能が実装されています。 この機能を使うと、サーバの環境によっては表示速度などが速くなる可能性があります。 wp-cache というプラグインもあって混同しやすいですが、こちらはコア実装のキャッシュです。 ここでは区別するたびに、オブジェクトキャッシュと呼んでみます。

Function Reference/WP Cache ≪ WordPress Codex

WP_Object_Cache is WordPress’ class for caching data which may be computationally intensive to regenerate dynamically on every page load. It’s defined in wp-includes/cache.php.

Do not use the class directly in your code when writing plugins, but use the wp_cache functions listed here.

Caching is not enabled by default. Add define(‘ENABLE_CACHE’, true); to your wp-config.php file.

使うにはいくつか条件があって、

  • PHP の SAFE MODE がはいっていないこと。
  • wp-content/cache ディレクトリに書き込み権限がついていること。
  • wp-config.php に上記 ENABE_CACHE 定数の定義があること。
  • wp-setting.php 等に DISABLE_CAHE の記述がないこと。

という条件で利用することができます。 日本のレンタルサーバでは、ロリポップ、さくら等が大丈夫そう。 使っている方の多い XREA は SAFE MODO のため残念ながら使えません。(といっても XREA はもともと速いので問題ではないと思いますが)

基本的に、 (共有レンタルサーバでは)MySQL への SQL 発行より、別でファイル I/O して PHP のメモリにキャッシュしたほうが高速であろう、という思想の元作られている機能なので、MySQL が遅くない場合は、逆にオブジェクトキャッシュするほうがパフォーマンスが悪くなる可能性もあります。

WordPress MUのキャッシュ機能でパフォーマンス向上 – WordPress MU & Smarty Factory

WordPress MUには、パフォーマンスを向上させるためにキャッシュ機能というのがある。

この機能を有効にすると、wp-content/cacheディレクトリ内に、中間コードらしきファイルが生成され、「微妙に」パフォーマンスが向上する。

先に申し上げておくと、Apacheベンチの結果では、効果はイマイチ。
うちのサーバーでは、MySQLのクエリーキャッシュを有効にしているので、そちらのほうが遥かに大きな効果が得られた。

WordPress MU & Smarty さんでも指摘があるとおり、MySQL のクエリーキャッシュのほうが相当パフォーマンスがでると思います。

とはいえ、いろんなユーザがはいっている一般的な共有サーバでは MySQL のクエリーキャッシュがどの程度効くのか未知数の ところもありますので、ものは試しでこのオブジェクトキャッシュをいれてみても良いかもしれません。

ちなみにうちは、 30 クエリーほどだったのが、オブジェクトキャッシュをいれてからは

16 queries. 0.346 seconds.

半分くらいになっています。

trac をみていると、ENABLE_CACHE しているときだけ再現する不具合もあり、キャッシュの性格上諸刃の剣の部分もありますが、ちょっとでも速くしてみたい方はお試しください。 🙂

2007/5/20 Sunday 投稿時の月齢:3.5  月名:黄昏月  潮汐:中潮 Moon:3.5[黄昏月]今日の心技体 : 低調期好調期好調期

WordPress 2.0.10 から 2.2 へ このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加

日記 - 曇のち晴 ひろまさ @ 7:01

hiromasa.zone を WordPress 2.0.10 から 2.2 へアップグレードしてみました。 久しぶりに手応えのあるインストールでした。 🙂

とりあえず、MySQL の要求バージョンが4.1 系にならず4.0 系のままとなったのでここのサーバにもインストールが可能。 問題はメモリ利用量の増加でした。 おそらくこのサーバの PHP の memory limit は 8M。 いままでも Google Sitemaps やアーカイブ系のプラグインで落ちていたりしましたが、今回は 2.2 インストール後の upgrade.php が実行できず。。 orz

たまに、管理画面のリンク押下なんかで .php のファイルがダウンロードされてくるのをみたことがある方もいるかもしれませんが、あれはほとんどの場合、PHP のメモリリミットオーバです。 途中で処理が切れてしまうので、content-type がうまくかえせずファイルダウンロードになってしまうようです。

2.2 インストール後、upgrade.php でこの現象が起きてしまいにっちもさっちもいかなくなり、、途方に暮れました…。(おそらく一般的なサーバではこんなこと起きませんのでご安心を) 2.0.10 から 2.2 ではデータベースの形やフィールドの意味が変わっていますので、upgrade.php なしにはアップグレードできないのです。

若干意地になり、upgrade.php の SQL をひっぱりだして直接発行してやろうとしましたが、あまりに多くて挫折。

ならば!

ってことで、サーバの MySQL をエクスポートして、ローカルの MySQL にインポート。 でもって、ローカルの 2.0.10 に読ませて、その上に 2.2 の PHP をアップデート。 十分なメモリで upgrade.php を動作させる作戦に出ました。

WordPress 2.2

まちがって、wp-options までインポートしたり、できあがったローカルのテーブルをサーバにインポートするのに失敗してあせったり、、紆余曲折のもと

成功!

あとは、wp-options の db_verstion 項目を疑似ってアップグレードしたことに WP をだます。。

やぁつかれた。 とおもって管理画面を開いてみたら、今度は真っ白画面。。 根本的に PHP の割り当てメモリが足りないようです。

でかいプラグインをハズしたり、泣く泣くオブジェクトキャッシュを disable にしたり、その他血も涙もないようなことをやって、現在、なんとか動作しています。 👿

とりあえず、ミニマム環境での動作検証も兼ねていたので動いて満足です。 一応、念のため再度書いておくと、こんなことになるサーバはうちだけだとおもいます。(笑)

WP 2.2 ですが、2.0.10 からみると速くなっていますね。 表示も快適になったように思います。 (ちなみに管理画面以外は動くようなので、表示するときはオブジェクトキャッシュをいれいいます)

おそらく安定版になるであろう、 2.2.1 が来月でますので安定思考の方はそちらを。 🙂

2007/5/19 Saturday 投稿時の月齢:2.3  月名:三日月  潮汐:中潮 Moon:2.3[三日月]今日の心技体 : 低調期好調期好調期

Windows Vista とファイルシステム このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加

日記 - 曇時々雨(15/10) ひろまさ @ 2:00

たぶん、一般の PC ユーザが OS の操作で一番とまどうのがファイルの操作です。 はじめて PC のさわる方に使い方を教えることも多いですが、アプリケーションの使い方はすぐわかっても、ファイルシステムに対してすぐ理解ができる人は少ないように思います。

逆に PC をうまく扱える方は、ファイルの概念をよくわかっている人です。 ファイル名、拡張子、ツリー構造、そのほかのメタ情報。 そして、これらのうまい配置の仕方です。

Vista

Windows Vista には、WinFS という新しいファイルシステムが搭載される予定で、ぼくは期待していたのですが残念ながら搭載は中止になってしまいました。

WinFS – Wikipedia

このファイルシステムは、マイクロソフトのMicrosoft SQL Serverの次世代版であるYukonの技術を基にしている。WinFSは単にファイルやフォルダ(ディレクトリ)を管理するに留まらず、ファイルシステム自体が検索機能を持ち、様々なタイプのデータを瞬時に取り出すことができるようになるはずだった。 また、WinFSでは、各ファイルの属性を示すメタデータを管理することによりファイルシステム自体が個々のファイルの持つ意味や属性を把握できる仕様となっていた。この機能を利用することによって、個々のファイルの持つ様々な情報を、OSのサービスとしてAPIを通じて各アプリケーションに提供できるはずだった。

Windows の NTFS に限らず、現在の多くの一般的な OS で使われているファイルシステムは、システムファイルとユーザファイルが同一な扱いで同じ構造をしています。 というか、OS のファイルシステムをそのままユーザ用に使い回しています。 まずこれがわかりづらい原因の一つ。 システムの生ファイルシステムはユーザサイドには隠蔽したほうがいい。

そして、ファイルに付与される情報は本来OS用の、ツリー構造と、ファイル名や拡張子や日付、所有者等のごくごく限られた付加情報です。 これだけの情報で、膨大な数のファイルの管理をしろというのですから、ある程度の経験が必要です。

現在のファイルシステムの本筋であるツリー構造が悪いと言っているわけではなく、ツリーだけではなくてそのほか多くのビューを提供したほうが分かりやすいと思うのです。

音楽ファイルの管理では iTunes が人気ですが、このソフトはファイルシステム外、音楽ファイルのタグ情報などで多角的なビューを実現しているためだと思います。 ツリーの物理的な場所の意識を意図的に消せるのです。 WinFS はファイルシステム自体でこれを実装しようとしていました。

Windows Vista は WinFS の実装がされなかったため、擬似的に既存のファイルシステムを使い、インデックスサービスやシェルの拡張によりユーザから OS 的なファイルシステムを隠蔽しようとしています。 ただね、わかる人にはほころびが見えてしまうと思います。 検索速いので、まーいいんですが、

どきどきしねーんだ、これが

Windows 95 は Windows 3.1 では標準ではなかった TCP/IP スタックを標準装備しインターネットブームもあいまって爆発的な普及をなしとげました。 Windows 2000 は Windows NT コアにマルチメディア性能も付与し、会社内用 PC に深く浸透しました。

次に天下を取る OS はファイルシステムのデファクトをとった OS だと思うんですよね。 まぁ FS に直接これらをのせるのは、技術的には諸説紛々、よくないといわれることもあります。

でも、それでも多角的なビューがファイルシステムに実装がされ、おまけにネットワーク透過になったら。

ちょっと未来を感じませんか。 🙂

2007/5/15 Tuesday 投稿時の月齢:27.6  月名:二十八日月  潮汐:中潮 Moon:27.6[二十八日月]今日の心技体 : 低調期好調期好調前不安定期

ヘビーなエントリが続いたので… このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加

日記 - 曇のち晴(17/11) ひろまさ @ 1:43

なにやら最近書くのとか調べるのとかに、数時間~半日かかっているヘビーなエントリが続いていたので、一休み。。 🙂

赤エビスがなくなってしまって困っている方に朗報。 会社の先輩に教えてもらいました。

サントリー

えーと、サントリーの、、くまさん。。 名前がよくわからん。 輸入ビールのようですが、コンビニにおいています。 琥珀色の味がしますので、お好きな方は是非。 ぐびぐび。

ぐびぐび

ぐびぐび。 外で飲むな。 (←やってもいい特別な日のネタ写真ですので念のため…

2007/5/13 Sunday 投稿時の月齢:26.4  月名:二十七日月  潮汐:中潮 Moon:26.4[二十七日月]今日の心技体 : 低調期好調期低調期

FM 音源の曲をリマスタリングしてみる。 このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加

日記 - 曇り ひろまさ @ 20:49

FM 音源という YAMAHA がつくったシンセサイザーがあります。 昔の ポップスを聴くと、必ずと言っていいほど入っていたシンセの音色。 YAMAHA DX7 というキーボードに搭載され、やがて PC 用の音源へ。 最近では少し古い携帯電話には必ずといっていいほど搭載された、ベストセラー音源です。

今は PCM 音源全盛になってしまいましたが、FM 音源の金属的な音や、柔らかいオルガンのおと、2音デチューンしたエコーリードなんかは、今でも心地よい音です。

最近、同僚の方が昔 FM いじってゲーム音楽のコピーしていたことが発覚し、いろいろ話しているうちにあのころは楽しかったな~と感慨深く。 じゃーってことで、うちにある手持ちの FM 音源のデータを最新テクノロジーでよみがえらせてみることにしました。

使ったのは、MS-DOS 時代一世を風靡した FMP というサウンドドライバーとデータ。 これと WinAmp の FMP 用プラグイン、あと出力を wav ファイルに書き出す out_disk プラグインを使うとフルデジタルで録音できます。 昔はこれができなかった。

でもって、ちょっとコンプかけて、MP3 に圧縮。 MP3 圧縮は FM や PSG など発生数のが少ない楽曲の場合、気をつかって圧縮パラメータきめてあげないと、明らかに音が変わってしまいます。 ホントは FLAC とか可逆圧縮つかったほうがいいです。(手持ちのデータは FLAC 化した)

で、できました。 🙂

FM 6声 + PSG 3 声ですね。 昔のPC ゲームはこういう音だったんです。 やっぱり今聴いても良い。 🙂

エレキギターは、非日常的な音が出るから流行った。

とエレキギターの偉い人が言っていました。 それを聞いて、ぼくにとっての非日常的な音は FM 音源だったのかな、と思ったのです。

PC からのアナログ出力を強引にコンポにつなぎ、FM で遊んでいた小学校、中学校時代。 目をつぶってこの音色を聴くたびに、ちょっと”あのころ”に戻れるのです。

WordPress 2.2 の新機能 (2) このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加

日記 - 曇り ひろまさ @ 16:21

寝ている間に RC2 がでたというオチはとりあえずおいておいて。。

昨日は enhancement のチケットをひろったので、今日は task のチケットを。 実は widgets 機能がこっちにはいっていたという… (miyoshi さんありがとうございました!)

では、はりきっていきます。

  • wp-admin.css のクリーンアップをしました。
  • auther の private な投稿を取得できる get_private_posts_cap_sql() 関数が実装されました。
  • upload.php で正しく引数を受けていない部分があったのを修正しました。
  • quictags.js がスクリプトローダによる i18n に対応しました。
  • カテゴリをタグに変換する機能の実装をしました。(2.2 は未実装)
  • app.php を ap-app.php にリネームしました。
  • automattic の widgets の実行環境をコアに実装しました。

昨日、widgets について default、classic テーマの対応の言及しかみつからなかったので、おかしいなと思っていたのですが、コア対応の機能追加がここのチケットにいらっしゃりました。 wedgets 対応テーマも増えそうですね。

さて、昨日おでさん とハマっていたのですが、今回の修正点のひとつに quicktags.js の国際化があります。 この修正により、使っている方も多い comment quicktags プラグインが正しく動作しなくなると思いますので、対応方法を書いておきます。

quicktags.js の修正内容ですが、JavaScript の i18n の方法が変わり、別 JavaScript(script-loader.php)により事前に i18n された文字列を変数に設定し、その変数を quicktags.js が使う形になっています。 管理画面はこの設定がされているので問題ないのですが、通常のエントリ表示画面ではこの設定がされないため、通常のエントリ画面でも quicktags.js を使いたい comment quicktags は、変数が undefined しうまく動作しません。

というわけで、comment_quicktags.php の comment_quicktags 関数の直下に wp_print_scripts( ‘quicktags’ ); を挿入することで動作できます。(i18n 変数を設定する)

  1.  function comment_quicktags($unused) {
  2.      wp_print_scripts( 'quicktags' );

…あとは、defect チケットにあるのですが、投稿画面で ifreame プレビューがなくなりリンクになっていたり、バグあつかいでの細かい修正点がまだまだあります。

RC2 が今朝でたようですので、新しもの好きの方はコードみてみてください。 🙂

2007/5/12 Saturday 投稿時の月齢:25.4  月名:二十六夜  潮汐:若潮 Moon:25.4[二十六夜]今日の心技体 : 低調期好調期低調期

WordPress 2.2 の新機能 このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加

日記 - 曇時々晴 ひろまさ @ 21:59

てなわけで、RC1 がでましたので WordPress Trac から WP 2.2 で fixed になっている Type enhancement のチケットをひろってみました。

テーブルタグかくの大変なので、カテゴリなし箇条書きでご勘弁を。 ちなみに、以下は subvertion のソース差分から反射的に書いているだけで、どこかの翻訳ではないです。 間違っているところはあると思うので、そんな感じでご利用ください。 🙂

  • ポップアップコメントフォームでログインユーザ名の自動挿入が有効になりました。
  • wp_get_archives の SQL を hook するフィルターが追加になりました。(getarchives_where, getarchives_join)
  • パーマリンク構造でスラッシュの扱いがWP依存になっている部分があるのを修正しました。(たぶん)
  • ATOM の出力が 1.0 に準拠するようになりました。
  • ATOMベースのコメントフィードの出力ができるようになりました。
  • フィードの title 部分に wp_title 相当の文字列が追加されました。
  • アップグレード画面のユーザインターフェースが変更になりました。
  • コメント RSS ファイルのクリーンナップを行いました。
  • カスタムタグフィールドに the_meta_key フィルターが追加されました。
  • wp_list_bookmarks の出力タグに class 指定が加わりました。
  • コメント通知のメール文言を修正しました。
  • deleted_post アクションが追加になりました。
  • 削除ボタンを押下したときに、草稿でも投稿でも、”投稿”を削除しますかと表示されているのを修正しました。
  • 管理画面のプラグインページに、プラグインをすべて非活性にする機能が追加になりました。
  • 続きを読むを出力するときのタグを valid にしました。
  • get_links_list テンプレートタグ内に、link_category、link_category、link_title、link_description、link_category フィルターが追加されました。
  • users.php のメッセージから不要なホワイトスペースを削除しました。(i18n 関数内)
  • ログインフォームのアクセシビリティーを改良しました。
  • prototype.js を 1.5.0 にアップデートしました。
  • I18n で同一文字列で異なる場所で使われた場合に意味が変わる文言について、| 区切りの後ろに識別子をいれることで使い分けができる _C() 関数が新設されました。
  • 新しい blogger のインポートが実装されました。
  • TinyMCE が 2.1.0 にアップデートされました。
  • template-loader.php で exit になっちゃっているところを return にしました。
  • wp_die() にわたす引数に WP_Error オブジェクトを渡すことができるようになりました。
  • 管理画面のカテゴリ編集部分のソート順を改良しました。
  • plugin.php で PHPDoc 形式のコメントに対応しました。
  • 互換性のためにとってあった $table* 系の変数を削除しました。
  • class-pop3 を 1.10.2.9 にアップデートしました。
  • プラグイン適応ロジック(apply_fillter)について、コードの最適化を行いました。
  • スクリプトローダによる JavaScript の i18n が実装され、JavaScript からローカライズ用の PHP が取り除かれました。
  • Strpos 関数のほうが速いので substr で文字列の判定を行っている部分を修正しました。
  • 管理画面から不要な <br /> を取り除きました。
  • vars.php の USER_AGENT 条件分岐をクリーンアップしました。
  • WP_SITEURL、WP_HOME 定数が定義されている場合、オプション画面より優先されるようになりました。(商用利用のため?)
  • WordPress エクスポータに menu_order と page_name が追加されました。
  • xmlrpc.php のホワイトスペースを取り除きました。
  • 管理画面でコメントを削除したときに、遷移後の画面で削除数分、次のコメントが表示されるようになりました。
  • default と classic テーマが widgets 対応になりました。
  • wp_delete_link 関数に wp_delete_link hook が追加になりました。
  • UTW Tag Importer が実装されました。(チケットは残っているけど、RC1にはなし)
  • get_the_tag 関数が追加になりました。(チケットは残っているけど、RC1にはなし)
  • wp_tag_cloud 関数が追加になりました。(チケットは残っているけど、RC1にはなし)
  • XMLRPC の dateCreated で GMT を使うようにしました。
  • url_to_postid フィルターが追加になりました。

下の方にあるタグ機能、チケットは残っていますが、RC1 には入っていないようです。 (2.3 いきだよね? なんかよーわからん。) あと、MySQL の要求バージョンの変化もないようです。

とりあえず enhancement 系には、みた感じドキっとするような機能追加はないようですね。 いくつか気になった点をあげておきます。

i18n で _C という関数が新設になっていて、同スペルで使う場所によって違う意味を持つ場合に | の後ろに識別子をつけて gettext 登録語を区別できるようになりました。 grep してみましたが、RC1 ではコアで使われているところは今のところないようですが、 i18n の方は要チェックです。 🙂

あと、defect のほうにチケットがあると思うのですが、例の XREA – MySQL での文字化け対策がコアにはいりました。 2.2 以降では wp-db.php の修正は不要です。 新規インストールではなにもしなくても化けないハズです。 アップグレードの場合は、wp-config.php に以下のコードを入れてください。

define('DB_CHARSET', 'utf8');
define('DB_COLLATE', '');

これで 定数の値で SET NAMES してくれますので、化けないと思います。

まだ Active チケットがありますのでリリースまでに修正はあると思いますが、とりあえず。 気になる方は trac のほうみてみてください。 🙂

2007/5/6 Sunday 投稿時の月齢:19.3  月名:更待月  潮汐:中潮 Moon:19.3[更待月]今日の心技体 : 好調期低調期低調期

PC で良い音を聞く方法 このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加

日記 - 晴のち曇 ひろまさ @ 18:44

昨日インストールした、MediaMonkeyがなかなか良いので、調子に乗って音質向上を図ってみます。

MediaMonkey

基本的に PC の前にいるときに再生するのは、MP3 形式。 圧縮してしまっている時点で音は変わってしまっているので、ここは割り切り。 好みの音に変えてしまうことで、音楽を楽しむことになります。 とはいえ、外的要因で音がおかしくなるのはちょっと悲しいので、まずは MP3 をストレートに鳴らします。

DTM をやっている方にはおなじみですが、Windows で良い音を鳴らすのに ASIO ドライバを使う方法があります。

ASIOな日々

カーネルミキサーは,サンプリング周波数の違いの吸収や複数のアプリケーションのミックス,音量調節等を引き受けて,プレイヤーソフト側の負担を減らしています。実際,通常PCから出る音の全てがこのカーネルミキサーを通過しています。そのおかげで,サンプリングレートの差異を気にせずに音楽を楽しんだり,ボリュームひとつで全ての音量が調整できたりします。
 ところが,オーディオ的にはこのカーネルミキサーが邪魔者になってしまいます。実際,カーネルミキサーのサンプリングレートコンバーターの性能の悪さが,PCの音の悪さの原因のひとつといわれています。さらには,カーネルミキサーがPCM信号を前提に処理を行っているため,DVDで使われるマルチチャンネルの信号(AC-3,DTS等)がうまく処理されないという事態も起こります。

Windows で音を発声すると遅れが生じます。 これは上記のカーネルミキサーの処理が入るためです。 ASIO はこの処理をすっとばして、一気にサウンドデバイスまで音を送るためのドライバです。 DTM の世界では、ソフトシンセを外部キーボードから操作する場合など遅延が致命的になるので、この仕組みが作られました。(鍵盤押してから一瞬遅れて発声しちゃう)

このカーネルミキサーとばしですが、遅延の解消と同時によけいな処理(カーネルミキサー)で音をおかしくすることも防ぐことができます。 というわけで、DTM だけでなく PC で音楽を聴く人はこの ASIO を好んで使うようです。 ただし、カーネルミキサーが介在しなくなるので、機能的には再生中はほかの音が出なくなったり、Windows のボリュームコントロールがきかなくなったりします。

ちなみに、Mac OS X の場合は、ASIO 相当の遅延を少なくする機能が OS 標準のようです。

アップル – Mac OS X – Core Audio

Core Audio HAL(Hardware Abstraction Layer)は、複数のアプリケーションで1つのデバイスを共有できるようにする一方で、超低レイテンシパフォーマンスを維持します。すなわち、8チャンネルの出力デバイスの1から6のチャンネルをLogic Pro 7などのマルチトラックプログラムに割り当てて、チャンネル7と8をReasonのようなバーチャルな楽器のために取っておくことができます。

ミキサーはつかえるようなのでダイレクト送信ではないようですが、わざわざテクノロジーとしてあげているくらいなので気を遣っていることがわかります。 このへんが、ミュージシャンに Mac が好まれる理由なのかもしれません。 🙂

で、ASIO ですがこれを使うにはまずサウンドカードのドライバが ASIO 対応している必要があります。 うちの USB オーディオインターフェースは残念ながら Vista の ASIO がでないようなのですが、幸い nForce 内蔵のオーディオインターフェースが Vista でも ASIO が動きました。 また、非対応のサウンドカードでも ASIO4ALL というドライバをインストールすることにより、ASIO 化することができるかもしれません。

ASIO4ALL – Universal ASIO Driver
Q: What is this for?

A: If you don’t know why you would need an ASIO driver then chances are that indeed you don’t need one and came here by mere accident.

わらってしまう、FAQ ですがまぁそういうことです。

無事 ASIO ドライバがインストールできたら、次にこれをメディアプレイヤーの出力デバイスに割り当てます。 ふつうの WDM デバイスではないので、専用のプレイヤーソフトが必要です。 WinAmp、foobar、Lilith など主要のメディアプレイヤーは対応しています。 残念ながら Windows Media Player や iTunes はだめです。

ここでは、MediaMonkey を利用しました。 このソフトは WinAmp のプラグインがそのまま動くため、WinAmp 用の ASIO Output Device を使っています。

WINAMP5用 ASIO出力プラグイン (dll version) – おたちゃんのMIDI/Audioソフト

WINAMP5用のASIO出力プラグインです。
このプラグインを使用するには、ASIO 2.1に対応しているサウンドカード・ドライバが必要です。

で Output-plugins の ASIO プラグインの設定から、先ほどインストールした ASIO デバイスを指定します。

MediaMonkey

これで終了。 ついでに、MP3 の input プラグインも標準のものから in_mpeg123 に変更します。(こちらのほうが聞き慣れている)

WINAMP5用 Shibatch mpg123プラグイン 改悪バージョン – おたちゃんのMIDI/Audioソフト

柴田さんが作成、YunaSoftさんとmokaさんが改良したin_mpg123.dll(mpg123ベースのWINAMP5用MP3デコーダプラグイン)を改悪(^^;)するものです。

同じ作者さんで、設定も日本語化されていて便利です。 簡単にギャップレスもできますので良いですね!

MediaMonkey

というわけで、鳴らしてみる。

キター!

フィルターがかっていた音がとてもすっきりしました。 まったく違う音だ。 よい。

というわけで、ASIO 対応のサウンドカードもしくは幸運にも ASIO4ALL が動く方は試してみてはいかがでしょうか。 🙂

2007/5/5 Saturday 投稿時の月齢:18.4  月名:寝待月  潮汐:中潮 Moon:18.4[寝待月]今日の心技体 : 好調期低調期低調期

Windows Vista をインストールしてみる (アプリケーション編) このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加

日記 - 晴時々曇 ひろまさ @ 20:47

よーしだいたいインストールできたゾ。 というわけで、ソフトの見直しもしつつ Vista で環境構築。 こうしてみると、たぶんふつうの人よか使うソフト偏っているからおもしろいかも。 🙂

とりあえず、メッセンジャー系から。 MSN / Yahoo! / ICQ / GTalk、、みんな使っているのが違うので、ひとつでできる互換クライアント Gaim を昔から愛用しています。 最近、名称が変わって Pidgin になりました。 オープンソース。

わはは、なんか変なマスコットキャラきた。 🙂

Pidgin

Pidgin

次。 基本的に Eclipse の上にいるので、おなじみ Eclipse 。 Java は J2SE 6u1 でいこう。

Eclipse 3.2 on Vista。 1時間くらいしか使っていませんが、いまのところうまく動くようです。

Eclipse

次に大切なのは telnet (SSH) クライアント。 teraterm が定番だけど、最近は Poderosa。

Poderosa

FTP クライアントも必要。 FFFTP だったのですが、ここは変更。 sourceforge が SSH なので WinSCP メインでいくことに。 4.0 beta からふつうの FTP にも対応開始。

WinSCP

ファイルバージョン管理。 Subvertion クライアント。 TortoiseSVN。 これないと WP とかオープンソース系の trunk とかみれなくて困る。

TortoiseSVN

画像系。 ここではじめてオープンソース以外。 これもむかしから継続利用、PaintShop。 シェアウェアだったころから使っている気がする。。 継続利用 10年くらい? 🙂

PaintShop

最後に困ったのが、MP3 聴くソフト。 いままでもいまいち決め手に欠けていたのですが、、ようやく本腰をいれて探す。 なんかファイルサーバから、ぽちっておして聴くことが多いのでエクスプローラ風のが良い。

これだ! MediaMonkey。 WinAmp のプラグインもつかえるらしい。 なかなか良いです。

MediaMonkey

あとは定番系。 FireFox 、Thunderbird、ATOK とか、Skype とか OpenOffce とかをいれました。

こうしてみると、なんとオープンソースの多いこと。 こう、なにかあっても修正できる安心感がそうさせるのでしょうか。

とりあえず、これだけ動けば不都合はない。 MIDI シーケンサーがいまいち動かないようですが、そのうちなんとか。 ガジェットとかもおもろいし、引き続き Vista でいってみます。 🙂

このサイトについて

このブログは引っ越しを行いコンテンツはフリーズしています。hiromasa.anotherへどうぞ。

Powerd By WordPress

We (Heart) WordPress

WordPressME Logo
WordPress Plugins

ブログ内検索

Todays Popular

WordPress Ring

はてなリング - WordPress -

情報

20 queries. 0.147 seconds.

このページの先頭へ