昨日「Rails5.1時代のアプリケーション開発」というテーマで発表しました。 MedBeer -Rails 5.1での開発について- - connpass スライドはこちら。内容的には、web開発難しいので頑張って勉強していきましょうというメッセージになっています。若干エモ寄り。…
最近自分の作っているサービスにActionCableを導入しました。そこでフィーチャスペックを書いていくつかハマったので内容を共有します。 使っているのはcapybara & poltergeistです。 Capybara.serverをpumaにする Capybaraのデフォルトのサーバは、ざっと見…
先日のRails Developer Meetupで発表したrspec-style-guideですが、ありがたいことにPull Requestをいただき英語版ができました。 rspec-style-guide/README_EN.md at master · willnet/rspec-style-guide Pull Requestしてくれた@gazayasさんありがとうござ…
毎月第三火曜日に開催しているginza.rb、開催を始めてからかれこれ4年になります。このままいくと8月にはなんと第50回のミートアップをむかえることに。というわけで拡大版を開催することにしました。 ぎんざRuby会議です。 公式サイトにも気合が入っていま…
昨日のRails Developers Meetupで綺麗なテストコードの書き方について発表してきました。 Rails Developers Meetup #1(東京会場) - connpass 資料はこちら 余談 もともと数年前くらいから、テストコードの書き方についてまとめたいなーと思っていたのです…
お手伝いしているメドピアさんのブログに、Railsのコード可読性を保つための知見の一つであるform objectについて寄稿させていただきました。 form objectを使ってみよう - メドピア開発者ブログ 最近は技術顧問として複数社のエンジニアに対して、主にRails…
いわゆる法人成りです。 かっこいい会社の名前が全然思いつかず*1、結局ハンドルネームを採用しました。このブログのタイトル(おもしろwebサービス開発日記)もだいぶアレな感じで、自分の命名センスの無さに震えますね>< 単に名義が変わっただけで、特に何…
読みました。自分はフリーランスなので直接誰かを採用することはないですが、お手伝いしている会社の方に「どうやったらいいwebエンジニア採用できますかねー?」と聞かれることがよくあるので、そのヒントになるかなと思い。 ソフトウェア開発者採用ガイドp…
昨日開催された、Increments ++ Tech TalkにてRails 5.xというタイトルの話をしました。 内容はWEB+DB PRESSの連載ではページ数の関係で載せられなかったRails 5.0のトピックと、Rails 5.1で入る(入りそう)な機能の話です。分量が多くなってしまい、いろいろ…
今月の24日発売のVol 93から、WEB+DB PRESS で Ruby の連載をすることになりました。よろしくおねがいします。 初回の題材は、みんな大好き Ruby on Rails の最新バージョンである Rails 5 です。もうじき正式リリースとなる Rails 5 にどんな機能が追加され…
youtube に DHH がしゃべっている動画があったので観ました。 The Complete Guide to Rails Performance という、Railsのパフォーマンスを改良するノウハウが書かれた本のコンテンツ*1の一つらしく、DHH に Rails のパフォーマンスについてインタビューをし…
3/15は ginza.rb の33回目のミートアップでした。 Ginza.rb 第33回 もうすぐやってくる!Rails 5を見ておこう - Ginza.rb | Doorkeeper 前回のミートアップ時に、きっと Rails 5.0 がリリースされているだろうと思い Rails 5.0 をテーマとして設定しましたが…
iOS アプリ開発をしている時に、web上のサーバではなく、ローカルマシンのサーバと通信させたくなる状況はよくあるかと思います。僕はまず次のようなコードを書いて、さらにコンパイラ用のフラグに -D DEBUG と設定することで対応しました。 #if DEBUG let h…
FiNC さんの社内マイクロサービス勉強会と、表参道.rb にて、そろそろリリースされそうな Rails 5 におけるメジャーフィーチャの一つ Rails::API について話しました。 雑感 スライド読むと分かるように、Rails::API は API サーバを作る時の銀の弾丸でもな…
DroidKaigi 2016 に行ってきました。 おそらくブログには書いていなかったのですが、1年ほど前に RubyMotion で Android アプリを開発したことがあります*1。それ以来、あまり Android 開発トレンドのキャッチアップができていなかったので、ここらで遅れを…
昨日は ginza.rb 31回目のミートアップでした。 Ginza.rb 第31回 ユーザの権限管理どうしてます? - Ginza.rb | Doorkeeper @kyuden_ さんに、現状の二大認可 gem である cancancan や pundit、それらの問題点を解決するために作った banken について発表し…
皆さん、rails-assets は使っていますか? rails-assets は、Gemfile で js や css のライブラリを指定して、バージョン管理や依存の解決などをしてくれるとても便利なサービスです。 しかし最近ではその役目を終えたとして、最大で今年末でサポートを終了す…
今回の ginza.rb ミートアップで、Lotus と呼ばれる、Ruby製フレームワークについて学びました。 ginzarb.doorkeeper.jp @y_yagi さんが概要を資料にまとめてくれたので、それに沿って特徴や機能について理解を深めつつ、気になることについてワイワイ話しま…
ここ半年ほど、Clinical Platform さんのお手伝いをしています。最近エンジニア募集を開始したので、どんな感じでお仕事を進めているかを簡単に紹介しようと思います。 作っているもの クリニック向けのクラウド電子カルテです。 Ruby や Rails のバージョン…
Rails 4.2 では、DB の string 型が255文字制限ではなくなりました。もともとあまり意味がなかったらしいです(詳しい人補足求む)。対象は postgresql と sqlite で、mysql は対象外です。 PostgreSQL, remove varchar limit. by senny · Pull Request #14579…
このエントリで書いた内容は、ほぼ Growing Rails Applications in Practice の内容が元になっています。英語ですが、ここで挙げた内容以外にもコードを綺麗に保つテクニックが書かれており、かつページ数も少なく読みやすいです。コードを綺麗に保つのが好…
iphone6 plus で写真を撮るときに、フォーカスが合わずにぼやけた写真しか撮れなくなってしまいました。 ググるとどうやらハードウェアの不具合の模様。 iPhone 6 Plusのカメラのピントが合わない不具合が発生 - 非天マザー by B-CHAN ジーニアスバーに持っ…
nested attributes なレコードを削除したい場合、accepts_nested_attributes_for に allow_destroy: true オプションを渡すと削除可能になります。削除するには、対象となる対象に { _destroy: 1 } のようなパラメータを渡します。 これを踏まえて素直にフォ…
Rails 4.2 から導入された ActiveJob は、sidekiq や resque などのバックグラウンドジョブ系 gem を、同じ利用方法で扱えるようにしてくれます。 これは便利だなーと思い、sidekiq を ActiveJob を通じて使ってみたのですが、しばらく使った後に「まだ本格…
6月28日(日)に色彩検定2級の試験を受けてきました。 色彩検定協会/カラーコーディネーター webサービスを作るときに、どんな色を使ったらキマるのか全然わからず適当に勘で決めていたのですが、色彩検定の勉強をする中である程度のセオリーをつかめた気がし…
先日ブログをはてなに戻したのですが、はてなブログはいわゆる naked ドメインに対応していないため、ドメインを willnet.in から blog.willnet.in に変更しました。 結果として willnet.in が空いてしまったので、プロフィールっぽい感じのページとして利用…
3年ほど Lokka + heroku でブログを書いていましたが、この度はてなに戻ることにしました。 もともと Lokka を使おうとしたのは、 markdown が使いたかった 自分でカスタマイズしたかった という理由からでした。 しかし 1 については今のはてなブログでは普…
どうしても AR の query methods だけでは要求を満たせない場合の最後の手段として、find_by_sql メソッドがあります。皆さんよく使ってると思うのですが、戻り値のレコードからさらに association をロードしようとすると N+1 になるケースがあります。かと…
Rails では、DB の Time 型 を扱うことができます。これは日付を必要とせず、時間だけを格納したいときに使います。 定義方法は、他の型と同じく add_column メソッドなどで time を指定するだけです。 add_column :users, :lunch_time, :time ただ、これを…
ひょんなことから島根の自治体の方と知り合いになり、島根県が企業やコミュニティの合宿を誘致しているという話を聞きました。 合宿またやりたいなあ。島根まだ行ったことないし行ってみたいなあ。という気持ちからゆるデブのメンバーに相談したところ、反応…