タグ

2012年12月4日のブックマーク (11件)

  • CakePHPでUPDATEするときのクエリを(少しだけ)減らしてみた | 日記の間 | あかつきのお宿

    CakePHPでINSERTやUPDATEの処理を行うときって、どちらもsave()メソッドを使いますよね。 //INSERT時 $this->Model->create($data); $this->Model->save($data); //UPDATE時 $this->Model->set($data); $this->Model->save($data); あとはまあ、UPDATEのときにはsaveField()というメソッドもあるけど、あれは最終的にはsave()メソッド呼び出してます。 save()メソッドの便利なところは、入力するデータ(上の場合だと$data)にプライマリーキーの値がセットされていたら、自動的にUPDATE文にしてくれるってところですよね。 で、さらにこいつは、UPDATEのときはその値がキーになっているレコードが存在するかどうかを、SELECT文を投げて確

    CakePHPでUPDATEするときのクエリを(少しだけ)減らしてみた | 日記の間 | あかつきのお宿
  • CakePHP 2.x系の更新時のSQL発行回数を減らしたい - ダメプログラマの技術メモ

    今年7月に入ってから業務でCakePHPを使用しており、外国人プログラマ達によって書かれたソースの改修とパフォーマンス・チューニングを行っています。 その際、DB更新処理でSQLの発行回数を減らす必要が生じたので、その対応方法を述べたいと思います(需要はあまりないかもなぁ) saveメソッドのSQL発行回数は多い? DBの更新処理にはsaveメソッドを使用することが多いと思いますが、実はこいつ、かなりの曲者です。 百聞は一見に如かずです。 まず下のメソッドを見てください。 public function addPoint($user_id, $point) { $user = $this->findById($user_id); $user['User']['point'] += $point; $this->save($user); } 実際に今の案件で散見されるsaveメソッドの使い方

    CakePHP 2.x系の更新時のSQL発行回数を減らしたい - ダメプログラマの技術メモ
  • 有能な人材が辞めない職場 - WirelessWire News(ワイヤレスワイヤーニュース)

    先日イギリスのある大手ソフトウェア会社の方とお会いしました。この会社、ケンブリッジにあり、ケンブリッジ大学の研究者や卒業生が中心になって立ち上げた会社で、世界中の大企業にあるソフトウェアを提供している有名企業であります。この会社の製品は、投資銀行や中央官庁などでも使われおり、業界では知らない人はいない、と言われています。 同社はケンブリッジ大学だけではなく、米国の超有名大学やシリコンバレー界隈から人を採用し、少数精鋭で製品を開発してます。コストカットのために、インドやエジプトなどには開発作業を外注していません。品質を保つために、殆どの作業をケンブリッジ周辺で行っています。 開発に関わる人材はどこの会社も欲しがる精鋭ぞろいですが、同社はスタッフの退職率が低いことで有名です。それには秘訣があるのです。この会社、就労環境を極力自由にし、開発者が床でゴロゴロしながら仕事しようが、仕事中にゲームをや

    ash1taka
    ash1taka 2012/12/04
    すごいなその職場ww 寝ながらプログラミングしていいのはいいw
  • 二十代が白票を投じれば、街宣車は沈黙する - ペンとサイコロ -pen and dice- BLOG

    政治家を目指す友人を見て、選挙における街宣車の重要さを初めて知った。 「なぜ投票しましたか」 という理由はアンケートなど様々な手段で調べられているらしいが、その結果には 「支持政党だから」「政策が納得できるから」 といったものから 「よく街宣車を見かけたから」「昔、卵を貰ったから」 E.G.G (鶏卵) / onigiri-kun なんてものまである。(当にある) どんなに政策を練り上げて、正しく相手を説得しても、 キレイなポスターを作って、街中で声を張り上げても、一票は一票。 それなら、その一票をどう稼ぐかを考えることが選挙運動のキモになる。 ・リンク → 中から見た公職選挙法と「センシャ」 - わかりやすさを、コーディネート 公職選挙法上は明確に接待や飲の提供が規制されているが、 それでも「選挙事務所でどれだけ旨いメシを出すか」を投票の基準にするような人がいるらしい。 (この辺の話

    二十代が白票を投じれば、街宣車は沈黙する - ペンとサイコロ -pen and dice- BLOG
    ash1taka
    ash1taka 2012/12/04
    まぁ、何にしろ投票に行かないことには若者が軽視されてもしょうがないよね。また、投票しても若者にメリットが無ければ続けて投票しないかもしれないけど。何にしろ、投票はすべき。
  • Big Sky :: モテる Vim 使いに読み書き出来ないファイルなどなかったんだよ!

    Vim Advent Calendar 2012 の 4 日目の記事です。 「やった!コンプガチャで Vim 出た!」 「だって前の彼氏、Vim 使いじゃなかったんだもん」「マクドナルド店員「ご一緒に Vim など如何ですか?」」 こんな言葉が聞かれる様になって随分と経ちました(要出典)。 昨今、Vim はテキストエディタの枠を超え、アプリケーションプラットフォームへと変わりつつあります。 vital.vim 等を使う事で簡単にアプリケーションを作る事も出来る様になりました。手前味噌ではありますが webapi-vim の一部も vital.vim に取り込まれています。 このブログでも結構取り上げていますが webapi-vim とは一体何か。名前の通り、Web Application Programming Intreface を扱えるライブラリです。 webapi-vim とは we

    Big Sky :: モテる Vim 使いに読み書き出来ないファイルなどなかったんだよ!
    ash1taka
    ash1taka 2012/12/04
  • virtualField機能使ってみた - 趣味の延長線

    shin1x1さんがtwitterで「ver1.3にこんな機能がある」とtwitterで呟かれていたのをみて、実際に使ってみました。 virtualField機能で、できること*1 定形の計算や文字列処理を、取得時にSQL内で行う SQL関数を直接指定 まずは、作成したMemberモデルに、元記事を参考に、$virtualFieldを設定して見ます*2。 app/model/members.php var $virtualFields = array( 'name' => 'CONCAT(Member.first_name, " ", Member.family_name)' );そして、bakeで作ったindex(members一覧)にアクセスすると、こんなSQLが出力されていました。 SELECT `Member`.`id`, `Member`.`first_name`, `Membe

    virtualField機能使ってみた - 趣味の延長線
  • シェルのリダイレクトを「こわいものなし」というくらい完全に理解しよう - 檜山正幸のキマイラ飼育記 (はてなBlog)

    Java BlockingQueueで遊ぶ:パイプラインごっこ」でパイプラインの話をしたので、来の、つまりUnixのパイプやリダイレクトを少し調べてみました。 たまに話題となる some-command >file 2>&1 と some-command 2>&1 >fileの挙動の違いについて、「シェルはコマンドラインリダイレクトの指定を右から左に解釈実行する」なんて説明が見つかりました。んなバカな! パージングは左から右にするものですよ。パーズツリーを逆順にたどることはできるけど、そんなことする必然性はなんにもないよ。 次の記事を読むと、「右から左」なんて事情じゃないことが分かるでしょう。 UNIXの部屋 検索: リダイレクト シェルのリダイレクトにまつわる失敗 さてここでは、複雑なリダイレクト処理も完全に理解できる処方箋を示しましょう。例えば、次のコマンドラインが何をするか分かる

    シェルのリダイレクトを「こわいものなし」というくらい完全に理解しよう - 檜山正幸のキマイラ飼育記 (はてなBlog)
  • gzip圧縮でWebコンテンツを高速化|Webクリエイターネット

    Category Server コンテンツの表示スピードを早くするには、「ファイルを最適化して容量を軽くする」「キャッシュを使う」「非同期通信を行う」等、方法はいろいろとあります。 HTMLCSSJavaScript等のファイルを圧縮して、データの転送量を減らすことでコンテンツの表示スピードを早くするのもその方法の一つです。 今回は、Apacheのモジュールである"mod_deflate"と"mod_filter"を使ってファイルを圧縮し、転送量を減らすことでWebコンテンツを高速化する方法について書こうと思います。 Keyword:gzip圧縮,高速化,転送量削減 Apacheのモジュールmod_deflateとmod_filter Apacheのモジュールである”mod_deflate”と”mod_filter”について少し説明します。 mod_deflateモジュール 簡単に説明

  • rubyでsortするときに注意すること - (゚∀゚)o彡 sasata299's blog

    2008年12月12日00:09 Ruby rubyでsortするときに注意すること 今日ちょっとはまったことのご紹介(*・ω・)ノ 複数の条件でsortしたいときってありますよね。例えばperlだとこんな感じです。 #!/usr/bin/perl use strict; use warnings; my @data = qw/hoge fuga foo hoge3 foo2/; my @sort = sort { length $a <=> length $b or $a cmp $b } @data; print "@sort\n"; 長さでsortして、同じ長さだったらascii順に並べる、みたいな。結果は foo foo2 fuga hoge hoge3 こういうことをrubyでやりたかったんです。まぁ、こういう感じで出来そうじゃないですか? #!/usr/bin/ruby dat

  • Dart News & Updates

    The Dart 2.1 release is now available. This update to Dart 2 offers smaller code size, faster type checks, better usability for type errors, and new language features to improve productivity when building user experiences. See our  Medium post  for the full announcement.

    Dart News & Updates
  • Harmony with TypeScript

    On the way to harmony Not so long ago Microsoft announced a new language, targeting on front-end developers. Everybody’s first reaction was like “Why on Earth?!” Is it just Microsoft darting back to Google? Is that a trick to promote their Visual Studio? But anyway, what’s wrong with JavaScript? Why everybody is so keen to replace it? JavaScript for a language designed in only 2 weeks is freakishl