タグ

ブックマーク / moneyforward-dev.jp (7)

  • Passkey autofillを利用したパスワードレスログイン導入で得たものと、得られなかったもの - Money Forward Developers Blog

    English version of this article is available here はじめに こんにちは、CTO室 IDサービス開発部のyamato(@8ma10s)です。 マネーフォワード IDという、当社サービス向けのIdPを開発しています。 今回このマネーフォワード IDにおいて、パスワードを使わずに、生体認証などを利用してログインできる「パスワードレスログイン」という機能をリリースしました。 また、今回のリリースでは、既にいくつかの他社サービスで導入されているような通常のパスワードレスログインUIではなく、「Passkey autofill」という、ブラウザの自動補完を利用する新しいタイプのパスワードレスログインUI を(恐らく日のサービスで初めて。エンドユーザーの目に触れるサービスという意味では、おそらく世界でも初めて)導入しています。 私達がどういった過程で、

    Passkey autofillを利用したパスワードレスログイン導入で得たものと、得られなかったもの - Money Forward Developers Blog
  • STIとautoloadingとRails 7 - Money Forward Developers Blog

    こんにちは。マネーフォワード クラウド会計Plus (以下会計Plus)でエンジニアをしているぽっけです。 しばらく前に、会計PlusのRails 7へのアップグレードが完了しました。その中では様々な対応を行いましたが、この記事では特に印象的だったSTIとautoloadingの対応についてご紹介しようと思います。 STIとautoloadingは相性が悪いです。Rails 7以前は簡単な修正でこれらが共存して動いていましたが、Rails 7ではそのコードが動かなくなってしまいました。この問題は最終的には修正されましたが、それまでに紆余曲折あり修正までに何回ものPull Requestが必要になりました。 ⁠対象読者 Ruby on Railsを使用した開発経験があることを前提としています。また、STIやautoloadingについて詳細な説明はしません。それらを知らない場合は、該当するR

    STIとautoloadingとRails 7 - Money Forward Developers Blog
  • Rails appをRubyコードの改善だけで50%以上高速にした話 - Money Forward Developers Blog

    この記事は Money Forward Engineering 2 Advent Calendar 2022 18日目の投稿です。 こんにちは。マネーフォワード関西開発拠点でマネーフォワード クラウド会計Plus (以下会計Plus)のエンジニアをしているぽっけです。 この記事では、私が行った高速化について紹介します。 私は最近Railsアプリケーションの高速化を行っており、ある画面のレスポンスタイムを50%以上削減しました。そしてこの改善はRubyレベルの変更のみで達成しました。 この記事での「Rubyレベルの変更のみ」は、MySQLやRedis、Web APIなどへのアクセスには全く手を入れず、Rubyのプロセスが消費する時間のみを変更した、ということを意図しています。 MySQLなどへのアクセスは通常ボトルネックになりがちな箇所です。今回そこに手を入れずに高速化を達成できたのは、1つ

    Rails appをRubyコードの改善だけで50%以上高速にした話 - Money Forward Developers Blog
  • strong_migrations gemのススメ - Money Forward Developers Blog

    こんにちは。会計Plusでエンジニアをしているぽっけです。最近はシャケをしばくバイトで、やっとでんせつに上がりました。 今日はstrong_migrationsというRails向けのgemを紹介します。 strong_migrationsとは https://github.com/ankane/strong_migrations strong_migrationsは、危険なmigrationを検出するgemです。 データベースのmigrationは、ときに危険になります。たとえば実行するDDLによってはデータベースへの書き込みをブロックしてしまうことがあります。またテーブル定義の変更は、うまくやらないとアプリケーションが意図せぬ動作をするかも知れません。 strong_migrationsはそのような危険なmigrationを検出します。 ⁠使い方 使い方はかんたんです。strong_mi

    strong_migrations gemのススメ - Money Forward Developers Blog
  • 最近のruby-core (2016年3月) - Money Forward Developers Blog

    こんにちは。卜部です。 ruby-coreというRuby体の開発の議論がされているメーリングリストがあります。 新機能やバグ報告などがだいたいここに集約されてくるので購読しておくとRubyの動きが分かります。 最近興味深かったトピックを紹介します。 [#12113] Global method inside Delegator causes NameError スレッドのタイトルは現象としてはその通りなんだけど、当の原因はDelegatorからプライベートなメソッドを呼ぶことがこれまでできなかったという点です。なぜならDelegator経由ではプライベートなメソッドがプライベートな感じで(レシーバーをつけないで)呼ばれたかどうかが判定できなかったから。 なんだけど最近did_you_meanの側からの要求により「プライベートなメソッドがプライベートな感じで呼ばれたかどうか」が判定可能に

    最近のruby-core (2016年3月) - Money Forward Developers Blog
  • Railsでリファクタリングにオススメな gem 5選 - Money Forward Developers Blog

    みなさん、こんにちは。 ウェブ・サーバーサイドを担当しています、Railsエンジニアの黒田です。 マネーフォワードも早いもので、サービスインしてから2年以上が経過しました。 サービスをご愛顧してくださっている皆様には、心から感謝しております。 さて、今回のエンジニアブログは「リファクタリング」についてです。 マネーフォワードのように、ユーザーファースト&デリバリー優先で爆速開発を進めていると、サービスとしてはイケてても、コード的にイケてるとは言い難い部分が発生してしまいがちです。 「思いやりのないコード」「可読性が悪いコード」「必要以上に複雑なコード」は、バグ発生率を高め、開発スピードを低下させ、何よりエンジニアの気分を憂にさせてしまいます。。。 マネーフォワードでは継続的かつ積極的にリファクタリングの時間を創る取組みをしていますが、そのなかで今回はRailsのリファクタリングでとても便

    Railsでリファクタリングにオススメな gem 5選 - Money Forward Developers Blog
  • Railsに慣れたRubyistに捧げるUnderscore.js便利メソッド 5選 - Money Forward Developers Blog

    マネーフォワードではサーバーサイドのエンジニアRails/JavaScriptともに担当しています。 どうしてもRailsに比べJavaScriptは記述量が気になることが多かったのですが、Underscore.jsを入れてから劇的に便利になりましたので、ご紹介します! http://underscorejs.org/ 1. where, findWhere published_books = books.where(published: true) ActiveRecordを使っているとこのようにとてもシンプルにかける処理ですが、JavaScriptで基に則って書くと、 var publishedBooks = []; var l = books.length; for (var i = 0; i < l; i++) { if (books[i].published === true

    Railsに慣れたRubyistに捧げるUnderscore.js便利メソッド 5選 - Money Forward Developers Blog
  • 1