MySQL5.5の日本語対応(文字化け対策)

私の手元にある学習書『Head First PHP & MySQL(2012/3/12 第1版)』のp614~では、MySQLの日本語対応設定として、My.iniの[mysqld][mysqldump][mysql]セクションの下部に、それぞれ

[mysqld]

default-character-set=utf8
skip-character-set-client-handshake

[mysqldump]

default-character-set=utf8

[mysql]

default-character-set=utf8

という記述を足すように書かれている。が、私がインストールしたMySQLはバージョン5.5で、この設定では起動しなくなってしまった。MySQL5.5では、

[mysqld]

character-set-server = utf8
skip-character-set-client-handshake

と書いてやる必要があるようだ。

ちなみに、「my.iniってどこだよ?」って人は、「my.ini」で「MySQL」フォルダ内を検索するといいと思う(my.cnfも同様)。私の場合、Windows7 32bit+Xampp1.7.7+MySQL5.5で、xamppはCドライブ直下にインストールしてたので、C:xamppmysqlbinmy.ini にあった。

xamppmysqlには、my-huge.ini, my-small.ini 等のmy-hoge.iniが色々あるが、これらはデータサイズに応じたmy.iniの書き分け例なので、いじっても設定は変わらない。

日誌12/04/02

HTMLファイル書きがメインだと思ってたけど、最初はPHPの理解度のテストがメインだった。
SQLでテーブルを作って、HTMLに流しこんでCSSで装飾したり、フォームから値を打ち込んでSQLのテーブルの値を操作したり。
ソースがsmartyというテンプレートエンジンを使っていたこともあって、なかなか上手くいかず。

PHP, MySQL, smarty が目下の課題。

StatCounterで最新のブラウザシェアをチェックする

ブラウザーのシェアの情報は各種ありますが、調査によって元となるデータが大きく異なるため、結果もまちまちです。

StatCounterでは、国別にブラウザーシェアを調査しています。2012年2月時点の日本のブラウザーシェアは以下(クリックで拡大)。

StatCounter-browser-JP-monthly-201102-201202

World Wideだと、2011年11月にChromeがFirefoxと逆転し、2012年2月の時点では5%程度の差がついています。しかしここ日本では、2012年2月時点でようやくChromeがFirefoxに逆転しそうな感じ。

また、Internet Explorerは、World Wideではシェア40%を切り、2012年中にはChromeに抜かれそうな状況ですが、日本では50%以上のシェアを維持しています。

W3C Technical Reportの5ステップ

1.草案 Working Draft
2.最終草案 Last Call Working Draft
3.勧告候補 Candidate Recommendation
4.勧告案 Proposed Recommendation
5.勧告 Recommendation

出典:大津真『JavaScriptプログラミング入門 第2版』

ちなみに、HTML5は2011/5/25に最終草案が出て、現在は勧告候補の策定中。(最終草案はここで読める)

CSSは、「CSS3」という大枠ではなく、個々の機能別にDraftやRecommendationが出てるみたいなので、ちょっと事情が違う。例えば、CSS3のセレクタ(:last-child等)は、もう勧告が出てる(2011/09/29)。一方で、Grid Layout(テーブルレイアウトのような感覚でdivをレイアウトできる、新しいプロパティ)は、今年の3/22に草案が出たばかり。

個人的には、CSSの草案・勧告が楽しい。「こんなことが出来るようになるのか!」という期待感がある。

「GREEの藤本氏はPHPの神」とはどういう意味か

最近PHPを少しずつやっているのですが、その際にどこかの記事で「GREEの藤本氏はPHPの神」というフレーズを見ました。他にも、優秀なPHPプログラマーの例として藤本氏を挙げている人もいたり。ということで、GREE CTOの藤本真樹氏とPHPの関わりについて調べてみました。

結論として、藤本氏はPHP言語の開発者の1人ではあるけれど(すなわち、PHPの創造主=神 のうちの1人)、PHPを使いこなしてすごいプログラムを書いてる人、と言えるのかはよく分かりません。

もちろん、藤本氏はすごいプログラマーです。文学部出身でプログラムは独学で、一線級の技術力を身につけているのは、素直に尊敬します。

ただ、GREEのシステムのコードのどの程度がPHPで書かれていて、その内のどの程度が藤本氏の手になるものなのか分からない以上、「藤本氏のPHPプログラミング能力は未知数(相当に高いのは確か)」としか言いようがありません。

実際、まつもとゆきひろ氏との対談には、「たしかにPHPメンテナーではありましたが、実はあまりPHPではプログラムを書いていなかったんですよ。」という発言があります(「(以前の会社では)書いていなかった」なので、GREE入社後にはPHPも書いているんだと思いますが)。

ちなみに、この対談には興味深い問答があります。

──エンジニア採用でも、これからはRubyの使用経験を重視しますか?

藤本
Rubyの経験というのは直接の判定基準ではないんですが、「一つの言語しかできません」という場合よりは面白いのでは、と思います。複数の言語に精通というか、チャレンジしているのは一つの評価軸かもしれませんね。

「複数の言語の使用経験があることが採用時に評価される」という点はもちろんですが、それ以上に個人的に注目したのが「面白い」という言葉。新人を採用するときに「この人は面白いか、面白くないか」という基準で見てるんですね。

こういう文脈では、「複数言語の経験がある方が生産性が高い」という方向に持っていく(実際、この記事の見出しはそうなっている)のが普通ですが、実際の評価軸は「生産性」よりもむしろ「面白さ」にある、と。

他にも、藤本氏関連の記事は色々読んでみましたが、出自が近い私には、非常に参考になりました。

1つは、情報工学について。大学の情報系学部で教わる情報工学は、知識・ツールとして強力ではあるものの、必要不可欠なスキルというわけではない、とのこと。

2つ目は大学の位置づけで、「大学は職業訓練校ではない」と。もちろん、医学系のように、大学での職業訓練を経ないとその職に就けない分野はあります。が、少なくともweb開発の世界では、畑違いの出身者でも、十分な好奇心と意欲があればやっていけるということです。

また、webの仕事をする上で数学が必要になる場面は限られてくるのですが、大規模なWeb開発では統計の知識が必要になるというのも重要なヒントだと思います。

というわけで、「PHPプログラマーのスゴイ人」の代表例として藤本氏を挙げるのはズレている気もするのですが(藤本氏は「PHP書くスゴ腕プログラマー」である。「PHPしか書けないプログラマー」ではない)、藤本氏がスゴイ人であることは十分に理解できました。