Ruby5をひたすら翻訳する日記

海外で働きたい欲が高まった海山はついに強硬手段に出た。自分だけのためにRuby5(http://ruby5.envylabs.com/)翻訳し続けます。おかしなところは、適宜指摘大歓迎です!><

Episode #273 - May 20th, 2012

http://ruby5.envylabs.com/episodes/277-episode-273-may-20th-2012
私が聴き始めてから、始めての女性スピーカー…!Karen Gillisonさん

Devise 2.1

http://blog.plataformatec.com.br/2012/05/say-hi-to-devise-2-1-0/
Deviseの2.1がリリースされた。
(DeviseはRails上で使う認証のgem)
2.1にアップグレードする方法のリンクも↑にある

  • encryptionというgemをインストール必要がある

wash_out

http://roundlake.github.com/wash_out/
SOAPのサービス提供をRailsプロジェクト内で行える

  • WashOut::SOAPモジュールをインクルードしているController

sheet_mapper

https://github.com/nesquena/sheet_mapper
Googleスプレッドシートのデータを取得できて、Rubyのオブジェクトに変換できる。




今後の方針として、

  • (最低限)週末に1記事以上は聞く・記事にする
  • gem系は気になるの以外は、飛ばしたり、用途をつかむ程度で時間をかけない

続けるって難しいですが、すごく大事だと思っているので、
聞く時間が取れなかったりして記事の間隔が少し空いても、ちゃんと続けたいです。

Episode #272 - May 15th, 2012 続き

Code Duplication

http://solnic.eu/2012/05/11/get-rid-of-that-code-smell-duplication.html
DRYについての話
−単純にコードが似ているとかそういう話ではなく
−コンセプトが重複しているコードの話
コンセプトが重複しているようなコードがあると、どんどん複雑化していく
ただのコピペしたコードみたいに悪い(???

From customer requirements to releasable gem

http://pivotallabs.com/users/ken/blog/articles/2107-from-customer-requirements-to-releasable-gem
(記事の内容(おそらく))
Pivotal Labsで働く励みは、オープンソースに貢献すること。けれど、契約の関係があったりして、
全てをオープンソースにすることはできない。
そんな時の解決方法紹介。
一度代入されたattributeデータを読み込み専用にできたりする。

この方法が↑のブログ記事で、STEP BY STEPで紹介されている

Build a book with Bookshop

http://ruby5.envylabs.com/episodes/276-episode-272-may-15th-2012
「Ruby5ではオープンソースで人々に貢献することを勧めてるけど、もっとコミュニティの発展を促すすごい方法があった!w」

Code School Free Weekend

http://www.codeschool.com/free-weekend
Code Schoolで無料キャンペーンがやってたらしい…!
もっと早く気づいていれば(´;ω;`)

  • Backbone.js, CoffeeScript, Rails Best Practices, CSS Cross Country, Rails Testing for Zombies, とかJourney Into Mobileがあるよ〜

↑のサイトからFree Weekendsのお知らせメール受け取り登録が出来る。登録した(´;ω;`)

Five Common Rails Mistakes

編集(2012-06-02): 全訳されたものがあります!こちらのサイト様の方をご参照ください!http://d.hatena.ne.jp/suginoy/20120515/p1



Ruby5で紹介されていた以下の記事を大体翻訳します。

2012-05-27: 途中になったまま、なかなか作業継続できないので公開してしまいます。

Five Common Rails Mistakes

http://www.mikeperham.com/2012/05/05/five-common-rails-mistakes/

私は今までRailsを使った仕事をしてきました。その中で、よくある5つの間違いを紹介します。

1. Migrations with no schema specifics

データモデルはアプリケーションの核になります。スキーマの制約なしでは、他のフィールドへの依存がなくなるまで、どんどん悪いデータになっていきます。


以下はcontactスキーマです。

create_table "contacts" do |t|
  t.integer  "user_id"
  t.string   "name"
  t.string   "phone"
  t.string   "email"
end

何が必要でしょうか?
ContactはUserにbelong_toであり、名前を持つでしょう。これを保証するために、データベースに制約を付ける必要があります。:null => falseを付与することで、バリデーションにバグがあって、失敗しても、保存はされず、modelに一貫性を持たせることができます。

create_table "contacts" do |t|
  t.integer  "user_id", :null => false
  t.string   "name", :null => false
  t.string   "phone"
  t.string   "email"
end

さらに、:limit => Nを使うとStringのサイズを指定できます。Stringのデフォルトは255ですが、電話の場合そんなにいらないでしょう。

2. Object-Oriented Programming

ほとんどのRailsプログラマオブジェクト指向Rubyのコードを書きません。
modelとcontrollerを設置することでMVCなコードを書きます。
/libにクラスメソッドと一緒にモジュールを作成します。
しかし、2-3年前に開発者たちは「RailsはただのRubyで、Rails関係なくオブジェクトを作成して構成できる」ということに気づいたのです。

3. Concatenating HTML in helpers

4. Giant queries loading everything into memory

5. Code review!

Episode #272 - May 15th, 2012

http://ruby5.envylabs.com/episodes/276-episode-272-may-15th-2012

meta_types

ライブラリ
postgress上のhstoreを使うための
Heroku上でも使える
Active Record hstore gemと比べると簡単に使える???

Multiple Ruby version support on Heroku

http://blog.heroku.com/archives/2012/5/9/multiple_ruby_version_support_on_heroku/

ruby '1.9.3'

と書くだけで、gemfileで走らせたいRubyのバージョンを選べる
パッチレベルでの選択はできない

  • セキュアなRubyのバージョンで提供されている
  • version 1.8.2, 1.8.3, 1.8.6は指定できる

Libskypekit & Skypekit

http://blog.railsware.com/2012/05/11/libskypekit-and-skypekit-c-and-ruby-interface-for-skype/
SkypeAPI

  • デスクトップのskypeとSkypekitランタイム用の2種類

Skypekitを使ったGemがリリースされた

    • Skypeを使ったアプリが作れる


続く


なかなか更新できず、6つぐらいの記事を飛ばしました…
社会人…なんだかんだで、まとまった時間が取りにくいです。
もう少し続けてみて、もっと更新が空くようなら、やり方を変えたいと思います。

Episode #267 - April 27th, 2012

RailsConf 2012

http://railsconf2012.com/
AustinでRailsConfが開催された
今年は初心者に優しい感じだった。

ナレーションの方々がいいと思ったセッション

  • DHH氏の基調講演
  • 全体的に良かった
    • それに、フロアにいる色々な人達と話せたのが良かった(??

Squeel 1.0 Released

http://erniemiller.org/2012/04/23/squeel-1-0-released/
ver 1.0がgemでリリースされた

  • バグ修正
  • イニシャライザの自動生成機能追加

Learn to Read the Source

https://tinyletter.com/codereading

  • プログラマにとって大事な能力の1つである"コードリーディング"
  • コードリーディングのコミュニティ
    • コードを読んで議論する

Concerned About Code Reuse?

http://schneems.com/post/21380060358/concerned-about-code-reuse
コードの再利用の話… 記事参照…

  • moduleをよく使うよね
  • ActiveSupport::Concernもそうしている

もっと詳しく知りたいなら「メタプログラミングRuby」とか読むといいよ(後2冊ぐらい言ってた気がするが聞き取れない…_ /ヽ(、`ノ、)_

mruby

https://github.com/mruby/mruby
「ンンンンン〜ルビィ」
Rubyは食べれないよ…」
"エムルビィ”
Matzの新しいRubyだよ〜

  • RVM上でコンパイルできる

MobiRubyはmRubyを使っている

RailsTutorial 2nd Ed

http://news.railstutorial.org/ruby-on-rails-tutorial-2nd-edition
RailsTutorialの2nd エディションがでた!
RailsTutorialとビデオシリーズが新しくなった!

  • Ruby1.9とRails3.2
  • Twitter Bootstrap
  • assets pipeline
  • Sassに対応
  • BDD
  • Cucumber

Episode #266 - April 24th, 2012 続き

Ruby on Rails on Roomba

COOKPAD!!!

  • ルンバをRubyのプログラムでwifi経由で操作して、会場内で動かした
    • STAR WARSのImperial Marchの曲にあわせて…

RailsConf talks on Confreaks

http://confreaks.com/

  • RailsConfのセッションが動画で見れる
    • 今回はO'Reilly主催ではなかったため、別の人が動画公開した

Progressive Enhancement

モバイルのWebの進化について
Androidは新しいIEだ」

  • デバイスについての、最近の情報、歴史、pushState、デバイスの傾向、タップvsクリックやjQuery Mobileの話

Share your appreciation

コミュニティーの話

  • 新しいものに対しての否定的な意見
  • 1%の人がよく発言する
  • それ以外の大多数が、その新しいものに対する評価をすることがいかに大事かということ??

(このあたりの理解が怪しい。コミュニティーのあり方や否定的な意見に関して、技術やそれについてのコミュニティーの話みたい)

Ruby Hero Awards

http://rubyheroes.com/
RubyRailsに貢献した人の表彰
動画あり
http://blog.envylabs.com/2012/05/2012-ruby-hero-awards/

Episode #266 - April 24th, 2012

RailsConf 2012のレポート

DHH calls for Progress

  • オープニングセッション

↓Ruby5に書いてある説明(話された内容の要約)

David Heinemeier Hansson opened RailsConf 2012 with a keynote about progress, conservatism, and being curious instead of being suspicious. He summarized some of the initially controversial features or technologies that were added to Rails in the past and how they have since become accepted as the essence of the project. DHH then went on to analyze the causes of the slowly creeping conservatism in parts of the community about attempts for progress that threaten the status quo. Blaming it on a natural human fallacy, loss aversion, he concluded by guaranteeing that Rails 4 would "change things, and break things".

DHH氏はRailsConf2012で"進化すること"や"保守的なこと"、"疑う代わりに好奇心を強く持つこと"について基調講演した。
その中で、議論の余地のある、内容や過去にRailsに追加された技術についてのまとめが話された。また、それらの技術がどのようにして受け入れられ、Railsプロジェクトの不可欠な要素になったかという事も話された。
DHH氏は、現状を脅かすような新しい技術を試すことに対して、一部のコミュニティーにおける話し合いが非常に遅い原因を分析した。
疑ったり反論するだけの姿勢を批判し(ここの訳が微妙)、Rails 4では"変化し、現状を打破する"ことを保証した。

Blaming it on a natural human fallacy, loss aversion,
の部分の意味が… うーん…

続きます