プログラミング

新着順 人気順

Railsガイドにきちんと目を通して新しい知識を得る - バリデーション編 -

ドキュメントを読み込むのは大事、ということでRailsガイドを頭から読んでいく取り組みをしています。 各章ごとに、(Railsガイドにちゃんと書いてあるのに)知らなかった機能を雑にまとめていきます。 今回は、バリデーションの章です。 railsguides.jp ups…

image_processing gem 2.0 アップデートで踏んだ落とし穴:`require: false` で解決した話

はじめに 先日、Railsアプリで使用している image_processing gem を 2.0 にアップデートしました。 CIは無事グリーンになったのですが、その後 GitHub Actions でのデプロイが rails build で失敗するという問題に遭遇しました。 この記事では、その原因と…

【git hooks】pre-pushで特定のブランチへの誤pushを防止するようにした

はじめに リリース時にのみmasterにpushすることがあるんですが、これをリリース時以外にやってしまうとrevert操作などが必要になって結構面倒なことになります。 そこで、git hooksのpre-pushフックを使って特定のブランチへのpushの際に確認メッセージを表…

『Googleのソフトウェアエンジニアリング』読書メモ・感想

先日、『Googleのソフトウェアエンジニアリング』を読みました。 www.oreilly.co.jp 各章ごとに、気になったトピックなど踏まえながらつらつら感想を書いていきます。 1章「ソフトウェアエンジニアリングとは何か」 「プログラミング」と「ソフトウェアエン…

Railsガイドにきちんと目を通して新しい知識を得る - Action Controller の概要編 -

ドキュメントを読み込むのは大事、ということでRailsガイドを頭から読んでいく取り組みをしています。 各章ごとに、(Railsガイドにちゃんと書いてあるのに)知らなかった機能を雑にまとめていきます。 今回は、Action Controller の概要の章です。 railsgui…

(学習メモ)『サバイバルTypeScript』を学ぶPart1 〜静的型付け言語に触れる編〜

静的型付け言語を触ってみたいと思って、『サバイバルTypeScript』を初めてみました。 typescriptbook.jp まずは「トップ」の章を見ただけですが、フロント/バックエンドの違いは当然あれど、普段使っているRubyとは全く違って面白かったです。 印象に残った…

【Ruby】Banken gemのauthorize!を読む

はじめに bankenというgemを使って権限管理をしたことがあるのですが、どのように実現しているのか興味があったため、一番主要なauthorize!メソッドを読んでみました。 github.com bankenのバージョンは1.0.3です まとめ 全体的に非常にシンプルなコードで特…

CSVを使った一括インポート機能を作成する際に確認するポイント

先日、CSVファイルを使ったデータの一括インポート機能を作成する機会がありました。 一連の実装を振り返ると、気にすることや決めるべきことが色々あるなーと思ったので、メモしておきます。 異常系への対応 ✅ ファイルの形式が間違っているケースの対応を…

『Sidekiq in Practice』読書メモ・感想

「Sidekiq in Practice」を読みました。 nateberk.gumroad.com 実践的な観点でSidekiqの仕組みや設定、留意点などが解説されており、読んだ後の今は、すぐにでも業務のプロダクトに活かしたい!という気持ちになっています。 既存のSidkiqの設定の変更の見直…

Railsガイドにきちんと目を通して新しい知識を得る - Active Recordの関連付け編 -

ドキュメントを読み込むのは大事、ということでRailsガイドを頭から読んでいく取り組みをしています。 各章ごとに、(Railsガイドにちゃんと書いてあるのに)知らなかった機能を雑にまとめていきます。 今回は、Active Recordの関連付けの章です。 railsguid…

GitHub Actionsを使って子供が産まれてからの週数を毎日LINEで通知する

先日子供が産まれたのですが、予防接種の問診票等で何週目か?や何ヶ月何日か?といった情報が頻繁に必要になります。 毎回計算するのが面倒だったのでLINEで毎日通知させることにしました。 定期実行はGitHub Actionsにやってもらうことにしました。 その方…

【Rails/RSpec】better_errors gemをテスト環境で有効にしていたらハマった

better_errorsは、Railsのデフォルトエラーページよりもエラーを詳細に表示し、デバッグを助けてくれるgemです。 github.com READMEにある通り、基本的にはdevelopment環境での使用が想定されています。 しかしながら、今回、test環境で有効にしていたことに…

Railsガイドにきちんと目を通して新しい知識を得る - Active Model の基礎編 -

ドキュメントを読み込むのは大事、ということでRailsガイドを頭から読んでいく取り組みをしています。 各章ごとに、(Railsガイドにちゃんと書いてあるのに)知らなかった機能を雑にまとめていきます。 今回は、Active Model の基礎の章です。 railsguides.j…

『リファクタリング 第2版』読書メモ

積読していた『リファクタリング 第2版』を読みました。 www.ohmsha.co.jp どんな本? リファクタリングとは、リファクタリングの意義を前半で解説した上で、後半(6章〜)はリファクタリングのサンプルカタログのようになっています。 私は、1-5章は丁寧に…

Notion APIのセットアップして、Rubyを使ってページの本文やテーブルビューの一覧を取得する

Notionには、無料で使えるAPIがあります。 今回は、Notion APIのセットアップから、Rubyのfaraday gemを使ってリクエストを投げ、ページの本文やテーブルビューの一覧を取得するまで、を記事にしてみました。 使用したバージョン Ruby: 4.0.3 faraday: 2.14.…

