TOP > 2007年03月

PHPでDigest(ダイジェスト)認証

2007.03.30 Author: えす

PHPでBasic認証を行うことができますが
PHP 5.1.0 以降であれば、PHPでDigest認証を行うことができます。

続きを読む >>

背景のrepeat画像を一瞬で作成

2007.03.29 Author: たく

ちょっとした作業時間短縮のために 意外と重宝しそうなサイトを紹介します。
Webデザインする上で、bodyなどに使うの背景画像は 一色べた塗りしない限り、
必ず必要なものですよね。
それを一瞬で作ってしまうサイトがこちらです。

http://www.stripegenerator.com/


目的のデザインの
・ストライプサイズ
・カラー
・シャドウ
・ストライプの向き
などの 各メータを調節して書き出すだけで終わりです。

stripe_4324662a4ac93b373a18ab68ab858b94.png

例えばこんなかんじ。

Catalyst3750 StackWise機能 スタック構成について

2007.03.29 Author: hoge

Ciscoネタです。

Catalyst3750をスタックして一元管理できるStackWise機能について、
簡単ではあるがメモとして記す。 ^^;

[StackWise機能 要点]

・ Catalyst3750を最大で9台接続可能。
・ スイッチスタックを単一のIPアドレスにて管理可能。
・ スタックする各スイッチのソフトウェアバージョンは統一とする。
・ リングアーキテクチャ採用の為、スタックケーブルやメンバー障害時、
  ミリ秒単位で切替りが実現可能。
・ クロススタックイーサチャネルが実現可能。
  これにより従来にチャネル技術に加えてシャーシ冗長が実現される。
・ スイッチスタック構成にはスタックマスターが存在し、スタックマスターが、
  L2スイッチング・L3 ルーティング、QoS等の稼動操作を実現する。
・ 12Sモデルをスタックマスターとして他型番とスタックする場合には、
  TCAMテンプレートをデフォルトのアグリゲータ設定からデスクトップ設定へ変更する。

[スタックマスター 選出トリガー]

1 現在、スタックマスターとして稼動しているスタックメンバー
2 スタックプライオリティの値が最も大きな値を持つスタックメンバー
3 標準のインタフェース設定が使用されていないスタックメンバー
4 優先度の高いスイッチイメージ(IOS)のスタックメンバー
 →優先度→
 4-1 暗号化EMI  IOS
 4-2 非暗号化EMI  IOS
 4-3 暗号化SMI  IOS
 4-4 非暗号化EMI  IOS

5 稼動時間が最も長いスタックメンバー

 スタックケーブルで接続した状態で電源を入れた場合、
 10秒以内に立ち上がったスタックメンバーが同時に起動したと認識され、
 そのスイッチスタックでスタックマスターの選出が行われます。

6 最小MACアドレスを持つスタックメンバー

[sdmテンプレート]

例えば12Sモデルと24Tモデルをスタックする際は、
下記のコマンド発行を忘れず実施。

"sdm prefer { default | routing | vlan } [ desktop ]"

[特記事項]

sfpモジュールを搭載するSモデルは、単体での発熱量が非常に高い為、
スタック構成にした時の総発熱量を考慮すべきと考える。
ハッキリ言って、素手では触れない程シャーシが熱くなる事がある。
(体験談)

※参考※
SDM  = Switch Database Management
TCAM = Ternary Content Addressable Memory

JavaScriptのキーイベント・キーを押し続けた場合のブラウザ毎のイベント差異

2007.03.28 Author: たわばがに

ということで、相も変わらず、JavaScriptネタです。
今回は最近非常に気になっていた、ブラウザ毎に異なるキーイベントに関してです。

何らかの処理でキーボード入力を取りたい場合、
onKeyDownonKeyPressonKeyUP
のいずれかを使うと思いますが、普通に押した押してないを判別する程度だったら、
上記のどれを使っても特に影響はないと思います。

しかし、キーをずっと押し続けた状態を取る場合
ブラウザ毎にかなり挙動が変わってくるので、要注意です。

以下、サンプルスクリプト(JavaScript + HTML)。

<html>
<head>
<script type="text/javascript">
<!--
var down  = 0;
var press = 0;
var up    = 0;
document.onkeydown = 
    function () {
        document.getElementById("down").innerHTML = ++down;
    }
