銀座Rails#23を開催しました

去る2020/07/04(土)、銀座Rails#23を開催しました。

ginza-rails.connpass.com

togetterのまとめ: togetter.com

スポンサーセッション リンクアンドモチベーションさま

リンクアンドモチベーションさまからは、今回も磯崎さんがご登壇。 初の土曜日開催ということで、主に会社に関する情報についてのお話でした。

BtoBだけでなくBtoCにもサービスを展開しており、それらの開発者を募集しているとのこと。 上場企業である安定した労働環境と、チャレンジできる開発組織を併せ持っているので、興味がある方は是非応募して欲しい、とのことでした。

採用ページはこちらから。 www.wantedly.com

@morimorihogeさん「出張!Railsウォッチ in 銀座Rails

speakerdeck.com

毎度おなじみ@morimorihoge森さん。今回はActiveRecordにおけるSELECTのベンチマークを取るお話でした。

ActiveRecordはデフォルトでSELECT * なSQLを発行することが知られていますが、これをカラムを絞り込むことで、スピードやメモリ使用量にどのような影響があるのか。 selectの有無、カラム数の違い、メンバ参照の有無などのパラメータを変えた上で、実際にベンチマークを取った結果を共有されていました。

@yahondaさん『「再現ケース」の必要性とその難しさ』

speakerdeck.com

今回の本多さんの発表は『「再現ケース」の必要性とその難しさ』と題し、普段活動されているRubyRailsの開発時の再現ケースの報告に関するお話でした。

例えば開発中のRubyの変更によって、開発中のRailsのCIが落ちた場合、再現ケースを作った後、Rails側に報告するのか、それともRuby側に報告するのか。 それぞれのメリット・デメリットについて考察の後、実際に報告した事例について共有頂きました。

ゲストスピーカー k0kubunさん「JIT on Rails

今回はゲストスピーカーにRubyコミッターのk0kubunさんをお迎えし、「JIT on Rails」と題して、皆さんが気にされているJITによるRailsの高速化の現状についてお話頂きました。

まずは最近作られたOSSrspec-openapiの紹介から。個人的にはちょうどOpenAPI2のDocumentをOpenAPI3形式に書き換える課題を持っており、気になるお話でした。

github.com

そして本題のJITについて、まずは現在の性能についてベンチマークを共有。Rubyのversionが2.6から3.0に向かって上がっていくにつれ、「今日ふと思いついて早くした」箇所含めVMの性能にJITが近づいていくことが確認でき、それぞれの性能改善では何を実施したのかについてお話頂きました。

次にRailsにおけるボトルネックについて、OptcarrotとSinatra,Railsとでベンチマークに差が出るのはどこか、「CPUの気持ちになって」どのレイヤーがボトルネックになっているのか共有。

さらにCからRubyに書き換えると早くなる事例についてのお話や、今後のJITアーキテクチャについて、実施すること、したいことについてお話頂き、「JITによる最適化が困難なところの足回りを整えている段階」「Railsが速くできるまでの道のりは長いが、3.0でも着実に進捗している」とまとめられていました。

speakerdeck.com

スポンサーセッション forkwellさま

今回はトリで重本さんがご登壇。 いつものありがたいキャンペーン情報についての共有や、スカウト機能について、その意義とエンジニアにとっての不都合の部分を省いた素敵な仕様についてご共有頂きました。

https://jobs.forkwell.com/jobs.forkwell.com

また開発者の募集もされているとの事です。

https://jobs.forkwell.com/grooves/jobs/5467jobs.forkwell.com

次回、銀座Rails#24について

次回銀座Rails#24は2020/08/28(金)、オンラインでの開催となります。

ginza-rails.connpass.com

ゲストスピーカーには @sue445 さんをお招きし、「Ruby on CI」と題して、Ruby製のアプリやgemのCIについてのベストプラクティスをお話頂きます。 参加者、登壇者募集中です。

銀座Rails#22を開催しました

去る2020/06/12(金)、銀座Rails#22を開催しました。

ginza-rails.connpass.com

