MySQL Casual #6で@studio3104さんが発表していたnata2を触った。 My sql casual talks vol.6 from studio3104_com で、とりあえずローカルにnata2を起動しtd-agentを入れてプラグインを入れてmysqlslapを実行してみた。 動作環境はRuby2.1.2で。1.9系は動かなかった。 手順はgithubにも書かれているが、 https://github.com/studio3104/nata2 https://github.com/studio3104/fluent-plugin-nata2 以下は簡単な流れ。 まずnata2自体の設定。 git clone https://github.com/studio3104/nata2.git cd ./nata2 bundle install vim ./config
Overview Diamondback Ruby (DRuby) is an extension to Ruby that aims to bring the benefits of static typing to Ruby without compromising the expressiveness of the language. The main features of DRuby are: Type inference: DRuby uses inference to model most of Ruby’s idioms as precisely as possible without any need for programmer intervention. Type annotations: Methods may be given explicit type anno
以前書いた(C言語についての) メモリ安全性について定義した記事 について、型安全性について説明する記事も投稿してほしいというコメントがありました。型安全性についてはかなりよく知られてきていると思いますが、ズバリこうだと簡単に定義できるほどにはまだ理解が浸透していません。特に誰かが”Javaは型安全な言語だ”と言った場合、これは厳密に何を意味するのでしょう。全ての型安全な言語はある意味”同じ”と言えるでしょうか。ある特定の言語について、そして一般的な意味で、あなたを悩ませる型安全性とは何でしょうか。 実際のところ、型安全性が何を意味するのかは言語の型システムの定義によります。最もシンプルなケースでは、型安全性はプログラムの動作が正しく定義されるように保証します。もっと一般的な話をすると(この記事ではそのあたりをカバーするつもりですが)、言語の型システムはそのプログラムの正確さと安全性を推論
RSpecでモジュールをテストする方法です。 いくつか方法があると思いますがここでは3つ挙げます。 まず一つ目はRSpec.configureでincludeする方法。 lib/app.rb module Hello module World def say "Hello World!" end end end spec/spec_helper.rb require 'app' RSpec.configure do |config| config.include Hello::World end spec/app_spec.rb require 'spec_helper' describe "Hello::World" do context "#say" do context "with including Module via RSpec.configure" do it { say.s
(さらに追記)不十分なところを指摘していただきました!ありがとうございます! nomnel.net (追記)オープンクラスの理解が間違っていたためタイトルを変更しました。今回あげている例はNoMethodErrorを起こさずに他のオブジェクトに処理を委譲する流れを説明したものです。 パーフェクトRubyの7章で、存在しないメソッドを呼び出したときにNoMethodErrorを発生させる代わりに他のオブジェクトに処理を任せる、という内容の節がありました。これを接客業に当てはめて説明してみたくなったので、ブログ記事にしています。 接客でやってはいけないこと 派遣バイトとしてコンサート会場などの案内スタッフになると、業務前にほぼ必ず以下のような説明を受けます。 みなさんは本日、◯◯(イベント会社)のスタッフです。そのためお客様に対して「わからない」と言ってはいけません。必ず、「お待ちください」と
Webの仕様 ウェブの仕様といえば、W3CやWHATWG、IETFとかが思い浮かぶかもしれません。 これらの仕様が最近ではメーリングリストやIRCといった旧来のところだけではなく、GitHub上で議論されて策定が進められている事が増えています。(両方使ってるという話) この記事はそのような方法で進められてる仕様等についての紹介です。 * 自分自身はそこまで仕様に対して強い興味があるわけではないので、もっと詳しい方が正しくまとめて頂きたいです。。 最初にMove The Web Forward | Guide to getting involved with standards and browser developmentを見ておくといいかもしれません。 JavaScriptの仕様 この動きが多く見られるのがJavaScript(ECMAScriptやDOM APIを含む)周りの仕様につい
GitHubと連係するコードレビューツール「ReviewNinja」がGitHub上で公開されています。開発しているのは欧SAP。あの業務アプリケーションで知られるSAPです。 Review Ninjaはまだ開発の初期にあるようですが、GitHub上で次のように解説されています。 ReviewNinja is a lightweight code review tool that works with GitHub, providing a more structured way to use pull requests for code review. ReviewNinjaは軽量なコードレビューツールで、GitHubと連係しています。これはコードレビューの場面でプルリクエストを用いてより構造的な方法を提供するものです。 (一部省略) ReviewNinja defines a clea
簡単なチャットプログラムは、ネットワークプログラミング用のフレームワークでは定番のサンプルプログラムです。 echo サーバーが Hello World とするなら、チャットは FizzBuzz といったところでしょう。 とりあえず動くだけのチャットならだれでもすぐに作れるようになりますが、まじめにチャットを作ることで、 ネットワークプログラミングで考えないといけない点やエラー処理の重要な基礎を学ぶことができます。 ということで、 Go でシンプルなチャットを実装してみました。 (ソースコード) 以降、何を考えてどういう設計を採用したのかを解説していきます。 考慮すべきポイント 特定のクライアントへの送信に長時間待たされた場合に、他のクライアントへの送信が遅れないようにする。 クライアントを切断するのは、 (1)ルーム側から kick する場合, (2)受信エラー, (3)送信エラー の3
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く