document.onkeypress = 
    function () {
        document.getElementById("press").innerHTML = ++press;
    }
document.onkeyup = 
    function () {
        document.getElementById("up").innerHTML = ++up;
    }
//-->
</script>
</head>
<body>
down: <span id="down"></span>回;<br>
press: <span id="press"></span>回;<br>
up: <span id="up"></span>回;<br>
</body>
</html>

これを実行すると、以下のような結果になりました。

【Win IE】
キーボードを押し続けている間、keydown、keypressは連続で発生。
keyupはキーボードを離した際に1回だけ発生。

【Win Firefox】
キーボードを押し続けている間、keydown、keypressは連続で発生。
keyupはキーボードを離した際に1回だけ発生。

【Win Opera】
keydownはキーボード押し下げ時に1回だけ発生。
キーボードを押し続けている間、keypressは連続で発生。
keyupはキーボードを離した際に1回だけ発生。

【Mac Safari】
keydownはキーボード押し下げ時に1回だけ発生。
キーボードを押し続けている間、keypressは連続で発生。
keyupはキーボードを離した際に1回だけ発生。

【Mac Firefox】
keydownはキーボード押し下げ時に1回だけ発生。
キーボードを押し続けている間、keypressは連続で発生。
keyupはキーボードを離した際に1回だけ発生。

【Mac IE】
キーボードを押し続けている間、keydown、keypressは連続で発生。
keyupはキーボードを離した際に1回だけ発生。

というように、なかなか複雑です。
Firefoxに関しては、Win版とMac版で動作が異なっています。
OSもちゃんと見ろ、ってことですね。

以上から、キーを押し続けた状態で変化が出てるのは onKeyDownonKeyPress なので、
OS、ブラウザを判別して処理を適切に切り替えてやれば、動作の差異はなくせます。

以上、微妙にマニアックなJavaScriptネタでした。

Web検定

2007.03.23 Author: ふー

http://www.webken.jp/

というものが出来るらしいです。
とても気になるので記念受験でもしようと思っています。
テキストも4月初売りの新鮮なお受験です。
秋頃には第1回でしょうか。

どこかでちらほら聞いた話では「Webデザインに資格は要らない」
とかなんとか…。
確かに無くても出来ますし、あったって有効期限はほんのひと時…。
検定の存在自体割とチャレンジャーじゃないかと思います。

検定が安定した暁には、
「199○年だったらWeb検定」
みたいなネタも発生したら面白いな、とか。
…でもそれ、作る方は現行の技術調べるより大変?

全貌が見えないので、ひょっとして更新制なんじゃないかと
勝手に予想しています。

勝手に予想するのが好きなふーでした。

CSSこぼれ話:ボックス上下中央寄せ

2007.03.23 Author: たく

CSSレイアウトにおいてボックスを常に中央寄せ表示をさせるには、ボックスの左右のmarginをautoにすれば可能ですが、上下中央寄せをさせるのは通常困難です。
しかし、CSSレイアウトでそれを可能にするのが以下のソースコードです。

HTML

<div id=box>左右上下に中央寄せしたいボックス</div>

CSS

body {

background-color: #cccccc;
margin: 0px;
padding: 0px;
}

#box {
position: absolute;
width: 500px;
height:190px;
left: 50%;
top: 50%;
margin-left: -250px;
margin-top: -95px;
background-color: #ffffff;
}

ブラウザの50%の位置にボックスの左肩が来るように配置し、そこからボックスの幅と高さの半分だけ上に移動させるというものでした。サンプル

アクセシビリティとSEOは、思いやりでつながる

2007.03.22 Author: マル

いつかの夕暮れ頃に現れるWEBシステム企画人のたわいない話、「たそがれ営業部」。しばし、マルにおつきあいください。

さて、弊社社長ブログをご覧になられた方はご存知でしょうが、先日名古屋で開催されたCSSniteに参加してきました。
今でこそプランナーという仕事で、制作から離れて久しいですが、それでもひとたび必要なときには、(なぜか)最新版のDreamweaver8を片手にこつこつ制作作業もしたりするのであります。

今回は、テーマの中でも「アクセシビリティとSEO」というところで、インフォアクシアの植木さんが公演されたのですが、これが参加した一番大きな理由。
弊社業務でもアクセシビリティ、世に言うJISX8341-3の準拠サイトを作るという案件で、公共機関の方々を相手にしております。

