PHPMatsuri2012 (本編)

http://d.hatena.ne.jp/tanakahisateru/20121106/1352213410 の、続きです。じゃあいよいよ本編。個人的にここポイントじゃないかと思ったことが、ろくでもない日記に混じって出てきます。当日は10:00すぎ入りでした。誰かみたいに場所を間違えかけていた人…

PHPMatsuri2012 (前夜編)

こんばんは、イケメンじゃなかったほうの田中です。PHPMatsuriでした。行きましたよ。去年はホーム大阪での開催にもかかわらず、運動会事情でホテル代含みで全額払って1日で帰るという悔しい思いをしたので、今年はそのリベンジを果たしにいざ福岡の地へ。あ…

HomebrewでPHP環境 現時点でのまとめ

MacでHomebrewを使ってPHPの開発環境を作るまとめです。HomebrewはMacPortsより圧倒的にコンパクトなのがメリットです。MacPortsでPHPをインストールすると、/opt/localに、Apacheを含め、すごい量のパッケージをインストールされます。PHPのビルドにApache…

FizzBuzzをかんがえた

Rubyでかんがえた Pythonでかんがえた

MacのCheatSheetが素晴らしかった

Mac

http://cheatsheetapp.com/CheatSheet/これ起動しておくと、commandキーを押して「あれ? あのショートカットキーなんだっけ?」って思ってると、こんなのが出てくれます。これ、Mac OS 標準のアプリケーションだけでなく、ショートカットの登録状況を見て、ど…

「はじめてのフレームワークとしてのFuelPHP」書評

PHP

ご無沙汰しております。ものっそ久しぶりに書きます。著者様から献本頂いて、達人出版会発行の「はじめてのフレームワークとしてのFuelPHP」読みました。EPUBをダウンロードするやつです。http://tatsu-zine.com/books/fuelphp1stただのFuelPHPのテクニック…

PHPのarrayをリストとして使うときはunsetしちゃダメという話

PHP

タイトルそのまんまです。PHPのarrayは順序付き辞書なんだけど、リストに見えちゃうのでついついやってしまうのが $a[count($a)-1] こういうの。善良なプログラマほどこの罠にかかるから、こういうときはunsetじゃなくてarray_spliceを使おうね。

PHPのinterfaceなめんな

PHP

