バカンス駆動開発

この前バカンスって言ったら「古っ」って言われました

オフラインリファレンス&スニペット管理の「Dash」がすごくいい

Dash (Docs & Snippets)

Dash (Docs & Snippets)

  • Bogdan Popescu
  • 開発ツール
  • 無料

Dashとは

OSXのアプリ「Dash」とは、リファレンスを閲覧するためのアプリです。自作スニペットの管理もできます。

良いと思った所を列挙します

リファレンスの数がかなりある

f:id:egapool:20140113223023p:plain

数えてないんですけど、結構あります。数えてないんですけど。

検索が早い

ネイティブアプリで且つ、オフラインだからだと思いますが、表示速度がかなり早いです。呼び出すためのショートカットコマンドを登録しておけば、一瞬で呼び出せます。そうmacならね。

スニペットの管理がしやすい

このDashはスニペットを登録する機能もありますが、finderみたいな感じで登録閲覧できるので、とても管理しやすいです。

僕はテキストエディタはSublimeText2を使っているのですが、どんなスニペットを登録したかの一覧性が悪く、使いづらいと思ってました。

スニペットをどこからでも呼び出せる

これが一番凄い。ST2の場合ST2内でしか登録したスニペットを呼び出せませんが、Dashの場合、起動していればどんなエディタ(ブラウザのtextarea内でさえも)でも呼び出せる。これは凄いぞ。

さらにスニペットファイルをDropboxに置けば複数のMac間でスニペットを共有できます。

余談

スニペット集が配布されているのを見かけるけど、ああ言うの使ってる人って多いのかな。僕は自作スニペットしか使いません。というのも自分で作ったものじゃないと覚えられないから、呼び出すにも呼び出せませんよね?

AjaxにおけるCSRF攻撃対策

前回で近いうちにAjaxのセキュリティについて書きます!と宣言しましたが、あれはつまりCSRF攻撃の対策についてでした。今回はAjaxCSRF対策を行う方法を書きます。

先に結論

Ajax通信におけるCSRF攻撃対策は通常の遷移時に施す対策と考え方はかわりません。

実装方法

  1. ログイン時にトークンを生成しセッションオブジェクトにセットし、トークンをクライアントに送信
  2. クライアント側のjsスクリプト内でトークンをAjax通信時に常に付加するように設定
  3. サーバー側でAjaxで送信されたトークンの有無とセッションオブジェクト内のトークの一致を確認
  4. ログアウト時にセッションは全て破棄

ここで生成するトークンはワンタイムではないです。ログイン時にずっと使いまわします。

続きを読む

Ajaxこと始めまとめ

Ajaxこと始めまとめ

jQuery.ajax()のまとめ: 小粋空間

こと始めにはもってこいのエントリです。

jQuery.ajax(settings) - jQuery API 1.4.4 日本語リファレンス - StackTrace

どんなプロパティがあるか?を使い方と合わせて見やすくまとめられています。

サーバー側(PHP)

レスポンスのHTTPヘッダー

JOSNを返す場合

JSONを返す場合はしっかりヘッダにjsonである旨を記載しましょう。

Content-Type: application/json

理由はこちらのブログにとても詳しく書いてあります。有難うございます。 PHPのイタい入門書を読んでAjaxのXSSについて検討した(3)~JSON等の想定外読み出しによる攻撃~ - ockeghem(徳丸浩)の日記

続きを読む

でぃすぱっちゃうぞ〜編 - CakePHPをもくじとしてPHPを学ぶシリーズ02

個人的にはもう前回で連載終了かと思いましたが、なんとか第2回も公開できるようです。

lib/Cake/bootstrap.phpを見る

そもそも「bootstrap」て なんでしょうか?

ブートとは 〔 起動 〕 〔 ブートストラップ 〕 - 意味/解説/説明/定義 : IT用語辞典

コンピュータを起動すること。また、人間がコンピュータに電源を投入してから、操作可能な状態になるまでに自動的に行われる一連の処理。

URLにアクセスしてからアプリケーションロジックが走り出すまで、の

え?なんですか?

(中断)

すいません、お待たせしました。 いまプロデューサーから指示がありまして、読者の方から大変ご好評いただいたこのシリーズの続きはコチラで行うことになりました。

今後ともよろしくお願いいたします。

Dispatcherまで辿りつけない編 - CakePHPをもくじとしてPHPを学ぶシリーズ01

パーフェクトPHP フレームワークを作ってみて、次にどうしようか考えていました。

結論としては、オープンソースフレームワークもくじとしてPHPを学ぶ事にしました。

理由としては、Webアプリケーションを作るのに必要な機能はフルスタックなフレームワークにつまっているので、手探りで一つ一つ調べながら自己流のうんこコードを産むより、オープンソースのコードを吸収したほうが綺麗にそしてすばやく学べる、というところです。

題材はタイトルにもある通りCakePHPを使います。有名ですし、解説記事もたくさんあるので。なんだかんだやり玉にあげられているのでみんなCakePHPのことが大好きなんだと思います。*1

CakePHPをもくじとしてPHPを学ぶシリーズ

なので、このシリーズでやることはCakePHPを使ってアプリケーションを作成することではなく、ひたすらCakePHPの処理を追っかけるということになります。ようござんすか?ようござんすね?

続きを読む