アクセシビリティというのは、厄介な話ではありますが、落ち着いて考えれば、非常にシンプルなことで、色々な条件の利用者のことを思いやり、可能な限り多くの方にメッセージを伝えられるようにする、いわば「思いやり・心遣いの表現技術」なのです。

ところで、なぜこのアクセシビリティとSEOがつながるのかといいますと、SEOでターゲットにするYahoo!やGoogleといった検索エンジンのロボットは、一体どのような位置づけなのかということです。
ずばり言いますと、これらは音声ブラウザ(視覚障害者が閲覧に利用するブラウザ)と同じ扱いになります。音声ブラウザの特徴としては、ビジュアルな要素は一切関係ありません。むしろ、情報とそれに加えられるHTMLのタグ構造の関係によって、情報の強弱や相互の情報の関係などが音として伝わります。

検索エンジンのロボットもこの強弱や内容をインデックスする際の重み付けなどの参考要素にしているのです。

SEOで評価されるサイトの多くは、利用者に提供される情報とその構成に思いやりがあるところといえます。
小手先のSEOでヒットさせることももちろん可能ですが、真の意味でのSEOは、アクセシビリティ同様「思いやり」というポイントに則して、なされるものであると考えるのであります。

ところで、皆さんのサイトはいかがでしょうか。弊社でもこんなことを言いながら、裏側では必死に修正を重ねている真っ最中であります。

余談ですが、「日本のWeb業界には、越中詩郎が足りない」という業界の有名人の弁。一体どんな意味なのでしょう。。。仰った本人に聞きそびれました。

Cisco VRFを利用したRadius認証Config雛形

2007.03.20 Author: hoge

Cisco VRFネタです。

真面目にネットワークを語る。 (うひっ)

<条件>
下位ネットワークにユーザPCが居て、上位ネットワークにある、
Radiusサーバに対して認証要求を出し、認証されたら上位へ通信転送する。

これは通信事業者がよく使う設定方法であり、
VRFという技術を使用することで実現が可能となる。
今回は、あくまでもVRFの設定に触れるものであり、
アクセス回線側設定については回避させていただく。

<設定雛形>
!
aaa group server radius hoge-hoge-auth
server-private 192.168.1.25 auth-port 1645 acct-port 0 key hogehoge
server-private 192.168.1.26 auth-port 1645 acct-port 0 key hogehoge
!
ip vrf forwarding vrf-hoge-hoge
deadtime 3
!
aaa group server radius hoge-hoge-acct
server-private 192.168.1.25 auth-port 0 acct-port 1646 key hogehoge
server-private 192.168.1.26 auth-port 0 acct-port 1646 key hogehoge
accounting reject TunnelTypeDeny
ip vrf forwarding vrf-hoge-hoge
deadtime 3
!
aaa authentication ppp hoge-hoge-authlist group hoge-hoge-auth
aaa authorization network hoge-hoge-autholist group hoge-hoge-auth
aaa accounting delay-start vrf vrf-hoge-hoge
!
aaa accounting network hoge-hoge-acctlist start-stop group hoge-hoge-acct
aaa accounting system default vrf vrf-hoge-hoge start-stop group hoge-hoge-acct
!
ip vrf vrf-hoge-hoge
rd 192.168.1.1:1
!
vpdn-group hoge-hoge
description
accept-dialin
protocol l2tp
virtual-template 5
session-limit 1000
terminate-from hostname hoge-hoge-lac
source-ip 192.168.1.1
local name hoge-hoge-lns
lcp renegotiation on-mismatch
l2tp tunnel password hogehoge
!
interface Loopback**
description
ip address 192.168.1.1 255.255.255.255
!
interface Virtual-Template**
description
mtu 1454
ip vrf forwarding vrf-hoge-hoge
ip unnumbered GigabitEthernet1/1.100
ip tcp adjust-mss 1414
peer ip address forced
peer default ip address pool hoge-hoge-pool1
ppp mtu adaptive proxy
ppp authentication chap pap hoge-hoge-authlist
ppp authorization hoge-hoge-autholist
ppp accounting hoge-hoge-acctlist
ppp ipcp dns 192.168.1.100
!
ip local pool hoge-hoge-pool1 10.10.10.1 10.10.10.254

