4月 08

210円出すというミスをした。

4月 08

の「タ」と「フ」を入れ替えると

ブックスタンド

になる。

1月 15

青は「信頼できる」「冷静な」といった内容を連想させるので、コーポレートカラーとしてよく採用される色です。
中でも、システム開発会社に特に多い気がします。

気になったので、Googleで「システム開発会社」で検索し、出てきた会社のサイトを上から順に見て、何色がどれくらいメインカラーとして使われているのか数えてみました(サイトのメインカラーがコーポレートカラーと同じとは限りませんが)。

 ■50社の統計結果
  青:62%
  橙: 8%
  白: 8%
  黒: 8%
  赤: 6%
  緑: 6%
  桃: 2%

ダントツで青が多いですね。
ただ、個人的には8~9割くらいは青の印象だったので、意外と他の色も採用されているんだなと思いました。
青+無彩色(白、黒)なら78%になるので、「青以外の有彩色は少ない」と考えれば印象に近いかな。

ちなみにアスタリスクのコーポレートカラーは橙(オレンジ)で、「活発な」「温かい」「好奇心のある」といったイメージがあるとされています。
アスタリスクの社風とぴったりですね!

11月 08

夏頃から仕事中のドリンクにポカリスエットを飲んでいます。
出社前にコンビニで買ってるんですが、500ml で 147円なのに対して、約2倍の 900mlになっても 168円と 21円しか変わらないので、躊躇することなく 900mlを買っています。

表にして1円あたりの量を比較
値段 1円あたりの量
500ml 147円 3.40ml
900ml 168円 5.36ml
2000ml 336円 5.95ml

糖尿病になりますよ。

8月 06

PHPのコードは < ?php で開始して ?> で終了します。
ただし、HTMLの出力を行わないPHPファイルにおいては、ファイル末尾の閉じタグ ?> は不要です。
PHPの開発元であるZendは、「書くべきでない」とまで言っています。

PHP ファイルの書式 – Zend Framework Manual
http://zendframework.com/manual/ja/coding-standard.php-file-formatting.html
PHP コードのみからなるファイルでは、終了タグ (”?>”) は決して含めてはいけません。これは必須なものではなく、 終了タグを省略することで、ファイルの最後にある空白文字が出力に影響することを防ぎます。

問題になるのは次のような場合です。

ファイル1

< ?php
 (PHPのコード)
?>
(空行)

ファイル2

< ?php
include(ファイル1);

header('Location http://www.asx.co.jp/');
?>

ファイル1の最後に空行があるため、ファイル2の header() 関数の呼び出しの前に改行の出力が行われ、下記の Warning が発生します。

Warning: Cannot modify header information – headers already sent by (以下略)

