2009年06月12日

CakePHP Talk show at the famous bookstore in Japan!!!

告知:

CakePHPのトークセッションが大型書店ジュンク堂の池袋本店で開催されます。日本のCakeコミュニティを引っ張る著者たちの本音が聞けるめったにないチャンスです。毎日コミュニケーションズから発行されている各CakePHP書籍の筆者たちが、Cakeの発展について語ります。「実践」本の岸田さんが参加されますので要注目です!

JUNKU連続トークセッション
★2009年7月25日(土)19:00スタート★
http://www.junkudo.co.jp/

安藤祐介・新原雅司・堂園俊郎著『CakePHP1.2ガイドブック』
(毎日コミュニケーションズ社)刊行記念トークセッション

「CakePHP Cafe LiveTalk」
安藤祐介×岸田健一郎×新原雅司

☆ 会  場 …  4階喫茶にて。入場料1,000円(ドリンクつき)
☆ 定  員 …  40名
☆ 受  付 …  1階 案内カウンターにて。電話予約承ります。
ジュンク堂書店 池袋本店

[追記]
日付と日時を入れるのを忘れていました。
akiyanさんと通りすがりさん、ご指摘ありがとうございます!
posted by SDozono at 13:25| 東京 ☀| Comment(1) | TrackBack(0) | CakePHP General | このブログの読者になる | 更新情報をチェックする

2009年06月11日

CakePHP 1.2 Guidebook

現在、CakePHP 1.2ガイドブックを準備中です。
安藤さん、新原さんもがんばってくださっていて感謝です。

『CakePHP ガイドブック』は、CakePHP 1.1ベースの貴重な本として、既存の1.1システムの保守の際に役立つと思います。世界ではじめて出版されたCake専門の書籍です。(確か。)1.1を扱っているのは、あとは、秋田さんの「Fast CakePHP」ぐらいではないでしょうか。

そのほかは1.2ベースだと思いますが、そもそも1.2自体が非常に長い間、開発が続けられていました(1年以上)ので、初期の1.2をベースに書いてある書籍は、もうコードが結構、変わってしまっているのではないかと思います。findAll()とかがサンプルコードに入っていたら、きっと古くなってしまっている書籍です。
posted by SDozono at 02:37| 東京 ☀| Comment(0) | TrackBack(0) | CakePHP General | このブログの読者になる | 更新情報をチェックする

2009年05月24日

第4回CakePHP勉強会@Tokyo

安藤さん主催のCakePHP勉強会が開催されました。
さっそく下記に情報が集まっています。

第4回CakePHP勉強会@Tokyo
http://events.php.gr.jp/events/show/77

発表された皆様、お疲れ様です!
posted by SDozono at 07:10| 東京 ☔| Comment(0) | TrackBack(0) | CakePHP General | このブログの読者になる | 更新情報をチェックする

2009年05月22日

CakePHP on the Google App Engine

GAE上でPHPが動くと。

Run PHP on the Google App Engine
http://www.webdigi.co.uk/blog/2009/run-php-on-the-google-app-engine/

Google App Engine でPHPを動かす!!
http://d.hatena.ne.jp/shunsuk/20090520/1242823586

ということはですよ、CakeをGAE上で動かすのは誰が一番乗りになるでしょうか???
ラベル:PHP cakephp
posted by SDozono at 09:58| 東京 ☀| Comment(1) | TrackBack(0) | CakePHP General | このブログの読者になる | 更新情報をチェックする

2009年05月20日

音系PHP

音声系phpライブラリ。
忘れちゃうので書いておこう。

Class: Create image for WAV file
http://www.phpclasses.org.icontem.com/browse/package/5365.html
PHPを使い、wavファイルから波形イメージを作成するクラス。
こんなサンプル。
screenshot.jpg

Class: WavEdit
http://www.phpclasses.org/browse/package/2608.html
Wavファイルからヘッダの読み取り。波形の作成。フェードイン・フェードアウト処理など。

Class: WavForge
http://www.phpclasses.org/browse/package/1932.html
音声ファイルを合成。簡単シンセ?

Class: Audio Streamer
http://holliwell.mirrors.phpclasses.org.icontem.com/browse/package/3927.html
wav,mp3,ogg,flac,mpc,ape,wv,ofr,la,pac,shn,aac,ac3,aif,3gp,mov,raw,wma に相互変換。lame,oggdec,flac,mppdec,ffmpegなどに渡しているだけ。
posted by SDozono at 12:06| 東京 ☀| Comment(0) | TrackBack(0) | CakePHP General | このブログの読者になる | 更新情報をチェックする