<注意>
当然ながらこの技術を利用するにあたっては、
ダイナミックルーティングプロトコルを利用することになると思う。
OSPFやEIGRPといったものがその最たるであろうか。
又、アドレスや名称については適宜変更して流用して頂き、
Radiusポート番号についても都度サーバと合わせる事が重要である。

以上、お粗末様でした。

createElementの使い方

2007.03.16 Author: たわばがに


ということで、JavaScriptネタです。
とりあえず簡単なネタとして、今回はcreateElementについて取り上げてみようと思います。

名前から推測できると思いますが、その名前の通り、エレメント(オブジェクト)を生成します。
ここでのエレメントというのは、HTMLのタグのことです。
spanやらdivやらimgやら、色々作れます。
createElementで作ったエレメント(オブジェクト)に 対しては、
setAttributeで要素を追加したり、style.cssTextでスタイルの設定をしたりすることができます。
これらの追加要素はappendChildで適用(表示を反映)することができます。
逆にremoveChildで消すことも可能です。

これを用いることで、HTMLとJavaScriptで操作する要素を完全に切り分けることができます。
WEBデザイナさんからシステム用に加えておいたタグに関して、
「え~、このタグいるんですか? 表示に関係ないので、いらないと思って消しちゃいました~」
とか言われて顔を青くする、というようなことが減るかもしれません(笑)

で、サンプルとしてはこんなの↓。

この文字列をクリックすると、下に文字列が出るよ
この文字列をクリックすると、下に画像が出るよ



以下、ソース。
/**
 * spanエレメント(オブジェクト)追加
 */
function displayString_createElement() {
    var o = document.createElement("span");
    o.setAttribute("id", "js_koneta_01-01");
    o.innerHTML     = "JavaScript万歳!";
    o.style.cssText = "font-weight: bold;"
                          + "font-size: 12pt"
                          + "color: #00ff00";
    document.getElementById("js_koneta_01").appendChild(o);
}

/**
 * imgエレメント(オブジェクト)追加
 */
function displayImage_createElement() {
    var o = document.createElement("img");
    o.setAttribute("id", "js_koneta_01-01");
    o.setAttribute("src", "images/js/analysis_back.jpg");
    document.getElementById("js_koneta_01").appendChild(o);
}

/**
 * エレメント(オブジェクト)消去
 */
function deleteElement_createElement() {
    o = document.getElementById("js_koneta_01-01");
    document.getElementById("js_koneta_01").removeChild(o);
}
サンプルでは書いていませんが、
document.body.appendChild(object);
というような、body自体を指定することも可能です。
ブラウザ内に絶対座標でオブジェクトを表示する場合などは、
こちらの方が使い勝手がいいかもしれません。

簡単ですが、こんなところで。

Solaris10 ネットワークインストールによるサーバ構築

2007.03.16 Author: hoge

Solaris10ネタです。

[ ケース ]
Solaris10 をインストールしたマシンが既に構築されており、
これをインストールサーバとして、ネットワークインストールします。

[ 条件 ]
クライアントとサーバは、同サブネットに存在しており、
CDを使用するものとします。


1. インストールサーバとして利用する機器へrootログインします。
2. Solaris10 Software CD1 を利用機器の CD ドライブに挿入。
3. CD イメージ用のディレクトリを作成します。
   # mkdir -p /export/home/install-image
→任意のディレクトリで問題ありません
4. マウントされたディスクの Tools ディレクトリへチェンジディレクトリします。
   # cd /cdrom/cdrom0/s0/Solaris_10/Tools
5. CD-ROM ドライブ内のイメージをインストールサーバの
  HDDへコピーします。
   # ./setup_install_server /export/home/install-image
6. /(root) ディレクトリへチェンジディレクトリします。
   # cd /
7. Solaris10 Software CD 1 を取り出します。
8. Solaris10 Software CD 2 をシステムの CD-ROM ドライブに挿入します。
9. マウントされた CD の Tools ディレクトリにチェンジディレクトリします。
   # cd /cdrom/cdrom0/Solaris_10/Tools
10. CD-ROM ドライブ内のイメージをインストールサーバの
  HDDにコピーします。
   # ./add_to_install_server /export/home/install-image
11. /(root) ディレクトリへチェンジディレクトリします。
   # cd /
12. Solaris10 Software CD 2 を取り出します。
13. インストールする Solaris10 Software CD 毎に、
  上記 8.12. を繰り返して下さい。
