タグ

2016年5月20日のブックマーク (7件)

  • リトライと冪等性のデザインパターン - Blog by Sadayuki Furuhashi

    リトライを肴に一晩酒が飲める古橋です。 大規模なデータに触れることが日常茶飯事になっている今日この頃。この分野のおもしろいところは、いつまで経っても終わらないプログラムを簡単に作れてしまうことかもしれません。エラー処理、リトライそして冪等性*1の3つを抑えていないプログラムは、小規模なデータなら問題ないが、データ量が多くなると使い物にならなくなる可能性が大です。 大規模データをバッチ処理するケース以外でも、リトライは一般にプログラムの信頼性に関わる重要な問題です。 そんなわけで、リトライに関わるいくつかのデザインパターンを、連載でまとめておこうと思います*2。 では、第1回は背景から: なぜリトライが必要なのか プログラムは色々な理由で失敗する。例えば、 A) 通信先のプログラムが高負荷すぎて応答できなかった B) メモリを消費しすぎてメモリ確保に失敗した。またはOOM KIllerに殺さ

    リトライと冪等性のデザインパターン - Blog by Sadayuki Furuhashi
  • itとoneの違い、英語の文法の解説 - 英語 with Luke

    こんにちは、イギリス生まれ・東京在住、英語教師で作家のLukeです。今週、僕が書いたオノマトペ(擬態語・語音後)についての が出版されました。是非チェックしてみて下さい! 今日は日人の英語の間違いを直しながら、one と it が混乱してしまう人が多い事に気付きました。例えば、以下の英文を見てみて下さい。 Do you own a smartphone or wish to buy it? あなたはスマートフォンを持っている、もしくはスマートフォンを買いたいですか? この文中に間違いがあることに気付きましたか?そう、「it」が間違っていますね。itもoneも既に出てきた名詞を指しますが、itはtheで名詞を特定されている場合に使い、oneはaで名詞が特定されて”いない”場合に使います。 Hey, do you have a pencil? Yes, I have one in my p

    akatakun
    akatakun 2016/05/20
    it: theで特定されている場合に使う,one: aで特定されていない場合に使う
  • ActiveRecord4でこんなSQLクエリどう書くの? Arel編 | Webシステム開発/教育ソリューションのタイムインターメディア

    ActiveRecord4でこんなSQLクエリどう書くの? Merge編 では、関連先のscopeを使うことができるmergeを紹介しました。mergeを使う事で、変更に強いクエリを美しく組み立てることができました。 今回は、ActiveRecord4で書きにくいSQLクエリたちを紹介します。 書きにくいクエリとは、具体的には以下のものがあげられます。 比較演算ORlikeleft outer joinunionサブクエリexists ActiveRecordでこれらのクエリを組み立てる場合、どうしても美しくない(SQL文字列をべったり書いてしまうような)書き方となってしまいがちです。 この処理を美しく書くためには、ActiveRecordだけの機能では足りず、ActiveRecordが内部で使っているArelというライブラリを使う必要がでてきます。 今回は、Arelを使って華麗にSQL

    ActiveRecord4でこんなSQLクエリどう書くの? Arel編 | Webシステム開発/教育ソリューションのタイムインターメディア
  • whereにSQLの文字列を渡したくない! - Qiita

    なんで文字列を渡したくないのか なんとなく文字列で渡すというのが地に足がついてない感じでイヤ DBの種類を変えると動かなくなる可能性がある mergeができないことがある 例えばこんなの書きたくない 比較演算

    whereにSQLの文字列を渡したくない! - Qiita
    akatakun
    akatakun 2016/05/20
    内部的にはArel::Tableモジュールを使用してSQLを生成している
  • コンピュータのメモリの仕組みはどうなってるの?

    コンピュータのメモリの仕組みはどうなってるの?2016.05.19 21:0039,284 abcxyz RAM、DRAM、SRAM、SSD、HDD…コンピュータやスマートフォンのメモリーに使われている、アルファベットをかき集めたような言葉。これだけを見てすぐになんのことかすべてわかるという人のほうが少ないでしょう。さらには、いったいそれらの文字の羅列がどういう意味で、どう機能しているのかを理解するのはもっと難しいですよね。 こちらのTED-Edの動画では、コンピュータのRAM(ランダム・アクセス・メモリ)がまるで人間の記憶のように動くその仕組みが紹介されています。DRAMとSRAMの違いを知らなかった? なぜ時代遅れのストレージの代わりに、新しいノートパソコンにはSSDが入っているの? その答えはこの5分の動画が全部教えてくれます。 プログラムやファイルは、通常ビットとよばれる0と1の集

    コンピュータのメモリの仕組みはどうなってるの?
  • なぜiPhoneのアイコンは角が丸いのか―スティーブ・ジョブズが抱き続けた美意識 - iPhone Mania

    iPhoneのアイコンはなぜ角が丸いのか――その理由はiPhoneが発売される20年以上前にスティーブ・ジョブズ氏が放った一言にありました。 デザインに妥協を許さないアップル 幾つかの例外を除けば、いつの時代でもアップルのデザインはソフトウェアとハードウェアの両面でひときわ存在感を放ってきました。しかし、同社に飛躍的な成長をもたらしたのは何と言ってもiPhoneで、この端末についてのアップル幹部の気合の入れようは並大抵ではありませんでした。 それは元アップル副社長であるスコット・フォーストール氏が、「すべてのアイコンのすべてのピクセルをチェックするために宝石鑑定用のルーペがある」と自慢したことに代表されるでしょう。 そんなiPhoneを代表するデザインが、今となってはお馴染みの「角のない四角」iOSアイコンです。ニュースサイトBGRによると、何もこの発想は突然出てきたものではなく、スティー

    なぜiPhoneのアイコンは角が丸いのか―スティーブ・ジョブズが抱き続けた美意識 - iPhone Mania
    akatakun
    akatakun 2016/05/20
    とがった角は思考のプロセスを断続的にしてしまう効果があり、四角形をみた時はそれを認識するために脳が4回の演算を無意識に行っているそうです。
  • How to query an ActiveRecord table using conditions based on another table?

    I have two models - Blog and BlogTag. Blog has_many :blog_tags and BlogTag belongs_to :blog: blog.rb has_many :blog_tags blog_Tag.rb belongs_to :blog I want to query the database to select all blogs that have tags matching in the blog_tags table based on what a user enters in a form field. Something like this: Blog.where(blog_tags contain [array of tags]) Is there a way to do this with ActiveRecor

    How to query an ActiveRecord table using conditions based on another table?
    akatakun
    akatakun 2016/05/20
    Symbolを使って結合先のテーブルのカラムをWhereする