Ruby: 「マジック」と呼ぶのをやめよう(翻訳)

概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: Please stop calling it “magic” 原文公開日: 2017/10/22 著者: Victor Shepelev — ウクライナ在住のRubyプログラマーで、SciRubyのメンテナーとメンターでもあります。 文中で言及されている記事「7 Gems Which Will Make Your Rails Code Look Awesome」の日本語版は以下をどうぞ。同記事からの引用もこの日本語版を使いました。 Railsコードを改善する7つの素敵なGem(翻訳) Ruby: 「マジック」と呼ぶのをやめよう(翻訳) 最近「7 Gems Which Will Make Your Rails Code Look Awesome」というよく書けた良記事を読んでいて、decent_exposure gemのところで次の文言がふと目に留まりました。 マジックがあまり好きでない方はこのライブラリを使わなくてもよいでしょう (強調は原著者) この「mで始まる単語」が指していたのはメタプログラミングを使うライブラリです。シンプルなCRUDで十分な場合にexposeメソッドをRailsコントローラクラスに追加して、重要度の低い#index/#show/#newを生成します。 訳注: 「mで始まる単語(m-word)」という英語の言い回しは、ある品の良くない単語を暗に指すことがあります(参考)。 私はこの記事の著者に苦言を呈するつもりはまったくありませんのでご了承ください。単にいくつかの重要な点に言及するきっかけとなったに過ぎません。最近RubyやRailsのコミュニティでは「マジック」と「メタプログラミング」を一種の邪悪な同義語とみなして使うことがかなり広まっているようです。そこで私はあくまで品位を保ちつつ、こうきっぱり申し上げたいのです。 「マジック」と呼ぶのをやめよう 理由についてはこの先をお読みください。 免責事項: 説明に使っているコード例は手作りであり、いかなる特定の既存ライブラリにも基づいていません。このブログで以前起きたような「ワイらの%(ここにライブラリ名が入る)%をコケにするのか」などという反応で論点が見失われないようにするためです。 そもそも、 マジックとは何か? Wikipediaを引用します。 マジック: 儀式、象徴、振舞い、身振り、言語を用いて、超自然的な力を振るう目的で使われる Wikipedia: … Continue reading Ruby: 「マジック」と呼ぶのをやめよう(翻訳)