14. Solaris10 Languages CD を利用機器の CD-ROM ドライブに挿入します。
15. マウントされた CD の Tools ディレクトリにチェンジディレクトリします。
   # cd /cdrom/cdrom0/Tools
16. CD-ROM ドライブ内の CD をインストールサーバの
  HDDにコピーします。
   # ./add_to_install_server /export/home/install-image
17. /(root) ディレクトリへチェンジディレクトリします。
   # cd /
18. Solaris10 Languages CD を取り出します。
19. ファイルにインストールクライアントの情報を記載します。
  設定する IP、クライアントの Ethernet Address は決定済みとします。
   # vi /etc/hosts
     :
   192.168.1.1 hoge
   :wq!
   # vi /etc/ethers
     :
   8:x:20:99:99:99 hoge
   :wq!
20. インストールサーバ上の Solaris10 CD イメージの Tools ディレクトリに
  チェンジディレクトリします。
   # cd /export/home/install-image/Solaris_10/Tools
21. ネットワークでインストールするためのシステムを設定します。
   # ./add_install_client hoge sun4u
| |
| +------ プラットフォーム
nodename (uname -m で確認)
インストールサーバの設定は以上になります。
クライアントインストールを行ってみましょう。
※インストールクライアントで実行
  (参考までに"stop+a"でokプロンプト)
   ok boot net - install

Vistaで、インターネット時刻の同期の頻度(間隔)を変更する

2007.03.16 Author: ぴ

PCにおいて システム時刻=時計 は、様々な箇所で利用されています。身近なところでは、タスクバー上の時計、メール送信時のメール送信時刻や、ファイル保存時のファイル更新日時がシステム時刻を参照しています。

そのため、システム時刻を正しく設定しておくのは非常に大切なことです。PCの時計はM/B(マザーボード)上の水晶振動子からのデータで時刻を合わせているが、さまざまなノイズ等の影響を受けるため、1日に数秒~数十秒単位で狂う場合が多々あります。

テレビやラジオ等の時報で自分の時計を合わせるように、PCの時計も時刻設定することが可能ですが、手動で合わせるのは非常に面倒かつ正確性に欠けるため、Windowsのソフトウェアとして様々な自動時刻合わせのソフトウェアが提供されています。

自動時刻合わせのソフトウェアは、NTPサーバに時刻を問い合わせに行き、時刻を同期させるという処理を行っています。Windows Vista/XP/2000 では、標準でこの機能を使うことが可能ですが、多くのユーザは使い勝手の良いフリーウェアを探して利用されていると思います。というのも、時刻合わせの頻度(間隔)を簡単に変更することができるため、1時間に1回といった頻度で時刻同期処理を行い、より正確なシステム時刻になるようにすることが可能です。

しかし、Vistaに正式対応していないアプリケーションで、管理者権限を必要とする操作(\Program Files配下のファイルを操作する・システム設定を変更する等)は、ほとんどの場合意図する動作をしないことが多いです。そのため、時刻を変更する自動時刻合わせのソフトウェアもまともに動作しない場合が多々あります。

その場合、Windows標準の時刻同期処理(タスクバー上の時計をダブルクリックし、インターネット時刻のタブを開くと設定画面があります)を使えば、同期処理を難なく行うことが可能です。しかし、更新頻度がデフォルトで1週間=604800秒になっているため、次の時刻更新時には下手をすると数分くらいずれている可能性もあります。

ところが、更新頻度の設定画面が用意されていないため、ユーザは容易に変更することができませんが、下記方法にて変更することが可能です。

レジストリの設定を変更する必要があります。下手な操作をすると最悪起動しなくなることがありますので、十分注意の上作業してください。

1. レジストリエディタを起動する
「Windowsキー + R」でファイル名を指定して実行のダイアログを開き、「regedit」と入力してEnter。
2. HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services
\W32Time\TimeProviders\NtpClient を開く
3. SpecialPollInterval のDWORD値を変更する。
ここでの単位は秒になっています。私は1時間に1回更新しているので、その場合は3600を指定します。なお、表記部分を10進数にしてからデータを入力しましょう。

なお、上記で指定した値は、次の更新以後の更新頻度を設定するものです。そのため、最悪1週間待ってもよいですが、すぐにでも変更したい場合は下記方法を試してください。