togetterのまとめはこちらから。 togetter.com

スポンサーセッション リンクアンドモチベーションさま

リンクアンドモチベーションさまからは、今回も磯崎さんがご登壇。

今回のお話は、主にリモートでの業務の工夫などについて。 ひげ率が高まったり、コミュニケーションを深めるためにプレゼント企画を実施したり、社員発案でみんなでストレッチをする時間を取ったりなど、様々な工夫をされているとのことです。

引き続き採用を行っているとのことで、募集ページや組織の紹介についてお話されていました。

採用ページはこちらから。 www.wantedly.com

@morimorihogeさん「出張!Railsウォッチ in 銀座Rails

speakerdeck.com

毎度おなじみ@morimorihoge(森)さん。いつもありがとうございます。

今回はRubyCLIプログラムを書くためのお話でした。

まずはRubyCLIプログラムを書くための基本を説明。Option parserの具体的な用途を例示し、その便利さに参加者の方からも「便利だ〜」との声が。

他にもOpen3やShellwords、ERB、DATA(FileObject)など、CLIプログラムを作る時に便利な組み込みライブラリが紹介されました。

@masa_iwasakiさん「不安定テストを生み出すCapybaraを調教する」

docs.google.com

二度目のご登壇となる@masa_iwasakiさん。今回は、ほんとは通るはずなのに、redになってしまう「不安定テスト」への対策のお話です。

まず「不安定テスト」について、落ちる可能性のあるテストの書き方が原因の一つであると説明。

その対策として、findの挙動を知り正しく要素をfindする、セレクタ力を高める、設定によって便利にしていく、などのTipsを紹介の上、「Capybaraを調教すると述べたが、調教が必要なのは(使用する)我々の方であった」ときれいにまとめられていました。

スポンサーセッション forkwellさま

いつもお世話になっているforkwellさまから、これまたいつもお世話になっている重本さんがご登壇。

エンジニアの成長サイクルに有用な勉強会、しかし全部行ってたら大変。それに変わるコミュニケーションがスカウトだが、普通のスカウトはスパムのようだ... その不都合を解消したスカウト、一括送信なし、周辺ツールの判別性も良好!と、forkwellのスカウト機能についてご説明されていました。

https://jobs.forkwell.com/jobs.forkwell.com

また開発者の募集もされているとの事です。

https://jobs.forkwell.com/grooves/jobs/5467jobs.forkwell.com

ゲストスピーカー 神速さん「Rails on Docker」

今回はゲストスピーカーとして神速さんをお招きし、RailsとDockerを組み合わせる際の様々な工夫についてお話頂きました。

speakerdeck.com

まずはDockerとはなにかについて、歴史的経緯を含めてその役割についておさらいをし、次にRailsとDockerを組み合わせて利用する場合の具体例について例示。

高速化、軽量化のための工夫や、開発でCircleCIのイメージを使う、stgでエラーが出た場合に本番用イメージをlocalで使う体制を整えるなど、実践的なノウハウを共有いただきました。

次回、銀座Rails#23について

次回銀座Rails#22は2020/07/04(土)、オンラインでの開催となります。

ginza-rails.connpass.com

ゲストスピーカーには @k0kubun さんをお招きし、「Ruby 3.0 JIT on Rails」をお話頂きます。 参加者、登壇者募集中です。

銀座Rails#21を開催しました

去る2020/05/15(金)、銀座Rails#21を開催しました。

ginza-rails.connpass.com

togetterのまとめ: togetter.com

@morimorihogeさん「出張!Railsウォッチ in 銀座Rails

speakerdeck.com

今回のトップバッターは毎月恒例、森(@morimorihoge)さんによる出張!Railsウォッチ。 今回は「標準仕様を読むためのABNF」特集でした。

ABNFとは、標準仕様の中で使用されているメタ言語で、RFCW3Cなどで利用されています。

今回の発表ではRFC3339を参照しながら、実際にtimestampをどうABNFで表現するのかについての解説をして頂きました。

@ginkouno「テストがないRailsプロジェクトにテストを足す話」

speakerdeck.com

