2008年01月31日
2008年01月30日
どの言語が良いか、という議論
最近、PHP言語がどうのこうの、と話題になっている件について。
自然言語での話に写してみると、「日本語は英語よりすばらしい」とか、「○○語は文法がルーズだし、その言語話者はみんな適当だからだめだ」なんて議論をブロガーがはじめたら、それは確実に炎上しますよね。
(自然)言語学の世界でそんな記事を投稿しだしたら、失笑ものです。
世の中には、ピジン言語あり、クレオール言語あり、国が定めた共通語ということで、母語以外に使っている言語あり、で、言語はいろいろな使われ方をしています。
どれが正しいとか間違いとかではなくて、それぞれに「ニーズ」があるので、生き残っているのではないでしょうか。
また、プログラミング言語についても同じことが言えると思います。プログラムを組む人であれば、本当に大切なのは「何で書くか」よりも、「何をどう書くか」だということを知っているはずです。
・PHPで書かれたブログアプリWordpressがよく使われているのはなぜか。
・販売サイトを作れるOsCommerceやZen CartがPHPで書かれているからといって、すぐに危ないということになるのだろうか
・Firefoxのアドオンを管理するaddons.mozilla.orgがCakePHPフレームワークを使ったPHPで作られたサイトだからといって、すぐに“初心者向けの”お手軽ソリューションを使ったと結論できるか
・データベース管理アプリケーションの中には、PHPファイルを一枚使ったHTTPトンネリングを実現しているものが幾つかあるが、なぜ他の言語ではなく、PHP言語で書いているのか
・SNSのGreeはPHPを使っているのでセキュリティが心配で夜も眠れなくなるのだろうか
・PHPで書かれたCMSのXoopsはどうして堅牢なのだろうか
・なぜPHPで書かれたpukiwikiがこれほど多くのサイトで使用されているのか
・MySQLといっしょにかなりの割合で使用されているphpMyAdmin は、どうして perlMyAdminではなく、rubyMyAdminでもなかったのか
・PHPでサイトを構築したYahooは“初心者”のエンジニアの集団なのだろうか
など、いくらでも作れます。
ちなみに私は、Basicでプログラミングに入り、Z80でマシン語に手をそめ、Cで構造化に目覚め、VC++でWindowsプログラミングに立ち向かい、翻訳のため、VBAでワードのマクロを書きまくりました。そしてDelphiでコンポーネントの便利さに目覚めました。現在は縁あってCakePHPを使ったPHPプログラミングを応援していますが、これはこれで便利だなぁと日々実感しています。
自然言語での話に写してみると、「日本語は英語よりすばらしい」とか、「○○語は文法がルーズだし、その言語話者はみんな適当だからだめだ」なんて議論をブロガーがはじめたら、それは確実に炎上しますよね。
(自然)言語学の世界でそんな記事を投稿しだしたら、失笑ものです。
世の中には、ピジン言語あり、クレオール言語あり、国が定めた共通語ということで、母語以外に使っている言語あり、で、言語はいろいろな使われ方をしています。
どれが正しいとか間違いとかではなくて、それぞれに「ニーズ」があるので、生き残っているのではないでしょうか。
また、プログラミング言語についても同じことが言えると思います。プログラムを組む人であれば、本当に大切なのは「何で書くか」よりも、「何をどう書くか」だということを知っているはずです。
・PHPで書かれたブログアプリWordpressがよく使われているのはなぜか。
・販売サイトを作れるOsCommerceやZen CartがPHPで書かれているからといって、すぐに危ないということになるのだろうか
・Firefoxのアドオンを管理するaddons.mozilla.orgがCakePHPフレームワークを使ったPHPで作られたサイトだからといって、すぐに“初心者向けの”お手軽ソリューションを使ったと結論できるか
・データベース管理アプリケーションの中には、PHPファイルを一枚使ったHTTPトンネリングを実現しているものが幾つかあるが、なぜ他の言語ではなく、PHP言語で書いているのか
・SNSのGreeはPHPを使っているのでセキュリティが心配で夜も眠れなくなるのだろうか
・PHPで書かれたCMSのXoopsはどうして堅牢なのだろうか
・なぜPHPで書かれたpukiwikiがこれほど多くのサイトで使用されているのか
・MySQLといっしょにかなりの割合で使用されているphpMyAdmin は、どうして perlMyAdminではなく、rubyMyAdminでもなかったのか
・PHPでサイトを構築したYahooは“初心者”のエンジニアの集団なのだろうか
など、いくらでも作れます。
ちなみに私は、Basicでプログラミングに入り、Z80でマシン語に手をそめ、Cで構造化に目覚め、VC++でWindowsプログラミングに立ち向かい、翻訳のため、VBAでワードのマクロを書きまくりました。そしてDelphiでコンポーネントの便利さに目覚めました。現在は縁あってCakePHPを使ったPHPプログラミングを応援していますが、これはこれで便利だなぁと日々実感しています。
ラベル:言語
2008年01月16日
[1.2]Easy Bake on Windows
*Now, as the easiest way, you can specify the project path with -app!!*
*>cake bake -app project "app" path.*
In English:
Easy Bake on Windows:
1. Open the cake's console folder with "Command Prompt".
2. Type SET PATH=%PATH%;%CD%
This will add the console path temporarily only in the window.
3. Just type PATH(enter) and check the registered path info.
4. Type CD ../../
and return to the home directory of the cake.
5. Type md ProjectName (or use Explorer) to make a project folder.
6. Type cd ProjectName、and go into the directory.
7. Type cake bake
Cake1.2を使えそうな大型案件の前に、1.2に本腰をいれようかと思っています。
1.2からは、bakeはconsoleのひとつという位置づけとなり、少し動作が変更されています。より“フクザツ”なことができるようになりましたが、1.1の簡単スタートよりはちょっと面倒になったかもしれません。機能向上に付き、このあたりは仕方のない点でしょうか。
*[追記]現在、-appで出力させるプロジェクトの“app”ディレクトリを指定できるようになっています。下記も使えますが、こちらのほうがもっと簡単です。*
*>cake bake -app "appに相当する(app_controller.phpやapp_model.phpの入る)フォルダを指定"で開始できます。*
1.2の場合、appフォルダ以外の場所にプロジェクト名をつけてbakeできるようになっています。そのためには、
>cake bake
として、“カレントディレクトリ”にデータを生成させるため、cake.batのパスが通っていないといけません。
ところが、今回の場合はWindows上での単なるテストなので、環境変数にこのパスを登録するのはおっくうです。そもそも、Cakeの新バージョンがリリースされるたびに別フォルダに展開しているので、そのCakeごとのすべてのconsoleフォルダをパスに登録するなんて面倒です。それにどのフォルダの cake.bat を使うことになるんでしょうか。考えただけでもこんがらかりそうです。あと、bakeを使うのは、開発の本当に初期の段階だけです。
php.exe をPATH登録するのは納得できますが、cliスクリプトのフォルダにPATHを通せと言われても…。
このパスの設定って、なんかDOSのコマンドで便利なやり方があったはずだよなぁ…と、MS-DOS3.3C世代の人間なので考えてしまいました。
で、簡単な方法です。
bakeスクリプトをそんなに使わないので、毎回使用時に、PATHに一時的に設定できればよい。c:\Program Files\xampp\htdocs\cake ...みたいなタイプはしたくない、という人は使える技かもしれません。
Windowsで簡単にbake
(1) consoleフォルダをコマンドプロンプトで開く
(開き方は自分で調べましょう。)
(2) SET PATH=%PATH%;%CD%
と打ち込む。すると、そのコマンドプロンプトのウィンドウ上だけ、consoleフォルダのパスが追加されます。(%CD%は、カレントディレクトリ、という意味です。)
(3) 単に、PATH(Enter)と入れてみて、実際に登録されたかどうか、確認してみましょう。
(4) CD ../../
で、cakeの親フォルダに戻る
(5) md "プロジェクトファイル名"で、適当なプロジェクト名を作る。
このあたり、エクスプローラでフォルダを作成してもよいと思います。
(6) cd "プロジェクトファイル名"で、そのディレクトリに入る。
(7) あとは、cake bake で始まります。パラメータを駆使すれば、もっといろいろできるでしょう。
パラメータは下記を参考にできます:
cakebaker:Faster baking with bake
もっと簡単な方法があったら、教えてください。
*>cake bake -app project "app" path.*
In English:
Easy Bake on Windows:
1. Open the cake's console folder with "Command Prompt".
2. Type SET PATH=%PATH%;%CD%
This will add the console path temporarily only in the window.
3. Just type PATH(enter) and check the registered path info.
4. Type CD ../../
and return to the home directory of the cake.
5. Type md ProjectName (or use Explorer) to make a project folder.
6. Type cd ProjectName、and go into the directory.
7. Type cake bake
Cake1.2を使えそうな大型案件の前に、1.2に本腰をいれようかと思っています。
1.2からは、bakeはconsoleのひとつという位置づけとなり、少し動作が変更されています。より“フクザツ”なことができるようになりましたが、1.1の簡単スタートよりはちょっと面倒になったかもしれません。機能向上に付き、このあたりは仕方のない点でしょうか。
*[追記]現在、-appで出力させるプロジェクトの“app”ディレクトリを指定できるようになっています。下記も使えますが、こちらのほうがもっと簡単です。*
*>cake bake -app "appに相当する(app_controller.phpやapp_model.phpの入る)フォルダを指定"で開始できます。*
1.2の場合、appフォルダ以外の場所にプロジェクト名をつけてbakeできるようになっています。そのためには、
>cake bake
として、“カレントディレクトリ”にデータを生成させるため、cake.batのパスが通っていないといけません。
ところが、今回の場合はWindows上での単なるテストなので、環境変数にこのパスを登録するのはおっくうです。そもそも、Cakeの新バージョンがリリースされるたびに別フォルダに展開しているので、そのCakeごとのすべてのconsoleフォルダをパスに登録するなんて面倒です。それにどのフォルダの cake.bat を使うことになるんでしょうか。考えただけでもこんがらかりそうです。あと、bakeを使うのは、開発の本当に初期の段階だけです。
php.exe をPATH登録するのは納得できますが、cliスクリプトのフォルダにPATHを通せと言われても…。
このパスの設定って、なんかDOSのコマンドで便利なやり方があったはずだよなぁ…と、MS-DOS3.3C世代の人間なので考えてしまいました。
で、簡単な方法です。
bakeスクリプトをそんなに使わないので、毎回使用時に、PATHに一時的に設定できればよい。c:\Program Files\xampp\htdocs\cake ...みたいなタイプはしたくない、という人は使える技かもしれません。
Windowsで簡単にbake
(1) consoleフォルダをコマンドプロンプトで開く
(開き方は自分で調べましょう。)
(2) SET PATH=%PATH%;%CD%
と打ち込む。すると、そのコマンドプロンプトのウィンドウ上だけ、consoleフォルダのパスが追加されます。(%CD%は、カレントディレクトリ、という意味です。)
(3) 単に、PATH(Enter)と入れてみて、実際に登録されたかどうか、確認してみましょう。
(4) CD ../../
で、cakeの親フォルダに戻る
(5) md "プロジェクトファイル名"で、適当なプロジェクト名を作る。
このあたり、エクスプローラでフォルダを作成してもよいと思います。
(6) cd "プロジェクトファイル名"で、そのディレクトリに入る。
(7) あとは、cake bake で始まります。パラメータを駆使すれば、もっといろいろできるでしょう。
パラメータは下記を参考にできます:
cakebaker:Faster baking with bake
もっと簡単な方法があったら、教えてください。
2008年01月10日
Another CakePHP book(in Japanese): "Fast CakePHP" was released!
Today, another CakePHP Guidebook "Fast CakePHP" was released from one of the major publisher,"技術評論社".
Author's comment:
CakePHPの入門書「Fast CakePHP」を書きました!
This book is designed for the person who wants to start "PHP + CakePHP" as soon as possible.
Author's comment:
CakePHPの入門書「Fast CakePHP」を書きました!
This book is designed for the person who wants to start "PHP + CakePHP" as soon as possible.
2008年01月08日
フレームワークで決闘? - Django Vs CakePHP
「おぬしのフレームワークでこれができるか!はっ。」
「なかなかやるな、よし、今度は拙者の番だ!」
「おおっ、何と。」
というような脳内変換をしてしまいました。Djangoの使い手とCakePHPの使い手で、それぞれ高速開発を見せ合った、という話です。
CakePHPのほうは、bakeで画面を一括生成し、http://www.freecsstemplates.org/ からデザインとcssをダウンロードして、さっと組み込んだ実演だったそうです。
e-shell.org
bunker time: web frameworks
http://blog.e-shell.org/26
違うフレームワークを使っている友人と出会ったら、「サイト即席作成対決」をしてみると、その手順や考え方の違いに刺激を受けるかもしれません。
「うむ、残念だが時間切れ。これにて。」
「さらばだ」
という結果が多々ありそうですが。
「なかなかやるな、よし、今度は拙者の番だ!」
「おおっ、何と。」
というような脳内変換をしてしまいました。Djangoの使い手とCakePHPの使い手で、それぞれ高速開発を見せ合った、という話です。
CakePHPのほうは、bakeで画面を一括生成し、http://www.freecsstemplates.org/ からデザインとcssをダウンロードして、さっと組み込んだ実演だったそうです。
e-shell.org
bunker time: web frameworks
http://blog.e-shell.org/26
違うフレームワークを使っている友人と出会ったら、「サイト即席作成対決」をしてみると、その手順や考え方の違いに刺激を受けるかもしれません。
「うむ、残念だが時間切れ。これにて。」
「さらばだ」
という結果が多々ありそうですが。
2008年01月04日
CakePHP1.2ベータ+サイトリニューアル
New Year, New Beta
By Larry E. Masters aka "PhpNut" http://bakery.cakephp.org/articles/view/new-year-new-beta
CakePHP1.2.06311ベータと、安定版1.1.19.6305が公開されました。ベータ版のほうは、2006年の夏ごろからTicketが出始め、2007年の1月にホームページに記載されるようになったので、1年以上の熟成期間をかけてベータ版になったことになります。
ロードマップを見ると、扱ったチケット数は1600件。1日あたりコンスタントに4つは消化する計算です。それに加えて独自の機能の追加などもありましたから、その継続努力には頭が下がります。
毎日のように、開発コアチームのだれかがcloseしていました。
サイトもリニューアルです。
By Larry E. Masters aka "PhpNut" http://bakery.cakephp.org/articles/view/new-year-new-beta
CakePHP1.2.06311ベータと、安定版1.1.19.6305が公開されました。ベータ版のほうは、2006年の夏ごろからTicketが出始め、2007年の1月にホームページに記載されるようになったので、1年以上の熟成期間をかけてベータ版になったことになります。
ロードマップを見ると、扱ったチケット数は1600件。1日あたりコンスタントに4つは消化する計算です。それに加えて独自の機能の追加などもありましたから、その継続努力には頭が下がります。
毎日のように、開発コアチームのだれかがcloseしていました。
サイトもリニューアルです。
ラベル:cakephp