1. タスクバーの時計をダブルクリック
2. インターネット時刻のタブをクリックし、「設定の変更」ボタンをクリック
3. 「今すぐ更新」ボタンをクリック
この作業で、次回の同期の時刻が現時刻から設定頻度の時間後になっていることを確認できます。

なお、上記はVistaに限ったことではありません。Windows XPやWindows 2000でも同様の設定が可能ですので、フリーウェアを入れるのが面倒だったりする場合は設定しておくとよいでしょう。

補足:
NTPサーバですが、デフォルトではtime.windows.comになっています。NTPサーバは近場(国内)のサーバを指定してあげるとよいでしょう。プロバイダが指定している場合は、そちらを利用しましょう。私の場合は、自分のサーバがNTPサーバになっているので、そちらを指定していますが…。

NTP Stratum

2007.03.09 Author: hoge

NTPとは、機器の時刻を正しい時刻へ補正する為、
開発された時刻同期プロトコルである。

各機器での設定はそれほど難解なものでは無く、
比較的容易な部類に属するのではないだろうか。
但し、一度不具合に陥るとなかなか問題解決出来ない為、
ここではNTP階層構造について触れておく。

NTPは、Stratumと呼ばれる階層構造で管理されており、
上位階層から下位階層へ向けてStratum1~16という数字が適用される。
ルーティングプロトコルのDistanceVectorを思い浮かべてもらいたい。
起点を1としてhopカウントを増やすアルゴリズムである。

簡単には、最上位機器が正確な時計から標準時を取得し、
下位機器はその上位機器を参照する事で時刻を同期する動作を行う。
つまり、最上位NTP機器は、Stratum1としてカウントされて、
それを参照する再下位機器が、Stratum16としてカウントされる
Stratumは16という数値を超えて設定される事は無い。


※GPSや標準電波等と直結されたNTP機器がStratum1となる。

例えば原子時計を搭載したGPS衛星は、
GPSタイムと呼ばれる時刻情報を含んだ電波を送出する。
又、標準電波については情報通信研究機構(NICT)が、
地域の標準時を保持する時刻情報を電波で送出している。


[Cisco機器の設定出力例を掲載する]



hoge#sh ntp status detail
192.168.1.254 configured, our_master, sane, valid, stratum 3
ref ID 192.168.1.1, time C**B8A2E.4DC450C6 (08:33:02.366 UTC Fri Mar 9 2007)
our mode client, peer mode server, our poll intvl 128, peer poll intvl 128
root delay 9.80 msec, root disp 43.50, reach 377, sync dist 49.042
delay 1.05 msec, offset 0.0849 msec, dispersion 0.12
precision 2**20, version 3
org time C**B8A43.9F660E51 (08:33:07.622 UTC Fri Mar 9 2007)
rcv time C**B8A43.9F833B1B (08:33:07.623 UTC Fri Mar 9 2007)
xmt time C**B8A43.9F3C3D7F (08:33:07.622 UTC Fri Mar 9 2007)
filtdelay = 1.05 1.48 1.08 0.93 0.84 1.42 1.01 1.40
filtoffset = 0.08 -0.12 0.08 -0.23 -0.18 -0.17 0.04 -0.12
filterror = 0.02 1.97 1.97 2.94 2.94 3.68 3.68 4.65

やっぱり怒られた‥‥

2007.03.08 Author: たわばがに

しゃいんブログ右下にある
社長ブログとしゃいんブログの閲覧比率バトルJS(長っ)
に関して、です。
まぁ、タイトルだけ見ると、普通は「この表示内容について怒られたのだろう」と考えるのが
自然ですが、実際は別の内容でお叱りを受けました。
サーバ管理人の「」氏から。

このJS、画像を無駄に使ってる上に、通常の画像ディレクトリと別のディレクトリに
画像を置いたため、ログが肥大化&カオス化して、解析ツール等で微妙に見にくくなって
しまっているようで‥‥。
(ファイル数の増加と共にログが増えてるから当たり前ですが‥‥)
ということで、とりあえずJSで使う画像は通常の画像ディレクトリに移しました。
といっても画像が多いのは変わらないままなので、
ログの肥大化は免れないと思いますが‥‥(汗)
そのうち撤去命令が出されそうな気のする、今日この頃。

JSといっても、今回はホントにネタのみでした。
といったところで、御粗末様です。

