タグ

ブックマーク / yosuke-furukawa.hatenablog.com (8)

  • socket.io が提供してくれているものは何か - from scratch

    現在開発中のシステムにリアルタイムな処理があり、そこで socket.io を使おうかなと思ってて、そういう折にタイムリーにもこの辺りの記事がタイムラインで出てきたのでメモ代わりに自分の意見を残しておく。 blog.jxck.io qiita.com socket.io が提供してくれているもの 「ブラウザとサーバ間のプロトコル」という観点で見ると socket.io は WebSocket を基として繋がらなかった時に XHR Long Polling や polling といった形式の代替手段を提供してくれるもの、という位置づけ。 一方で「ライブラリ」という観点で見ると socket.io はリアルタイムアプリケーションを作る際に必要になる処理をまとめて実装し、クライアントとサーバ間での EventEmitter として抽象化してくれているもの、という風になる。 もう少し噛み砕いて言

    socket.io が提供してくれているものは何か - from scratch
  • OpenCV + Google Cloud Vision API + Intel Edison で笑った瞬間を撮るカメラを作る - from scratch

    やりたいこと 最近娘が生まれて二ヶ月経過し、そろそろ笑ったりするようになりました。今回のテーマは娘が笑った瞬間を逃さずにカメラで撮影する事です。ちなみにこういう子どもをネタにして行うハック、僕はこれを『親バカハック』と呼んでます。 TL; DR Intel Edison でカメラをセット、一定のタイミングで撮影しつつ OpenCV で粗く笑顔認識させてから Google Cloud Vision API で表情解析 笑顔だと判定された画像を Slack で飛ばして画像をいつでも見れるようにする。 かわいい笑顔が撮れたので最高でした。 ハードウェアセットアップ Intel Edisonを手に入れたのでそれを使って作ります。Edison は Arduino 拡張ボードなら普通のUSB web camera 対応しているので、それをただぶっさして使います。 Intel Edison はSDカード

    OpenCV + Google Cloud Vision API + Intel Edison で笑った瞬間を撮るカメラを作る - from scratch
  • Socket.IO 1.0の紹介 (翻訳) - from scratch

    Socket.IO 1.0がリリースアウトされました。Socket.IO v1.0が出るといわれてから一年半以上経過しましたが、やっと出ました。Node.jsに関わる方であれば一度はお世話になっていると思います。今回はSocket.IO 1.0の紹介を作者であるGuillermo Rauchがしているので、それを日語で翻訳して紹介します。 TL;DR 翻訳していたらすごく面白かったのですが、文字だらけですごく長くなってしまったので、最初と最後にまとめを載せました。興味があれば全部目を通してみてください。 モジュール分割が進み、新しくEngine.IOが作られています。これはSocket.IOのトランスポート層のプロトコルを調律する役割を担っているライブラリです。 Engine.IOが行っている処理の一つで、最初に接続できる可能性が高いXHRやJSONPで確立し、websocketにupg

  • Docker Node Testerを使ってNode.jsをバージョン毎にテストする #葉桜js - from scratch

    昨日は 葉桜js でした。 今回は客層からかテストとセキュリティの話が多かった。t_wada, malaさんの影響は大きい。 #葉桜JS— Yosuke FURUKAWA (@yosuke_furukawa) April 14, 2014 僕のLT t_wadaさんが来るということでテストっぽい話をしたくて、Docker Node Testerの話をしました。 Node.js v0.12 に関して このブログで Node.js v0.12で変わることについて色々と紹介してきました。NANの話もそうですし、traicing apiとかsync child_processもそうです。 Node.js v0.12では他にもコアモジュールに色々とバグ修正やエンハンスが加わっています。 コアチームが互換性に配慮しているとはいえ、影響を受けてしまい、自分のモジュールが動かなくなることは考えられます。

    Docker Node Testerを使ってNode.jsをバージョン毎にテストする #葉桜js - from scratch
  • #JSオジサン でハイブリッド時代のCIツールの発表してきた - from scratch

    いやー、めっちゃ楽しかったわ、JSオジサン。 もう色々と感想ブログは出てるけど、僕も一言で感想を言うと以下の様な感じです。 #JSオジサン 楽しかった。ギャルにも会えたし、typescriptオジサンにも会えた。ECMA-262 Edition 5.1を読むも貰えたし、じゃんけんに勝ってエコバックも貰えた。50-60位の中規模なカンファレンスだとやっぱり話が濃くなるから良かった。— Yosuke FURUKAWA (@yosuke_furukawa) March 27, 2014 実際名前は知ってても顔を見たことない人もちゃんと話したことない人も多くて、そういう人たちと知り合えたのがやっぱり大きかった。 僕が発表した内容 ここ最近、substack wayでモジュールを書くことを実践してます。 当は上のリンクにあるsubstack wayの話をすごくしたかったんですが、5分で伝えきれる

    #JSオジサン でハイブリッド時代のCIツールの発表してきた - from scratch
  • koa入門 - from scratch

    さて、2013年12月19日にkoaというフレームワークの0.1.0がリリースされ、Hackers Newsに乗り、それが話題になっています。 これまでNode.jsのWeb Application Frameworkとして最もメジャーなのはExpressだと思いますが、Expressの作者であるTJを筆頭にExpressチームがKoaを積極的にエンハンスし始めているため、今後のNode.jsのフレームワーク勢力図が変わる可能性があります。 作者のメッセージを引用すると Koa is a new web framework designed by the team behind Express, which aims to be a smaller, more expressive, and more robust foundation for web applications and A

    koa入門 - from scratch
    monyurin
    monyurin 2013/12/31
  • koa入門(ミドルウェアの書き方) - from scratch

    Koaのmiddleware作成方法 さて、先日 koa入門 という入門記事を書いてみました。今回はそれにともなってKoaのミドルウェアの作り方を中心に説明します。 また、 koa-livereload というKoaのミドルウェアも公開してみました。それについても説明します。 Expressのミドルウェアの書き方: Expressのミドルウェアの書き方をまずはおさらい。 app.use(function (req, res, next){ // requestとresponseとnextを持つ関数を受け取る。 // 適当に/_chkに来たら、OKを返すミドルウェアを作る。 if (req.url === "/_chk") { console.log("OK"); res.send(200, "OK"); } // next()を呼び出すと次のミドルウェアを呼ぶ。 next(); }); K

    koa入門(ミドルウェアの書き方) - from scratch
    monyurin
    monyurin 2013/12/31
  • Yeoman入門(第一部、yoを使う) - from scratch

    ※ 追記: id:TokyoIncidents さん"補足"の誤字修正しました、ありがとうございます!! これからYeomanに関して説明していきます。 Yeoman自体が何者なのかよくわかっていない人も多いと思います。また、ある程度Yeomanの概要は知っているので、generatorの作り方が知りたい、という方もいると思います。今回は三部構成で、yeomanを使う話、yeomanのgeneratorを作る話、最後にyeomanのAPIに関して説明していきます。今回は第一部のyeomanを使う話について説明します。 Yeomanとは Google社が作成した総合開発ツール群です、「ヨーマン」と呼びます。公式サイトには MODERN WORKFLOWS FOR MODERN WEBAPPS (モダンWEBアプリケーションのためのモダンワークフロー) と記述されています。 Yeomanを使う

    Yeoman入門(第一部、yoを使う) - from scratch
  • 1