[Rails5] ActiveSupport::Durationの期間処理メソッド(1)演算、比較など
こんにちは、hachi8833です。 Active Support探訪シリーズ、今回は週刊Railsウォッチに何度か登場したActiveSupport::Durationにお邪魔します。Core Extensionsの外としては初めてですね。何回かに分けてお送りします。 今回のメソッド メソッド: ActiveSupport::Duration以下の演算、比較、期間関連のメソッド ディレクトリ配置:...
View ArticleBPSアプリチームのご紹介: Android/iOS開発・画像ビューア・超縦書など
こんにちは、hachi8833です。今回はBPSのアプリチームをご紹介いたします。 BPSの開発は、Ruby on Railsを中心とするWebチームと、Android/iOSなどスマホ向けの電子書籍アプリを中心としたアプリチームの2大体制になっています。普段のTechRachoではWebチーム寄りの記事が多いのですが、今回はBPSアプリチームをインタビュー形式でご紹介いたします。...
View Article週刊Railsウォッチ(20170203)AnyLogin gemで開発中に楽々再ログイン、イベント数ベース課金の監視サービスRollbarほか
こんにちは、hachi8833です。今週のGitLabサイトダウンからの回復劇は大変な盛り上がりでした。それでは今週のRailsウォッチをお送りいたします。 臨時ニュース: W3CとIDPFの統合が完了 ソース: W3C公式 電子書籍業界にとっては胸熱なニュースですね。IDPF(国際デジタル出版フォーラム)とW3Cの統合計画が報じられたのが昨年5月で、当時の計画通りに統合完了しました。...
View ArticleRubyスタイルガイドを読む: 文法(8)配列や論理値など
こんにちは、hachi8833です。長くなりましたが、「Rubyスタイルガイドを読む」シリーズの文法編もやっと今回で終わりです。次回からの「命名編」もどうぞご期待ください。 前回: Rubyスタイルガイドを読む: 文法(6)演算子など 文法(8) 配列や論理値など 参照: bbatsov/ruby-style-guide...
View Article[Rails5] ActiveSupport::Durationの期間処理メソッド(2)変換
こんにちは、hachi8833です。 Active Support探訪シリーズは前回「[Rails5] ActiveSupport::Durationの期間処理メソッド(1)演算、比較など」の続きです。 今回のメソッド ActiveSupport::Durationは日付や時刻による期間(時点と時点の間の大きさ)を表現するライブラリです。 メソッド:...
View Article[Ruby] Kernelのモジュール関数について
こんにちは、hachi8833です。 Rubyスタイルガイドを読む: 文法(8)で取り上げたKernelモジュールとモジュール関数が気になったのでもう少し追ってみました。 条件 Ruby: 2.4 Kernelモジュールについて 全てのクラスから参照できるメソッドを定義しているモジュール。 Object クラスはこのモジュールをインクルードしています。 Object...
View Articleruby-install: 任意のバージョンのRubyをスマートにビルド・インストールするツール
こんにちは、hachi8833です。明日の週刊Railsウォッチを準備していてちょっと便利なツールを見つけましたのでご紹介します。 ruby-install リポジトリ: https://github.com/postmodern/ruby-install...
View Article週刊Railsウォッチ(20170210)JRubyやRubiniusの配列への追加はスレッドセーフではないほか
こんにちは、hachi8833です。今週はJavaScriptのニュースが目につきました。 V8 JavaScript エンジン5.7がリリース ソース: V8公式ブログ v8project.blogspot.jpより パフォーマンス向上 ES2015の改良 RegExpが15%高速化 ライブラリの新機能 WebAssemblyが有効になった V8 APIをさらに追加...
View ArticleRubyスタイルガイドを読む: 命名
こんにちは、hachi8833です。スタイルガイドを読むシリーズ、今回は「命名編」です。 Rubyは日本で生まれた言語でありながら、英語を強く意識した作りになっています。Railsではそれがさらに推し進められ、ActiveSupport::Inflectorで英語の活用形変換がさかんに利用されているのは皆さまもご存知かと思います。...
View Article[Rails5] ActiveSupport::Durationの期間処理メソッド(3)5.1の改修とクラスメソッドの利用法
こんにちは、hachi8833です。ActiveSupport::Duration探訪の前回と前々回でDurationの主なメソッドをご紹介しましたが、今回はRailsの#27610で行われたDurationの変更点を追ってみました。 期間の概念に迫るのは手強そうなのでコードの改修を中心に据えましたが、Rubyのクラスメソッドのよい使い方を見つけることができました。 今回の内容 今回はRails...
View Article週刊Railsウォッチ(20170303)5.0.2正式リリース、メタプログラミングに懲りた話、bundler...
こんにちは、hachi8833です。ひな祭りにもいつものように週刊Railsウォッチをお送りいたします。今回は公式以外の情報を多めにしてみました。いつも同じ情報源だと、ボットがかき集めるニュースのように縮退してしまうので。 Rails 5.0.2正式リリース [ANN] Rails 5.0.2 has been released!...
View Article[Rails 5] コントローラの制約を受けずに任意のビューテンプレートをレンダリングする
こんにちは、hachi8833です。BigBinaryシリーズ、今回はRails 5で導入されたActionController::Rendererを使って、コントローラの制約を受けずに任意のビューテンプレートをレンダリングする方法をご紹介します。 元記事 Rendering views outside of controllers in Rails 5(米国BigBinary社のブログより)...
View ArticleRubyスタイルガイドを読む: クラスとモジュール(2)クラス設計・アクセサ・ダックタイピングなど
こんにちは、hachi8833です。Rubyスタイルガイドを読むシリーズ、今回の「クラスとモジュール編」の2回目に予定していた部分がかなりこってりしているので、3回に分けることにしました。よろしくお願いします。 今回取り上げるスタイルの多くは、設計で「不要なクラスを作らない」「不要な継承を作らない」ことに注目していますね。 前回: Rubyスタイルガイドを読む: クラスとモジュール(1)構造 次回:...
View Article[Rails5] Active Support Core ExtensionsのIntegerクラス: ordinalize、multiple_of?など
こんにちは、hachi8833です。ActiveSupport探訪シリーズ、Durationが当初の予想より長くて深く、しかもCore Extensionsの外に出てしまっていました。 そこで久しぶりに、Core Extensionsの中から小粒でかわいらしいIntegerクラスにお邪魔いたします。 条件 Railsバージョン: 5.0.1(5-0-stable) Rubyバージョン: 2.4.0...
View Article週刊Railsウォッチ(20170310)クールなDocker監視ツールCtop、RailsがGoogle Summer of Code...
こんにちは、hachi8833です。先週のAWSに続いておととい3/8に東日本のAzureもコケたようです(参考: Qiita記事)が、全然使ってないので様子がわかりません。ざっくり検索した限りでは一般の反応が非常に少ないのが不思議です。 同じ頃に発生した「マルタ名所「アズール・ウィンドウ」が崩壊 強風と高波で」は全然関係ないニュースですが、思わずタイトルに釣られそうになりました。...
View ArticleRubyスタイルガイドを読む: クラスとモジュール(3)クラスメソッド、スコープ、エイリアスなど
こんにちは、hachi8833です。Rubyスタイルガイドを読むシリーズ、今回は「クラスとモジュール編」その3をお送りします。 前回: Rubyスタイルガイドを読む: クラスとモジュール(2)クラス設計・アクセサ・ダックタイピングなど Rubyスタイルガイド: クラスとモジュール(3)メソッドのスコープやエイリアスなど 参照: bbatsov/ruby-style-guide...
View Article【社内勉強会】バージョン管理の重要性とGitの運用について
こんにちは、hachi8833です。 BPSで毎週木曜日に定例で行われている社内勉強会から、Webチームリーダーのmorimorihogeさんによる講義のスライドを元に記事化いたしました。 今回のスライド「Gitとバージョン管理」は、前半はバージョン管理の重要性と限界、後半は主にBPS...
View Article[Rails5] Active Support Core Extensionsのマルチバイト系メソッド: String#mb_charsとis_utf8?
こんにちは、hachi8833です。ActiveSupport探訪シリーズ、今回はかわいらしいIntegerクラスに続いてStringのマルチバイト系メソッドにお邪魔します。 短いコードは他のメソッドにガンガン委譲していることの多いActive Supportですが、今回はどうでしょうか。 条件 Railsバージョン: 5.0.2(5-0-stable) Rubyバージョン: 2.4.0...
View Article[Rails 5] rails dev:cacheコマンドでdevelopmentモードでのキャッシュを簡単にオン・オフできる
こんにちは、hachi8833です。BigBinaryシリーズ、今回はRails 5でdevelopmentモードのキャッシュを簡単にオンオフできる機能を紹介します。 元記事 Caching in development environment in Rails 5(米国BigBinary社のブログより) 確認に使った環境 Railsバージョン: 5.0.2(5.0-stable)...
View Article週刊Railsウォッチ(20170317)Railsパフォーマンスチューニング本、DBレコード存在チェックの最速メソッド、RubyのUnicode正規化ほか
こんにちは、hachi8833です。 「HackerNewsのランキングアルゴリズムをリバース・エンジニアリングした記事がHackerNewsから削除されたという記事」が昨日までHackerNewsでトップでした。ややこしいですね。 IPAが自ら脆弱性を報告した無料ゲーム「安全なウェブサイト運営入門」は書籍の名前かと思ってしまいました。 それでは今週もいってみましょう。 書籍「The...
View Article