Questions and feedbacks

nabuchi
nabuchi commented over 1 year

Step1 - Step4 それぞれのStep間の期間を教えていただきたいです。

Like(1)

qsona
qsona commented over 1 year

Step4が完了したあとにもAdapterは使い続けるのでしょうか。直接ActiveRecordの呼び出しに変える予定はありますか?

Like(0)

ttanimichi
ttanimichi commented over 1 year

お仕事でも 1 PR 1 commit でやってる感じなんですかね?

Like(0)

okuramasafumi
okuramasafumi commented over 1 year

仕事で他人のコミットの粒度が細かすぎるときはどうしてますか?レビューでsquashをお願いする感じですか?

Like(0)

anonymous
anonymous commented over 1 year

社内用語のような一般的ではない単語(かつ形態素解析で微妙な位置で区切られてしまう)で検索されるケースが多いとおもいますが、そういうものも、ngramとのハイブリッドで解決していますか?

Like(0)

takeyuweb
takeyuweb commented over 1 year

聴き逃していたらすみません。 スコアリングの評価について自動化や定量化は行えていますか? 何をもって改善したあるいはその逆であったと言えるか。

Like(0)

yhirano55
yhirano55 commented over 1 year

現在、Lv3だとすると、Lv4の条件を満たすのに何が必要ですか? (技術的と組織的の2面で)

Like(1)

hachi8833
hachi8833 commented over 1 year

Google 翻訳について 自分も IT 翻訳下いたことがありますが,自分の中で日本語訳が曖昧な単語レベルでの確認作業が軽減されると感じていますが,いかがでしょうか?

Google翻訳が以前より格段に精度が上がったのは間違いないと思います。ときどき、びっくりするぐらい気の利いた訳が出てくることもあります。 かと思うと文の一部が崩壊することもありますが、原文の構成次第という印象です。

でも自分の欲しい日本語にはなってないので、そのまま使うことはないかなと思います。

Like(1)

hachi8833
hachi8833 commented over 1 year

記事を集める際の主要サイトはどのサイトのことでしょうか?

以下は現状主にチェックしているサイトです。この他にdev.tomedium.comなども渉猟しています。

Like(1)

hachi8833
hachi8833 commented over 1 year

翻訳記事は結構昔のものが多い(=フィードだと見つけづらい?)ですが、どのように見つけていらっしゃるのか教えてください

社内で(主にmorimorihogeさん)教えてもらった良記事を翻訳することが多いです。英語記事の中で「これはいいぞ」と書いてあったら追いかけることもあります。

まだまだ私の知らない、Rubyist/Rails開発者なら普通知ってる良記事や良書があるはずなので、いつも探しています。これはというものがありましたら @hachi8833などで教えていただけるとうれしいです。

Like(1)

hachi8833
hachi8833 commented over 1 year

翻訳記事の依頼ってどのようにやっているのか気になってます!

スライドで大枠はご紹介しましたのでこぼれ話を。

  • 打診を繰り返すうちに、英語技術ブログの作者が必ずしもコメント欄をフォローしているとは限らないんだなということを痛感しました。諦めるには惜しい記事は方法を変えてリクエストを繰り返したりすることもありました。
  • 実は打診のメッセージも Dash のキーマクロで流し込んでます。でもいつも同じ文面だとつまらないので、文面はちょくちょく手を加えてます。
  • そういえば初めて翻訳打診をした頃は、それこそGitHubで初めてプルリクするにも似て内心ドキドキしたものでした。

Like(2)

qsona
qsona commented over 1 year

AMA素晴らしいです。僕もイベント運営者として使いたいのでSaaS化に期待しています。

Like(2)

qsona
qsona commented over 1 year

@yhirano55 会場でも一部お答えできましたが、もう一度自分なりに整理して回答してみます。

現在、Lv3だとすると、Lv4の条件を満たすのに何が必要ですか? (技術的と組織的の2面で)

まず技術面から。

Day 2でCookpadの小野さんのObservability engineergingの話がまさに該当しそうです。サービスメッシュの話などは正直自分も余り追えていなくて、うかつなことは言えない情勢ですw

1つあげるなら、レジリエンス(回復性)です。 Stable Dependencies Principle (SDP), 安定依存原則, というのがありますが、マイクロサービスにおいても、自分より安定しているサービスに依存するか、そうでなければ相手のサービスが不安定だったりするときのことを考えて適切に対処する必要があると思います。サーキットブレーカーを導入するなどの話もありますが、それ以上に、プログラミング上で適切に例外を処理していくことが難しいところになります。単純にサービス開発において考えることが増えるし、細かい仕様の詰めなど、(広義の)技術レベルが要求されます。

組織面については、横断的なことに対しても対処するチームが必要になってくると思います。横断技術基盤みたいなチームはなかなかワークさせにくいので、現場とのつなぎ方や目的の設定の仕方などに工夫が必要だと思います。この辺は試行錯誤しています。ただちょっとLv.4の組織については自分も未知なことが多いですね、そんな組織になったと胸を張れるようになったらまた発表したい。

Like(1)

morimorihoge
morimorihoge commented over 1 year

本日発表をお聞き頂いた方、ありがとうございました。Twitterの #railsdm でも @hachi8833 が既に流していますが、早速本日のスライドをUPしましたので、見逃した方などはぜひどうぞ

https://techracho.bpsinc.jp/morimorihoge/2018_03_24/54328

Like(0)