(学習メモ)『サバイバルTypeScript』を学ぶPart2 〜書いて学ぶ編〜

『サバイバルTypeScript』の「作って学ぶTypeScript」をやってみたので、印象に残った点など、学習メモです。 typescriptbook.jp 型定義を使う場面の例 ドキュメントとしても便利だなと思ったりした typescriptbook.jp vitest とりあえず基本的な書き方だけ…

(案ずるより産むが易し)自作gemとCircleCIデビューしたら簡単だった

先日、会社の同僚が社内LTで「gemを作ってみたけど簡単だった」と言っていたので、なんだか難しそうと思って敬遠してしまっていたgem作成(ついでにCircleCI導入)をしてみました。 結論から言えば、すごく簡単でした。 gemを作ってみた gemの作り方は以下の…

『オブジェクト指向でなぜつくるのか』を読んだ

プログラミングの学習をしていた2年ほど前から積読されていた『オブジェクト指向でなぜつくるのか』をようやく読んだので簡単な感想を書いていきます。 bookplus.nikkei.com オブジェクト指向が生まれた背景や、特徴を知ることができる 本書は、オブジェクト…

Railsガイドにきちんと目を通して新しい知識を得る - コールバック編 -

ドキュメントを読み込むのは大事、ということでRailsガイドを頭から読んでいく取り組みをしています。 各章ごとに、(Railsガイドにちゃんと書いてあるのに)知らなかった機能を雑にまとめていきます。 今回は、コールバックの章です。 railsguides.jp after…

Railsガイドにきちんと目を通して新しい知識を得る - Active Record クエリインターフェイス編 -

ドキュメントを読み込むのは大事、ということでRailsガイドを頭から読んでいく取り組みをしています。 各章ごとに、(Railsガイドにちゃんと書いてあるのに)知らなかった機能を雑にまとめていきます。 今回は、Active Record クエリインターフェイスの章で…

Railsガイドにきちんと目を通して新しい知識を得る - Action View の概要編 -

ドキュメントを読み込むのは大事、ということでRailsガイドを頭から読んでいく取り組みをしています。 各章ごとに、(Railsガイドにちゃんと書いてあるのに)知らなかった機能を雑にまとめていきます。 今回は、Action View の概要の章です。 railsguides.jp…

Railsガイドにきちんと目を通して新しい知識を得る - レイアウトとレンダリング編 -

ドキュメントを読み込むのは大事、ということでRailsガイドを頭から読んでいく取り組みをしています。 各章ごとに、(Railsガイドにちゃんと書いてあるのに)知らなかった機能を雑にまとめていきます。 今回は、レイアウトとレンダリングの章です。 railsgui…

Active Supportのメソッドを自前で実装して本物と比較してみた

RailsのActive Supportには便利なメソッドがたくさんあります。 ふと思いつきで、その便利メソッドを自分で実装して、Railsの実装と見比べたら何か気づきがありそうと思ってやってみました。 対象は、truncateメソッドです。(オプションはomissionだけ対応…

『暗号技術入門』読書メモ

cr.hyuki.net 少し前に『暗号技術入門』(第1部、第2部)を読んだので読書メモを残しておきます。 第2章 シーザー暗号 文字ずらしで暗号化する方法 シーザー暗号をRubyで書くと、、を考えてみた。 自分で考えた方法(nextを使う) class String def encrypt_…

『ドメイン駆動設計入門』読書メモ・感想

www.shoeisha.co.jp 先日、上記の本を読んだので読書メモを残します。 (知識のまとめに若干AIの力を借りています) 書籍の感想 「ドメイン駆動設計」というものについて言葉だけ知っているが意味はよく知らない、という状態だったので読んでみました。 「ボ…

外部APIを自社システムに連携するときに気をつけること

先日、自社システムで新しく外部APIの連携を行いました。 その過程で、外部APIを使うときに気をつけることがいくつかあるなーと思ったので記事にします。 1. 外部API側のエラーが起きる前提の実装をし、リカバリーの手段を用意しておくこと 外部APIは、いつ…

『なるほどUNIXプロセス』読書メモ

tatsu-zine.com 自分なりに整理したもの、理解しづらかったので追加で調べて理解したものなどメモです。 forkとCoW(Copy on Write) fork: とあるプロセスから子プロセスを作ること。親プロセスがメモリに持つ情報をすべて持つ。 コピーをするためのオーバ…

Railsガイドにきちんと目を通して新しい知識を得る - Rails のルーティング編 -

ドキュメントを読み込むのは大事、ということでRailsガイドを頭から読んでいく取り組みをしています。 各章ごとに、(Railsガイドにちゃんと書いてあるのに)知らなかった機能を雑にまとめていきます。 今回は、Rails のルーティングの章です。 railsguides.…

Railsガイドにきちんと目を通して新しい知識を得る - Action View フォームヘルパー編 -

ドキュメントを読み込むのは大事、ということでRailsガイドを頭から読んでいく取り組みをしています。 各章ごとに、(Railsガイドにちゃんと書いてあるのに)知らなかった機能を雑にまとめていきます。 今回は、Action View フォームヘルパーの章です。 rail…

Railsガイドにきちんと目を通して新しい知識を得る - Action View ヘルパー編 -

ドキュメントを読み込むのは大事、ということでRailsガイドを頭から読んでいく取り組みをしています。 各章ごとに、(Railsガイドにちゃんと書いてあるのに)知らなかった機能を雑にまとめていきます。 今回は、Action View ヘルパーの章です。 railsguides.…