簡単scaffold(bake?)

Cakeの使用前は、phpMyEditを活用していた時期がありました。

Instant MySQL Table Editor and PHP Code Generator
http://www.phpmyedit.org/

CoC(“規約重視”)ではなく、「設定ファイルに全部書いちゃおう」というタイプのテーブルジェネレータで、細かい動作も全部パラメータとして指定する、というものでした。なので、「想定にない動作をさせる」時にはむちゃくちゃ大変でした。でも、結構感動できる画面を作ってくれます。

ただ、「もっともっと簡単に、単にPHPファイルが数枚あるだけの簡単管理画面を作ってくれないのか」という話になると、現在のCakeもちょっと大げさすぎるかもしれません。

そんなわけで、新しく登録されたこちらのプロジェクト、思ったより素敵なものでした。

Class: PHP Scaffolder
http://www.phpclasses.org/browse/package/5377.html

DBとテーブルを指定すると、こんな感じで編集画面を出してくれます。バリデーションが選べます。

scaffolder1.PNG

すると、生成される画面はこんなです。ここで特筆すべきは、これがテンプレート画面になっているので、デザインだけいじればよい、ということです。

scaffolder2.PNG

“フレームワークを使わずにDBテーブルの編集画面を書いてくれ”と頼まれたら、試してみる価値はありそうです。
posted by SDozono at 11:40| 東京 ☀| Comment(1) | TrackBack(0) | CakePHP General | このブログの読者になる | 更新情報をチェックする

2009年05月08日

CakePHPのどこが嫌いか?

CakePHPのGoogleグループでそんなタイトルつけるなよ、と思ったら、投稿したのはCakePHPのリードデベロッパーその人でした。

CakePHP Googleグループ
Poll: what do you hate about CakePHP?
http://groups.google.com/group/cake-php/browse_thread/thread/134b180ce477b9ef

現在、新しい1.3を作り始めているので、どこを改善してほしいと思っているのか、知りたい、ということだそうです。

PHP4はもういらない、という意見が多いです。
ラベル:cakephp
posted by SDozono at 13:53| 東京 ☁| Comment(0) | TrackBack(0) | CakePHP General | このブログの読者になる | 更新情報をチェックする

2009年05月05日

リリース: 1.2.3.8166 安定版

1.2.3.8166安定版が公開されています。
8120には、ページネータにバグがあり、クリックしても、ASC<->DESCの切り替えがうまくいっていませんでした。8166だとヘルパーを修正しなくてすみます。
Security Fixもありますので、お早めにどうぞ。

http://bakery.cakephp.org/articles/view/release-cakephp-1-2-3-8166
ラベル:cakephp
posted by SDozono at 10:26| 東京 ☀| Comment(0) | TrackBack(0) | CakePHP General | このブログの読者になる | 更新情報をチェックする

2009年04月15日

Small small Cake

Cakeが成長を続けてはや3,4年。機能を充実させてゆく、というのはコードが増えてゆく、という意味になる。

すると、今度は「使う機能だけに絞り込んだ同等機能を持つフレームワークのほうがスピード速いのでは」という話に。

日本でも「ちいたん」が生まれた。
http://php.cheetan.net/
「私は普段CakePHPを使用していますが、それを使用するほど大きなプロジェクトではなく、でも多少手のかかる物の場合に使えるフレームワークがほしい… そんなときに使えるフレームワークを目指して作成」

こちらでは、「Cakeの80%のAPIを使えるように」する“ミニCake”を作りはじめた人がいます。

baseappframework
Very Small and Minimalitic PHP 5 Framework with CakePHP inspired API.
"CakePHP API ( 80 % ) and Layout"
http://code.google.com/p/baseappframework/
http://www.ngcoders.com/projects/baseapp/baseapp-php-framework-simple-small-swift

「8割がたのCakeAPIを使える。スピードは高速。Cakeの別なAPIが必要になったら、フレームワークに自分でコピペしてね」というようなフレームワークのコンセプトは面白い。
ラベル:cakephp
posted by SDozono at 10:25| 東京 ☀| Comment(4) | TrackBack(0) | CakePHP General | このブログの読者になる | 更新情報をチェックする

2009年04月13日

Redmine BTS on a cheap PHP server

A CakePHP users group in Japan are trying to port Redmine(Ruby on Rails) to CakePHP.

Already the main part of the BTS is working at a cheap PHP4 shared server with CakePHP.
You can see the screenshot at following page.

diary of yandod
http://d.hatena.ne.jp/yandod/20090412/1239516664




