概要 2022年はたくさんLTに参加しました。 資料を公開しているもの、非公開のものを合わせると回ほど参加していたので、2ヶ月に1回のペースで参加していることになります。 最初にLTに参加した際にはとても緊張して準備の時間もかかりましたが、最近は前に比べて自分の中で「型」のようなものができつつあり、そのおかげでLTへの参加ハードルがだいぶ下がったので今回はその型を紹介できればと思います。
TL;DR GoでHTTPリクエストを送信送るnet/httpライブラリの http.Client はデフォルトだと自動リダイレクトする仕様ですが、 http.Client.CheckRedirect をオーバーライドすればリダイレクトする前の結果を返すことができます。 外部要因でリダイレクトがかかる際にシステムでエラーが起きる Amazonの商品の分類によって処理を変えるようなシステム
TL;DR Go言語の例外発生時に下記のような処理を行うことがあると思います。 go if err := hogeFunction; err != nil { // エラー処理 } エラー処理のところでログ出力のために log.Fatal(err) を使っていたところ、意図せずプログラムが終了してしまいました。 処理を継続したければ log.Print(err) を使うの
概要 会社でGraphQLを導入するにあたり、スキーマ駆動開発を取りいれた開発を行ってみました。 実際にどのような開発を行ったのか、またやってみてどうだったかをご紹介できればと思います。 一度下記LTにて紹介した内容について少し加筆や修正を行った記事になります。 https://speakerdeck.com/isaka1022/graphql-rubyde-sukimaqu-dong-kai
TL;DR Railsでメモ化というテクニックを使えば一度のリクエストに対して同じ処理が複数走る箇所のパフォーマンスを改善できます。 ruby @hoge ||= 重い処理 このようにインスタンス変数の自己代入を使ってメモ化すれば、2回目以降の呼び出しはインスタンス変数に格納された値を使ってその後の処理を実行できます。 解決したい課題 次のようなProductモデルを考
Notionでデータベースを作成したときに、下記のようにNewで新しい行を追加したときにID列のを自動採番したかったのですが、やり方がわかりづらかったのでその手順と仕組を紹介します。 ![スクリーンショット 2022-12-14 23.27.49.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/238254/504f
こちらの記事はmybest product dev Advent Calendar 2022にも参加しています。 https://adventar.org/calendars/8007 概要 エンジニアとして新卒入社して2年目になりますが、入社してから僕は意識的に「ふりかえり」をしてきたと思います。 アドベントカレンダーを書くにあたって1年を思い返してみても、自分の中で成長の実感とふりか
TR;DR YAMLファイルから正規表現を読み込むようにするには !ruby/regexp に続けて正規表現を記述すればよいです。 背景 同じアプリケーションを、複数の国や、いくつかの企業毎に環境を分けて使用したいことがあります。 このように場合の対応策のひとつとして、アプリケーションのコードは同じものを使用しつつ、環境ごとに読み込むYAMLファイルを変えることで細かな設定を調整するやり
TL;DR RailsのメソッドをRspecでテストする際に、Elasticsearchを使ったモデルに対してのテストの実行時にのみ、実行前後でElasticsearchのインデックスを初期化する処理を入れる方法です。 やりたかったこと elasticsearch-rails gemを用いたRailsのアプリケーションにおいて、下記のようにElascticsearchを用いて検索や絞り
はじめに 2021年4月に株式会社マイベストにエンジニアとして就職し、現在2年目になります。 https://mybestcom.notion.site/f1f77d9b8883450c82b22520e5b02a03 僕はマイベストの新卒1期生であり、1人新卒だったことや、エンジニアの人数も少数だったため、会社としての体系的なエンジニア研修などは用意されていませんでした。 業務上必要なこ