今回は残念ながら公募枠に応募が無かったため、コンテンツを埋めるべく、私が登壇させて頂きました。応募がありませんと、私の業務日記になってしまいますので...是非皆様ご応募下さい...🙏

内容は前回のアンケートでのご要望に沿い、「テストがないRailsプロジェクトにテストを足す話」でした。 テストを足す目的を明確にし、カバレッジ等の準備をし、不要なコードを消してから、コツコツ足していきましょう、というお話をさせて頂きました。

スポンサーセッション forkwellさま

継続的にご支援いただいたforkwellさま。いつもありがとうございます。 安定の「雑な一括送信などがない」スカウトサービスがついたforkwell jobs。皆様も登録してみてはいかがでしょうか。

限定登録プレゼントキャンペーンだけでなく、フルリモートでのRailsエンジニアの人材も募集されているとの事です。 jobs.forkwell.com

ゲストスピーカー @toshimaru_e さん「Fat Model の倒し方」

今回はゲストスピーカーとして、以前の懇親会にてリクエストがあった @toshimaru_e さんをお招きしました。

speakerdeck.com

タイトルは「Fat Model の倒し方」。 Rails習熟度がある程度高まっているメンバーが開発するプロジェクトにおいて、FatになりがちなのがModel。その解消方法について、Rails Way、Sub-Rails Way、Non-Rails Wayの3つのアプローチに基づいてお話頂きました。

Rails WayはRailsに備わっている機能を使うが手段が少なく、Sub-Rails wayはgemやsassに切り出してFat Modelへの対処を図るが見極めが必要、そしてNonRailsWayには正解は無いが4つの例を例示し、うまく導入できれば強力...など、アプローチ毎の具体例やその性質についてお話されました。

次回、銀座Rails#22について

次回銀座Rails#22は2020/06/12(金)、オンラインでの開催となります。

ginza-rails.connpass.com

ゲストスピーカーは 神速 さん。

Rails on Docker」と題し、Dockerを使ってどのような課題を解決するか、実際にDockerコンテナを作るときのコツなどについてお話頂きます。

現在登壇者一名および参加者を募集中です。

銀座Rails#20を開催しました

去る2020/04/17(金)、銀座Rails#20を開催しました。

ginza-rails.connpass.com

コロナウイルスの影響を受け、今回の銀座Railsもオンラインでの開催となりました。

前回と同じく発表者との相互コミュニケーションツール「CommentScreen」を用いたコメント投稿を実施したため、 togetterのまとめも少なくなっております。ご了承下さい。 togetter.com

スポンサーセッション リンクアンドモチベーションさま

リンクアンドモチベーションさまからは、いつもの通り磯崎さんがご登壇。 リモート勤務になり、「ゼロからわかる Ruby 超入門」を読みながら勉強をはじめているとのこと。今後の発表が期待されます。

セッション内ではBtoB / BtoCで展開している4つのプロダクトを紹介、その中で使われている技術等についてお話されました。 エンジニア募集中との事です。 www.wantedly.com

@morimorihogeさん「出張!Railsウォッチ in 銀座Rails

speakerdeck.com

毎度おなじみ 森(@morimorihoge)さんによる、出張!Railsウォッチ。 今回は「Excelと仲良くするという選択」という、聞いただけでうっと声を出してしまう人も居そうなタイトルでしたが、非エンジニアである運用担当者がExcelでデータを取り扱えるようにするために、エンジニアが出来ることは何か、という現実的なご提案でした。

具体的な例として、テキストでのExcelへのコピー / ペーストなど、実装の手間を抑えつつ、手持ちの手札でなるべく良い成果すためのノウハウをお話頂きました。

@yahondaさん「How to git bisect ruby/ruby repository」

いつもOSS活動への関わりを、わかりやすくお話して下さる 本多(@yahonda)さん。 今回は「How to git bisect ruby/ruby repository」と題し、実際のrubyリポジトリに対し、git bisectの利用して、不具合が発生した原因となるcommitを探すお話でした。

speakerdeck.com