ラベル:cakephp redmine BTS
posted by SDozono at 09:28| 東京 ☀| Comment(0) | TrackBack(0) | CakePHP General | このブログの読者になる | 更新情報をチェックする

2009年04月09日

CakePHPユーザ日本全国

CakePHP.jpのXOOPSサイトには、Geo Visitorsのリンクを貼っています。海外のサイトなんですが、数キロメートル?の誤差でビジターのおおよその位置を表示してくれる素敵なサービスです。一時期、非常に重くてエラーを頻発していましたが、最近はまた復旧しているようです。貼り付けたころは九州方面からのアクセスはほとんどなく、北海道からも一人程度だったのですが、現在見ると、この24時間だけでも日本各地からアクセスされていることが分かります。

こういうアクセス解析に関心のある方は、いつでもxoopsサイト右上の“訪問ユーザ分布”というリンクをクリックしてみてください。

cakephp_users_thmb.PNG


ラベル:cakephp
posted by SDozono at 09:49| 東京 ☀| Comment(0) | TrackBack(0) | CakePHP General | このブログの読者になる | 更新情報をチェックする

2009年04月07日

CakePHPの壁紙

非公式だそうです。
CakePHP Wallpapers (Not Official)

cakephp_wallpaper.PNG
http://www.jotlab.com/2009/03/24/cakephp-wallpapers-not-official/

Mattは本当にいろいろ見つけてくる。
http://www.pseudocoder.com/archives/2009/04/06/cakephp-digest-11-food-metaphors/
ラベル:壁紙 cakephp
posted by SDozono at 17:29| 東京 ☀| Comment(0) | TrackBack(0) | CakePHP General | このブログの読者になる | 更新情報をチェックする

prototype/mootools/jquery/etc -> JSHelper

1.3ブランチには、mark_storyによる下記のコードがあります。
楽しみですね!

jquery_engine.php
mootools_engine.php
prototype_engine.php

js.php

あらゆるjavascriptライブラリを統一的に使える JSHelperの構想がこちらに。
http://thechaw.com/cakephp/wiki/RFCs/Ajax_Helper_rebuild
ラベル:cakephp
posted by SDozono at 14:32| 東京 ☀| Comment(0) | TrackBack(1) | CakePHP General | このブログの読者になる | 更新情報をチェックする

2009年04月04日

PHPで作ること、作らないほうが良いこと

ひさびさの更新です。

CakePHPに関しては、なんかこう、自分の中では“普通の”ツール扱いになってしまい、MySQLやphpMyAdminを使うのと同じ感覚になってきたため、それほどここに書き込む内容もなくなってきたような…。

CakePHP.orgができたばかりの頃は、できないことやバグも多いということで、わいわいがやがやとした雰囲気がありましたが、その頃の人たちの声が今ではWeb上には出なくなり、Ticketもそれほど面白くなくなってきた?ような気もします。

1.2の成熟期かも。1.3や2.0になった時にはまた活発になるかもしれません。とはいえ、日本では安藤さん主導でハンズオンセミナーが開かれ、まだまだ驚くようなプロジェクトや仕掛けが出てきそうな気配です。gwooも日本に期待しているのではないでしょうか。

gwoo says:
so yandod tells me that next week our cakephp friends in Japan plan to work for 24 hours straight. I wonder what they will come up with....


今回、“htmlをPDF化するオンラインツール”を作る必要が出てきました。具体的には、見積もりをWeb上で作るオープンソースのソフトがあって、それにはすでにそういうコードが入っていたんですが、日本語出力に対応していなかったんです。PHPで定番と言えば、

FPDF
や、
TCPDF
などがあり、どちらも日本語を出力する方法があります。

しかし、今回のプロジェクトでは、html2psを使っていました。
html2ps and html2pdf

FPDFや、TCPDFにはできない芸当をhtml2psはやってしまいます。
PHPだけで、かなりの数のサイトのWeb画面を生成してしまうのです。
まるで、"PHPでブラウザを作る"みたいなプロジェクトです。
HTMLを独自にパースして合成してゆくので。

最初、これをちょっといじれば日本語化対応できるかな、と思い、コードを読み始めましたが、これはちょっと手に負えないな、と思い、やめてしまいました。同時に、「ここまでやるか〜」というような気分になったのも確かです。

TCPDFはアルファチャンネルにも対応している、と書いてあるのですが、実際に使ってみると、計算に時間がかかりすぎました。

PHPは便利なので、やろうと思えば、「画像認識OCRをPHPコードで」とか、「Webページの画像を合成」とか、もっといけば「音声合成・認識をPHPで」とか、「もしかしたらできるんじゃないの」と思ってしまうかもしれません。実際に画像認識もがんばっている人が入るみたいだし…。

