rubocopはRubyのコード可読性をチェックするソフトウェアです。プログラマーを何年やっていても、なかなか奇麗なコードに辿り着くのは困難です。ちょっと道を誤るとものすごいコードになっている場合もあります。そんな時には機械的に評価してくれるrubocopを使ってみましょう。 実行しました。色々な情報が出てきます。 Cは注意、Wはワーニングでしょうか。 ヘルプです。Emacsとの連携もできます。rubocopでは内部での幾つかのルールに従って指定ディレクトリ以下のRubyコードについて評価を行ってくれます。筆者の場合、一行あたりの文字数が多くて引っかかるケースが多いようです。そうした点に注意して書くようにすれば、より可読性の高い美しいコードが書けるようになりそうです。rubocopはRuby製、MIT Licenseのオープンソース・ソフトウェアです。 MOONGIFTはこう見る 美
「Rubyのcase」を一瞥し「あー要は〇〇(言語名)のswitchね」などと早合点し、その後もその真の価値を知ることなく一生を終えるプログラマが近年跡を絶たない。加えて、「今更条件分岐?RubyはOOPなんだからポリモフィズムじゃね?」とか「HashにProc突っ込んでcallするのがオレ流。」とかうそぶく人たちもまた増加の一途を辿っている。 そんな世の中にあって、ぼくは一言、できればガツンと一言申し上げたい。生まれも育ちもRubyなぼくから、是非ともそんな人たちに「Rubyのcase」について一言申し上げておきたい。 ─ 問題1 ─ 名前name、レベルlevel、ポイントpointの各属性を持った複数のCharacterオブジェクトcharlie, liz, benがある。 class Character < Struct.new(:name, :level, :point) def
@satococoa先生により、前回よりだいぶスッキリした方法でインストールできた。 環境は引き続きOSX 10.8.2。 $RUBY_CONFIGURE_OPTS="--with-openssl-dir=`brew --prefix openssl` --with-readline-dir=`brew --prefix readline`" rbenv install 2.0.0-rc2 Downloadingruby-2.0.0-rc2.tar.gz... -> http://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-rc2.tar.gz Installingruby-2.0.0-rc2... Installedruby-2.0.0-rc2 to /Users/aerial/.rbenv/versions/2.0.0-rc2 $ rbe
脆弱性は認証システムの迂回、任意のSQL挿入、任意のコード挿入と実行、Railsアプリケーションに対するサービス妨害(DoS)攻撃などに利用される恐れがある。 オープンソースのWebアプリケーション開発フレームワーク「Ruby onRails」のセキュリティアップデートが公開され、極めて深刻な脆弱性が修正された。全ユーザーに対し、直ちにアップデートまたは回避策を適用するよう呼びかけている。Ruby onRailsや米セキュリティ機関US-CERTが1月8日に公開したセキュリティ情報によると、Ruby onRailsのパラメータ解析コードに複数の脆弱性が存在する。認証システムの迂回、任意のSQL挿入、任意のコード挿入と実行、Railsアプリケーションに対するサービス妨害(DoS)攻撃などに利用される恐れがある。 この脆弱性はRuby onRailsの全バージョンが影響を受け、危険度

あけましておめでとうございます。SF アドベントカレンダーも書けず、2012 年のまとめとかも書けず、まぁ何をしてたかというと生きるのに精一杯だったんですが、あともう一個やってたのがアプリ書くってことでした。前から、自前で簡単につかえるHeroku っぽい PaaS があるといいなぁと思ってたのですが、やっと動くものができましたので公開します。”MyHeroku”で Myroku。 riywo/myroku-cookbooks ·GitHub riywo/myroku-server ·GitHub どういうもの? 基本の挙動は超シンプルです。Heroku っぽい感じ。 好きな名前のアプリを作成する(sample-app) .llenvに使いたい LL のバージョンを書く(node-0.9.3) Procfileに起動するプロセス書く(web: node app.js) 一番最初に

2日ほど前にGitHubに登場して話題となっているRackアプリケーション向けエラー画面表示ツールの「better_errors」というgemがヨサゲなので、ちょっと試してみました。Rack対応なので、Sinatraでも使えるようですが、もちろん、Ruby onRails対応です。間に合えば、Ruby onRails4に採用されることもあるかもしれません。というぐらい、こういうのを待っていましたという声が出ているようです。 スタックトレースとエラー発生箇所が表示されるのは、Rails標準のエラー画面と同じですが、コードがハイライトされているほか、スタックフレームの任意の場所をクリックすると、該当するコードが表示されるなど、簡易なWebアプリっぽくなっています。インスタンス変数や、パーシャルに渡っているローカル変数も表示します。 以下はRails標準のエラー画面です。 Better Er


RubyMotion に興味がある有志で集まってもくもく会というのをやっています。 もくもく会とはなんぞや、という方は http://mokumokukai.tumblr.com/ あたりを。要はゆるいハッカソンです。RubyMotion のもくもく会は、集まって軽く自己紹介して今日やることを説明したらあとはもくもく作業する感じです。今回で三回目。昨日インストールしたばかりという人がチュートリアルをやっていたり、開発中のアプリを作ったり、バグを直したり、ブログ書いたり。自分はもくもく会のたびにRubyMotion をアップデートして既存のアプリが動かなくなりそれを直す、ということを繰り返しているわけですが。 黙々・・・といってもそばに同志がいるのでわからないことがあったら聞きますし、今日なんかはチュートリアル始めるならこの辺がいいんじゃないかとか、Advent Calendar が埋ま