まずはRailsのCIとRubyのversionの関係を解説、実際にRuby2.8.0でのみredになっているRails CI(actionpackのmaster)を例示し、git bisectコマンドを使って対象となるRubyのコミットを見つける手順を、コマンドの実行例とともにお話頂きました。

スポンサーセッション forkwellさま

毎度おなじみ、いつもお世話になっておりますforkwellさま。 今回も「あなたの価値が世界に届くポートフォリオサービス」forkwell、「一括送信のない、市場価値がわかるスカウト」forkwell jobsのサービスの良さをお話頂きました。 そしていつもの限定登録プレゼントキャンペーンに加え、更に今回はforkwellを開発するgrooves社も人材を募集されているとの事でした。 jobs.forkwell.com

ゲストスピーカー すがわらまさのり(@sugamasao) さん「Ruby on Rails6エンジニア養成読本から学ぶRails6.0新機能 + Rails6のRuby2.7対応」

今回はゲストスピーカーとして、「Ruby on Rails6エンジニア養成読本」「パーフェクトRuby on Rails」などの著者である、すがわらまさのりさんをお迎えし、主にRails6のお話をして頂きました。

speakerdeck.com

まずはRailsの機能のなかでも「omakase」な箇所であるWebpackerについて、その使うべき状況はいつなのか考察。次に複数DB機能について、基本的な機能のおさらいと制限事項について考察。

今回はWebpacker、複数DB、並列テストについて、その使い所や制限について解説。またRuby2.7 & Rails6.0の組み合わせについて、現時点ではWarningが出るものの、以前ご登壇頂いた kamipoさんをはじめとする開発者の方々のおかげで次のversionでは大幅に改善しているとの見込みであることを共有されました。

次回、銀座Rails#21について

次回銀座Rails#21は2020/05/15(金)、今回同様オンラインでの開催となります。

ginza-rails.connpass.com

ゲストスピーカーには @toshimaru_e さんをお招きし、「Fat Model の倒し方」についてお話頂きます。 現在参加者募集中です。

銀座Rails#19を開催しました

去る2020/03/19(木)、銀座Rails#19を開催しました。

ginza-rails.connpass.com

新型コロナウイルス感染症の影響で、初のオンライン開催となりました。

当日の様子につきまして、togetterのまとめを御覧ください。 (ただ今回はコメントをCommentScreenにて募ったため、少なめのtweetとなっております...) togetter.com

スポンサーセッション リンクアンドモチベーション

いつも場所をご提供下さっていたリンクアンドモチベーション様ですが、今回はインターネット回線の状況やご家庭の都合でご自宅からのZoomでの配信が難しい登壇者の方への場所の提供をして頂きました。

スポンサーセッションでは、リンクアンドモチベーション社で提供している様々なサービスの紹介をして頂きました。

「出張Railsウォッチ in 銀座Rails」@morimorihoge さん

恒例の出張Railsウォッチ。今回は開発チームの冗長化に関するお話でした。

speakerdeck.com

トラックナンバー(バス係数)」、すなわち「トラック(バス)に轢かれた人がいた場合にプロジェクトが継続できなくなる人数」を意識してみると、その人数が少ない(特に1だったりする場合)、特定のエンジニアに何かと情報が偏りがちな状況というのは、サービスやビジネスが立ち行かなくなる恐れが大きいと考えられます。

そこでRailsプロジェクトにおいて、開発系、運用系などそれぞれのケースで、どのような点が危険で、どのような対策を取れるか、などの実例を挙げて頂きました。

小林ノエルさん「railsとserverless技術で鉄道アプリを作った話〜なぜ僕はrubyでバイナリをパースしたのか〜」

前回は金融業界での開発の話をして頂いた小林ノエルさん。 今回は鉄道プロジェクトのお話です。

speakerdeck.com

とにかく業界特有の慣習により、「ヤバさしか無い」「サンプルもくれない」つらい思いをした小林さんですが、そのプロジェクトをRailsを使い、様々な創意工夫やツールを駆使しRubyでバイナリをパースするなどして完成までこぎ着けた経緯をお話頂きました。