PhotoshopがWebアプリに

2007.03.05 Author: ふー

http://japan.cnet.com/news/ent/story/0,2000056022,20344303,00.htm

遅まきながら。
PhotoshopがWebアプリケーションとなり、無償で使えるようになる予定、だそうだ。
予定通り公開されたら、今年の8月か9月には、サービスを利用できる。

今更…!と思った人が結構いるんじゃないかと。
色々考えると、何を利点に持ってくるかが味噌になりそう。
オーサリングソフトとしての利点、持ったままWebソフトになるのだろうか…
タブレット無しのユーザにも、ちゃんと使えるんだろうか…。

目下想像できるものとしては
レイヤーも(エセ)ベジェも持っている、お絵かき掲示板(Javaアプレット)系を
進化させたような、そんなもの。
自分の乏しい想像上では、大して嬉しいとも思わない…が…

もし、もしもだけど、
Web上のディレクトリを指定し、そこにある画像全てにバッチ処理…
しかも、手元で作ったアクションなんかを読み込ませたりなんかできたりしたら…
(処理後手元に全部保存。)

…いやいや、そもそも入門編だから。ないない。
でもあったらちょっと期待以上…絶対なさそうだけど。

あくまで広告塔としてのPhotohopになるんだろうか。
だとしたらAdobeにとって新しい事でも、冷静に考えたら遅いよ!
と言わざる得ない。

が、楽しみは楽しみ。

という感じで、画像系やお絵かき系の話題を振っていこうかなと
思っています。ふーでした。

auto_efによる文字コード自動判別

2007.03.02 Author: hoge

Solaris10ネタです。

文字コードを自動判別する新機能が追加されました。

「auto_ef」という新機能としてSolaris10から追加されました。
「auto_ef」 は、可能性の高い文字コードを判別して、
出力することができるという優れものです。


Ex) 対象ファイル = testfile.txt
% /usr/bin/auto_ef testfile.txt
eucJP

上記の出力結果では"testfile.txt"が、
eucJP である可能性が非常に高いという結果を表します。
表示エンコーディングは、Solarisの"iconv"で利用可能な、
エンコーディングとなります。

"-a" オプションを指定すると、可能性があると判定された、
エンコーディングがスコアレポートと共に表示されます。


Ex)対象ファイル = testfile.txt
% /usr/bin/auto_ef testfile.txt
eucJP 0.94
zh_CN.euc 0.04
ko_KR.euc 0.02

eucJP である確率が94%、zh_CN.euc である確率は4%、
ko_KR.euc である確率は2%であると判定されています。

又、-l を指定することで、判別の精度をより高くする事も出来ます。
レベルは、"0"から"3"まであり、 "0"が最も精度が低く、
レベルが上がるに従って判定精度が上がります。
但し、レベルの上昇に伴い処理速度は遅くなります。


Ex)レベル"1"で判定
% /usr/bin/auto_ef -a -l 1 testfile.txt
eucJP 0.94
zh_CN.euc 0.04
ko_KR.euc 0.02

ともクリオフィスの雰囲気

2007.03.01 Author: たく

magazines.jpg
どうもこんにちはデザイナーのたくです。
去年末に入社仕立ての新米です。
他の社員さんはみなさんストイックに技術的な
な記事を書いてますが、私が我が社の雰囲気を紹介します。


オフィスは栄の中心より久屋大通沿いに北へ、周りにはおしゃれな飲食店や洋服のお店
などがあり、ロケーションは最高です。そんなビルの6階に、ともクリエイティブはあります。

オフィスさっぱりしてて、無駄な備品や書類などはありません。さすがIT企業。
コーポレートカラーの深いブルーが印象的。

社員は、喧々諤々の議論をするときもあれば、集中したときは水を打ったような静けさの中、タイピングの音だけが、オフィスに打ち響きます。

クリエイティブな発想のためには色んな刺激が(写真)必要。
雑誌も多種多様取り揃えています。

こんなオフィスで日々仕事を行っております。今後もこのブログで仕事の様子を綴って行きますのでよろしくお願いします!

Yahoo! User Interface Libraryを使ってカレンダー作成

2007.03.01 Author: えす

今回は、Yahoo! User Interface Library(YUI)を使ってカレンダーを作成する方法を紹介します。

続きを読む >>