ただ、道具は使いようというか、「本当にそれはメリットがあるのか」ということを考えないと、ただの自己満足に終わる危険があります。
数日、html2psを日本語化できないかコードを追い続けてさじをなげた後、「これだったらC#で書いたほうが速いかも」と思い、Visual Studioを立ち上げました。

その結果、動作コードは半日もかからずに出来上がってしまいました。C#でPDFを出力するオープンソースのライブラリがこんなにたくさんあるとは。ライブラリに付属のサンプルをちょっといじるだけでできてしまいました。URLから画像を生成するツールと組み合わせたら、あっという間に完成です。日本語ももちろん対応しているし、何より速度が大違い。

Windows上で動作すれば今回は良いので、これでおしまい、ということにしました。それと、「それ、本当にPHPでするべき仕事?」というのは考えないといけないと思います。

[追記]
今頃気がつきましたが、

Takeshi Kannoさんの、
http://libharu.org/
と、これをPHP上で使えるようにした
PECLのext/haru extension
http://jp.php.net/manual/ja/book.haru.php
でも良かったかも。

Dynamically Generating PDF Files with PHP and Haru
http://devzone.zend.com/article/4044-Dynamically-Generating-PDF-Files-with-PHP-and-Haru-

http://php.net/manual/ja/function.imagegrabwindow.php
でIEのキャプチャも取れる〜。
posted by SDozono at 15:14| 東京 ☁| Comment(3) | TrackBack(0) | CakePHP General | このブログの読者になる | 更新情報をチェックする

2009年03月20日

Release: 1.2.2.8120

1.2.2が公開されています。

Release: 1.2.2.8120
http://bakery.cakephp.org/articles/view/release-1-2-2-8120

今回のリリースは、cakephperさんの下記の報告が大きなひとつの理由となっていると思います。お疲れ様でした。

Paginator helperにXSSの問題
http://cakephp.jp/modules/newbb/viewtopic.php?viewmode=flat&topic_id=1779&forum=9
ラベル:cakephp リリース
posted by SDozono at 14:12| 東京 ☀| Comment(0) | TrackBack(0) | CakePHP General | このブログの読者になる | 更新情報をチェックする

2009年03月12日

「CakePHPによる実践Webアプリケーション開発」

毎日コミュニケーションズから新刊!

Shin 1x1
「CakePHPによる実践Webアプリケーション開発」が出ますhttp://www.1x1.jp/blog/2009/03/book_cakephp_application.html
ラベル:cakephp
posted by SDozono at 06:31| 東京 ☀| Comment(0) | TrackBack(0) | CakePHP General | このブログの読者になる | 更新情報をチェックする

2009年03月10日

SQL EXPLAIN Component

A baker in Japan wrote a "SQL EXPLAIN" component.
If you really like CakePHP's SQL Debug feature, I'm sure you love it.

You can download from here:
Page:
http://d.hatena.ne.jp/cakephper/20090310/1236684519

Download:
SQL EXPLAIN component
http://cake.eizoku.com/source/explain_sql.zip
for MySQL & PostgreSQL
ラベル:cakephp SQL
posted by SDozono at 22:00| 東京 ☀| Comment(1) | TrackBack(0) | CakePHP General | このブログの読者になる | 更新情報をチェックする

CakePHP初心者向けハンズオン

yandodさんによるCakePHPハンズオンがグリー株式会社 3Fセミナールームにおいて開催され、無事に終了したそうです。

雑文発散
CakePHPハンズオン@Tokyo #2 へ参加してきた
http://suzuki.tdiary.net/20090307.html#p01

yandodの日記
3/7(土)CakePHP初心者向けハンズオンを開催します
http://d.hatena.ne.jp/yandod/20090223/1235344997

企業の製品に関するハンズオンだったら非常に高額な授業料になると思うのですが、オープンソースならではの企画・講習会となったのではないでしょうか。

企業でまとめて講習を受けたい、という場合にも講師として招待できるかもしれません。その場合には費用が発生すると思います。(笑)

(おまけ)
※CBAでは、異文化研修コミュニケーションを引き続き承っています。
TESOL式によるトレーニングや、実際に海外と丁々発止の交渉をしながら業務を行う講師による、リアルな授業を展開していますのでお気軽にご相談ください。
http://www.cba-japan.com/2006/08/post.html#more
posted by SDozono at 09:28| 東京 🌁| Comment(0) | TrackBack(0) | CakePHP General | このブログの読者になる | 更新情報をチェックする