ほんとうにつらそうでした。

スポンサーセッション forkwell さま

いつもご支援頂いているforkwellさま。銀座Railsのオンライン開催につきまして、資金からノウハウ提供までサポート頂きました。

スポンサーセッションでは、forkwellの「嫌なスカウト」ではないエンジニアフレンドリーなスカウトの仕組みを備えた「forkwell scout」のしくみのお話でした。

スポンサーセッション ScoutAPM さま

いつも銀座の地ビールをご提供頂いていたScoutAPMさま。今回オンライン開催となったため、残念ながら地ビールはお預けとなってしまったのが残念ですが、また現地開催となった場合にはサポートいただけるとのことでした!

スポンサーセッションでは、改めてAPMの必要性について解説。

N+1、SlowQuery、TransactionTraceでの分析、github連携など、機能の説明も交え、試したい方にはトライアルでの無料試行が可能とのことです。

ゲストスピーカー f_subalさん「The Majestic MPA」非SPAをまともに開発するために何をするべきか

今回はpixiv社にてフロントエンドエンジニアをされている @f_subalさんをお招きし、Railsとフロントエンドに関するお話をお願いしました。

実際に携わられているpixivFactoryという「フロントエンドが分厚い」「非SPA(=MPA)」のサービスを例として、jQueryやReactなどが混在する状況を、「Universalをあげて規約で殴るという手法」を用いて、それぞれが共存できる土台を作って運用する実例をお話頂きました。

speakerdeck.com

前提となる設計思想から個別のノウハウまで、過去の資料の例示なども含めて知見の詰まった内容で、Railsにおけるフロントエンド開発に悩む参加者の方も「頷きすぎて首がもげる」とコメントされたほど盛り上がりました。

銀座Rails#20について

この記事の次の回にあたる銀座Rails#20、2020/04/17(金)にオンラインにて開催しました。 後ほどレポートを書く予定となっておりますので、しばらくお待ち下さい。

また銀座Rails#21を、2020/05/15(金)に開催予定です。 ginza-rails.connpass.com 現在ご登壇者を募集中ですが、オンライン開催ですので、全国どこからでもご登壇頂けます。時間も5分〜15分まで選択でき、内容のご相談にも乗りますので、お気軽にお申し込み下さい。

銀座Rails#17を開催しました

去る2020/01/16(木)、銀座Rails#17を開催しました。

ginza-rails.connpass.com

毎度おなじみGINZA SIXにあるリンクアンドモチベーションさまのスペースをお借りしました。 当日の様子につきましては、togetterのまとめを御覧ください。 togetter.com

野呂浩良さん「ルワンダでのRubyプログラマ育成報告」

プログラミングスクールである「DIVE INTO CODE」を運営されている野呂さん。 ルワンダにてRubyプログラマの育成をされているということで、今回はそのお話を披露されました。

「全ての人がテクノロジーを武器に」をコンセプトとして活動しているDIVE INTO CODE。そのターゲットとして、教育の最高難度と言われ、さらにRubyKaigi2019で来場者が誰もいなかった「アフリカ」にて機会提供をしようと決意。1ヶ月自分で住み込み、英語でRubyのレクチャーをしたとの事。 クラウドファウンディングで運営し、18名が卒業、その中から3プロジェクトの実務に携わる人が生まれたそうです。 日本発のカリキュラムが世界で通用する教育する事例として、その詳細について語って頂きました。

speakerdeck.com

okuramasafumiさん「ブロック - 入門から応用まで」

いつもコードに関する具体的なトピックを持ち込んで下さる大倉さん。今回はブロックについてのお話でした。 ブロックとはなにか、どう便利なのか、そもそもどう使うのかについて、デモで実際にコードを披露しながら説明。更に利用例として、RakeやFactoryBot、RSpecに代表されるDSLなどを挙げ、実際にRSpec風のDSLについてのコードを見せながら、説明されていました。

@morimorihogeさん「出張RailsWatch」

speakerdeck.com