英国ルビーカンファレンス(BritRuby)が、登壇者の人種・性別問題によって中止される、というニュースをVentureBeat経由で知りました。 BritRubyは、来年の3月中旬の2日間、イギリスのマンチェスターで開催が予定されていたRuby onRailsコミュニティによるカンファレンスで、500名の参加者、20名のスピーカーを見込んでいたようですが、この登壇者がすべて「白人の男性」だったことが、今回の開催キャンセルの遠因のようです。 HackerNewsでの議論の中で指されている問題の開始点がこの一連のツイートだというのが本当であれば、「参加者が全員白人男性なのだけが残念だ」というつぶやきに対する応答の中で、主催者側が「実力で選んだらそうなっただけ」と答え、「マイノリティは実力が無くて選ばれなかったのか?」となったあたりから、炎上しているようです。 この炎上が起こったのは昨日11
[注意] この文章を読むと、既存のRubyコードをScalaでrewriteしたくなる、Rubyコードで型チェックをやるのが鬱になる、Ruby案件でやる気が出なくなる、 などの幻覚や異常行動が報告されています。 現在関わっているプロジェクトや家族のことを常に意識し、 気を強く持って冷静に読むとよいでしょう。 "コーディング時間の半分をテスト作成に費やさなければならなかった"(p.3)"Railsによって得られた生産性の向上は、テスト作成の作業に失われてしまいました"(p.3) まさにここ数年私が抱いてた漠然としたストレスの正体が、的確に文章となっていたからだ。そしてほどなく、「あ、この機能がRubyに欲しかっ た!」という驚きと共にScala が本物であることに気付いた。さらに読み続けていくと、その驚きの回数は減るどころか、最後にはため息へと変わっていった。 はぁ...そんなんまででき
Subject: [ruby-dev:46348] [ANN]ruby 2.0.0-preview1 released From: Yusuke Endoh <mame@ g e p Date: Fri, 2 Nov 2012 09:17:39 +0900Japanese later; 日本語はあとで Hello all -- We are pleased to announce the release ofRuby 2.0.0-preview1. Please check out the new features inRuby 2.0 before final release! * http://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-preview1.tar.bz2 SIZE: 10309440 bytes MD5: 47a0f662
実行環境:ruby 1.9.3Rails 3.1.3 ログイン認証を実現する際、認証が必要なコントローラー内に before_filter を書いてコントローラーを実行する前にログイン状態をチェックします。 たいてい、認証が必要なコントローラーが複数あります。それぞれに before_filter とそのメソッドを書くのはダサいので、before_filter を書いたコントローラークラスを作って継承させるのですが、認証させるコントローラーの数が多いと面倒になってきます。 すると「ええぃ、全てのコントローラーの親である ApplicationController に書いてしまえ!」と思うわけですが、逆に認証させたくないコントローラーが1つ2つあると、どうしてやろうか?と悩むことになります。 実現方法は色々あると思いますが、例としていくつかパターンを上げてみたいと思います。 ここでは例と
■rakeタスク 一覧 rake -T ■rakedb:abort_if_pending_migrations 実行されてないmigrationを教えてくれる。 ■rakedb:charset データベースの文字コードを教えてくれる。 ■rakedb:collation データベースの照合順序を教えてくれる。 ■rakedb:createdatabase.ymlの内容でデータベースを作る。 −「RAILS_ENV」オプション productionのが作りたければrakedb:createRAILS_ENV=production ■rakedb:create:alldatabase.ymlに定義してあるデータベースを全部作る。 ■rakedb:dropcreateの逆。 ■rakedb:drop:allcreate:allの逆。 ■rakedb:migrate:r
classCreateProducts < ActiveRecord::Migration[7.0] def changecreate_table :products do |t| t.string :name t.text :description t.timestamps end end end classCreateProducts < ActiveRecord::Migration[7.0] def upcreate_table :products do |t| t.string :name t.text :description t.timestamps end end def down drop_table :products end end カラムをバージョンアップ 説明 データベースのカラムをバージョンアップ upメソッドはロールバックできない処理をする際に主に使用

rbenv +ruby-build + rbenv-gemset に移行してみたrbenv +ruby-build + rbenv-gemset に移行してみた 2012年 3月6日 カテゴリー :Apple .Mac .Programming .Ruby 投稿者 : henry コメントを書く 何となくRVMから移行してみた。 rbenvruby-build rbenv-gemset インストール Homebrewを使って楽にインストールした。Homebrewをインストールしてない人はこちらを参考に。 $ brew install rbenvruby-build rbenv-gemset $ echo '# rbenv' >> $HOME/.profile $ echo 'eval "$(rbenv init -)"' >> $HOME/.profile $ source
$ rbenv install 1.9.3-p0 Downloading http://pyyaml.org/download/libyaml/yaml-0.1.4.tar.gz... Installingyaml-0.1.4... Installedyaml-0.1.4 to /Users/cjbottaro/.rbenv/versions/1.9.3-p0 Downloading http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p0.tar.gz... Installingruby-1.9.3-p0...BUILD FAILED Inspect or clean up the working tree at /var/folders/98/83mjk36d4ts49lpbjvbz48f80000gn/T/ruby-build.2

rbenv は RVM と違ってシェルにコマンドをロードしない → 代わりに $PATH を追加するだけで使えるrbenv は RVM と違ってシェルコマンドを上書きしない(RVM は cd などを RVM 独自のものに置き換える)rbenv は RVM と違って設定ファイルが無い → どのバージョンを使うかの指定のみrbenv は RVM と違ってRuby をインストールしない(rvm install 相当の機能が無い) ... 代わりに自分で好きにRuby をインストールできるし、rvm install 相当のruby-build を使うこともできるrbenv は RVM と違って gemset の概念がない ... 代わりにアプリケーション毎のBundler を使ったほうがいいよrbenv は RVM と違って他の gem を変更する必要がない(RVM はBundler や
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く