2009年03月06日

フレームワーク同士の大人の付き合い方

なんかよく分からないタイトルになってしまいました。(笑)
最近は耳にしませんが、
「XXフレームワークはだめだ。○○フレームワークのほうが良い」
というような言い方をPHPの世界ではよく耳にしました。

Cakeが槍玉に挙げられることが多かったのも事実です。
そういう「槍玉にあげる」人もいたからです。

今日のはてなブックマークでホットエントリに入っていたリンクに面白い一節がありましたので、せっかくなので引用しておきます。

CakePHPも、Symfonyも、CodeIgniterも、Akelosも、Rachoも、その他のフレームワークも、みんなこれは大事だと思います。

Original:
http://producingoss.com/en/marketing.html#competing-products
Don't Bash Competing Open Source Products
Refrain from giving negative opinions about competing open source software. It's perfectly okay to give negative facts—that is, easily confirmable assertions of the sort often seen in good comparison charts. But negative characterizations of a less rigorous nature are best avoided, for two reasons. First, they are liable to start flame wars that detract from productive discussion. Second, and more importantly, some of the volunteer developers in your project may turn out to work on the competing project as well. This is more likely than it at first might seem: the projects are already in the same domain (that's why they're in competition), and developers with expertise in that domain may make contributions wherever their expertise is applicable. Even when there is no direct developer overlap, it is likely that developers on your project are at least acquainted with developers on related projects. Their ability to maintain constructive personal ties could be hampered by overly negative marketing messages.”

日本語:
http://producingoss.com/ja/marketing.html#competing-products
「競合するオープンソースプロジェクトを攻撃しない
競合するオープンソースプロジェクトについて、否定的な意見を述べるのはやめましょう。 否定的な 事実 については一向に構いません。 — 容易に裏が取れる主張は、比較する要素としてよく見られるものだからです。 しかし、あいまいな事柄に対して否定的な評価を行うことは避けた方が良いでしょう。 理由はふたつあります。 まず、それがきっかけで建設的でないフレームウォーが起こりがちだからです。 ふたつめは、もっと重要なことですが、 あなたの プロジェクトにいるボランティアの開発者の中からも、 競合プロジェクトで働く人が出る可能性があるからです。 前者より、後者の方が多く発生する可能性が高いです。 なぜなら、それぞれのプロジェクトは既に同じ専門領域に属していて(それゆえに競合関係にあります)、 その領域で専門知識を持っている開発者は、 それを生かせる場所であればどのプロジェクトでも貢献してよいからです。 直接的には開発者が重複していない状況でも、あなたのプロジェクトにいる開発者が、 関連するプロジェクトの開発者を知っている可能性があります。 彼らの建設的な人間関係を維持する能力が、 否定的なマーケティングのメッセージによって全て壊れてしまう可能性だってあるのです。 」
posted by SDozono at 13:24| 東京 ☔| Comment(0) | TrackBack(0) | CakePHP General | このブログの読者になる | 更新情報をチェックする

2009年03月05日

AuthComponentの最初の一歩

知っている人は知っている?知識かもしれませんが、一応。

Authコンポーネントを使うと簡単にパスワード画面が作れるが、最初にその画面を通してもらうために入れるDBの値はどうやって指定するの?
そこを通してもらわないと、最初のデータの追加・編集もできないじゃないか、という話です。

Cakeの 1.2.1.8004から、Authコンポーネントを使ってログイン画面を作っている場合、それ以前のバージョンでは表示されていた、“パスワードをハッシュ化した値”が、SQLのデバッグ画面に表示されなくなりました。

私は、以前のバージョンで作り出す時にはローカル環境でデバッグ表示をONにし、SQLデバッグの画面に表示された、“ハッシュされたパスワード”を phpmyadmin でDBに入れていました。

要は、“卵が先か、ニワトリが先か”というやつですね。
まぁ、万が一のことも考えると、セキュリティのことを考え、画面には一切表示しない、というほうが安全なのかもしれません。

で、8004以降はどうやって、「DBに入れる最初の値を知るか」という点ですが、これはどこかで

echo $this->Auth->password("知りたいパスワード");

とすれば、ハッシュ化された値がすぐとれます。その値をDBに入れておきましょう。ちなみに、セキュリティ・Saltの値によってこの値は変わります。パスワードの値は同じでも、ハッシュ化された値はまちまちになりますので注意。
ラベル:cakephp AUTH
posted by SDozono at 16:08| 東京 ☀| Comment(0) | TrackBack(0) | CakePHP General | このブログの読者になる | 更新情報をチェックする
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。