毎度おなじみ出張RailsWatch。今回も @morimorihogeさんからのお話です。 ニュースとしてはやはり、Ruby2.7.0リリースについてのお話。ただ、今の時点で実践投入をすると、production logがWARNINGで溢れて辛いとの事。 また今日のメインテーマとして、「リソース管理スコープ」の話をされました。これは造語だそうですが、サーバサイドアプリケーション開発者から見たときに、保存参照するデータがどこに保持されていて、それらがどういう特性をもつのか、それについて整理して開発しよう、というお話でした。

スポンサーセッション リンクアンドモチベーションさま

いつも素晴らしい会場、ドリンクの提供など、様々なご支援を下さるリンクアンドモチベーション様。 久しぶりに磯崎さんが登壇され、エンジニアとしてRailsを学ぶ企画は途中で断念との事。ただどれだけ難しいかがよくわかったとの事で、エンジニアへの理解が深まったとお話されていました。

また様々なサービスを作る上で、まだまだ全方面でエンジニアが足りていないとの事。 そんなリンクアンドモチベーション様の求人情報はこちらから。

www.wantedly.com

スポンサーセッション forkwell さま

今回はいつもと異なり、forkwell様からはエンジニアリングマネージャである吉永さんがご登壇。なんとこの日がお誕生日であるとのこと。 「中の人が語るForkwell」と題し、エンジニアリングマネージャとしての仕事とForkwellの役割が重なっており、意義を感じながら開発をしているとのこと。 現在のエンジニア組織について紹介され、現在人材募集中との事でした。

www.wantedly.com

スポンサーセッション ScoutAPM さま 「Rails Performance Tips #1」

前回に引き続き、銀座地ビールスポンサーをお引き受け頂いたScoutAPM様。 今回は「Rails Performance Tips #1」と称し、RailsのN+1問題などをどのように解決するのか、ScoutAPMを使った事例を含めてご紹介頂きました。 またScountAPMのキャラクターの名前「Doggo」が紹介され、かわいいとの評判を多く得ていました。

ScoutAPM 無料トライアルはこちらから。

try.scoutapm.com

ゲストスピーカー SHIBATA Hiroshi(@hsbt)さん「OSS 開発の勘所: RubyGems と Bundler の事例 」

今回のゲストスピーカーの柴田さん。GMOペパボ社にてVPoE、執行役員、技術部長をしており、仕事ではコードを書いていないとの事。 しかしOSSでは、rubyrubygems、bundlerに多くのcommitを積まれています。 まずはRubyGem、Bundlerの現況についてご紹介。それぞれをどのような方向で開発しているのか、開発中の苦労、Ruby3に向けたロードマップなどを紹介されました。

そして昨年約3200ものcommitをした柴田さんが普段どうやってOSS開発に毎日携わっているのか、そしてなぜOSSをやっているのか。また続けるためのマインドセットとノウハウについて、貴重なお話をして頂きました。

www.slideshare.net

次回、銀座Rails#18について

次回銀座Rails#18は2020/02/20(木)、 今回と同じくGINZA SIXのリンクアンドモチベーション様のスペースをお借りしての開催です。

ginza-rails.connpass.com

ゲストスピーカーにはすがわらまさのり (@sugamasao)さんをお招きし、「Ruby on Rails 6 エンジニア養成読本から学ぶRails 6の新機能 」についてお話を頂きます。 只今登壇者、参加者ともに募集中です。

銀座Rails#16を開催しました

去る2019/12/13(金)、銀座Rails#16を開催しました。

ginza-rails.connpass.com

今回もGINZA SIXにて、リンクアンドモチベーションさまのスペースをお借りしました。 当日の様子につきましては、@narita1980 さんが作成した下さった、togetterのまとめを御覧ください。 togetter.com

出張Railsウォッチ in 銀座Rails

出張Railsウォッチは今回も、BPS株式会社から、TechRachoを運営されている@morimorihoge (森) さんがご登壇。

まずはRuby2.7のクリスマスリリースが迫り、参考になる情報の共有から。

@tmtms さんの怒涛のAdvent Calendar qiita.com

