タグ

kamipoのブックマーク (26,443)

  • Railsコミッター kamipoが、IVRyで不完全さと向き合う理由 ── Tech and Me #6|IVRy(アイブリー)公式

    Railsコミッター kamipoが、IVRyで不完全さと向き合う理由 ── Tech and Me #6 世界的なOSSであるRuby on Rails。その内部挙動や歴史的経緯を深く理解し、自らコードに手を入れてきた「Railsコミッター」の一人が、上薗竜太(@kamipo)です。 Railsのコアに向き合い続けてきた圧倒的な技術力と、完成度に妥協を許さない姿勢。かつては、自分のペースで深く掘り下げながら進める開発スタイルの中で強みを発揮していた彼は、なぜ今、IVRyで他者と前提をすり合わせながら進める立ち上げフェーズに取り組んでいるのでしょうか。 「得意なことだけをやっている時間は、新しい扉を開けていない時間だ」 Railsという巨大なコードベースを支えてきた彼が、40代を迎えて選んだのは、あえて自分の「苦手」を引き受ける挑戦でした。他者と価値をつくり、これまでの延長線上にはない景色

    Railsコミッター kamipoが、IVRyで不完全さと向き合う理由 ── Tech and Me #6|IVRy(アイブリー)公式
    kamipo
    kamipo 2026/03/04
  • 補足: 履歴テーブル、今回はこう作りました 〜 Delegated Types編 〜 - その手の平は尻もつかめるさ

    Ruby on Railsのテーブル設計とトランザクション処理 LT Night」で話した内容のフォローアップです。主に懇親会で id:kamipo さんから現地でもらった質問を受けての補足となります。 speakerdeck.com 図中のオレンジ枠と緑枠のトランザクションを分けているのはなぜ? ログレコードが保存できてイベントレコードが保存できないことなんてなくない? 説明がスッポリ抜けていたのですが、ASPからwebhookを受けて諸々の処理をする部分は非同期処理になっているのでそもそもライフサイクルごと分かれていたのでした。つまり、webhookを受けたタイミングでログレコードを記録してからキューイングし、それを非同期的にイベント処理をするので必然的にトランザクションが分かれる。 それはそうとして、イベントを扱う処理中に不慮のクラッシュが発生した時にロギングが巻き込まれると後の調

    補足: 履歴テーブル、今回はこう作りました 〜 Delegated Types編 〜 - その手の平は尻もつかめるさ
    kamipo
    kamipo 2025/11/29
    Ask the Speakerめっちゃ有意義だった🙂‍↕️
  • 「Postgres で試した?」と聞き返せるようになるまでもしくはなぜ私は雰囲気で技術を語るのか? — Just use Postgres 読書感想文 - じゃあ、おうちで学べる

    はじめに 「Just use Postgres」という言葉を初めて聞いたのは、いつだったか覚えていません。Twitter か Hacker News か、あるいは社内の Slack か。どこで聞いたにせよ、私の反応は決まっていました。「また極端なことを言う人がいる」と。 「それ、〇〇でもできますよ」——この手のフレーズはもう100回は聞いてきました。そして大抵の場合、その〇〇は専用ツールに置き換えられていきます。技術が専門分化していくのは自然な流れです。 全文検索なら Elasticsearch。時系列データなら InfluxDB。メッセージキューなら RabbitMQ。それぞれの分野に専門家がいて、専用のソリューションがあって、ベストプラクティスがあります。「とりあえず Postgres で」なんて、それは思考停止ではないか、と。でも、心のどこかで気になっていたんです。 www.mann

    「Postgres で試した?」と聞き返せるようになるまでもしくはなぜ私は雰囲気で技術を語るのか? — Just use Postgres 読書感想文 - じゃあ、おうちで学べる
    kamipo
    kamipo 2025/11/27
  • RubyではなぜUCS正規化を採用していないのでしょうか?

    回答: Java, JavaScript, Pythonなど、多くの言語でUnicodeを用いたUCS(Universal Character Set)方式を採用している理由は、推測ではありますが、 * Unicodeで十分と思った * UCS方式の問題にあまり遭遇したことがなかった * CSI方式は実装が複雑すぎて現実的ではないと思った とかではないでしょうか。これらの言語の設計者はみな欧米人で、だいたいASCIIかISO-8859でテキストが表現できてしまうので、マルチバイト文字の闇を覗き込む機会はほとんどなかったんですよね。 一方、私を含めて日人(またはアジア人)たちは...

    RubyではなぜUCS正規化を採用していないのでしょうか?
    kamipo
    kamipo 2025/11/22
  • Ruby: frozen_string_literalの歴史と現状、未来を考察する(翻訳)|TechRacho by BPS株式会社

    概要 元サイトの許諾を得て翻訳・公開いたします。 英語記事: Frozen String Literals: Past, Present, Future? | byroot’s blog 原文公開日: 2025/10/28 原著者: byroot -- Railsコアコミッター、Rubyコミッターです 日語タイトルは内容に即したものにしました。 frozenは基的に英ママとしました。 なお、Ruby 3.4以降ではRUBYOPT環境変数でRUBYOPT="--enable-frozen-string-literal"のように指定すれば、その環境で文字列リテラルをデフォルトでfrozenにできます。また、Ruby実行時に--disable-frozen-string-literalを指定すれば一時的にこの設定を解除できます。 Rubyistの皆さんなら、Rubyソースコードのほどんどのフ

    Ruby: frozen_string_literalの歴史と現状、未来を考察する(翻訳)|TechRacho by BPS株式会社
    kamipo
    kamipo 2025/11/22
    僕もキーワード引数完全分離よりfrozen string literal by defaultのほうがはるかにたやすく対処できるのに白紙になったの残念に思ってるから応援してます❤️‍🔥❤️‍🔥❤️‍🔥
  • Rails8.0にアップグレードしたらinsert_allの振る舞いが変わった - メドピア開発者ブログ

    こんにちは。メドピアのお手伝いをしている@willnetです。最近寒くなってきましたね。毎年この時期に風邪をひくので最近は手洗いうがいを怠らないようにしています。このたび久しぶりにテックブログに寄稿します。 insert_allの仕様変更に関するPR メドピア内のとあるRailsアプリケーションのバージョンを7.2から8.0にアップグレードしたときにinsert_allの仕様変更に気づいた話をします。 insert_allの仕様変更に該当するのは次のPRです。 Fix active record insert values of type cast and serialize by OuYangJinTing · Pull Request #48139 · rails/rails 上記PRではsaveメソッドとinsert_all(及びinsert、insert_all!)メソッドで値の変

    Rails8.0にアップグレードしたらinsert_allの振る舞いが変わった - メドピア開発者ブログ
    kamipo
    kamipo 2025/11/19
    (゚A゚;)ゴクリ
  • PostgreSQLのデータを削減できた話 | PR TIMES 開発者ブログ

    はじめまして、PR TIMESの開発部でインターンをさせて頂いている永井と申します。 現在はパフォーマンス改善のタスクをしています。 はじめに 自分は今回のタスクをやるまでSQLをあまり書いたことがありませんでした(ORマッパーしか使っていませんでした)。しかし、今回のタスクをやることで直接SQLを書くことが多くなりSQLはもちろんPostgreSQLの構造はどうなっていて、何がメモリを消費しているかなどについての理解も深まりました。当に良い経験をさせて頂きました。 なぜ削減することになったのか PostgreSQLのストレージがとても逼迫していました。さらにPostgreSQLはオンプレの物理サーバーで動いていてストレージの増設も難しいため、AWSに移行するまでの延命措置としてデータ量を削減することになりました。 まずは状況確認 一番容量を使っているテーブルはどれか 以下のクエリで、

    kamipo
    kamipo 2025/10/26
  • 創業期のヤフー、グリーで死ぬほど働いて学んだこと|大西泰平 | 株式会社スタメンCEO

    「これからのキャリアが不安だ」というエンジニアの悩みをよく聞きます。 AI時代、プレイヤーとして活躍し続けたいけど、果たして生き残れるんだろうか? 事業理解やマネジメント力も身につけた方がいいのか? とはいえ、どうやってそれを身につければいいのか?……といったことです。 先の見えない時代をどう生き抜けばいいのかわからない。 エンジニアに限らずですが、そんな迷いを抱えた人は多い気がします。 そのヒントになりそうだと思ったのが、スタメンの創業CTO、小林のキャリアです。 小林さんはヤフーの新卒1期生。グリーでは役員として上場にも貢献し、そのあとCTOとしてスタメンを創業。僕らの主力サービスである「TUNAG」を作り上げ、さらには0から開発チームの組織を作ってくれました。 今はスタメンの子会社である「株式会社スタジアム」という会社で、VPoEをやってくれています。 創業CTOのコバさん。いつもパ

    創業期のヤフー、グリーで死ぬほど働いて学んだこと|大西泰平 | 株式会社スタメンCEO
    kamipo
    kamipo 2025/10/21
  • Amazon DynamoDB におけるシングルテーブル vs マルチテーブル設計 | Amazon Web Services

    Amazon Web Services ブログ Amazon DynamoDB におけるシングルテーブル vs マルチテーブル設計 この文書は、AWS ヒーローであるAlex DeBrie によるゲスト投稿です。 Amazon DynamoDB について学ぶ人にとって、シングルテーブル設計という考え方は、最も心を揺さぶるコンセプトの1つです。DynamoDBのテーブルは、エンティティごとにテーブルを持つというリレーショナルデータベースのような概念ではありません。多くの場合、1つのテーブルに複数の異なるエンティティを含みます。 DynamoDBのシングルテーブルに関するデザインパターンについては、DynamoDBのデベロッパーガイドを読む、re:Inventのトークやその他のビデオを見る、私が執筆したをチェックするなどで理解することができます。シングルテーブル設計の賛否両論に特に焦点を当て

    Amazon DynamoDB におけるシングルテーブル vs マルチテーブル設計 | Amazon Web Services
    kamipo
    kamipo 2025/09/25
  • Ruby on Rails|安全なリファクタリングのための影響範囲特定術 親子テーブルのデータ重複を解消した事例

    このデータ重複は、開発現場で地味ながらも厄介な問題を頻発させていました。 データ不整合のリスク: ユーザー情報更新時に片方のテーブルしか更新されず、データがい違う危険性。 開発効率の低下: 「どちらのnameを参照するのが正だっけ?」という確認が毎回発生し、開発やレビューの効率を阻害。 これらの課題を根から解決するため、usersテーブルから重複しているnameとemailを削除し、auth_usersにデータを集約することを決断しました。 統合戦略:段階的なアプローチが鍵 データ統合のような影響の大きい変更は、一度に行うとリスクが非常に高まります。そこで、私たちは安全性を最優先し、段階的に進めるアプローチを取りました。 ステップ1:delegateでシンプルな参照を片付ける まず、最もシンプルな参照箇所を修正するため、Railsのdelegateメソッドを活用しました。 # app/

    Ruby on Rails|安全なリファクタリングのための影響範囲特定術 親子テーブルのデータ重複を解消した事例
    kamipo
    kamipo 2025/07/11
    いま気づいたけどちょっとだけ友情出演してた👀
  • 推しのアイドルのラストを見届けた - かみぽわーる

    去る3月24日、BLACKNAZARENEのラストライブを見届けた。 ✦••――――••✦••――――••✦ BLACKNAZARENE LAST LIVE TOUR -奇祭- FINAL ✦••――――••✦••――――••✦ BLACKNAZARENEのラストライブ 当にありがとうございました 7年間、出会ってくれた全ての方々に感謝いたします… pic.twitter.com/Um1GNTY4cD— BLACKNAZARENE (@blacknzrn) March 25, 2025 これはオタクとしての感想エントリーというよりは、これまでの人生を振り返った自分語りを、ひとつの物語を見届けたこのタイミングで残しておきたかったという内容になると思う。 ナザレには推しがふたりいて、どっちかだけに言及するのはSNSではしないようにしてたんだけど、ここではアイドル東出ひみこの物語を語らせてほし

    推しのアイドルのラストを見届けた - かみぽわーる
    kamipo
    kamipo 2025/03/27
  • 【保存版】親が亡くなったらやること全52項目を解説!一覧チェックシート付き - リハコ

    「もしも、親が亡くなったら、どうしたらいいの?」 人生で、必ず直面しなければならない、親の死。 いつかその日が来ることを覚悟して。もしくは今まさに、親が亡くなった直後で、この記事を読まれているのではないでしょうか。 初めに、お伝えします。 親が亡くなった後にやることは、文字通り“山程”あります。 あなたがやることを、下記のリストに全部まとめました。 悲しみに暮れる暇もないまま、このように数々の手続きに忙殺される日々が待ち受けています。 とはいえ、しっかりと考えずに手続きを行ってしまうと、 「葬儀会社にぼったくられたり、相続問題で大損した…」 「葬儀で使う遺影の写真は、希望のものを使ってあげたかった…」 「お世話になったみんなに見送られたかったのを知らずに、家族葬にしてしまった…」 などと、後悔してしまうことは、案外少なくありません。 そこでこの記事では、親が亡くなったあとに知りたいことを全

    kamipo
    kamipo 2025/03/27
  • MySQLの思い出話

    Your browser doesn't support the features required by impress.js, so you are presented with a simplified version of this presentation. For the best experience please use the latest Chrome or Safari browser. Firefox 10 (to be released soon) will also handle it.

    kamipo
    kamipo 2025/03/27
  • AtCoder で水色になった - Obsidian Publish

    AtCoder で水色になった - Powered by Obsidian Publish.

    kamipo
    kamipo 2025/03/11
  • MySQLのオンラインDDL(INPLACE)がどう動くか理解する

    これはなに この記事は米シリコンバレーでデータベースコンサル教育事業を展開するKloudDB社がポストした『Understanding How ONLINE DDL (INPLACE) works in MySQL』の翻訳記事です。 この記事ではDDL(スキーマ変更クエリ)の内部処理について詳細に解説しています。DDLはシンプルに利用できるものの、一歩踏み込むと複雑怪奇で理解の難易度は高いものでした。この記事はそこに焦点を当てたものになります。 翻訳するにあたり、技術的な正確性を担保しつつ、日語表現として自然になるよう努めました。もし記事の中で技術的な観点で不正確な箇所があれば訳者の責任ですので、コメント欄などでご指摘いただけると幸いです。 また、翻訳について許可を下さったSrinivasa R Inaganti氏(同社CEO)に感謝します。 以下、訳者による前書き的なものを挟んで、翻

    MySQLのオンラインDDL(INPLACE)がどう動くか理解する
    kamipo
    kamipo 2025/03/02
  • るいーじ=INDY:カッコイイ台詞

    kamipo
    kamipo 2025/01/30
  • 僕は自分が思っていたほどは頭がよくなかった - しのごの録

    Redditで話題になっていたポストを訳してみた。 僕は自分が思っていたほどは頭がよくなかったという高校生の独白にたいしてつけられたこのちょっと長めの返信がとても的確で示唆に富んでおり、多くの人のこころをつかんでいました。私自身、勇気づけられるというか身につまされるところがあり、忘れないために翻訳をしてみました。 まずは高校生の独白から。 僕は自分が思っていたほどは頭がよくなかった 僕はいま高校の最終学年で、次の6月に卒業する予定です。高校の成績は、いままでずっとAを取りつづけていましたが、去年始めてBをとってしまいました。もしそのBがなければ、卒業生総代に選ばれていたでしょう。 総代にふさわしいのは自分だ、つまりクラスで当に一番頭がいいのは自分だと思いたいです。でもこの一年で、僕にそれほどの知性はないし、僕より頭のいい人はたくさんいるんだということを思い知らされました。 また僕は、自分

    僕は自分が思っていたほどは頭がよくなかった - しのごの録
    kamipo
    kamipo 2025/01/28
  • 「あなたのキャリアのなかで、特に印象に残るPull Requestは何ですか?」著名エンジニアの方々に聞いた【第二弾】 - Findy Engineer Lab

    特定のリポジトリに対して機能追加・変更やバグ修正などを行う場合、エンジニアはPull Requestを発行します。プログラミングを続ける過程で数えきれないほど発行されるPull Requestは「エンジニアが歩んできた道のりそのもの」と言っても過言ではありません。 ならば、オープンソースコミュニティで活躍する方々が「特に印象に残っているPull Request」には、その人のOSS活動への思いや日々の研鑽が結実しているのではないでしょうか。今回は8名の著名エンジニアの方々に回答していただきました。 ※人名の50音順に掲載。回答者は敬称略。 k0kubunが紹介『Count trace_running for internal event』 github.com これは私が新卒1年目に初めてRuby体に送ったPull Requestです。 当時、私は社内の開発者の生産性を改善するチームに所

    「あなたのキャリアのなかで、特に印象に残るPull Requestは何ですか?」著名エンジニアの方々に聞いた【第二弾】 - Findy Engineer Lab
    kamipo
    kamipo 2025/01/16
    紹介されてた🙂‍↕️
  • チンポプラの年齢になった じゃあ僕は親の運転する車で何が言えるんだろう | オモコロ

    チンポプラというコピペがある

    チンポプラの年齢になった じゃあ僕は親の運転する車で何が言えるんだろう | オモコロ
    kamipo
    kamipo 2024/12/18
  • あなたが癌になった時に最初に知ってほしい事

    癌治療を専門にしている医師ですが、夜寝付けなかったので、 癌になった時にまず最初に知っておいて欲しい事をかいてみました。 結論いかに早く治療を開始できるかで癌の治りやすさが変わります。 そして、あなた(患者)の頑張りで、治療開始日は大きく変化します。 今回は、知っておいて欲しい癌の知識について書いた後、癌の疑いがあると言われた時の治療開始RTAのコツについて書きます。 (RTA:リアルタイムアタック、いかに早くゲームをクリアできるかの挑戦の事) --- 知っておいて欲しい癌の知識 癌は、ひたすら増え続けるおかしな細胞人間の体は細胞で出来ていて、正常な細胞は決まった日数で細胞分裂して増えますし、決まった日数で死にます。例えば皮膚の細胞は1か月くらいで新しくなって、古い細胞は死んで垢になります。このバランスが保たれているのが通常です。 ただ、変な細胞も一定の割合で発生します。決まった日数で死な

    あなたが癌になった時に最初に知ってほしい事
    kamipo
    kamipo 2024/12/03