yhirano55
yhirano55 commented over 1 year

コミッターみなさんのそれぞれの視点から、Ruby on Railsが、今後どういう方向に進化して欲しいとお考えですか?(Railsにとってどういう未来が作れるとよいと思いますか?)

Like(1)

yhirano55
yhirano55 commented over 1 year

アプリケーションを開発する立場から見たとき、実はあまり気に入っていない箇所はありますか?(使いにくさや、変えたいんだけど諸事情につき変更できない箇所など)

Like(4)

k0kubun
k0kubun commented over 1 year

サービスを切り出す時に エンドポイント分割 or 内部API の話があったと思うんですが、内部APIを採用した理由をもう少し詳しく聞きたいです。

発表中に話した内容(モデルのvalidator等の内部からも利用されるリソースのためかなり多くのエンドポイントで切り出したリソースが必要になり、かつそこでは認証に必要な情報がないため、いずれにしても認証を不要とする内部APIは必要)以外だと、エンドポイント分割をした場合、後方互換性の都合usersテーブルやAPI keyのあるテーブルを持っていき全く同一の認証を実装する必要性がありますが、コンポーネントをシンプルに保つため、ユーザー管理と認証の責務は完全に切り出し元側に移譲しておきたかったという理由があります。

切り出し元の実装次第では、認証をしてAPI keyをuser_idに変換する処理だけして残りの処理を全て内部APIに任せるような実装にすればほぼエンドポイント分割に近い恩恵は受けられると思います。そうなっていない場所は単純に切り出し元のリソースが認可に必要なので、本質的にどちらでも処理が必要になってしまっている状態です。

Like(0)

k0kubun
k0kubun commented over 1 year

切り出し元から切り出し先を起動してテストされていたということですが、その起動のプログラムやコンフィグはどちらで管理されているでしょうか?

切り出したサービスのmasterをgit cloneして、そこにcdしてbundle install, rails sしている状態なので、起動するプログラムの設定は切り出したサービスに全て入っている状態で起動できています。起動するために必要なRubyのバージョンも.ruby-versionから取るようになっています(最初は同じバージョンを使っていたためそうなっておらず壊れましたが)。

また、変な質問になりますが、テストコードが関係性を持ってしまわないでしょうか?

FactoryBotを使っている間はDBを共有する都合強結合になってしまいますが、APIを叩いてリソースを作るように移行し終わった場合、APIのインターフェースが変わらない限りは動作するような関係性になっており、それはテストが期待する通りの関係性だと思っています。

Like(0)

k0kubun
k0kubun commented over 1 year

Capybara でテストが不安定でつらいという話でしたが、遭遇したたまに落ちるテストの具体例とその対処を教えて欲しいです

テストケースはある障害に対する1つのテストだけだったんですが、落ちたパターンはいくつかありました。

1つは非同期でレンダリングされるボタンをクリックする処理が落ちるというもので、そのボタンがaタグやbuttonになっておらずdivのクリックを検知するものだったため click_buttonclick_link を使い「要素を見つけてクリック」するまでの一連の流れをリトライできず、 find(xxx).click していたのですが、 find(xxx) で要素を見つけるところまではcapybaraがリトライしてくれるものの、ブラウザのレンダリングの状態によっては別の要素がそのボタンの上に被ってしまいクリックできない、というものでした。これは仕方がないのでcapybaraの要素が見つからなかったエラーに対してテストコード側でリトライをかけるようにしています。

もう1つはいくつかの非同期のリクエストがstaging環境だとあまりにも時間がかかり、タイムアウトを10秒→30秒と伸ばしてもタイムアウトするような状態になっていたもので、その次は面倒なので2分にタイムアウトを伸ばしました。理想的にはstagingサーバーのスペックをマシにするとか、そもそも何故パフォーマンスが悪いのかも見るべきだと思います。

Like(0)

qsona
qsona commented over 1 year

10xの規模を見据えた場合、中央で全体をマネジメントしているチーム自体もスケールさせていく必要があるように思います。例えば200個のサービスの依存関係を1つのリポジトリにしてGitHubでレビューするのは難しくなる気がしますが、どうなのでしょうか?

(追記ですが、20-30個の段階で全体の依存関係が俯瞰できない問題はかなり自分にとっても身近なので、中央管理できるのは良いなと思いました。)

Like(0)

qsona
qsona commented over 1 year

Service meshはcookpad製ライブラリのGarageと一部役割がかぶるように思うのですが、(それが正しければ・・)今後どう役割の移行を進めていくかを聞きたいです。

Like(0)

sue445
sue445 commented over 1 year

こんにちは。my-ci-badgesの作者ですw

https://rubygems.org/ の情報からgithubのリポジトリを特定するとのことですが、gemspecにGitHubのURLが書かれていない場合はどのように対応してるのでしょうか?

Like(1)

chiastolite
chiastolite commented over 1 year

Envoyの設定変更時のテストは可能なのでしょうか (アプリケーションの挙動とかは気にしないでも可能?)

Like(0)

qsona
qsona commented over 1 year

すでに多くのサービスが存在する場合、Envoyを少数のサービスから徐々に導入していくことは可能でしょうか?

Like(0)

gfx
gfx commented over 1 year

こちらのエントリで質問に回答しました!参考になれば幸いです。

https://gfx.hatenablog.com/entry/2018/03/24/170637

Like(1)

This software is available as open source under the terms of the MIT License.
Copyright © 2018 Yoshiyuki Hirano