@jnchito さんのパターンマッチ解説 qiita.com qiita.com

また今回は設計の話について。

コードレビューではなく設計レビューについて、大きな機能の実装の前に行うと手戻りのリスクを減らせるとし、実際に機能要件の確定からPull Request作成までの流れについて、実例を示されていました。

詳細については、TechRachoさんのページに解説されていますので、是非ご覧ください。 techracho.bpsinc.jp

サトウリョウスケ(@ryosuke_sato) さん 「今年 会社でのレビューで話した事」

会社の勉強会で45分 x 2回お話されたことを、15分にギュっと凝縮して持ってこられたというサトウさん。 まずは設計における「抽象度」のお話。抽象度が揃っているとはどういうことなのか、揃っていることでどのようなメリットがあるのかについて説明されていました。

また「継承」について、継承する場合もいくつかのパターンがあるものの、そのうちのどのパターンを使っているのか、複数使って複雑になりすぎていないかを意識することをご提案。 最後に「現実から学ぶ」と題して、現実にあるものから設計に役立つものがあるとし、その例を挙げられていました。

speakerdeck.com

小林ノエル(@free_world21) さん「金融機関の(システムの)作り方」

初登壇の小林ノエルさん。趣味はポイント集めで、プログラマとして会社員とフリーランスを兼業されているとの事。 テーマは「金融機関のシステムの作り方」ということで、新株予約権を販売するサイトを作った際のあれこれを共有されました。

金融業は規制産業なので、行政当局からの規制があり、それに従って開発をする事が必要との事。 機能要件、非機能要件、その他運用など多岐に渡り具体的なガイドラインがあるため、それに回答できる形でシステムを構築する必要があり、それをどのように実現していったかをお話されました。

speakerdeck.com

スポンサーセッション forkwell さま

今回はForkwell様から、永田さんが初登壇。

キャリアアップできるエンジニア / できないエンジニアの差について、「社内評価と市場評価が一致しているかいないか」であると述べられ、これを一致させるためには懇親会などに参加し情報を集めていくのが有効であるとのこと。

ただ毎日懇親会に出ることはできないので、その代わりになるものとして、Forkwellのスカウトサービスを紹介されていました。

jobs.forkwell.com

スポンサーセッション ScoutAPM さま

今回は銀座地ビールスポンサーとして、ScoutAPM様に再びご支援頂きました。

ScoutAPMの紹介としてその簡単な使い方をご紹介。 まずinstallすることでざっくり確認、そこからTransaction Traceで細かい分析。 Auto Instrumentsがcontroller一行毎の時間を自動的に計測。

開発環境でも手軽に無料でパフォーマンス改善ができる、との事です。

scoutapm.com

ゲストスピーカー @sinsoku_listy(神速)さん「Railsアプリの設計」

今回のゲストスピーカーには、メドピア株式会社にお勤めの神速さんをお招きし、設計についてのお話をして頂きました。

sinsoku.hatenablog.com

まずコードの読みやすさの話として、何がRailsらしい読みやすいコードなのか、その答えは公式ドキュメント、railsが生成するコードにあると例示。

また設計の時の流れとして、要件定義、画面設計、リソースとDB設計、クラス設計、実装 の順で進めていると共有の上、それぞれの局面で何に気をつけているかについてお話されました。

更に実装時に気をつけている事として、コードを短くすること、RuboCop標準に合わせること、その際の判断基準などについても具体的に述べられていました。

次回、銀座Rails#17について

次回銀座Rails#17は2020/01/20(木)、 今回と同じくGINZA SIXのリンクアンドモチベーション様のスペースをお借りしての開催です。

ginza-rails.connpass.com

ゲストスピーカーとして柴田博志(@hsbt)さんをお招きし、「OSS 開発の勘所: RubyGems と Bundler の事例 」と題して、 多くの人が使うソフトウェアの日々の開発からリリースマネジメントなど、 OSS の開発を燃え尽きないように続けていくコツをご紹介頂きます。

まだ現時点で空き席が多少ございますので、お気軽にご参加下さい。