以下の文章はŽeljko Filipinによる"Watir in five minutes"の翻訳です。*1 (中略) 僕が初めてWatirを仕事で使った時、すごく驚いたことを今でも覚えている。インストールしてから数時間で、僕はテスト中のWebアプリケーション用のスクリプトを書けるようになっていた。この本を読めば、数時間もかからずにWebサイトをテストできるようになるはずだ。 もしRubyに親しんでいるのなら、IRBがRubyライブラリを勉強するための最良のツールの1つだってことがわかっているだろう。 もしRubyを知らないのなら、こう思うかもしれない。IRBって何? IRB(この場合)はInternational Ruby BoardでもImmigration or Refugee Board (of Canada)のことでもない。Interactive Ruby Sehllのことだ。読
2018年4月25日をもちまして、 『CodeIQ』のプログラミング腕試しサービス、年収確約スカウトサービスは、 ITエンジニアのための年収確約スカウトサービス『moffers by CodeIQ』https://moffers.jp/ へ一本化いたしました。 これまで多くのITエンジニアの方に『CodeIQ』をご利用いただきまして、 改めて心より深く御礼申し上げます。 また、エンジニアのためのWebマガジン「CodeIQ MAGAZINE」は、 リクナビNEXTジャーナル( https://next.rikunabi.com/journal/ )に一部の記事の移行を予定しております。 今後は『moffers by CodeIQ』にて、 ITエンジニアの皆様のより良い転職をサポートするために、より一層努めてまいりますので、 引き続きご愛顧のほど何卒よろしくお願い申し上げます。 また、Cod
統計学の本読んでるけど公式よりコードの方が頭に入る。 # 適当な標本を定義 samples = [1,2, 1, 0.8, 0.7, 1.1, 1.3, 1, 1.6, 0.9] => [1, 2, 1, 0.8, 0.7, 1.1, 1.3, 1, 1.6, 0.9] # 標本サイズ n = samples.count => 10 # 平均(算術平均) mean = samples.sum / n => 1.14 # 偏差平方和 sum_of_squares = samples.inject(0){|sum, i| sum + (i - mean) ** 2 } => 1.4040000000000001 # 分散 s2 = sum_of_squares / n => 0.14040000000000002 # 標準偏差 s = Math.sqrt(s2) => 0.3746998799
Rubyのfssmでフォルダを監視してファイルの新規作成、更新、削除をトリガとして特定の処理を実行するコード はじめに 特定のフォルダ内のファイルの新規作成、更新、削除をトリガとする処理が必要な場面があり、調べていたらRubyのfssmというライブラリを使うと簡単にできることがわかったので実際に使用してみました。備忘録として使い方をメモしておきます。 fssmとは fssmはRubyで使用できるライブラリであり、MacOSやLinuxのファイルシステムを監視してファイルの新規作成、更新、削除をトリガとした処理ができます。File System State Monitorであることからfssmとなっているようです。詳しくは以下のGitHub上のドキュメントに記述されています。 ttilley/fssm · GitHub なお、fssmは以下のようにgemを使ってインストール可能です。 試した
RuboCopで静的コード解析ができるようになったが、手動で実行するのは面倒だし忘れるのでGuardで自動実行する方法を試してみる。 Guardのインストール github.com Guardはファイルやディレクトリの変更を監視して、さまざまな処理を自動化するgemで、プラグインを追加して利用する。 まず、Gemfileに下記行を追加してbundle installする。 group :development do gem 'guard' endbundle execなしでコマンドを実行するために下記コマンドを実行してbin/guard, bin/_guard-coreを生成する(加えて、direnvでbin以下のコマンドを実行するように設定しておく)。 $ bundle binstub guard $ ls bin _guard-core bundle guard rails rake
公式mechanize.rubyforge.org/ 使い方などMechanize について 楽々スクレイピング! Ruby Mechanizeの使い方 楽々スクレイピング! Ruby Mechanizeの使い方(2) リンクmechanizeでどんなことができるのか色々知りたかったので、使い方でなく実用例ぽいものを集めてみた. リンク先のコードは古いのもあって動かないかも そもそも公式のグーグル検索がそのまま動かないという DoCoMoの請求書を毎月Evernoteに送信してチェックするカスペルスキーのサイトからウィルスレベルをスクレイピングして、つぶやく。RubyのMechanizeではてなブログへ投稿RailsCastsの動画をタグごとにダウンロードしてくるスクリプトニコニコ動画の動画をダウンロードauの請求書を取得ソフトバンクの請求書を取得ゆうちょ銀行のログインとか取得かrubyの
DataCenter とソフトウェア開発ワークショップというイベントで、Rubyによるデータ解析について発表しました。 発表資料 発表の背景 Pythonに対してこの分野でRubyが遅れを取っているということが最近よく言われていますが、まずは使ってみないと何がRubyに何が足りないのかわからないと思い、最近色々なツールを触ってみています。 スライドの24ページあたりにもあるように、主要なツールについてはRubyでも揃いつつあるのかなという印象で、実際Jupyter notebook上で色々触ってみて、結構Rubyだけでも色々できるなと感じました。 一方で、Python/R等に比べて、機能面、性能面、ドキュメント面など、まだまだ不足しているのも事実だと思います。 今回のデモ用に書いたコードも、細かいところで色々足りなくて自分で実装したりしました。 一つ一つは大したコード量ではなく、自分で実装
はじめに 前回、FactoryGirlによるテストデータの準備という記事を書きました。このFactoryGirlにて作成するテストデータを、テストを実行する度に消去するDatabase Cleanerについて、今回は書いてみたいと思います。 使い方 使い方は非常に簡単で、以下のような流れになります。 Gemをインストールする 消去するタイミング等を定義する 以下、手順です。 1.Gemfile Gemfileに以下を記述し、bundle installします。test時にしか使わない場合(ほとんどこのケースと思われる)、「group :test」の中に記述したほうがいいと思います。 group :development,:test do gem 'database_cleaner' end 2.spec_helper spec_helper.rbに以下を記述します。 require 'da
[edit] 要約 URI を扱うためのモジュールです。 目次 特異メソッド decode_www_form decode_www_form_component encode_www_form encode_www_form_component extract join parse regexp split 定数 UNSAFE 特異メソッド decode_www_form(str, enc=Encoding::UTF_8) -> [[String, String]][permalink][rdoc][edit] 文字列から URL-encoded form data をデコードします。 application/x-www-form-urlencoded 形式のデータをデコードし、 [key, value] という形の配列の配列を返します。 enc で指定したエンコーディングの文字列が UR
症状 Ruby 2.1では、URIに使用できない文字(アンダースコア、アンダーバー)を含んだ文字列( http://abc_def.com/foobar/ ※1)をURI#parseに与えた際にURI::InvalidURIErrorの例外が発生する。 2015/08/15追記: ※1…この文字列はURIとしては RFC違反 です。ホスト名にアンダースコア、アンダーバーを含むことはできません。@key-amb様、ご指摘頂きありがとうございます。 なお、この記事では 「RFC違反の文字列に対して、同じURI#parseを使っているが、Rubyのマイナーバージョンに依って挙動が違う」 という点にのみ焦点を当てて、実際にどのように異なっているのか、Ruby2.2で2.1の挙動が欲しい場合にどうすれば良いのかについて論じます。 [1] pry(main)> require 'uri' => tru
[edit] dynamic include: JSON::Generator::GeneratorMethods::Array (by json) 要約 配列クラスです。配列は任意の Ruby オブジェクトを要素として持つことができます。 一般的には配列は配列式を使って 例 [1, 2, 3] のように生成します。 目次 特異メソッド [] new try_convert インスタンスメソッド & * + - << <=> == [] []= | all? any? append assoc at bsearch bsearch_index clear clone collect collect! combination compact compact! concat count cycle delete delete_at delete_if difference dig drop d
Rubyでは変数に代入を行う際に、右辺と左辺の式をカンマで区切ってやると、複数の変数への代入を1行で記述できる。 これは多重代入と呼ばれており、多重代入を使うことで変数の初期化を簡潔に書くことができる。 以下は変数aとbを、それぞれ1と2で初期化する例である。
北海道新聞が北方領土の歯舞を「ほぼまい」とルビを付け、ネット配信するというミスがあった。記事は島尻安伊子沖縄北方担当相が「歯舞」が読めなかったとして「議員はきちんと勉強を」などと諭す内容だった。 「ほぼまい」とルビを付けたのは2016年2月11日に配信した「島尻北方相『歯舞』読めず 11月に視察したばかり 元島民ら『残念』『勉強を』」というタイトルの記事。J-CASTニュースが北海道新聞に取材したところ、もともとの原稿にはルビが付いておらず、配信担当者がルビを付けたほうが読者に親切だと判断し、パンチミスをした。北海道新聞の購読者を対象にした「どうしん電子版」に11日午前5時、「どうしんウェブ」と「ヤフーニュース」には同7時に掲載された。同8時に別の社員が誤りに気付き、ルビを正しく修正した。北海道新聞は、 「今後このような誤りを二度と繰り返さないよう、細心の注意を払ってまいります」 としてい
2005-05-14 15:48:46 +0900 (1238d); rev 16 青木が使っている Ruby のコーディングスタイルです。 インデント インデントは 2。 インデントがでかすぎると end が離れて美しくない。 {....} のインデントだけを 4 にしてみた時期もあったが、 やっぱり全部 2 にしたほうが単純だし統一感がある。 またタブは一切信用せずに全部スペースにする。 ※ 有名な Ruby hacker の前田修吾氏はかつてインデントを「3」にしていた。 この理由について青木は if true while true unless false return 1 end end end のように end がピッタリそろうのが素敵かなあ、 と評したのだが、実際の理由は全然違ったようだ。 → [ruby-list:18603] ※※ 素敵という言葉は江戸時代にできたそうだ。
INDEX PAGE オーバーロードは書けるの? Javaでは同じ名称のメソッドで引数の型、個数などを変えられる いわゆるオーバーロードというテクニックが存在します。 Rubyに関しては、オーバーロードという記述方法は存在していないようです。 そもそもスクリプト言語ということもあり 引数に関する型判定が存在していないということが一番大きな理由と思われます。 しかし、実際問題としてオーバーロードを使えないと プログラムとして使いにくいということも多いはずです。 Rubyではオーバーロードこそできませんが、同じようなことをする方法はいくつか提供されています。 ■引数にデフォルト値を設定する 下記のように、引数に対して「=」をつなげて値を設定することでデフォルト値を設定することができます。 デフォルト値が設定できれば引数自体は省略可能になります。 def hoge(key1,key2,key3=
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く