はいタイトルは釣りです。OOPのインターフェースはただの実装漏れチェック機能じゃないし、ましてや継承は差分プログラミングツールじゃないぞ。というのはわりと一般的な話だけど、Ruby(respond_to?でホントにいいの)とJava(インターフェースが自然すぎてユ…

jEdit4.5.0の日本語リソースできました

jEditの4.5があっという間にfinalになってリリースされました。4.4preは何だったのかという... まあ、早い段階でちょっと便利な機能が増えて安定版になってくれるのはありがたいことです。さてそんなわけで4.5.0対応の日本語ファイル作りました。 https://gi…

CakePHP2のTwitterBootstrapプラグインがかっこいい

PHP

CSSフレームワークのような、Webアプリのフロント用ツールキットのような、TwitterのBootstrapがいい感じです。フォームのmargin/paddingの具合やプリセットの表現がほんとスマートで、やりすぎないのにすごく丁寧。http://twitter.github.com/bootstrap/そ…

GitHubでプルリクエスト用ブランチを保守するメモ

Git

GitHubにリポジトリを置いてる人はみんなプルリクエストを待っています。けどプルリクエスト用にフォークした自分のリポジトリを保守する方法が途中でわからなくなって...という人が案外多いんじゃないかなと思ったり。なので、ちょっとメモ置いときます。っ…

Gitで空フォルダを管理したいときemptyを使うか.gitignoreを使うか

で、2つの流派に分かれるempty派と.gitignore派ですが、うまく使い分けるといい感じになります。.gitignore はキャッシュやログなど、システムがその中にファイルを作るフォルダに、 empty はもしかしたらその中にソースコードを入れるかもしれないけど今の…

PHPでHTTPレスポンスコードを返すときPHP_SAPI分岐は要るのか

PHP

こたえは「たぶん要らないんじゃないの」です。はいおわり、というのでは何の話かわからないので、以下に詳しく書いておきます。PHPのマニュアルで header() 関数を調べるとこんなことが書いてありました。 特殊な header コールが 2 種類あります。最初のも…

Yiiフレームワークでもっと理解したいMVCの話

2011年内に書ききれなかったトラックバックです。あけましておめでとうございました。PHPのアドベントカレンダーに Ruby on Rails と CakePHP と Django と Symfony2(*1.x とは別物なので2と明記) の特長がうまくまとまってるいいエントリが書かれていました…

Pano: タブをサイドバー化するFirefox拡張の決定版

最近普段使いはChromeなんですが、やっぱりFirefoxは開発や調べ物に最適で、ずっと使っています。Firebugとそのエクステンションはまだまだ最高ですよ。けどそういう目的に使っていると、すぐにタブがいっぱいになってしまい、どれがどれだかわからなくなっ…

GitやSvnなどの差分ファイル抽出決定版

せっかくソースコードのバージョン管理をしているのに、納品物が「前回との差分ファイル」だったりすることありますよね。たしかに変更ファイルはこんなコマンドで、こういうふうに出せます。 $ git diff --name-status HEAD~1 M foo/bar.html A foo/baz.htm…

PHPMatsuri 2010 からの1年を振り返って

もう間もなく開催される PHPMatsuri 2011 にむけて、 @koyhoge さんの 秋にはプログラム言語イベントの大トリに行くのだ - Blog::koyhoge からのバトンを受けました。 PHPMatsuri リレーブログ 、今日は僕の担当です。祭り自体についてはみんな書いてくれる…

「面白い人ほど会社を辞めていく」というよりは

「面白い人ほど会社を辞めていく」3つの理由 | ihayato.news 「面白い人ほど会社を辞めていく」なんてこたない、3つの理由。:impresario | impresarioこれ、ちょっと思うところがあったので吐き出そう。 情報統制 時間・場所に縛られる苦痛 この二者はあん…

Pinoco等でも様々な列でのソートを改善してみる。

アプリケーションハンガリアンを用いて徳丸本の「様々な列でのソート」のサンプルを改善してみた。 http://tech.ecnavi.co.jp/archives/4606152.htmlという記事に触発されて、さらに、言語としての表現力がどれぐらい貢献できるか考えてみたいと思います。ブ…

PHP 5.4.0 Alpha3 でこういうコードが書けるようになる

PHP

何も言いません、これ見て驚いたらいいですよ。PHP5.4.0 Aplpha3 で実際に実行できたプログラムです。もう大興奮ですよ。Pythonだともっといろいろ書けるよ、とか、Rubyはmixin最初からあるよとか、その変数スコープJSだと当たり前すぎるとか、そういうツッ…

手当たり次第サークル追加大会なGoogle+の現状から感じること

現状のGoogle+の手当たり次第サークル追加の有様をみると、残念だけど有意なソーシャルグラフを作りたいというGoogleの意図はまだまだ失敗しているとしか言えないと思う。少なくとも今のところ日本では。もし将来Google+が当たり前に使われるものになったら…

ターミナルからPhotoshopを起動すると便利

Mac

Macのちょっと便利な使い方。 MacでWebのフロントもやる人は、ターミナルでvim使ってCSSのコーディングなど快適に作業しているとき、ちょこっと画像を修正する必要があって、しかたなくFinder開くためにマウスに手を伸ばすことがあると思います。マウスでFin…

トゥギャりました

CakePHPとHTMLコーディングの話 - Togetter

PHP5.4のトレイトを学んだらRubyのmixinがちょっと変な気がした

あ、釣りタイトルっぽい。いちおう、釣りじゃなくて率直に考えたこと、のつもりなので誤解しないでね。きのうは、PHPのトレイトについてものすごく前倒しで調査しました。で、そこで、Rubyのmix-inに似ているというところまで行ったところで、こんなコメント…

PHP5.4とScalaのトレイト比較

PHP5.4にはトレイトという文法が導入されて、多重継承の便利さが享受できるようになるそうです。 いろいろ試してみることにしました。トレイトといえば代表選手はScalaですね。Scalaでいうトレイトは、インターフェースの定義とメソッドの実装を同時にやって…

Pinoco0.5は柔軟なバリデータが売り

PHP

ついこの前0.4を出したところですが、また機能的にひと皮むけた感じなので、0.5としてPinocoマイナーバージョンの桁を上げました。 Downloads · tanakahisateru/pinoco · GitHubこちらが変更点の一覧です。 Changelog · tanakahisateru/pinoco Wiki · GitHub…

インターネットでカネを稼ぐ方法は五ツしかないかアダルトサイトで検証

業界構造にあまり詳しくないので想像でしかないのですが、 インターネットでカネを稼ぐ方法は五ツしかない : ミームの死骸を越えてゆけ がアダルトサイトにもあてはまるのか、面白そうなので考えてみました。1. 広告型 -- 見る人を集め、見せたい人がそれを…

PHPTALはPHP互換でもある

PHP

XHTMLと完全に構文互換なPHPTALですが、実はテンプレートの中にPHPタグを入れることもできます。 <h1 tal:content="title">my title</h1> helpers->Html->link( sprintf( __("List %s", true), __("Posts", true) ), array("action" => "index") );?> $ctx はレンダリング時にテンプレート…

カレントディレクトリを一発でPinocoサイト化するコマンド

PHP

カレントディレクトリを一発でPinocoサイト化するコマンドができました。 localhostのApacheのドキュメントルート以下に適当なフォルダを掘って実行してみましょう。 curl -L http://pinoco-0.5.2で初期化.します.jp | sh シェルスクリプトのテキストの内容…

Pinoco0.4はクロージャですごくなる

PHP

Pinoco0.4.0をリリースしました。 Downloads · tanakahisateru/pinoco · GitHub変更点はこちらで簡単に。 Changelog · tanakahisateru/pinoco Wiki · GitHub重要な点は、データベースをサポートしたところ。もちろん単にPDO用のライブラリあります、ってだけ…