PHPメンターズのブログで時計オブジェクト(ドメインクロック)を導入してテスト容易性と意図性を高めるという記事が掲載されました。 この記事のように、アプリケーションでは現在時刻をどう扱うかをBEAR.SundayのSandboxアプリケーションで見て見ます。 @Timeアノテーション 現在時刻文字列を扱いたいクラスにはpublicのtimeプロパティを追加しメソッドにBEAR\Sunday\Annotation\Timeアノテーションを注記(アノテート)します。 use BEAR\Sunday\Annotation\Time; /** * Current time string * * @string */ public $time; /** * @Time */ public function onPut($id, $title, $body) { $this->
2月1日、第15回「Identity Conference(Idcon)」が開催された。東京・六本木に用意された広い会場は、金曜日の夜にもかかわらず「アイデンティティ愛好家」で埋め尽くされる盛況となった。 2月1日、第15回「Identity Conference(Idcon)」が開催された。Idconはデジタル・アイデンティティに興味を持つ人々による勉強会で、OAuthやOpenID Connectといったアイデンティティ関連技術を中心に、それを取り巻くさまざなな情勢について情報共有し、議論する場だ。 東京・六本木に用意された広い会場は、金曜日の夜にもかかわらず「アイデンティティ愛好家」で埋め尽くされる盛況となった。
先に、「CVE-2008-5814を巡る冒険」にて、CVE-2008-5814脆弱性があるとdisplay_errorsがOnの環境下でXSS脆弱性となる場合があることを説明しました。しかし、display_errorsがOnの環境下ではCVE-2008-5814脆弱性がなくても、XSS脆弱性となる場合がしばしばあります。 これは、display_errorsによるエラーメッセージ表示がHTMLエスケープされていないことが原因です。簡単なサンプルを以下に示します。 <?php ini_set('display_errors', 1); // display_errorsを有効にする $a = array(); // 配列の生成 $index = $_GET['x']; // 配列のインデックスを得る $b = $a[$index]; // 配列の要素にアクセス このスクリプトに、x=<sc
グーグルは、これまでChrome/Chromiumのレンダリングエンジンとして採用してきたWebKitをフォークし、新しいレンダリングエンジンの「Blink」をオープンソースで開発すると今朝表明しました。 グーグルのDeveloper Relations Japan Blogに投稿された「Chromium プロジェクトの新しいレンダリングエンジン Blink のご紹介」で、なぜWebKitからフォークしてBlinkの開発を始めるのか、その理由が記されています。 Chromium は 他の WebKit ベースブラウザーと違い、マルチプロセス アーキテクチャを採用しているため、WebKit プロジェクトと Chromium プロジェクトはここ数年複雑化の一途を辿ってきました。これにより、全体的なイノベーションの速度が低下してきたことは否めません。そこで本日、WebKit ベースの新しいオープ
間違ってrmしてしまったっ!! ということは誰しも一度はあると思いますが、そう言うときのためにもバックアップやバージョン管理は重要なわけです。 しかしバックアップは1時間に1回や1日に1回程度しか行わないので、たとえば5分前に変更したプログラムをrmしてしまったら、その5分間の変更は水の泡です*1。何という損失! 中でもやる気の損失が激しい。 上書き保存するたびにバックアップ そこで、これは受け売りなのですが、エディタでファイルを保存するときに常にバックアップを残すようにしています。 当然のことながら凄まじいファイル数になりますが、エディタで編集するのは大方プログラムや設定ファイルなので大した容量にはなりません。今私のバックアップディレクトリを見てみると 2008年4月2日16時15分30秒 から累積して約5万個のファイルが残っていますが、サイズは 400MB 程度です。 今時のHDDから
@frsyukiさんの作っているMessagePackのJava版が出ていたので軽くパフォーマンス測定してみました。 http://sourceforge.jp/projects/msgpack/devel/ パフォーマンス測定に使ったプロジェクトは、TPC(Thrift-ProtocolBuffer-Compare)です。TPCはシリアライズ、デシリアライズテクノロジを色々とベンチマークして、かつ最後にGoogleChartでグラフを出してくれる賢いやつです。GJ、TPC。ちなみに今回の測定のやつは、自前でAMF用作ったり、ややカスタマイズしてます。 http://code.google.com/p/thrift-protobuf-compare/ 測定は、イテレーション数を500、1000、2000回でそれぞれ測定しました。測定結果及びまとめは私の主観なので、そこは各自測定して、各々判
I tried to make this as understandable as possible for any party reading it which means that the wording, references, and terminology used may not reflect that of a technical paper or resource. Excuse me if you may for I wish all to understand this, and not just those with a degree in understanding legal or technical jargon. Created with love by Nijikokun @ Mashape, the team behing the OSS API man
圏論は数学である しかも, とても洗練された数学だ. 数学が苦手な人が, たった数ページのブログ記事で圏論を理解できるわけがない. 理解した人は, 何ヶ月も何年もかけてそこに至った 圏論についてブログ記事を書く人は「うおおおお圏論分かったwwwwすげぇwwwww」という状況なのだけど, その状態になるまで何ヶ月も何年もかかっているはず. 考えて, 考えぬいて, コードを書いて, 何十枚もの可換図の落書きの後で, その境地に至るのである. そんな苦労が, 短いブログ記事で伝えきれるわけがない. 何枚もの可換図を手で書いてきたという経験が, ブログ記事で共有できるわけがない! 手を動かしなさい, 声に出しなさい 小さい頃に, 手を動かしなさいと言われたことは無いだろうか? 漢字のドリルでも, 計算ドリルでも何でもいい. 或いは, 国語の教科書を音読しなさいと言われただろう? あなたはまさか,
Vimの設定ファイル.vimrc, そしてVimのプラグインには, スクリプト言語Vim scriptが使用されます. 昨今の巨大なプラグイン製作者によるこの言語への不満が募り, 最近はVim scriptについて激しい議論が交わされています. どんな言語か 静的型付け言語で, 命令形です. while, if等基本的な制御文に加え, 関数もサポートされています. 変数の取り扱いが特徴的です. オブジェクトがあるので, 苦し紛れにオブジェクト指向っぽく書くこともできます. vim-jpで何が起こっているのか Vim scriptを今後どうするかが話題になっています. https://github.com/vim-jp/issues/issues/48 https://github.com/vim-jp/issues/issues/340 巨大なプラグインを書いていらっしゃる方々が, Vim
Vim scriptを取り巻く問題について というエントリへの反論というか返答というか補足です。このエントリは極端に書くとこう言っています。 Luaトランスレータなんてできっこねーんだから無駄なことやめろよバーカバーカ キャッチーに要約してますがコレ一行で済むでしょう。 ただ正直なにもわかっちゃいないで書かれたようなので、足りてないところを書いておきます。 Vim scriptの高速化方法の比較 Vim script を高速化する方法は、現時点で2つ提案されています。 バイトコード化 (=パース処理のキャッシュ) 別言語(Lua)へのJust In Timeな トランスレータ あのエントリでは前者は実現可能であるが後者は不可能であると述べていますが、私の見かたは違っていて「どちらも実現可能である」です。ただしそこに至るステップ、歩幅の大きさと予想される最大効果がぜんぜん違います。 歩幅の大
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く