ぼくとわたしのCakePHP

CakeMatsuri2009CakeMatsuriリレーブログ第6弾ということで、kaz_29さんからバトンをいただきましたので、今回は私MASA-Pがちょろっと書かせていただきたいと思います。先の諸氏がとても素晴らしい記事を書かれていますのでプレッシャーかかっています(^^;。皆さんの満足いく記事になるかどうかは分かりませんが、ちょっと視点を変えたネタも織り交ぜていきたいと思います。

■CakePHPを使い始めた理由

私は初めてCakePHPに出会ったのは、約2年ほど前。1.2ベータ版が出始めた頃になります。おそらく青年団(といっても私は名ばかり参加ですが)の中では後発部隊です。PHP歴は結構古くて4.06ぐらいから使っていましたが、それまではピュアPHPメインで開発しており、オープンソースフレームワークにはあまり興味がなく、いわゆる「オレオレフレームワーク」をメインで使っていました。

CakePHPを使い始めた理由は大変に消極的なもので、結局はPHP4のサポート終了がきっかけです。勤務先ではPHP4ベースのオレオレフレームワークをメインで使っていましたが、未来がないことが分かったのでメンテナンスはやめて、なんか適当なフレームワークを使おうと思いました。正直開発の合間をぬってメンテナンスするのに疲れたので(^^;。でも、会社の事情があってPHP5なサーバを立てる予算がしばらく下りそうもなかったため、とりあえずPHP4で作っておいて、PHP5なサーバを立てた時にするっと移行出来るようなフレームワークじゃないと… ということで、ほぼ実質CakePHPしか選択肢がありませんでした(^^;。

他にも理由はありましたが、大変に長くなりますので こちらの記事 を参考にしてください。なれそめについて一応詳細に記してあります。

▼なぜCakePHPなのか?
http://blog.ecworks.jp/archives/5

また、CakePHPに対しての私の思いは、過去にこちらの記事に書かせていただいております。こちらも是非ご参考ください。

【戯れ言】あえてCakePHPをヨイショしてみる
http://blog.ecworks.jp/archives/654

■なぜ「Ktai Library」を開発・公開したのか?

皆さんが興味あるのはきっとこの辺でしょう。

実はKtai Libraryの前身は10年近く前から存在していまして、iモードやJskyなんかも出はじめちゃったりしたため、「じゃあ携帯サイトなんか作ってみたらどうだろうか?」ということで実験的に携帯サイトを作って運営し、その時に出来た副産物を流用しています。 この携帯サイト、今では大変に印象が悪いのですが、いわゆる「出会いサイト」を作りました(一応「系」ではないです)。サクラもいないとっても健全なサイトでした(^^;。個人でやっていた割に会員数もそこそこ集まり、一回登録した人とお会いしたことも(ぉ。
…と、余談はこれくらいにして、一応当時もPHPやperlで携帯サイトを作る本が発売し始めたりしていましたが、どれも「キャリアで振り分けて違うHTMLを表示する」というものでした(今でもそのように解説されている書籍はありますよね)。当初からこの手法は納得できなかったのです。「画像や絵文字は確かに違うけど、他はほとんど一緒じゃん」みたいな。
以来、少しずつライブラリを成長させ、今日に至る感じです。この成長させたものが現在の「lib3gk.php」です。

で、CakePHP向けにまとめたのは、CakePHPの勉強中に携帯案件が来たためで、ちょうど良いのでCakeで作ってみようと。はい、私も当時はバイブル的な存在であった「CakePHP(1.1)ガイドブック」を片手にやりました!(この本には大変に感謝しています)
でも、実際の携帯サイトとなるとこの本の内容では足りない。ページ制御はまあ良いとして、絵文字やら何やらはやはり携帯ライブラリじゃないと… というわけで、とりあえずコンポーネントとヘルパーを作ってライブラリを組み込み、案件をなんとかしのぎました。

しかし、案件が一段落して考える時間が出来たとき、ふと思ったんですよね。「Cakeで実用的な各キャリア対応携帯サイトを作る場合、他の人はどうしているんだろう?」と。
ググってみると、いくつか情報は出てきますが、みんな各種各様というか、それぞれが何かしらんを最初から作って使っているみたい。なんかそれは時間的にもったいないというのか、1つ標準的なライブラリがあれば、みんなそれを使って楽できるんじゃないか?と。出来るだけ簡単な導入で、余った時間に一杯でも多くコーヒーを飲んでもらえればと思い、とりあえずアーカイブ化して発表したのが今年の3月です。
細かくバージョンアップしてはいるものの、まだ満足いくライブラリにはなっていませんが、でも今でははてブでも100に迫るブックマーク数となり、今でも多くの方に注目されている点については嬉しく思っています。

■プロジェクトを公開するようになって変わったこと

私はCakePHP関連では3つのプロジェクトを公開しています。一つはPHP1.2用のSmartyView(こちらはkaz_29さんの方でプラグイン化をしているので、実質手を離れました)、一つは最近音沙汰のないTplcutter(大汗)、そしてKtai Libraryです。

今まで私は、プロジェクトを公開したことはなかったのですが、CakePHPを使ってなんとか過密している自分のタスクを乗り切れるようになったため、恩返しの意味も込めて公開しました。でもこの行為がとても自分の世界観を広げたというか、華麗なる一歩だったように思います。いろんな意見が寄せられてプロジェクト自身の精度が上がっていくというのもあるのですが、それ以上に、いろんな方とお話をする機会が増えました。そして、いろんな方と接していくうちに、「ああ、自分はまだまだなんだな」と。「公開=成果・終わり」ではなく「公開=始まり・勉強」じゃないかと最近よく思います。
そして自分の世界観をさらに変えた「イベントでの発表」も、プロジェクト公開をしなかったらなかったように思います。

■イベントで発表するようになって変わったこと

自分の最大の転機はやはり「CakePHPカンファレンス東京」で、TplcutterのLTをした時だと思います。この5分は自分の人生の何割かを確実に塗り替えたと思っています。
発表の出来は、表向きはおそらく歴代LTでも最低の部類でしょう。アンケート結果もとても痛かったです(笑)。でも、懇親会で色々な方に「自分にも覚えがある」「詳細に聞きたかった」「使ってみたい」と嬉しい感想が聞け、さらにプロジェクトマネージャー(もう「だった」になってしまいましたね)のgwoo氏に「クールだ」と言ってもらえてとても嬉しかったです(そして当時通訳していた堂園さんがこのことを教えてくれなかったら、gwoo氏と直接話そうと思わなかったです。大感謝です)。
私は人前で話すのが大変に苦手で、こういったことは出来るだけ避けて通りたい方でしたが、この日をきっかけに逆転しましたね。「伝えること」はとても楽しいです。そして伝えることでたくさんのリターンがあります。その中でも一番の収穫は、皆さんの反応を受け取ることで、自分自身もより成長できる点だと思います。

第4回の勉強会では、今度はLTではなく普通のセッションでKtai Libraryの話をしてほしいとyandodさんからオファーが来て、これまたどうしようという感じだったのですが、またとないチャンスだったので引き受けることに。前回のLTではいろいろなものを詰め込みすぎて結果早口になってしまい何が何だか分からない発表になっていたように思ったので、この点はまず改善しないとと思いがんばりましたが、やっぱり肩の力が入りすぎていて、つまらない発表だったように思います。伝えるということはとても難しい… でも、LTの時と違っているのは、この難しい部分が楽しくなってきたことですかね。そしてその後の懇親会では、LTの時以上にいろんな人とお話しする機会が得られました。

そして今回のCakeMatsuriでは、ワークショップのスピーカーとしての参加。Ktai Libraryの話を1時限まるまるすることになりました。今までの失敗を生かして、もう少しましな話が出来たらと思っています。大変に楽しみにしています。

■積極的に発信してみよう!

色々書いてしまいましたが、通して言いたいことは「自分から何かを発信すると、それ以上の体験が得られる」ということです。私の場合はプロジェクト公開とイベントでの発表で大きく世界観が変わりました(たぶん)。もし、なにか行き詰まりや限界を感じていたり、もっと違う世界を除いてみたかったりしたら、ただやるのではなく、それを誰かに見てもらう方が、何倍も効果があるのではないかと思います。そして、それが知識となるだけでなく、それ以上のいろいろなものも一緒にやってくると思います。
ちょっと余談なのですが、最近私はプログラミングの勉強はそっちのけで起業するための勉強をしているのですが、私がもっとも尊敬する起業家が書かれた本の中に「与えよ、さらば与えられん」という、聖書の一節をもじった文が紹介されているのですが、これは格言だなぁと思います。

また、ブログ等で文章として公開すること自体良いことだとは思いますが、声としてそれを生身の相手に伝えるのはそれ以上に効果があります。これは自分自身で体験したことなので間違いないと思います。どんなに些細なことでも構いませんから、是非LTで発表してみてはいかがでしょう? 幸いなことに、CakeMatsuriでまだ募集しているようです。今がチャンスですよ!(笑)

■そしてCakeMatsuriです!

今年もCakePHP最大のイベントがやってきます。「CakeMatsuri」が10/30, 31に開催されます。
今回はなんと2日間開催! しかもカンファレンスだけでなく、ワークショップも催されます。今までの勉強会はコースが1つしかありませんでしたが、今回は3つのコースから選択できますので、より自分の知りたい内容が選べて良いのではないかと思います。自分自身で体験しながら学べるのもワークショップならではですよね。
そしてカンファレンスの方も、今年もコアデベロッパーの方をお呼びしています。生の…いや、焼きたてほやほやのCake話が聞けると思いますので、参加して損はないと思います。
さらに、昼食やパーティが会場内で催されますので、今回のイベントはユーザー同士で話す機会が大変に多いと思います。「LTはまだ勇気が…」という方でも、いろいろな人とお話しすることで、いろんな事を得られると思いますので、大変に有意義なイベントになると思います。お時間あるようでしたら…いや、お時間作って是非是非ご参加を!

CakeMatsuri2009

次のリレーブログは、「CakePHPのおいしい食べ方」でおなじみの堂園さんです。どうぞお楽しみに!

【Tplcutter】進捗報告(その2)

順調に開発が進んでいる(と思う)Tplcutterですが、ベースになる部分が出来てきました。
とりあえずディレクトリをサーチし、処理に応じてファイルを引っ張ったりコピーしたりする部分は実装できました。見た目だけは何となく動いています。

ファイルからデータが取れるようになったので、次の課題はパース部分ですが、とりあえず抜き出す部分は実験コードで動くことを確認していますので問題ないと思いますが、心配なのは、今回の大幅な仕様変更の一つである「タイプ」の導入部分です。

今までは、CakePHP用、もしくはPHP用の2通り(厳密に言うとSmartyView向けオプションを付けると×2)の処理が出来ましたが、一度指定されると同アプリ内はその処理で固定されてしまいました。逆に言うと、app内は同じ処理をしなければならないため、例えばノーマルビューとSmartyビューを混在できませんでした。
そこで新バージョンでは、ブロック内でそのテンプレートの「タイプ」を指定することで、異なった処理が出来るようになりました。
さらに、この「タイプ」は、標準で用意されているものを利用するだけでなく、自分でもカスタマイズたものを登録して、呼び出すことが出来るようになっています。今後新しいテンプレートシステムが出来た場合でも、自分でカスタムタイプを作って登録すれば、Tplcutterのバージョンアップを待ったりソースの改造をすることなく対応することが出来るのです。

タイプの中には「カテゴリ」という概念があり、さらに処理を分別することが出来ます。例えばCakePHPで言えば、通常のビューの他に「element」があり、処理内容は若干違います(格納場所が異なる)がベースはほぼ同じものです。この「若干」の部分をカテゴリで吸収できます。

ちょっと突っ込んだ内容になってしまいましたが、簡単に言えば「簡単な設定でフレキシブルにテンプレートが作成できる」というわけです。CakePHP用をはじめ、一通りタイプは用意するつもりですのでカスタムタイプを作る機会は無いかもしれませんが、もしそうなっても安心してお使いいただけると思います。

仕組み自体はそれほど難しいものではないのですが、心配しているのは「どんなテンプレートシステムが来ても大丈夫か?」という点です。展開先ディレクトリ等のカスタマイズは大丈夫だと思うのですが、例えばパスの変更だとか、そのテンプレートシステム固有の処理だとかがちゃんと実現できるかが心配です。まあこの辺はじっくりいきたいと思います。

【Tplcutter】開発経過報告(その1)

Tplcutterは、とりあえず開発が進んでおります。
一応経過報告など。

開発バージョンは、繰り返しになりますが「革命」とありますように、機能的に大きな変更をしております。最初は従来バージョンをベースに開発していたのですが、せっかくなので「一から」作り直すことにしました。ソースコードははっきり言って別物になっていて、いくつかの技術は転用しますが、たとえばパース部分は新しいアルゴリズムで動いております。

そんなわけで、現在はメインシステムのコードはまだほとんど組み上がっていない状態で、主要技術のテストコード状態なのですが、パースについては動くものができあがりつつあります。現状仕様を満たしたタグをきっちり抜き出せるようになり、オプションパラメータも良好に得られるようになりました。
一番心配していた部分がうまく動くようになったので、とりあえず今回の目玉については満たせそうですが、次の課題は「抜き出したオプションを利用して加工する」部分になります。

コードを書いていく上で、いくつかさらに新機能を盛り込むことにしました。
まずは、値を定義できる「define」コマンドがあるのですが、これに「スコープ」を付けることにしました。現バージョンも「ピース」機能でdefineに相当する事が出来るのですが、ピースで定義したものは同app内ですべてのファイルに対して有効になっていて、局所的な指定が出来ませんでした。なので、スコープを付けてほかに影響しないような設定が出来るようにすれば、より解りやすいテンプレートが作れるのではないかと思います。現時点では「public(app内ですべてに有効)」「protected(ファイル内で有効)」「private(contentなどのブロック内で有効)」の3種類にしようかと考えています。app外オプションはちょっと危険だと思いますので、現在は考えないようにしていますが、技術的には出来ないことはないと思います。
それから「include」で外部ファイルの読み込みに対応。PHPコマンドを使っても同様の動きは出来ますが、こちらは「ファイル加工時に組み込みしてしまう」ため、生成物の実行時に無駄な処理ステップがなくなるメリットがある点、そして「デザイナ側でPHPを意識しないテンプレートが組める」当初のコンセプトに沿える点があります。
さらに、PHP変数挿入コマンドも追加します。これはSmartyの「{$hoge}」に相当するコマンドです。ぶっちゃけPHPタグで書けば全く不要なコマンドなのですが、これもデザイナー向けであることと可視化できることにメリットがあります。ボックス指定が可能で、ボックス内にダミー値を入れておくことで編集中のテストを容易にします。なお、Smartyのように条件分岐とか繰り返しとか欲しくなるかもしれませんが、今のところはそれ以上のPHPエイリアス系のコマンドは設けないつもりです(defineで工夫することで似たようなことは出来ると思います)。

最後に、これは別の意味で重要かもしれませんが、本バージョンを正式な「1.00」バージョンにしようかと考えています。あまりにも機能が変わってしまったため、既にマイナーチェンジの域を超えてしまったからです。そして、以前から思っていた「CakePHPだけでなく、あらゆるプラットホームでも使える」柔軟な設定が、本バージョンで満たせそうだからです。0.2.0でそれに近づいてはいましたが、現にWordPressでは「ヘッダ・フッタ」が切り出せないために使えなかったですし、まだまだ汎用ではありませんでした。まあ、まだ「システム固有の動作」に対応できる仕組みになっているか、検証が出来ていませんが、出来ていなかった場合を想定していくつかの対応も考えていますので、たぶん大丈夫だと思います。

そんなわけで、夢もふくらみつつあるTplcutterですが、開発自体は進んでいますので、気長にお待ちいただけると。公開は2月中をめどにしていますが、正直自信はないです。
また、今回は完成間近になりましたらβバージョンを公開して、正式リリース前に、皆さんに若干テストしていただきたいと思っています。その際には是非ご協力いただけますと幸いです。

【お知らせ】あけましておめでとうございます

2008年はあっという間の一年でした。
でも、なんとか「CakePHPの情報を発信する」ことを継続できたこと、さらにSmartyView、そして現在一番力を入れているTplcutterを公開できたことを嬉しく思っています。
残念なことに、2009年は世界大不況の年となってしまうわけですが、そんな世界情勢に負けないよう、ECWorksはビッグに考えていきたいと思います。

まず、「革命」というテーマで現在開発をスタートしているTplcutter次バージョンを手始めにリリースし、懸念事項であった国際化も行っていきたいと考えています(元々はアプリ単体は(エセ)英語で出来ているので、ドキュメントさえ英語化できれば…)。

国際化については、Tplcutterに限らず、今後の情報発信でもチャレンジしていきたいと思います。そのために、現在英語を再勉強中です(大汗)。まだ一週間しか経っていませんので全然身についていない状況ですが、一年後に少しでも出来るようになってくれれば。その間に、何度かBakeryに投稿するのがとりあえずの目標ですね。
ちなみに、現在はCNNニュースをポッドキャストで入手したものを毎日聞いて耳を鍛え、英単語をとりあえず3000語レベルの1100語を毎日目を通し(暗記ではなく目で覚える)、Newsweek等の英語の活字を読む(意味が分からなくても文章を読む)ようにしています。書いて話す部分はとりあえず後回しなのですが、今のところ続いています。学生の頃は苦痛でしかなかった英語学習も、とても楽しくなってきました。

そして、国際化だけでなく、勉強会などでの発表も継続していきたいですね。先日のカンファレンスでは100%伝えきれなかったことが心残りでしたので、もう少し長いトークが出来たら是非やりたいです。

SmartyViewについては、CakePHPがstableになったので、1.2版については打ち止めにして、次期バージョンに向けての開発をしたいと思います。PHP5専用となるCakePHP2.0に対応したSmartyViewは勿論なのですが、Cakeは1.3版が予定されているらしいので、リリース次第ではそちらも対応を迫られるかもしれません。また、Smartyについてもバージョン3が予定されていますから、こちらの対応も考えないといけませんね。まあSmartyViewについては流動的になると思います。

あとは、最近WordPressの情報を書き始めたのですが、その辺の具体的なTipsについてもやっていきたいと思います。たぶんTplcutterとの複合技がメインになるかと思います。

更に…水面下では、更にビッグな目標を何点か掲げています。第一弾は暖かくなる頃の発表になるかとは思いますが、決まり次第お知らせいたします。

それでは、今年もどうぞECWorksをよろしくお願いいたします。

【Tplcutter】ライバル出現!

やはり海外から出てしまいましたか…

Tplcutterと似たようなコンセプトのテンプレート加工ツールとして、「Query Templates」というものが出たようです。そして、それを利用したCakePHPのTipsがBakeryに公開されたようです。

▼テンプレート加工ツール: QueryTemplates
http://cakephp.jp/modules/newbb/viewtopic.php?topic_id=1665&forum=3&post_id=3883#forumpost3883

まあ私がボサッとしていたからだとは思うし、だいたいアイデアというものは自分が思いついたら同時に何人もの人が思いつくそうなので、ごく自然な事だとは思うのですが。

ただ、やはりQueryTemplatesはプログラマー寄りというのか、理解するのは難しそうですね。駆動スクリプトを自作しないとならないみたいですし。
Tplcutterのコンセプトは「コマンド一発」「PHPを知らないデザイナが理解できる」「編集にツールを選ばない」点ですので、その点ではTplcutterは十分に優位に立っていると思いたい。

思いたい(大汗)。

バージョンアップを急ぐことは勿論なのですが、やはり「国際化」してBakeryに上げた方が良さそうですね。頑張らないと。

【Tplcutter】タグ仕様を決定!

先ほど某所にある「びっくりドンキー」にて、チーズバーグディッシュ300gを食いながらTplcutterのタグ仕様を決定してきました。

簡単に、今回搭載する機能概要を挙げますと…

  • レイアウトの定義(ファイルへ書き出し/メモリ記憶/破棄。各ビューにコピー)
  • レイアウトの呼び出し(メモリ記憶から/ファイルから。各ビューにコピー。新機能!)
  • ヘッダ/フッタの定義(レイアウトを分離したい場合に使用。各ビューにコピー。新機能!)
  • ヘッダ・フッタの呼び出し(メモリ記憶から/ファイルから。各ビューにコピー。新機能!)
  • ビューの定義
  • エレメントの定義
  • ピースの定義(範囲指定をメモリに記憶。0.2.0からの機能)
  • 文字列の定義(defineライクなメモリ記憶。新機能!)
  • メモリ記憶から書き出し(タグを置換/範囲指定を置換)
  • 領域消去(新機能!)

の機能を(タグ機能として)実装します。

更に、今まで放置状態だったCSSファイルやjsファイルに関しても今回メスを入れます。
今まではCSSやjsはTplcutterの処理対象外でしたが、0.3.0からは一部タグ機能(ピースなどのコピー置換機能など)についての処理を行います。また、Tplcutterタグは基本的にHTMLのコメントタグを利用したもののため、CSS/js内では使用不可能でしたが、該当タグについては「/* ~ */」や「//」も使えるようになります。これによって、CSS/jsファイル内で可変したかった値や、htmlのインライン内、PHPスクリプト内での置換をデザインツールで編集を損なうことなく表現することが出来るようになります。

今回の目玉は、何と言っても「コピー・置換機能」を「CSSやjs内でも使用できる」点ですかね。
「可変したい部分だけど編集用にダミー値を持たせたい」場合に本機能が大活躍します。
以前の記事でも書きましたが、今回のバージョンのテーマは「革命」です。
名ばかりでない「超便利!!」なツールを提供できるよう、頑張りたいと思います。

ちなみに、設定関連についてはこれから練るのですが、おそらく若干の変更はあるものの、こちらについては現状とあまり変わらないものになるかと思います。

【Tplcutter】次バージョンはいろいろな意味で「革命的」

仕事が忙しすぎていて手つかずだったのですが、そうも言っていられないため、Tplcutterの次バージョンについて現在仕様を練っているところです。
次バージョンのバージョンコードは0.3.0の予定ですが、一気にメジャーバージョンを0から2とかに引き上げてもいいような、「革命的」なものになりそうです。

今回のバージョンアップは、一つ目標となるものがあります。それは「WordPressのテーマをTplcutterで作れるようにする」ことです。
WordPressのテーマ(テンプレート)は、CakePHPと似ていてPHPコードベースなのですが、ヘッダとフッタが別ファイルに分かれているタイプで、現在のTplcutterでは生成が出来ません。また、これはテーマの作り方次第なのかもしれませんが、デフォルトのテーマでCSS部分をのパラメータをプログラムで可変しているところがあり、これがDreamweaverなどのデザインツールで編集しにくくしています。
このブログのデザインを変更したいというのもあるのですが、今後の業務としてWordPressを用いた案件を考えていまして、ちょっといろいろ試していたのですが、あまりにもテーマ編集が難しくて、このままではうまくいかないと感じたため、Tplcutterの出番登場という訳です。
この2点を最低でも何とか出来るような仕組みを考えているのですが、最終的にこれが解決出来るような仕組みを実装するとかなりの自由度が出ることになり、今までのTplcutterとは比べものにならないくらい便利なものになるかと思います。

とりあえずCakePHPカンファレンスで紹介してTplcutterの単語はCakeの世界(日本限定)ではそれなりに知られるようになったかもしれませんが、出来ればほかのシステムでも使って欲しいので、WordPressユーザにも広められれば私的には嬉しいかなと思います。できればほかのシステムも一通り試して、それにあった仕組みを追加していければ、もっと早く、ほかのユーザ様にも広めていけるのですが、なにぶん時間が足りないものですから、自分の世界の範囲内でしか出来ないことについては申し訳なく思っています。

そして、現在ご利用していただいているユーザ様にもお伝えしなければならないことがあります。
大変に残念なのですが、どうやら現状のTplcutterタグの指定方式を変更しなければならないようです。
つまり、現在のテンプレートを新バージョンに引き継げなくなりそうです。

現在いろいろな機能をTplcutterに持たせてきたのですが、タグの表現方法に限界がありまして、新機能への割り当てが困難な状況となっています。このため、現在の表現方式を変更して、将来的にも拡張がしやすいようなものに仕様と考えています。
現在はタグ内に含まれている記号が動作を意味していましたが、今回からは動作コマンド名と、そのパラメータが指定できる、多少「プログラムチック」なものになる予定です。こうなっていたのは、該当部分の抜き出しを簡単にしたかったという、作り手側の事情があったからなのですが、プログラムを頑張ってもう少し高級なものに置き換えます。
具体的には、たとえばレイアウト部分は「<!– #layout name=”hoge” output=”false” –>~<!– #layout –>」みたいな表現方法になります(ちなみにこの例ではファイル書き出しを抑制するオプションを指定しています)。多少プログラマー寄りになることで、デザイナーが扱いにくくなるかとは思いますが、この程度でしたらHTMLタグとかとあまり変わらないと思いますので、ぎりぎりセーフかな、と(^^;;;。
まだ本決まりではないのですが、このような理由で「革命的」というわけです。
互換性を代償に便利さを求めることになり申し訳ないと思いますが、ご理解いただければ幸いです。

これ以外にも、以前に上げていた拡張案を元に、手っ取り早く実現できるものも搭載できればと考えています。

なお、公開時期は全くもって未定です。
まあでも、少なくとも年内に公開することは「ない」と思います(大汗)。

【CS】今更ですがCreativeSuite3にアップグレード

もうすぐCS4が出るのですが、いまさらCS3にアップグレードです。

何故かというと、手持ちにあるAdobe製品はどれも古いもので、今バージョンアップしないとどれもバージョンアップできなくなってしまうため、正直仕方なくです。CS3にバージョンが上げられるのはPhotoshop7とFLASH MXなのですが、将来的にCS4 DesignPremiumにするということで、最安プランであるFLASH MX→CS3 WebStandard→CS4 DesignPremiumにしよう、という感じです。AdobeStoreでDesignPremiumをまともに購入すると28万くらいですが、Photoshopからアップグレードすると24万。ところがこれをビックカメラorヨドバシでポイント付きでWebStandard経由でアップグレードしていくと、実質17万台で済むのですよ! しかもDesignStandard経由より4万ほどお得になります。これはかなり割安でオススメです!

さて、アップグレードの話はこれくらいにして、クソ高いCSを何故アップグレードしたかというと、もう一つ理由がありまして…
実は、いまどきのサイトデザインの手法をよく知らないので、一度買って勉強してみよう、というのがあるんです。
ちゃんと理解できたら仕事にも取り入れていこうかと。

いつも困ってしまうのが、グラフィカルなサイトのテンプレートを作成する際、画像が先か、HTMLが先かで悩む点です。画像を先に作ってもHTMLに配置してうまくいかなかったり、その逆もうまくいかなかったり。ロールオーバーなんか入ったりしたらパニックものです。まあこれは今まで、連携のなかった古いバージョンのPhotoshopとGolive/Dreamweaverで作っていたからではないかと。ちゃんと連携しているソフトなら、もっと勝手が良くなっているのではないか…というわけです。

そして、これをTplcutterを通じてCakePHPで作成する流れをガイドライン化できたら、みんなでウマーな感じになれるのではないかと。TplcutterやCakePHPを抜きにしても、CSの各アプリを連携させてサイト開発を解説しているような本やサイトがそんなになくて、「みんなどうやっているのだろう?」という疑問があるんですよね。少なくともプログラマー側はそのプロセスがよく分からないんじゃないかと。Tplcutterを発展させるためにも、「いまどきのデザイン制作」を体感して、それをレポートできたらな~と思っています。

ちなみにCS3をざっくりと見てみたのですが、PHPはバージョン5に対応してないっぽいですね。それからSSHが使えるかあやしいところ。SVNとかに対応しているともっと管理が楽になりそうなんですけど…CS4で先進的な機能が追加されていることを祈ります。
 

CS4を検討されている方は是非こちらから!

アマゾンのサーバでエラーが起こっているかもしれません。一度ページを再読み込みしてみてください。


アマゾンのサーバでエラーが起こっているかもしれません。一度ページを再読み込みしてみてください。

【お知らせ】ECWorks Blogを移転しました!!

予告通り、ブログを移転しました。
タイトルも「(仮)」ではなくなりました(笑)。
旧ブログの内容は全てこちらの方に移してありますので、今後こちらの方を見ていただけると幸いです。

ブログシステムも予告通りWordPressなんですけど、いろいろと苦労しました。
まずMySQLの新規インストールと設定に手間取りました。Postgresのほうが数倍は楽(笑)。
それから、これはと思うテーマがなくて、探し回ってしまいました。
以前のデザインはコントラストが低くて見にくかったと思うので、今回のはコントラスト超高めです。ワンポイントな画像などそのままになっているので、今後いろいろと手を入れていきたいと思います。

ちなみにWordPressなテーマなんですが、Tplcutterでは作成が難しいですね。
layout部分がヘッダやフッタが分かれて格納されるため、ここを上手い具合にやらなければいけないとか、全部のページに対してPHPでヘッダとフッタを呼び出す形式になるとか。逆に言えば、それさえクリアできれば、ディレクトリ構造などはそのままでいけるので、対応できそうですね。
せっかくなので、TplcutterをWP対応させて、もっとテーマを皆さんに作って貰えるようになったらいいかも、なんて(笑)。どのみち必要かなと思っていたある機能もこれで必要になりそうなので、対策を考えてみます。

【CakePHP/Tplcutter】LTで紹介できなかった実演などを紹介したスライドを公開します(cakecon)

「CakePHPカンファレンス東京」のライトニングトークで、実演できなかった部分について、加筆してスライド化したものが出来ましたので公開いたします。とりあえずのTplcutterの便利な点が一通り分かるかと思いますので、是非ご覧ください。

ちょっと画面が小さいため、拡大できるバージョンを見た方が良いかもしれません。ちなみに下記URLでご覧いただけます。
http://www.slideboom.com/presentations/24747/Tplcutter%E3%82%92%E7%94%A8%E3%81%84%E3%81%9F%E8%B6%85%E9%AB%98%E9%80%9F%E3%82%A6%E3%82%A7%E3%83%96%E3%82%B5%E3%82%A4%E3%83%88%E9%96%8B%E7%99%BA%28%E4%BD%BF%E3%81%84%E6%96%B9%E7%B7%A8%29

もしよろしければご感想などいただければ。
ツッコミどころ満載だと思いますので。
そもそもこのボリュームをやるつもりだったのか? とか(激汗)。