Web アプリケーションのパフォーマンスにうるさいみなさんこんにちは。 Rails アプリのパフォーマンスプロファイリングだと、 rack-mini-profiler が有名で、それ以外だと New Relic とかを使って測定していくのが普通のようですが、物足りない部分があったので、自前でプロファイラ gem を作りました。 Rubygems: http://rubygems.org/gems/speed_gun / Github: https://github.com/rosylilly/speed_gun 詳細は Github の README なんかを見ていただくとして、基本的には rack-mini-profiler 的な情報収集が出来ると思ってもらって差し支えないです。 ちなみに計測画面はこんな感じ。 大きなスクリーンショットはこちら 小さくて何も見えないかも……とりあえず3セ
Fluentd というソフトウェアがある。日本国内ではそこそこ話題になってきたが、何ができるのか、何に使うと嬉しいのか、何に使えるのか、という点について詳細をよく知らないという人もおそらくまだ多いことでしょう。 なので、簡単にまとめる。 http://fluentd.org/ なお以下の個別項目ごとに書いていくが、その手前にまとめを置いておくので忙しい人はそれだけ読むとよい。インストールや設定については導入部分については日本語の記事はもう多くあるので、触れない。 概要 できること ログの収集 センサデータ等の収集 汎用データ処理プロセッサとして 頻出ユースケース ログの収集 データの集約 簡単なリアルタイム集計 ソフトウェアとしての特徴 コア プラグイン 安定性 性能 開発体制 コミュニティ ぶっちゃけどうなの? まとめ 現時点で、複数の場所に分散したデータや常に増え続けるデータの安全な転
Gopher Academy Blog Community Contributed Go Articles and Tutorials Introduction I’ve been writing a lot of Go code lately, but only recently discovered the Twelve Factor App manifesto. Coming from an Operations background I really resonated with many of the topics and solutions covered by Twelve Factor. If you have not read the manifesto go check it out, I’ll wait… It’s pretty obvious there are t
違うバージョンのコンパイラを違うバージョンのライブラリセットに対し間違って使ってしまった コンパイラが変われば元のコンパイラで作成したオブジェクトやライブラリは新コンパイラではまず使えない clean せよ which ocaml / which ocamlc / which ocamlopt ocamlc -where /ocamlopt -where でライブラリディレクトリを確認 env | grep -i caml で各種ディレクトリの指示先が使っているコンパイラと齟齬が無いか grep -i ocaml ではなく caml であることに注意 $PWD/.ocamlinit $HOME/.ocamlinit が何か悪さをしていないか strace でどのファイルをなめているか見る 他人の作ったバイナリディストリビューションは信用しない
はい、こんにちは。 今回はOvertoneについて書くといいましたが、それだけだとつまらないので、「Clojure」で「Clojureならではの」音楽をつくることを主眼に書きます。 あんまり、Overtoneについて書かないかもしれません。 ぶっちゃけこれ読んでくだたい。 http://overtone.github.io/ また、今回はあんまりポップな音楽については書きません。 「Clojureならでは」の音楽 1.音楽とは? そもそも、音と音楽の違いってなに? 車の音は音楽? リズム、メロディーがあれば音楽? とか、音楽とはなんなのか、 とかいったらこの記事だと延々と終らないので、ここでは単純に 音 その組みあわせの構造 組あわせをさらに組織 と考えます。一つ一つの音が折り重ねの結果が音楽というわけです。 基本的に音楽は「音そのもの」よりも、「その組みあわせの構造」が大事だと僕は思いま
.center.middle # Optional Typing in Python .right[Andrey Vlasovskikh, JetBrains] .right[Minsk Python Meetup] .right[2013-11-29] --- # About * Andrey Vlasovskikh * St. Petersburg, Russia * JetBrains * PyCharm, IdeaVim * FProg.ru * Functional programming meetups --- # Python Problems * Performance * _Interpreter_ * CPU/IO parallelism * Mobile * iOS, Android * Python 3 * Slow adoption * _Tooling_ * _
Anyone who wants to do game programming at some point ends up writing (parts of) their own linear algebra library - only to realize how painful hard it is to actually get it right. This point doesn’t just crop up in game programming either - linear algebra is useful for all sorts of tasks, including the rise of machine learning. While linear algebra libraries seem to be a perfect example of a type
This is project is put on hold. Recent improvements to Javascript language and the progress asm.js startup time might make this project irrelevant (through PyPy.js even if this is still fuzzy). Don’t hesitate to contact me if you want to chat about it.
前置き Python3.4のSingle-dispatchで遊んでみた - Python Advent Calendar 2013 — hirokiky's blog 読んだ瞬間、脳細胞に衝撃が! 「これはpprintのための新機能だ!」 「あの長いPrettyPrinter._formatがsingledispatchでプリチーに書ける!」 「自作クラスをpprintできるようになったに違いない!」 はやる心を抑え、3.4.0b1をダウンロード し、Lib/pprint.py をgvimで開くと、そこには!? 作ってみた というわけで、 Single-Dispatch を使ったpprintを実装してみました。 doloopwhile / single-dispatch-pprint Re-implementation of 'pprint' in Python Standard Libr
一時間で覚える Ruby を真似して書いてみました(この文章はあまり役に立ちません)。 各種リンク 公式ページ リファレンス チートシート インストール ここから、 最新版(2010/05/10現在 ver.1.1.0)のzipをダウンロードして解凍します。 Javaランタイム も必要かもしれません。普通のPCなら入っていると思いますが。 取り合えず動かしてみる。 シェル(またはコマンドプロンプト)で、解凍して出来たフォルダの中で、 > java -cp clojure.jar clojure.mainと打ち込むと対話環境(REPL)に入れます。 Clojure 1.1.0 user=> 伝統に従って、世界に挨拶してみましょう。 '(println "Hello World!")'と入力し、Enterキーを押します。 このとき、カッコは省略できませんので、注意。 user=> (print
この記事は Haskell Advent Calendar 2013 の二日目のために慌てて書いたものです. FFIを使って,画像ライブラリOpenCVを使ってみましょう.OpenCVはBSDライセンスで公開されているフリーの画像処理ライブラリで,物体認識などの比較的高度な機能が実装されてます.今回はそのような高度な機能は使わず,画像の読み込みと書き出しと表示,さらに線を引いたり円を描いたりする初歩的な描画関数だけを使います. Haskellでは,Foreign Function Interface(FFI,外部関数インタフェース)を通じて,Haskell以外の言語とやりとりが出来ます.FFIには二つの方向があります. 他の言語が持つ機能をHaskellから利用するためのインタフェースを記述する. Haskellで書かれた関数を他の言語から利用する. 本記事では一番目について,とくにC/C
この記事は、C++ Advent Calendar 2013 の参加記事です。 前回は 西山信行 さんの記事でした。 まもなく C++14 時代が到来しようとしている。 ただでさえ実用的な言語機能である constexpr が C++14 での制限緩和によって神になろうとしている。 C++11 での constexpr の制限は、必然的に副作用のない関数型プログラミングを強制し、とても興味深いものではあった。 コードの可読性云々は主観によるのでここでは置くが、時には非効率な実装にならざるをえないケースもあったのは事実だ。 C++14 での constexpr は、古典的な実行時処理に慣れた者達にも非常に親しみやすいコードが書けるようになる。 ドラフトの直接的な内容については、すでに自分をはじめ有識者が解説を書いているので、そちらを参照するのが手っ取り早い。 constexpr 関数の制限緩
_ はじめに この文書は2013 Kernel/VM Advent Calendar 2 日目のために書かれたものです。 Linux の stable kernel というカーネルのリリース作業に関わってみませんかという紹介をします。わたしは一年ほどこの作業に関わった結果、自分のためにも世間のためにも役立つと考えたため、その経験にもとづいて記載します。 本書は次の順序で説明します。 stable kernel とは(知ってる人は読み飛ばしてください) stable kernel review とは 参加する利点 作業内容 おまけ _ stable kernel とは Linux Kernel の公式サイトにやたらとたくさん並んでいるカーネルにはいくつかの種類があります。まずは、Linus Torvalds 氏が管理する mainline と呼ばれるカーネルです。mainline カーネルに
Haskell, ITこの記事はHaskell Advent Calendar 2013の3日目の記事です。 目次どうして?ファンクタを拡張しようおさらい引数をふたつ取ろう逆転の発想共変・反変・自由変・固定変データ型の整理正の位置と負の位置自由変と固定変ファンクタ類を自動生成しようまとめおまけThornについてCPLであそぼう どうして?ファンクタはHaskellに欠かせないものですが、ファンクタを一般化して見るという見方は意外に広まっていないように感じます。分かってしまえば単純な話だけにもったいないと思ってこの記事を書くことにしました。 また、僕は最近Thornというライブラリを作りました。これは、さまざまなデータ型から関手や畳み込み・展開をTemplate Haskellを使って自動生成するライブラリです。このライブラリを作るなかで気づいたことも合わせて書いていこうと思います。 ファン
この記事はVim Advent Calendar 2013 : ATND 3日目の記事になります。 Vim Advent Calendar 2013の(私の投稿の)1回目ということで、今回はvital.vimについて現時点での状況をまとめてみたいと思います。 vital.vimとは vital.vimは、Vimプラグインの作成する際に必要になるだろう関数をまとめたライブラリ群です。 もちろん、Vimプラグインの作成だけでなく、通常のVim scriptを書くときにも使うことが出来ます。 https://github.com/vim-jp/vital.vim vital.vimの構成 vital.vimには色んなモジュールがあります。vital.vimではライブラリのことをモジュールと呼びます。 2013年12月2日の時点で、vital.vimには全36個のモジュールが存在します。 Bitw
What does your brain sound like? Does it sound like “Rise of the Valkyrie” or more like “Hit me baby one more time”? Step 1: Acquire a human brain (alive) We are interested in capturing the brain waves. Specifically the: Delta waves: Deepest stages of sleep. Beta waves: Normal waking consciousness. Alpha waves: Relaxation and meditation (creativity). Theta waves: REM sleep (dreams). Gamma waves: H
はじめに mrubyのエンジンはソースコードを逐次解釈して実行しているわけではなく、専用のバイトコードに変換して保持し、それをVirtualMachineの上で解釈して実行しています。 であれば当然コンパイル済みバイナリファイルというのも存在するわけで、ならば当然どんな仕組みになっているか気になるわけです。 というわけで、大まかなファイルフォーマットについて調べたので今回説明しようと思います。 2013/11/25当時(git hash: f5bd87b9e6d0d8a84cf866b4847c1416e4f5c622 )の物です。 それ以降のmrubyを使用する場合は以下の解説の通りではない可能性があります。 全体の構造 ヘッダーとセッションの配列からなります。 ヘッダーは必ず一つ、セッションは複数個ですが必ず終端セクションで終わります。 ヘッダー C風に書くとこんな感じ ubig8_t
株式会社ラクーンホールディングスのエンジニア/デザイナーから技術情報をはじめ、世の中のためになることや社内のことなどを発信してます。 Rubyfluentdtd-agentlog はじめまして。開発チームの yuzuki です。 7/1に弊社の 決済サービスPaid(ペイド) のサーバー群へ ログ集約の改善を目的として導入した fluentd(td-agent) の導入手順などをまとめてみました。 ログ集約を改善する動機 弊社ではこれまで(今も大部分は) cron + rsync を使い、週次バッチでWebサーバー上のログファイルをファイルサーバーへ転送することで一応の集約をさせてきました。 (集約というよりはバックアップといった意味合いの方が強いかもしれません) サーバー台数が少なかった頃はこの仕組みでも特に大きな問題はなかったと思いますが、 サービスの成長にあわせて、サーバー台数が増え
Gopher Academy Blog Community Contributed Go Articles and Tutorials Introduction 7 months, 1600 changes, well over 350 issues closed�, and Go 1.2 is done. Go and install it now – it’s ok, it only takes a few minutes – I’ll wait. When Go 1.1 was released earlier in the year I did a series of posts (part 1, part 2, part 3) exploring the performance improvements the then current released provided. Go
例のごとく、最初に注意書き まだfinalがでていないので、細かい部分変わるかもしれません*1 個人的に、「大きい変更点だなと思ったもの」「ライブラリ側のユーザーが直接使うクラス関連*2」「なんとなく興味があるもの」を中心にとりあげただけで、すべてを網羅してるわけではありません finalがでるまではできるだけ随時更新する予定です Scala2.11.0は、今のところ順調にいけば2014年の2月には最初のRCがでて*3、3月にはfinalがでるらしいです。*4 https://issues.scala-lang.org/browse/SI しばらくこの記事がblogの一番上にくるように、少し未来の日付にしておきます。 2.9から2.10のときの変更点に比べると、だいぶ少ないですね。(2.9から2.10の変更点が多すぎただけですが)細かく追えていませんが、その分コンパイラ側の細かいパフォーマ
Python3.4のSingle-dispatchで遊んでみた - Python Advent Calendar 2013 Python Advent Calendar 2013 の 1 日目を担当します、 @hirokiky です。 昨年 に引き続きPythonAdventCalendarを主催しています。 ちなみに今年は現時点であと 4 人参加者が足りません!ぜひご参加ください Python Advent Calendar 2013 さて、今年の Python Advent Calendar のテーマは ‘Not Web’ ということなので、 Web に限らない話を書きます。 つい最近の11月24日に Python 3.4 の Beta 1 がリリースされました。 Python 3.4 b1 には無事 ensure-pip も入り、いよいよ Python 3 感が増してきました。 そん
We often search our projects for specific text within Vim like so: However, we have a need for speed. How can we grep faster? Override to use The Silver Searcher grep is a built-in command of Vim. By default, it will use our system’s grep command. We can overwrite it to use The Silver Searcher’s ag command instead by putting this in our ~/.vimrc: " The Silver Searcher if executable('ag') " Use ag
Andrew Gerrand 1 December 2013 We are pleased to announce the release of Go 1.2, the latest stable version of the Go Programming Language. Binary distributions may be downloaded from the usual place or if you prefer to compile from source you should use the release or go1.2 tags. This new release comes nearly seven months after the release of Go 1.1 in May, a much shorter period than the 14 months
はじめに 本エントリは Oculus Rift Advent Calendar 2013の第1日目の記事になります。いよいよ始まりました!通常の Advent Calendar 同様 25 日だと少ない気がしたので 31 日に枠を拡大しましたが、無事開催前に満員御礼となりました。皆様、これから 1 ヶ月間よろしくお願いいたします! 概要 現在、「VR の世界のキャラクターと会話をする」ということを実現しようと色々と試みています。その経緯等については以前の記事(フォルマントから母音推定してリップシンクを目指してみる - 凹みTips)で大方語ってしまったので、そちらに譲るとしますが、ここで述べていたようなことを実現するために、MMD4Mecanim を適用したモデルにアタッチすることで以下の機能を実現するプラグインを作成しました: WAVE データの音声に同期したリップシンク 入力した日本語
Long ago in my technical writing, I sought to eliminate gendered pronouns whenreferring to unnamed people or entities. It's not that I'm fooling myself intobelieving that eliminating gendered pronouns somehow gets more women intocomputer science, but rather that I think that using male pronouns sounds likea holdover from the era of the kitchencomputer. As forthe mechanics of doing this, I personal
I'm very saddened by what happened recently on github and twitter regarding s/he/they/ in a comment deep inside libuv. First I want to make it clear that I understand there is a real problem in the world where women feel like they don't have a fair chance in tech fields. Women in tech really do get death and rape threats from some men when they speak out on this issue. Our society and media object
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
Bitcoins: The Second Biggest Ponzi Scheme in History Gary North - November 29, 2013 I hereby make a prediction: Bitcoins will go down in history as the most spectacular private Ponzi scheme in history. It will dwarf anything dreamed of by Bernard Madoff. (It will never rival Social Security, however.) To explain my position, I must do two things. First, I will describe the economics of every Ponzi
(この記事はLisp Advent Calendar 2日目のためのエントリです。) 「え、お前の家、カレーに味噌汁付けてるの!?」 頑張って作っていたLispインタプリタがついに完成。友達に自慢してソースコードを見せてみたら 「え、なんでそんな実装になってるの? それって変じゃない?」 といった反応が返ってきたことはありませんか。きっとありますよね。昔から「人の数だけLispがある」と言われていまして、書く人によって色々と違いが出てくるのは当然です。しかし、どんな違いが出てくるのかを知らないと、要らぬ混乱を招く可能性があります。 この記事を読むことで、一言に「自作Lispインタプリタ」と言っても、色々なやり方があることを知り、友人の心ない発言に傷ついたり、逆に人を傷つけないようにする知識を身につけた気分になれます。 「あの人は自分でごみ集めを書いてくれたのに」 Lispインタプリタを書く
Last week Michael Lerner posted a nice explanation of the relationship between histograms and kernel density estimation (KDE). I've made some attempts in this direction before (both in the scikit-learn documentation and in our upcoming textbook), but Michael's use of interactive javascript widgets makes the relationship extremely intuitive. I had been planning to write a similar post on the theory
Canvas、WebGL、WebRTC、WebSocketなど、HTML5の花形スターとも言えるモテ系APIは、常に世間の注目を集めている。これらAPIを使いこなせるウェブディベロッパーはどこからも引っ張りだこだろう。しかし、注目度が低いながらも、今後のウェブを支える(かもしれない)最新のAPIが数多く存在する。このようなAPIは派手さが足りないゆえに話題になることもない。しかし、これら非モテ系のAPIも含めてHTML5だ。 本セッションでは、ありきたりのモテ系APIに飽きたマニアな貴方のために、普段は陽の当たらないAPIを一挙紹介する。もちろん、どれかのブラウザーに実装されているAPIのみだ。今から使おうと思えば使えないことはない。そして、W3Cにて仕様策定が始まって日が浅いため、明日にはどうなるか分からない。無くなるかもしれないし、大幅に変更されてしまうかもしれない。今覚えても役に立た
2013-12-02 情報幾何がわからないという話 (Mathematics Advent Calender 2日目) 統計 はじめに 2013年を振り返ると、なんといっても印象深かった出来事は「艦隊これくしょん(艦これ)」の爆発的なヒットです! 今や日本人の100人に1人は提督であるという計算になり、艦これオンリーイベントが全国で開催されています。また、艦これ公式によるガイドブックが出版されるなど、関連グッズの展開も著しいです。 艦これの今後のますますの躍進に期待ですね!さて、この2013年、もうひとつ印象深かった出来事は情報幾何の爆発的なヒットです! 今や日本人の100人に1人は情報幾何をやっている計算になり、情報幾何オンリーイベントも開催されました。また、来年度には情報幾何公式によるガイドブック(※)が出版されるなど、関連グッズの展開も著しいです。 情報幾何の今後のますますの
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く