まずは $ gem install pre-commit # In your git repo $ pre-commit install これだけで、うっかり残念なコミットをする事故が防げます。 Git フック使ってますか? http://git-scm.com/book/ja/Git-%E3%81%AE%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%9E%E3%82%A4%E3%82%BA-Git-%E3%83%95%E3%83%83%E3%82%AF コミットする前にバリデーションかけて、通らなかったらコミット中止する。コミットメッセージにブランチ名を自動挿入する。など、ルーティンワークをフックに仕込んでおけば、誰も読まないガイドラインページを書く手間が省けますし、強制する事ができて幸せです。 じゃあ、何をフックに設定するかと言うと コードレビューしていると、気にな
ループカウンタを64bitにしたり、 バッファのサイズを定数にしたらパフォーマンス激落ちなんだけど何で? c++ - Replacing 32bit loop count variable with 64bit introduces crazy performance deviations - Stack Overflow stackoverflowで、興味深い質問が行われている。 簡単にまとめるとこうだ。std::uint64_t型の配列の各要素にx86-64のpopcnt(1になっているビット数を数える命令)を適用したい。 コードの肝心の部分を書くと、以下のようになる。 for (unsigned i=0;i<size/8;i+=4) { count+=_mm_popcnt_u64(buffer[i]); count+=_mm_popcnt_u64(buffer[i+1]); coun
2014年7月29日放送のMBSラジオのラジオ番組『アッパレやってまーす!』(毎週火 22:00 - 23:30)にて、お笑い芸人・千原ジュニアが、お笑い芸人・陣内智則のラジオ番組に投稿されたという怪談話を語っていた。 2014千原ジュニア40歳LIVE「千原ジュニア×□」 千原ジュニア:ラジオで「怖い話ないですか?」って、募集を陣内(智則)がやっててんって。大阪で。 山本吉貴:はい。 千原ジュニア:それで、色々きた中で、陣内自体が凄いからね。色々、引き寄せたりとか。 山本吉貴:はい。 千原ジュニア:陣内が番組でロケやってて、音声さんが「サインもらっていいですか?知り合いが欲しがってるので」って、何枚かサイン書いて。それが回り回って、霊媒師の人のところに、そのサインが渡ったんやって。 山本吉貴:はい。 千原ジュニア:「これはアカン」って。そのサインを見て。「これは完全に生き霊がついてる」っ
2014年01月24日放送のTBSラジオ系のラジオ番組『志村けんの夜の虫』(毎週金 24:00 - 25:00)にて、志村けんがお笑いコンビ・日本エレキテル連合について注目している、と語っていた。 シリアル電気 志村けん:吉本で、2人で乳首をグリグリするヤツあるだろ? 枡田絵理奈:すっちー&吉田さんですね。 志村けん:アレは観た方がいいよ。Youtubeで観れるし。 ダチョウ倶楽部・上島竜兵:面白かったらしいですね。 志村けん:アレは理屈抜きで笑えるからな。大声で何も考えずに笑えたから。 上島竜兵:はい。 枡田絵理奈:初めて見ても面白いです(笑) 志村けん:何も考えずに笑えたもんな。初めて観たけど、アレは吉本新喜劇のある途中だからな。そこだけで成立してるんだよ。凄いわ。 上島竜兵:大阪に行ったときに、シャンプーハットさんっているんですよ。そのことを言ったら、「ぜひ、本人たちに伝えます」って
docker rails dockerでrailsを動かす場合にどうするのが良いかなーと試行錯誤し、構成も落ち着いてきたのでまとめます。 一番最初はとりあえずってことで、railsリポジトリ + railsを動作させるコンテナの組み合わせで試してみました。 Dockerfileの内容 FROM base # rubyインストールに必要なパッケージを用意 RUN apt-get update RUN apt-get install -y --force-yes build-essential curl git zlib1g-dev libssl-dev libreadline-dev libyaml-dev libxml2-dev libxslt-dev # rbenv, ruby-buildをインストール RUN git clone https://github.com/sstephens
pecoというインタラクティブに入力をフィルタして出力するコマンドがあって、使い始めてからシェルの操作方法が大幅にかわり、だいぶライフチェンジングだった。 最近このへんが流行ってるのでやたら記事あるけど、せっかくなので僕も使い道を紹介しようと思う。 pecoをzshで使う 1. peco ghq ghqを使ったローカルリポジトリの統一的・効率的な管理についてのこと。 僕も$GOPATHは$HOMEにしていて、今のところ別に困ることはない。 go getしたりghq getしたりして美しくディレクトリ切った上で、pecoに割り当てておいたC-sですぐ目的のディレクトリ開けるようにしてあるので、めちゃくちゃソース管理が楽になった。 function peco-src() { local selected_dir=$(ghq list | peco --query "$LBUFFER") if
C言語でアプリケーションを書くのは他の言語と比べて少し気合が必要ですよね。例えば HTTPからデータを取得する 取得したデータを json パースする 結果の一部を色付きで表示する こんな場合、C言語プログラマは 「HTTP か、じゃぁcurlかな」 「JSON か、parson かな」 「色表示か...エスケープシーケンスでもいいけどWindowsがなー...」 といった事を考え、そこから curl や parson といった資材の調達を始める事になります。途中で新しい機能を追加したくなり、それを外部ライブラリに頼る場合だとその都度資材を調達する必要があり、思考を停止しなければなりません。 この辺は ruby や perl、nodejs、golang 等の様に、ちょっとした手間だけで済ませたい物です。 またC言語の場合、ヘッダファイルはシステムの include フォルダに提供元が期待す
TODO管理をするとして「すべてのタスクを削除したい」とか「すべてのタスクを終了にしたい」っていう要件、普通によくありますね。 これって簡単なくせに「どうあるべきなの?」と迷うことが多くて悩んでいたところ、@tkawaさんがサクッと解決してくれたのでここに残しておきます。 考え方と使われ方 すべてのリソースに対するアクションなのでDELETE /tasksとかPUT /tasksで済ませたいというREST脳が働きますね。 どうやって使いたいか、というと、こんな感じ。 app/views/tasks/index.html.erb 普段はHamlですけど、今回はERBで(手抜き) <h1>Listing Tasks</h1> <table> <thead> <tr> <th>Name</th> <th>Memo</th> <th>Done</th> <th colspan="3"></th>
日本語での情報があまりなかったのでまとめておく。 なお、プログレスバーのライブラリとして ruby-progressbar を使用した。 require 'open-uri' require 'ruby-progressbar' URL = "http://cache.ruby-lang.org/pub/ruby/2.1/ruby-2.1.1.tar.gz" content_length = nil progress_bar = nil open(URL, "rb", :content_length_proc => lambda{ |content_length| if content_length # プログレスバーの最大長にcontent-lengthを指定 progress_bar = ProgressBar.create(:total => content_length) end
無限スクロールまたはauto pagingと呼ばれるUIには、読み終えたコンテンツがどんどん画面の上のほうに溜まっていってメモリーを食い潰すという問題がある。 なかでもTumblrは画像などのコンテンツが多いため、ダッシュボードダイバーたちは無限Tumblrユーザースクリプトなどのユーザースクリプトをインストールして、読み終えたコンテンツを定期的にページ上から自動削除するといった対策を講じていた。 ところが最近のTumblrのダッシュボードでは、ポストが画面外に出るとその中の要素が一時的にページから削除され、画面内に表示されると要素が再度復元されるようになっている。どうやらこれによって無限スクロールによるメモリーの圧迫が抑えられているらしい。 関連するコードはhttps://secure.assets.tumblr.com/assets/scripts/dashboard.jsの/*! s
これはちゃんとチェックしておかないとなぁ。 Deprecated Linux networking commands and their replacements « Doug Vitale Tech Blog ==== この記事で詳しく説明する非推奨のLinuxネットワークコマンドは:arp, ifconfig, iptunnel, iwconfig, nameif, netstat, route である。iwconfig以外の コマンドは、net-toolsパッケージという、数年間メンテナンスされていないパッケージに含まれている。これらのユーティリティによって提供される機能は、新しいipコマンドを主に使うiproute2 スイートで再提供され、改善され続けている。iproute2ソフトウェアのコードとドキュメントは、Kernel.orgとLinux Foundationで見ることができ
Google+ボタン はてなブックマークボタン 更新日時: 2014年01月11日(土) 作成日時: 2013年11月12日(火) 前の記事 / 次の記事 Rails4では従来の page cache や action cache は廃止され、 デフォルトのキャッシュ機構としては、Rails3までの fragment cache のようなものだけが使える。 Rails4のこのキャッシュ機構は今のところ RussianDollCaching、cache_digests、fragment cache 等と 呼ばれているみたいだけど指し示すものは全部同じもの。 というか最初別々の何かだと思ってて無駄に嵌まった。 Rails4で内部的に使われているgemが、 従来のRailsにおける fragment cache を進化させた cache_digests であり、 cache_digestsの仕組
このドキュメントでは、Chefを実行して、インフラを作成したい人が、既存のレシピがあるのを前提に、Chefの概要を理解するためのドキュメントです。Chef-soloの構成のみに対応した記述になっています。理解が間違えているところとかあればご指摘ください。 1. Chefの概要 1.1. Chefとは シェフは、インフラストラクチャーをコードに変換するための自動化プラットフォームです。仮想環境でも、物理環境でも、クラウドでも使う事ができます。インフラストラクチャを自動化することで、プロダクトのマーケット投入を早めたり、スケールや複雑さに対応したり、システムを安全に保ちます。 1.2. Chefの仕組み Chefはサーバーをセットアップして、希望の状態にするための「クックブック」「ノードオブジェクト」というDSL(設定ファイルっぽいもの)をローカルのワークステーションで作成します。それらのDS
HTTPS通信は複数のプロトコル、手法が組み合わされて実現されている。そのため、暗号化手法それぞれのリスク、ブラウザの対応等様々な用件があり、全てを理解するにはちょっと時間とリソースが足りない。結局のところ、我々はどのようにして安全なHTTPS通信を提供できるのか。色々調べていたところ、MozillaがMozilla Web siteに使用する、HTTPSの推奨設定を公開している。 Security/Server Side TLS - MozillaWiki このドキュメントはMozillaのサーバ運用チームが、Mozillaのサイトをより安全にするために公開しているもので、他のサイトにそのまま適用できるかは十分に注意する必要がある。例えばガラケー向けサイトとか。そのまま使えないとしても、HTTPS通信の設定をどうすれば良いか、理解の一助になるはずだ。 この記事は上記MozillaWiki
ジンジャーエールを作りたくなった。 きっかけ 事情があって、最近よくノンアルコール系のビール風飲料(ノンアルコールビール)を飲む機会が多かった。ところが、ビールの代わりと期待して飲んでみると、どう考えても出来損ないのジンジャーエールにしか思えない...。ビールという表現を表に出さず、新種のジンジャーエールとして出てくれば、もっと美味しく飲めた気がする。 そうか!ならば、こちらも最初からジンジャーエールを注文すれば良いのかもしれない!そう思ってジンジャーエールを注文。ジンジャーエールなんて久しく飲んでいなかったので、新鮮な感覚で美味しく飲めた。(大手飲料メーカーのドライ・ジンジャーエールを飲んだ)しかし、所詮甘いジュースである。 そもそも、ジンジャーエールのジンジャーが生姜を意味すると知った時、なぜ?と思った。どう考えても、生姜の味?しないのに。田舎のばあちゃんが作る生姜湯は、もっと強烈に生
既存のRailsプロジェクトをRSpec 3.0にアップグレードする際の注意点 ~RSpec 3は怖くないよ!~RailsRSpec はじめに とうとうRSpec 3が正式に公開されたので、早速手持ちのRailsプロジェクトをアップグレードしてみました。 アップグレードしたのはプライベートなプロジェクト4本とパブリックなプロジェクト2本の合計6本です。 この記事では実際にRSpec 3にアップグレードしてみて困った点や気付いた点をまとめてみます。 注意: この記事は2014年6月4日時点の情報です この記事は2014年6月4日時点の情報です。 gemの最新バージョンや周辺ライブラリの対応状況が変化している可能性もあるので、アップグレードする際は適宜ネット上の最新情報を確認するようにしてください。 アップグレードの手順 手順はざっくりいうとこんな感じです。 現行のテストが全てパスすることを確
2014年06月01日放送のニッポン放送系のラジオ番組『笑福亭鶴瓶 日曜のそれ』(毎週日 16:00 - 17:30)にて、お笑い芸人・落語家の笑福亭鶴瓶が、師匠である4代目・笑福亭松鶴に弟子入りしたときのことを語っていた。 鶴瓶は当初、笑福亭仁鶴に弟子入りしようと考えていたが、同じ日に高座に上がっていた笑福亭松鶴の落語を観て、弟子入りすることを考えたという。そんな師匠の元へ出向いた鶴瓶が、どのようにして弟子入りを許してもらえたか、ということについて語っていた。 鶴瓶は、師匠・松鶴が話をしているとき、唇に犬の毛が付いていたという。その時、「この毛をとったら弟子入りさせてもらえるか、怒られるかどっちかだ」と思い、鶴瓶は犬の毛をとることにした。結果、松鶴は「オモロイやっちゃな」と、妻と笑ったそうだ。このような経緯があり、鶴瓶は、松鶴の元へ弟子入りすることが可能になった、と明かしていた。 ディア
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く