2014年11月25日のブックマーク (16件)

  • モバイルアプリのログ収集ライブラリ「Puree」をリリースしました - クックパッド開発者ブログ

    モバイルファースト室の @rejasupotaro です。 クックパッドでは、サービスをリリースしてログを収集して分析して改善してまたリリースして、というサイクルを素早く回すことでより良いものを作るということをウェブではやってきました。 クックパッドのサービス開発のフレームワークをモバイルアプリでも適用したいのですが、モバイルアプリにはウェブアプリと違ったロギングの難しさがあります。 今回はモバイルアプリのロギングの問題点とPureeというログ収集ライブラリについて話します。 モバイルアプリのロギングの難しさ ウェブアプリでは、基的にはサーバー側でログを収集することができますが、モバイルアプリの場合は画面の制御はアプリ側で行われ、APIを介してデータを受け取るため、クライアント側でログを収集して送信する必要があります。 アプリのログを収集するのに、画面遷移をしたりタップするたびにサーバー

    モバイルアプリのログ収集ライブラリ「Puree」をリリースしました - クックパッド開発者ブログ
    rrreeeyyy
    rrreeeyyy 2014/11/25
  • Immutable Infrastructureという考え方 - ✘╹◡╹✘

    昼に起きて、溜まった家事を片付けながら、最近Immutable Infrastructureという言葉をよく聞くなと思って、語感と雰囲気から内容を考えてた。器もまともに片付けられない人間はいるし、そういう人間はどう言っても変えられないし、最初から紙皿だけ使うようにした方が良いのかもしれない。元の状態にきちんと戻せとか文句付けるより、そもそも毎回全部捨てた方がいい。そうすることで、いつも同じ人間が片付ける羽目になるという属人性を排除することが出来る。要点は、ある種の人間を排除するのではなくて、どんな人間でもまともに生きていける社会にしようということ。紙皿のような技術が進化し、環境ごと簡単に破壊するような時代になってきたからこそ、こういう考えが生まれるようになった。

    Immutable Infrastructureという考え方 - ✘╹◡╹✘
    rrreeeyyy
    rrreeeyyy 2014/11/25
  • Google、FluentdをKubernetesとCompute Engineの標準ログコレクタに採用 - Qiita

    Google、FluentdをKubernetesとCompute Engineの標準ログコレクタに採用Fluentdgooglecomputeenginekubernetesgooglecloud まずはFluentdコミュニティの皆さん、おめでとうございます!!! Googleを中心に開発されているオープンソースのDockerジョブスケジューラKubernetes (k8s)、それにGoogle Cloud Platformのログ収集サービスGoogle Cloud LoggingのGoogle Compute Engine用ログコレクタとして、Fluentdが標準採用されました。もうひとつおまけに、fluent-plugin-bigqueryをフィーチャしたソリューションページも、あと1か月くらいでcloud.google.comにて公開される見込みです(これは私がいま仕上げ中)。

    Google、FluentdをKubernetesとCompute Engineの標準ログコレクタに採用 - Qiita
    rrreeeyyy
    rrreeeyyy 2014/11/25
  • インターネット先生の次回作にご期待ください

    インターネットが向かう先は、いつか人は身体から自由になれるとか、精神がデジタルと融合するとか、そういう方向だと思ってたので、シリコンバレーやら渋谷やらに集って、コネと人脈がなにより重要で、人と話して旅に出ないと分からないこともある的な昨今のアナログ回帰はほんとうにガッカリ。 November 23, 2014140文字で書けたことをわざわざ長文に書き直すのですが。 十代後半の私がインターネットに繋がったころ、というのはもう18、19年くらい前になるわけですけど、今はなきインターネットマガジンで、これからは地方の時代、みたいな特集があったはずなんです。探しても見つからないけど。 だってインターネット、すごいでしょう。電子メールがあれば仕事でもプライベートでも誰とでもやりとりできるし、ネット通販で物も買えちゃうし、面白いウェブページはたくさんあるし、もうわざわざ都会に出ていく必要なんてないとい

    インターネット先生の次回作にご期待ください
    rrreeeyyy
    rrreeeyyy 2014/11/25
  • リーマンゼータ関数 - Wikipedia

    複素数平面上のリーマンゼータ関数。点 s における色が ζ (s) の値を表しており、濃いほど 0 に近い。色調はその値の偏角を表しており、例えば正の実数は赤である。s = 1 における白い点は極であり、実軸の負の部分および臨界線 Re s = 1/2 上の黒い点は零点である。 19世紀を代表する数学者、ベルンハルト・リーマン。 数学におけるリーマンゼータ関数(リーマンゼータかんすう、英: Riemann zeta function、独: Riemannsche zeta funktion、中: 黎曼泽塔函数)は、18世紀にバーゼル問題を解決したレオンハルト・オイラーによる(現在リーマンゼータ関数と呼ばれる)関数の特殊値に関する重要な発見から始まり、後世により重要な貢献をしたベルンハルト・リーマンが用いた ζ による表記にちなみ、リーマンゼータ関数またはリーマンのゼータ関数とも呼ばれる。リ

    リーマンゼータ関数 - Wikipedia
    rrreeeyyy
    rrreeeyyy 2014/11/25
  • Vue.js + atom-shellでアプリ作ったメモ - マルシテイア

    Lolipopという音楽プレイヤーを作った。 初めて使うツール多かったので、メモ。 Vue vue.js Vue.js人気だけど個人的にはあんまり良くわかってなくて、良さを理解するために触ってみようとなった。 Vue.js、サーバ側で生成したHTMLに対し、JSっぽい動きを与えるVMとして使うのに向いてる。 オレオレComponentを量産して組み合わせて使うのはあんまり得意じゃなさそう。 というのも、この前React+fluxでオモチャ作ったんだけど、その時と比べるとComponentの扱いに結構苦労したからだ。 頭のこんがらがり具合はAngularのディレクティブと大して変わらない気がする。 結果としてReact(+flux)の良さを認識することになった。 React、コンポーネントの正体がJSのクラスだし、データのやり取りはEventEmitter使って一方向でやるの推奨なので、「こ

    Vue.js + atom-shellでアプリ作ったメモ - マルシテイア
    rrreeeyyy
    rrreeeyyy 2014/11/25
  • ISUCONでNginxとMySQLをDocker化したときのパフォーマンス - ゆううきブログ

    現実的なWebサービス環境において、Docker化によるパフォーマンス低下がどの程度のものか調査するために、 ISUCON4 の予選問題のうち、NginxMySQL 部分を Docker 化してベンチマークをとってみた。 典型的なWebサービスシステムの3層構造(Proxy, App, DB)を構築し、ベンチマーカーにより高ワークロードを実現できるので、ISUCON の予選問題は適当な題材といえる。 Docker のパフォーマンスについて留意することは先日書いたエントリに全て書いてる。 上記のエントリを要約すると、Docker のパフォーマンスについて重要なこととは storage-driver の選択 (AUFS or Device mapper or ...) Volume の ON / OFF AUFS などの差分ファイルシステムをバイパスするかしないか Host networ

    ISUCONでNginxとMySQLをDocker化したときのパフォーマンス - ゆううきブログ
    rrreeeyyy
    rrreeeyyy 2014/11/25
  • Pex

    PEX is a set of JavaScript libraries for computational thinking in Plask/Node.js and WebGL in the browser. Installation Pex is using node.js and npm npm install pex -g pex init demo-project cd demo-project npm install npm run watch open index.html Basic Example var sys = require('pex-sys'); var glu = require('pex-glu'); var materials = require('pex-materials'); var gen = require('pex-gen'); var Co

    rrreeeyyy
    rrreeeyyy 2014/11/25
  • Functional Programming

    Scott Sauyet An Overview of Functional Techniques (for non FP'ers) using Javascript Agenda What is Functional Programming? How Functional Programming Differs From Other Paradigms Functional Programming in Javascript Advantages and Disadvantages of Functional Style Interaction of Functional and Object-Oriented Styles What is Functional Programming? No Single Definition There is no clear, widely-acc

    Functional Programming
    rrreeeyyy
    rrreeeyyy 2014/11/25
  • Why JavaScript Needs Types | Victor Savkin

    Types have a bad reputation for making code harder to read, adding unnecessary ceremony, and in general complicating things. In this blog post I’d like to show that a type system done right can help make code more readable and toolable without constraining the expressiveness of the language. You can find the updated version of this blog post here: (http://victorsavkin.com/post/123555572351/writing

    Why JavaScript Needs Types | Victor Savkin
    rrreeeyyy
    rrreeeyyy 2014/11/25
  • Travis CI、Coveralls、Code Climate、RubyGems、Gemnasium、deppbotと連携させよう! 

    Travis CI、Coveralls、Code Climate、RubyGems、Gemnasium、deppbotと連携させよう! 
    rrreeeyyy
    rrreeeyyy 2014/11/25
  • SVG Transformation

    It is possible to transform the shapes created in an SVG image. For instance move, scale and rotate the shapes. This is a handy way of displaying vertical or diagonal text. Transformation Example Here is a simple example: <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <rect x="50" y="50" height="110" width="110" style="stroke:#ff0000; fill: #ccccff" transform="

    SVG Transformation
    rrreeeyyy
    rrreeeyyy 2014/11/25
  • DOM Performance (JSNext Bulgaria)

    In the client-side development we manipulate the DOM very often. Some of these manipulations take some time to execute, others take even more time. In a complicated JS-based software, it is very important to find the optimal approaches in order to get best performance. We will meet few very common cases, where standard DOM manipulations are very expensive, and we will see what is the optimal way t

    DOM Performance (JSNext Bulgaria)
    rrreeeyyy
    rrreeeyyy 2014/11/25
  • いつも不幸せな人々の「7つの習慣」 | HuffPost Japan

    私は、幸福についてしばしば教えているのですが、その中で実にはっきりしてきたことがあります。それは、いつも不幸せな人々は7つの特徴を持っているということです。

    いつも不幸せな人々の「7つの習慣」 | HuffPost Japan
    rrreeeyyy
    rrreeeyyy 2014/11/25
  • 「初めから完璧にやろう病」を治す

    何事も、「仕事だ」と思ってしまうからなかなか手がつけられない。 「しっかりしたものを仕上げないと」というプレッシャーが、始める気力を削ぐ。結果手をなかなかつけずに、締め切りぎりぎりになって「不意な」クオリティで提出する。 こんな不合理なことがあってたまるか。 当は、十分な時間をかけて、納得のいくいい物を作りたいのに。 始める前や始めた直後は、それだけの熱意を持っていたはずなのに。 全部、「初めから完璧にやろう」病のせいだ。 もうやめにしよう。不合理だ。 仕事だとか、きっちり仕上げようとか考えるからこんな沼にはまってしまうんだ。 何でもいいのに、とにかく始めりゃいいのに、うまいことやろうとしちゃうから、「今はコンディションがよくないから」とか何とかっていう理由で手をつけることすら止めてしまうんだ。 ならもう「まともにやろう」とか、「きっちりやろう」とか変に気構えるのを止めよう。 いっその

    「初めから完璧にやろう病」を治す
    rrreeeyyy
    rrreeeyyy 2014/11/25
  • 小さなサーバーで大きなサービスをつくる | カメリオ開発者ブログ

    アーキテクトのItoです。動画を撮るのが趣味ですが、最近はこのを買って、カラーグレーディングの勉強をしています。とても良いです。 さて、今回お話するのはバックエンドにあるフロントエンドについて。 以下はほぼ実際にカメリオで運用しているバックエンド構成です。 図中のサーバーというものはいわゆるHTTPベースのサーバーアプリで、ここでは緑をNode.js, グレーをPython, C++で実装しています。小さいサーバーがたくさんあります。主にクライアント〜フロントエンドAPIだけの構成図で、記事クローラーや各種管理画面などは図にはありませんが存在します。 まずフロントエンドにELB(AWSを使用)とNginxを置き、後ろに NodeベースのフロントエンドAPIサーバーを置きます。 ここはNode.jsで作られたアプリをサービスするごく一般的な方法です。 エンドポイント(api.kamel.

    小さなサーバーで大きなサービスをつくる | カメリオ開発者ブログ
    rrreeeyyy
    rrreeeyyy 2014/11/25