A talk presentation for RubyWorld Conference 2017 held in Matsue, Japan. Introducing Everyleaf Corporation's training program. Written in Japanese.
msgpackrpc.md MessagePack RPCクライアントの振る舞い及びエラー処理 概要 MessagePack-RPCのクライアントのエラー処理を正しく、またその後に何をすべきか(可能か)まとめる。 「このエラー起きたとき、どう処理すべきか?」ということを説明する。 説明しないこと:RPCサーバの作り方、各言語のライブラリのプロトコル実装やエラー定義の差。 結論 エラー内容を正確に取得したければC++クライアントを使う Ruby, Python, Javaの実装では、1度RPCに成功した後、同じオブジェクトで次にRPCを実行して発生したトランスポート層のエラーは必ずtimeout errorとなってしまう(トランスポート層で何が起こったのか、接続し直したのか、何が原因となっているのか例外からは判別できない) 回避策として、RPCを呼び終わったらセッションを閉じて、再度接続し直
Subject: [ruby-list:42076] Re: puts,printの出力をファイルにも出力するには From: Yukihiro Matsumoto <matz@ b l g r Date: Fri, 21 Apr 2006 15:01:58 +0900 In-reply-to: 42074 まつもと ゆきひろです In message "Re: [ruby-list:42074] Re: puts,printの出力をファイルにも出力するには" on Fri, 21 Apr 2006 14:47:14 +0900, 岩崎 弘孝 <IH000667 / mb.taiyokogyo.co.jp> writes: |>とてもつまらない方法ですが、ファイルに書き出した後で標準出力に書き出すというのは? |>この方法でprint,puts,systemなどの出力がファイルに書き出され
クックパッド編集室の加々美です。 現在、食や暮らしのトレンドを発信するメディアであるクックパッドニュースの開発に携わっています。 「総合職で入社した新卒がクックパッドでエンジニアになるまで」 というエントリを投稿した2015新卒の土谷と同様に、2014年に新卒として入社後、総合職から研修を経てエンジニアへと転向しました。 今回は、クックパッドニュースの管理機能の改善を行う際に注意した点についてお話します。 自分がその管理ツールを使う人になる 事業体制の変化もあり、現状のクックパッドニュースの管理画面に関して、いくつかの運用上の問題点が指摘されており、その改善を行いました。 管理画面改善の進め方としては 「現状の業務フローの把握」「問題点の把握」「理想の管理画面の設計」 という基本的な手順で取り組みました。 現状把握と問題点洗い出しの方法としてまず思いつくのはヒアリング中心で進めていく方法で
明日から RubyKaigi なので、ちょっとした小ネタを一つ。 例えば、0 から 9999 までをハッシュに順に入れます。 h = {} 10000.times do |n| h[n] = true end このとき、h[9998] や h[9999] は、h[0] や h[1] より高速です。 どのくらい高速かというと、 1_000_000_000.times { h } # 40.8 sec (ループ自体の速度) 1_000_000_000.times { h[9999] } # 57.2 sec 1_000_000_000.times { h[0] } # 89.1 sech[0] は 89.1 - 40.8 = 48.3 nsec 、h[9999] は 57.2 - 40.8 = 16.4 nsec ということになります。なんと 3 倍も速い。*1 なぜこんなことが起きるのか ハ
カヤックさんの新卒研修を読んで telnet と nc -l を使ってwebサーバ/ブラウザごっこをやってみたのですが、1人でやってると役割の切り替えがダルくなってきたので、本当の基礎からのwebアプリケーション入門を見ながらrubyで簡単なwebサーバを作ってみました。 参考 http://www.geekpage.jp/programming/ruby-network/ http://drascal.blog133.fc2.com/blog-entry-219.html v1 TCPクライアントからの接続を受け付けられるようにする require "socket" server = TCPServer.open(8001) while true socket = server.accept while buffer = socket.gets p buffer end socket.c
そうです、Matrix(行列)クラスに色々入る予定のようです. .... いやもっと伝えるべきモノが他にあるとの怒号が今にも聞こえて来そうですが... 「すみません今日の所は行列の紹介をさせて下さい.」 多くの方は興味もないであろうけど、 Rubyには行列やベクトルを扱う Matrix クラスというものがありまして、 Ruby2.2では色々新機能やバグfixが入るようです. 「行列ベクトル演算するならRubyよね」 と言われるくらいのモノにはなるのではないでしょうか? 本日はRuby2.2以前にあるものも含めMatrixのマジですごい所を紹介します. 使わないともったいない!すごいMatrix, 楽しく学ぼう! 1. LU分解 LU分解が出来るという事は... n元連立方程式をいとも簡単に解く事が出来ちゃうの # 2x + y = 2 # x + 2y = 3 Matrix[ [2, 1]
本稿では CentOS/RedHat に rbenv と ruby-build プラグインをインストールする手順について説明します。 「そもそも、Ruby を CentOS/RedHat にインストールする方法ってどんなのがあるの?」という方は、別記事「RubyをCentOS/RedHatにインストールする4つの方法」を御覧ください。 事前準備 rbenv は GitHub 上で開発/配布されているオープンソース・ソフトウェアです。 最新の rbenv を GitHub から取得するために、CentOS/RedHat に Git をインストールしておく必要があります。 (もし Git の知識に自信がないけど rbenv を利用したい方は zip 形式でもダウンロードできますが、公式でアナウンスされているインストール手順ではない点を留意してください。) CentOS/RedHat にインス
概要 本稿では CentOS や RedHat に Ruby をインストールする方法について解説します。 検索エンジンで「Ruby インストール」などのキーワードで検索してみると様々な導入方法が検索結果に現れて、「いったいどの方法が良いのか?」と分からなくなってしまった人もいると思います(筆者のことです)。 Ruby を CentOS や RedHat をインストールする方法は、次のようにいくつかあります。 Ruby のインストール方法の選択肢 ソースコードをコンパイルしてインストールする方法yumでインストールする方法RVM (Ruby Version Manager) を利用する方法rbenv + ruby-build を利用する方法 本稿では、これらそれぞれの方法についての概要を解説します。 (1) ソースコードをコンパイルしてインストールする方法 まずは Linux を使う上では一
コマンドは、以下のような書式でオプションと引数を設定して、実行する仕組みになっている。 例: コマンド名 オプション オプション オプション引数 オプション コマンド引数 optparser_test.rb -a -b VALUE --foo FILE_PATH 実際にコマンドを作ろうとすると、オプションの解析には手間がかかると気付く。 そのため、多くの言語環境にはオプション解析用のライブラリが用意されている。 Rubyのoptparserについて、基本的な使い方は知っているつもりだったが... Rubyでコマンドの中身を作るまで - ザリガニが見ていた...。 ちょっと気の利いたコマンドにしようとすると、その使い方は謎だらけになった。 どうしたら苦労最小限でオプションを解析できるのか、調べてみた。 基本 require 'optparse' OptionParser.new do |op
そろそろ整理しておきたい、Gemコマンドの使い方 - ばくのエンジニア日誌 なお、 プロキシー経由でないと外部にアクセスできない場合には環境変数 http_proxy でプロキシーサーバーとポート番号を指定しておきます。 プロキシーサーバー:ポート番号 (例) foo.bar.co.jp:8080 どんな gem パッケージが利用できるかは gem list -r で見れます。 しかし、大量に出て来るので、 Web 上見つけてからインストールすることが多いです。 以下のサイトなどで探すことができます。 BestGems -- Ruby Gems Download Ranking The Ruby Toolbox - Know Your Options! RubyGems.org | your community gem host ただし、 C/C++ の拡張ライブラリーを使っている gem
Windows環境で、gemでjsonをインストールしようとしたら、以下のエラーになった。 $ gem install json Building native extensions. This could take a while... ERROR: Error installing json: ERROR: Failed to build gem native extension. c:/ruby/bin/ruby.exe extconf.rb install json creating Makefile nmake 'nmake' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。 Gem files will remain installed in c:/ruby/lib/ruby/gems/1.8/gems/json-1.1
Rubyをさわり始めた時に戸惑ったインスタンス変数やクラスインスタンス変数なんかのためのチートシート。変数、クラス、モジュールの使い方についてざっとまとめてみた。RailsでGemばっかり使ってると忘れるんだよなー。 登場人物はこんな感じです。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 9
Railsで使いまくりActive Supportなので、そんなにまとめがいが無いし、沢山あるのでまとめられないけれど、代表的なモノをとりあえずまとめておく。 blank?やpresent?やtryなんかは省略する。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
プログラム初心者な方向けに始めたRailsチュートリアルシリーズです。今回はRubyでスクレイピングをしたいという人向けに『Nokogiri』というライブラリを使ったスクレイピングのチュートリアルを作ってみました! (05-02 08:10) 補足: Windowsではじめての人向けの記事を追加 🏈 目次(1) Webスクレイピングとは? (2) Nokogiriとは? (3) 最初に読んでおくと捗りそうな記事 (4) Gem Nokogiriのインストール (5) Yahoo!Japanのトップページからtitleを取得 (6) NaverまとめTechページの注目一覧のタイトル・画像を取得 (7) 実際にコードを書くときに参考になるサイト (8) Railsへの組み込み 🐝 (1) Webスクレイピングとは?WebスクレイピングとはWebサイトのHTMLデータを収集して、特定のデー
2013年12月25日。おめでとうございます、Ruby 2.1.0がリリースされました! 日本時間で26日という細かい突っ込みをしている場合ではありません。 まだ使ったことがない方、簡単に変更点を見てみましょう。 文法の変更 デフォルト値を伴わないキーワード引数 Ruby 2.0が出たときから誰もが思っていた疑問、「なんでキーワード引数はデフォルト値必須なんだ?」がついに解消されました。以下の記法で、デフォルト値をつけないキーワード引数を宣言できます。この場合、呼び出し時に対応する実引数を渡さないとArgumentErrorになります。 def hello(name: ) puts name end hello(name: "taro") # => taro hello # => ArgumentError: missing keyword: name キーワード引数同士ではデフォルト引数
『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0063 号 バックナンバー Rubyist Magazine 0063 号 Rubyist Magazine 0062 号 Kaigi on Rails 特集号 RubyKaigi Takeout 2020 特集号 Rubyist Magazine 0061 号 Rubyist Magazine 0060 号 RubyKaigi 2019 直前特集号 Rubyist Magazine 0059 号 Rubyist
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く