タグ

rubyとRubyに関するtakaherawのブックマーク (116)

  • Test::Unitでテストを書く - Qiita

    テストの書き方 基 今までのTest::Unitと変わらないので,classで書く.ただ,昔のTest::Unitとは違い,TestCase毎に呼ばれるstartupやshutdownなどが増えている. require 'test/unit' class TestSample < Test::Unit::TestCase class << self # テスト群の実行前に呼ばれる.変な初期化トリックがいらなくなる def startup p :_startup end # テスト群の実行後に呼ばれる def shutdown p :_shutdown end end # 毎回テスト実行前に呼ばれる def setup p :setup end # テストがpassedになっている場合に,テスト実行後に呼ばれる.テスト後の状態確認とかに使える def cleanup p :cleanup

    Test::Unitでテストを書く - Qiita
  • 桐島、Rubyやめるってよ

    セッションでは「プログラミングへ向き合い方」ということについて発表者なりに考察した結果を述べます。 スゴイ級のプログラマからプログラミングのエモい話を拝聴することはあり、それも非常に興味深いのですが、私のような平凡なプログラマの視点からも少し提案できることがあるのではないかなあと考えている次第です。

    桐島、Rubyやめるってよ
  • http://blog.inouetakuya.info/entry/2013/10/20/132928

    http://blog.inouetakuya.info/entry/2013/10/20/132928
  • RubyでOSの外部コマンドを実行したいときに、spawnを使うと便利だった件 - カイワレの大冒険 Second

    またもや、Rubyネタ。ちょくちょく更新して参ります。 外部コマンドを実行するやり方については、このサイトにまとまっています。 んで、なんかいいライブラリないかと。 が、今回僕が欲しかった機能として、 コマンドが叩ける(当然 標準出力・標準エラー出力サポート(叩いて終わりはダメ。そのコマンドのエラーメッセージが見たい 例外処理がしやすい であります。 systemだと、例外処理は終了ステータスで処理できるけど、どんなエラーを吐いてるか分からないから、このコマンドがエラーを吐いてますとしか言えない。 Open3.capture3だと、エラーは出力することができる。だけど、コマンド失敗した時点でOpen3自体がエラー処理して、そこで止まってしまい、例外処理しにくい。コマンドこけても、継続させることが不可能とか。 systemuは組み込みじゃないので、可能であれば避けたい。最後の手段にしたい。

  • abコマンドのベンチマークパターンを書けるab-mrubyを作った

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 Web屋さんはみんな大好きabコマンドは便利ですが、オプションは複雑で数も多く、複数のホストにそれぞれに対応するオプションを指定してテストしたりすると結構カオスになりがちです。 最近では、httperfやweighttp等のabに変わる次のHTTPベンチマークツールが出てきていますが、やっぱりまだまだ現役で良く使うのはabコマンドだと思います。 そこで、今回はabコマンドの複数のベンチマークオプションのパターンを1つのRubyスクリプトに定義しておいて、それをabコマンドで読み込む事で動的に任意のパターンでベンチマークを行うab-mrubyを作りました。外出しで書いたRubyスクリプトとabコマンドの連携は、ab-mrubyと見てわかるように

    abコマンドのベンチマークパターンを書けるab-mrubyを作った
  • なるほどUnixプロセス ― Rubyで学ぶUnixの基礎

    なるほどUnixプロセス ― Rubyで学ぶUnixの基礎 Jesse Storimer, 島田浩二(翻訳), 角谷信太郎(翻訳) 達人出版会 3,520円 (3,200円+税) 『Working with Unix Processes』待望の完訳。並列処理やデーモン、プロセス生成、そしてシグナルといったUnixの基礎であるプロセスについてRubyで解説する、「今どきの」開発者に向けた新しいUnixプログラミングの手引きです。 ※書の公式ハッシュタグは#naruhounix になります。 関連サイト原著者による公式ページと訳者らによるサポートページがあります。 Working With Unix Processes - Learn the Fundamentals of Unix Programming in RubyなるほどUnixプロセスサポートページ 日語版刊行によせてRuby

    なるほどUnixプロセス ― Rubyで学ぶUnixの基礎
  • Kageを使う時にやっておくと便利なこと - まめ畑

    先ほど、Kageというgemが公開されました。 https://rubygems.org/gems/kage https://github.com/cookpad/kage このgemは、クライアントからのリクエストを複製し、バックエンドの複数のサーバに同じリクエストを送る事が出来ます。これを使うことで、これから番に適用するコードの負荷試験や、書き込みをDummyDBに逃がして、slaveを番に接続するなどして番データを使用した負荷テスト、ミドルウェアのバージョンアップのテストを行うことが出来ます。 実際にクライアントに返されるレスポンスデータはproductionサーバとして指定されたサーバから返却されるため、番のリクエストを使用してテストが簡単に行えるようになります。 実際に番のアクセスを流す方法にはいくつかあると思います。Kageが導入されたサーバに直でトラフィックを流す方

    Kageを使う時にやっておくと便利なこと - まめ畑
  • 川o・-・)<2nd life

    Perl での print debug の方法の紹介がブーム(?)だったので、自分がよく行ってる Ruby での debug 方法7つについて書いてみます。 p ご存じの人も多い Kernel#p メソッド。これを使うとオブジェクトの内容を見やすい形で出力してくれます。 >> p ({:foobar => :baz}) {:foobar=>:baz}Object#inspect を使うと、p で出力するときと同じ文字列を String として取得できます。 >> puts ({:foobar => :baz}).inspect {:foobar=>:baz}初心者の頃この p での出力を使う方法がわからなくて困った記憶が…。 pp pp というライブラリを使うと、p より、より見やすい形式で出力してくれます。たとえば >> a = Array.new(10) { {:foobar => :

    川o・-・)<2nd life
  • RubyMotion Tutorial: Ruby で iOS アプリを作ろう

    RubyMotion TutorialRuby で iOS アプリを作ろう by Clay Allsopp Follow @clayallsopp 日語訳: RubyMotion JP RubyMotion を使うと Ruby で iOS のアプリを開発することができます。これまで Apple のプラットフォームにおけるソフトウェアは Objective-C という、素晴らしいがその一方でニッチな言語しか使用できないよう制限されてきました。RubyMotion は完全にネイティブで、効率の良い他の言語による開発を可能にします。その言語とは Ruby です。 RubyMotion Tutorial では iOS SDK をできる限り Ruby らしく使うために必要不可欠なトピックを学ぶことができます。すべてを網羅はしていませんが、洗練されたアプリケーションを最大限素早く開発するための道しる

    RubyMotion Tutorial: Ruby で iOS アプリを作ろう
  • るびま

    『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、日 Ruby の会の有志による Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0058 号 バックナンバー Rubyist Magazine 0058 号 RubyKaigi 2018 直前特集号 Rubyist Magazine 0057 号 RubyKaigi 2017 直前特集号 Rubyist Magazine 0056 号 Rubyist Magazine 0055 号 Rubyist Magazine 0054 号 東京 Ruby 会議 11 直

  • Ruby 2.0

    Ruby 2.0」@デブサミ2013

    Ruby 2.0
  • SPDYと「やったー、net-http-spdyできたよー」の話 - I am Cruby!

    SPDYを知るSPDYという実験的なプロトコルがありまして、 SPDY - The Chromium Projects HTTP2.0はSPDYをベースに作られるかも、みたいな話も風の噂で聞いたりするのでじゃあどんなもんかなあと仕様を読んで見ました。 SPDY Protocol - Draft 2 - The Chromium Projects SPDY Protocol - Draft 3 - The Chromium Projects SPDYv2とSPDYv3というのがあって、基的にはSPDYv3の方を読んどけばいいのかなあとは思います。 ただSPDYv2もすでにいろんなところで使われていますので、仕様書の「7.Incompatibilities with SPDY draft #2」の部分もチェックしておきましょう。 HTTP Layering over SPDYSPDYというの

  • 本当はこわいエンコーディングの話 // Speaker Deck

    東京Ruby会議10 で発表したスライド

    本当はこわいエンコーディングの話 // Speaker Deck
  • RabbitMQ と再送について

    概要 : AMQP のプロトコルを読むと、一瞥して送信はパケットを送るだけ、受信はソケットを読み込むだけのようにも見える。しかしながら、実際に書いてみると、再送処理を自前で実装する必要があるため、現実には大変に複雑な処理が必要だ。 そもそもなぜ RabbitMQ を使うのかという話、あるいはなぜ再送が必要かという話たんにコンポーネント同士が疎結合で通信したいのであればわざわざ MQ を使う必然性は皆無である。ごくあたりまえに TCP で通信すればそれでいい。暗号通信が必要なら当然 SSL でいいし、パケットエンティティに依存する複雑な L7 リバースプロキシを MQ を使って実現することも、不可能ではないが、普通そういうのは varnish とかでやるだろう。 MQ において優れているのはデータの durability だ。つまり、一旦キューにためておけば、その両側のコンポーネントは好き勝

    RabbitMQ と再送について
  • Ruby 2.0.0で学ぶ、14個のデザインパターンを作りました[GoF][Design Pattern] - 酒と泪とRubyとRailsと

    GoFのデザインパターンとは、「プログラミングのベストプラクティスを体系化したもの」です。このベスト・プラクティスをしっかりと理解して設計すれば、ソフトウェア設計の効率を高めることができます。またデザインパターンが「プログラミングの思想」の共有をよりスムーズにしてくれます。先人たちの試行錯誤の結果を効果的に利用して、プログラミングをもっと楽しんでしまいましょう! 🗻 デザインパターンのポイントGoFのデザインパターンには下のプリンシパルがあります。 変わるものを変わらないものから分離する インタフェースに対してプログラミングし、実装に対して行わない 継承より集約 委譲、委譲、委譲 必要になるまで作るな(You Ain’t Gonna Need It./YAGNI) 🤔 デザインパターン一覧 アブストラクトファクトリ ビルダ ファクトリメソッド シングルトンパターン アダプタ コンポジッ

    Ruby 2.0.0で学ぶ、14個のデザインパターンを作りました[GoF][Design Pattern] - 酒と泪とRubyとRailsと
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • Ruby 2.0初のプレビュー版がリリース! 注目機能は!?:Rails Hub情報局:エンジニアライフ

    2012年11月2日、Ruby 2.0.0-preview1のリリースがアナウンスされました。Ruby 2.0はRuby生誕20周年となる2013年の2月24日にリリースが予定されています。現在の安定版であるバージョン1.9系の次のメジャーバージョンアップとなります。ちなみに、1.9の正式版が初めてリリースされたのは2007年12月25日でした。 Ruby 2.0のリリースマネージャ、遠藤侑介さんがメーリングリストに流したアナウンスによれば、2.0.0の主な新機能は以下の通り。 Refinements キーワード引数 Enumerator#lazy Module#prepend Hash への変換メソッド #to_h %i: シンボルの配列のリテラル 正規表現エンジンを Onigmo に変更 DTrace サポート それぞれの機能について特に説明がなかったので、西村が分かる範囲で少し各機能

    Ruby 2.0初のプレビュー版がリリース! 注目機能は!?:Rails Hub情報局:エンジニアライフ
  • http://blog.monoweb.info/blog/2012/02/18/ruby-secure-web-app/

    See related links to what you are looking for.

  • Rubyのnet/http でHTTPリクエスト/レスポンスをdumpする方法 - ( ꒪⌓꒪) ゆるよろ日記

    俺得メモ。もう3回くらい同じこと調べたんでいい加減メモ残しておく。 Net::HTTP にset_debug_outputってメソッドがあってコイツに出力先を渡せばいい。残念ながらこのset_debug_outputはドキュメントには載ってないのでnet/httpのソース見てね。 require 'net/http' Net::HTTP.version_1_2 http = Net::HTTP.new("d.hatena.ne.jp", 80) http.set_debug_output $stderr http.start{|http| req = Net::HTTP::Get.new('/yuroyoro') res = http.request(req) print res.body } irbでやると irb(main):001:0> require 'net/http' => t

    Rubyのnet/http でHTTPリクエスト/レスポンスをdumpする方法 - ( ꒪⌓꒪) ゆるよろ日記
  • 「なんでRubyなんか作った!? 迷惑だ!」に対するMatzの答え:Rails Hub情報局:エンジニアライフ

    2012年9月に行われた札幌Ruby会議2012の基調講演の1つで、Rubyの生みの親のまつもとゆきひろさんが、最近あった面白いエピソードを混じえて“イノベーション”の質について語っていました(44分の動画)。ポイントとなる部分をまとめてみました。まつもとさんの話はもちろん、統計的裏付けだとか学問的裏付けがある議論というものではありませんし、ご人も楽しそうに話し、聴衆も楽しんでトークを聞くというゆるい感じのものでした。ただ、「イノベーションの質は捉えがたい」というメッセージや、「だからあれこれ考えずにコードを書こう、われわれはコードを書くことにアイデンティティを感じているのだから、それこそがハッピーになる道だ」というメッセージは、参加していたRubyistたちの胸に響くものがあったのではないかと思います。 以下、口語文体のまま、ポイントとなる前半のトークをまとめてみました。トーク後半

    「なんでRubyなんか作った!? 迷惑だ!」に対するMatzの答え:Rails Hub情報局:エンジニアライフ