ここでのポイントは次の2点。

  • header() 関数は、 通常の HTML タグまたは PHP からの出力にかかわらず、すべての実際の 出力の前にコールする必要がある(参考
  • ?> の直後の改行は、PHP によって取り除かれる(参考

ファイル1の最後の空行がなく、閉じタグ ?> の後ろに改行があるだけであれば、その改行はPHPによって除去されるので問題にはなりません。
なので、「閉じタグを書くべきではない」とされているのは、うっかり空行を挿入してしまうミスを未然に防ぐためだと思われます。

なお、header() 関数の呼び出しの前に予期せぬ出力が行われてしまうバグの例として他に、「UTF-8のBOM(Byte Order Mark)の付加」があります。
これも仕組みを知らないと原因の特定が困難なので要注意です。

7月 01

読みました。
jQuery1.4の情報がまとまっていて便利です。

jQuery ポケットリファレンス

jQuery ポケットリファレンス

Webで得られるjQuery1.4のまとまった情報としては
jQAPI – Alternative jQuery Documentation(リファレンス)
jQuery Visual Cheat Sheet 1.4.2(チートシート)
がありますが、どちらも英語で少し使いづらいので、このような本があると助かります。

あくまでリファレンス本なので、jQueryを初めて使う人には説明が足りないかもしれません。
jQueryの入門用にはこちらの『Web制作の現場で使う jQueryデザイン入門』がおすすめです。
大阪オフィスにも2冊ほど置いてあって重宝されてますね。

Web制作の現場で使う jQueryデザイン入門

Web制作の現場で使う jQueryデザイン入門

こちらの本は特にデザイン系の界隈で絶賛されていてずっと品薄の状態が続いており、現在Amazonでは在庫切れ。
著者のブログで有名オンライン書店での在庫状況がまとめられています。
http://blog.webcreativepark.net/2010/06/28-142926.html

6月 29

仕事で他の人が書いたWebアプリケーションプログラムのバグ修正をしています。
その中で、IEで画面を見ると現在の年が「3910年」と表示されているバグがありました。

JavaScript の

Date().getYear()

は現在の年を返すメソッドですが、ブラウザによって返す値が違います。
現在の各主要ブラウザの最新版のバージョンでは、IE、Operaでは 2010 を返し、Firefox、Safari、Chromeでは 110(=2010-1900) を返します。

対処法としては

var year = new Date().getYear()
if(year < 1900){
year += 1900;
}

とする方法もありますが、単に

Date().getFullYear()

を使うことで確実に4桁の年を取得できます。
getFullYear() は大昔のIEやNNでは使用できないそうですが、現在では気にする必要はないでしょう。

6月 28

『続・ハイパフォーマンスWebサイト ―ウェブ高速化のベストプラクティス』という本を読みました。
Webサイトを高速化するための様々なテクニックについて書かれています。

続・ハイパフォーマンスWebサイト ―ウェブ高速化のベストプラクティス

目次
1章 Ajaxアプリケーションとパフォーマンス
2章 応答性の高いウェブアプリケーション
3章 初期ロードの分割
4章 実行をブロックしないスクリプトのロード
5章 非同期のスクリプトの組み合わせ
6章 インラインスクリプトの適切な位置
7章 効率的な JavaScriptコード
8章 Comet
9章 gzip圧縮再考
10章 画像の最適化
11章 主ドメインの細分化
12章 ドキュメントのフラッシュ
13章 iframeの取り扱い
14章 CSSセレクタの単純化
付録A パフォーマンス関連ツール
付録B Yahoo! JAPANが実践する Webの高速化
付録C ブラウザの最新技術を活用した Webの高速化
付録D Web高速化に対する Googleのアプローチ

私は完全に誤解していたのですが、「CSSセレクタは右から左へと照合される」らしいです。
たとえば、

#hoge li {}

という指定があった場合、私は「まずページ中の id=hoge の要素を探し、次にその中の li 要素を探す」という処理が為されるのだと思っていたのですが、実際は「ページ中のすべての li 要素に対し、その親要素に id=hoge の要素があるかどうかを調べる」という処理になるそうです。

ただし、jQuery でCSSセレクタを使ってDOM要素を操作する場合はこれとは異なり、基本的に左から右へと絞り込むように要素を探索するようなので間違えないようにしましょう。
参考:jQuery を高速に使う CSS セレクタの書き方 – てっく煮ブログ

6月 10

週1くらいのペースで昼ごはんをこの店で食べています。

チャンダニー
http://r.tabelog.com/osaka/A2703/A270301/27011929/

Bランチが800円で、
・ナン食べ放題
・カレー2品(チキン、ベジタブル、キーマ、日替わりから)
・ライス
・サラダ
・チキンティッカ
・ドリンク(コーヒー、チャイ、ラッシー、ウーロン茶)
とボリュームたっぷりで非常に満足できます。

5月 13

業務でJavaを初めて使うことになりました。

改訂第2版 Java言語プログラミングレッスン (上)

改訂第2版 Java言語プログラミングレッスン (上)

Java言語プログラミングレッスン (下)

Java言語プログラミングレッスン (下)

言語の基本を学ぶのにこれらの本を読んだのですが、プログラミング初学者に読んでもらうことを想定して書かれているので、非常に分かりやすかったです。
一度プログラミングを覚えると「初心者の視点」を忘れてしまいがちなので、自分が人に何かを教えるときにも常に意識できるようになりたいと思いました。

preload preload preload