タグ

ブックマーク / www.niw.at (10)

  • niw.at — たのしい Scalding 入門

    TL; DR: git clone https://github.com/niw/scalding_examples.git ざっとググった感じ、Scalding についてはまだあまり日語情報なさそうなので、こう広めたりする目的も込めてちょっとまとめておこうと思います。 Scalding とは Scalding とは、Scala に相当入れ込んでる Twitter で使われているライブラリで、Hadoop の MapReduce を Scala で簡単に書けるものです。中身は Cascading をラップしたものになっています。 Scala に相当入れ込んでる Twitter ではしかしながら Pig が頻繁に使われているのですがある方面では Scalding が使われておりまして、Pig と肩を並べられるくらいに使えて、さらに Scala の秘めた力も使えるんだぜ…! と、少なくとも

    riywo
    riywo 2013/09/21
  • niw.at — デーモンプロセスをゆるふわ監視するときに便利な$0

    たとえばデーモンがあったとします。こんな感じで。 $ ruby -rwebrick -e 'include WEBrick; Daemon.start;\ HTTPServer.new(:Port => 3000).tap{|s|\ s.mount "/", HTTPServlet::ProcHandler.new(Proc.new{|req,res|\ res.body = "hi"});\ trap(:TERM){s.shutdown}\ }.start' これで3000番でHTTPサーバが起動しました。ちょっとリクエストしてみましょう。 $ curl 'http://127.0.0.1:3000/' hi 期待通り動きましたね。ではちょっとこのデーモンが今どんな状態なのかを監視できるようにしましょう… ってなると多分、ログをどっかにとかになりますが、もっと簡単になんとなく知る方法とし

    riywo
    riywo 2013/05/10
  • niw.at — Vagrant で Mozc for Android を作る

    先日、Google 日本語入力Android 版のソースコードが Mozc プロジェクトで公開されました。いろいろ不満の多い Android日本語入力環境で、オープンソースで慣れ親しみのあるプロジェクトでソースコードが公開1されることでにわかに良さげなハックが生まれる機運があります。 以前より Mozc にパッチを当てやすいように Github にミラーしていたのですが、今回もちゃんと追従したので、さて Android 向けにビルドしてみるかと思った次第です。しかし公開されたドキュメントには非情にも 開発環境 Ubuntu 12.04 で開発できることを確認しています。今のところ、MacWindows での開発には対応しておりません。 との記載が。あえてイバラの道になるだろう、Mac OS X でビルドできるようにするという選択肢はあるにせよひとまずは推奨環境でビルドしようと V

    riywo
    riywo 2013/04/02
    かっちょいい
  • niw.at — Scala 事始め、あるいは新しい言語の勉強方法

    ご存知かとは思いますが、これまで仕事場では皆様のツイートと呼ばれる140文字程度の投稿を読んで適切なタイムラインに仕分けしたり、ハッシュタグを見て検索結果に追加したりとなかなか骨が折れる作業をしていて、随分慣れてきたのですが、どうしても最近はじまった「60秒でツイートを届けるキャンペーン」で間に合わないことが多く、中にはUnicodeの合字を組み合わせた塩抜きポテトみたいなツイートも多く、一部、Ruby を使って自動化したりしてみたのですが、そろそろ体力の限界を感じていたところでした1。 そんな折、同僚が、「オレ、Scala を使ってるんだけど肩こりも治ったし、60秒キャンペーンも余裕だよー」って言ってるのを聞いて、そんなにいいなら、とちょっと使ってみることにしました。 新しい言語を覚える 実際のところ、仕事場ではかなり前から Scala で書かれたプロジェクトがありましたが、この公開され

    riywo
    riywo 2013/02/25
    俺得
  • niw.at — アメリカの健康保険事情

    最近ちょっとまじめに調べないとダメな状況になって、一晩かけてちゃんと勉強する機会があった健康保険について、その成果をまとめておきます。ちなみに僕は保険のプロじゃないのでなんかマジな話の場合はちゃんとその筋の方に相談することをおすすめします。あと今回は Medical Insurance つまり医療保険についてのみのお話で、歯医者さんなどについてはまた別の機会に1。 基礎知識 アメリカには国民皆保険制度がありません。 日では殆どの場合、事業所が保険者となって知らない間に給与や賞与の額から決まる標準報酬月額になんか知らないけど厳しい医療保険の財政状況とかいって毎年あがる保険料率をかけた保険料額を社会保険として知らない間に給与から引かれて加入していることになっていると思います。殆どの場合は。 そういう仕組がアメリカにはありません。つまり、自由と自己責任の国アメリカでは健康保険に入るのも、入らな

    riywo
    riywo 2012/10/13
    俺得!が追記されてさらにすばらしく!
  • niw.at — Base128

    最近お遊びで JavaScript を書いていると気がついたら C++ を書いてるのはなぜか疑問に思っていたのですが、それは Node.js の拡張モジュールを作っていたからなのでした。 というわけで、しょうもないものができたので公開します。ついに npm デビュー★ Base64 とは Base64 とは、オリジナルのバイナリを 64 文字の可視 ASCII 文字、つまり大文字小文字英字52文字と数字10文字とあと + と / (余白を埋めるのに = も) を使って表現する方式で、例えば、オリジナルの 3 オクテットのデータ (24bit) は 4/3 倍されて 4 オクテット (32bit) になります。 結果、バイナリデータがクリーンな ASCII 文字で表現できるので可搬性が増したりします。 実際、そうはいっても + と / があるので、URL に入ってるとダブルエスケープされたり

    riywo
    riywo 2012/09/14
    おおお
  • niw.at — "use strict"

    最近のモダンな JavaScript では、必ず "use strict" というのが書かれていると思います。この使い方を雰囲気ではわかってるけど、正しく理解していない場合が自分も含めて多いと思ったので書きとめたいと思います。 ちなみに、"use strict" でググると Perl のそれが出てきますが、Perl の話はしません。あとセミコロンの話もしません。 "use strict"とはそもそもなにか "use strict" は、Use Strict Directive と呼ばれています。 これは ECMA-262 の 14.1 Directive Prologues and the Use Strict Directive によって示されています。 A Use Strict Directive is an ExpressionStatement in a Directive Pro

    riywo
    riywo 2012/07/09
    車窓strict!
  • niw.at — +[NSURLConnection sendAsynchronousRequest:queue:completionHandler:] が何をしているか調べてみた

    +[NSURLConnection sendAsynchronousRequest:queue:completionHandler:] が何をしているか調べてみた TL; DR: +[NSURLConnection sendAsynchronousRequest:queue:completionHandler:] は dispatch_async で +[NSURLConnection sendSynchronousRequest:returningResponse:error:] を呼んでいる。 NSURLConnection を非同期に使いたいなんて要望はもうそれこそかなり昔からあって、数多の車輪の再発明とブログと FAQ が生まれたわけですが、一昨年の Grand Central Dispatch1、GCD の登場でついに抜的な解決が見えるかのように見えてわひょーいってなった割には

    riywo
    riywo 2012/03/05
    デバッガ!
  • niw.at — Mac OS Xで動的ライブラリのバージョン違いの警告が出た

    たまに、nokogiri.gemを使っているときに、 WARNING: Nokogiri was built against LibXML version 2.7.8, but has dynamically loaded 2.7.3 と言われて凹むことがあります、というか、先日ありました。原因は多分Mac OS X 10.7.3にしたことなんですがこういう時に何をすればいいのかという話です。 nokogiri.gemはlibxml2を使ったRubyのXML/HTMLパーサーなんですが、ビルド時に利用したlibxml2のバージョンを覚えていて、実行時に違うバージョンを使うと文句を垂れます。というのも特定のlibxml2はバグがアレすぎてnokogiri.gemがまともに動かないのでそれを排除する目的でそういうことをしているんだと思います。 さて、こうなった時には誰が違うバージョンのlibx

    riywo
    riywo 2012/02/09
    すでにかっこいい
  • niw.at — rvmについて一言

    rvmっていうのがあります。Rubyを切り替えるアレですね。 便利そうだしみんな使ってるから使ってみようって思った方、ちょっと待って下さい。rvmのソース見たことありますか? 僕はいくつかパッチをContributeした経験があるのですがrvmにはいくらか問題があります(rvmを使わなくなって久しいので現状とは異なるかもしれません)。 バージョンナップが頻繁におこる。masterの追いかけをしなくちゃいけない。 いきなりグワっと構造が変わることが多くてアップデートが怖い。 いろいろおせっかい。 結構バギーでいろんなゴミが残ったりすることが多い。 とまあ、そんな感じで、ちょっと色々と問題を孕んでるんですね。 当時はgemプロジェクトごとに管理できるBundlerがまだまだな感じで、rvmのgemsetを使って環境切り替えをしたりしていた記憶もあるのですが、もうBundlerはデファクトにな

    riywo
    riywo 2011/10/04
    僕もrvmはやだなぁと思います。
  • 1