JunichiItoのブックマーク (499)

  • Claude Code を初めて使う人向けの実践ガイド

    この記事は Claude Code を初めて試そうとされている方向けの記事です。 導入手順 Claude Codeは、ターミナルで動作する対話型AIコーディングツールです。コードの生成だけでなく、ファイルの編集、テストの実行、Gitの操作まで自然言語で指示できます。 以下の公式ドキュメントを参考にして導入してみてください。 公式ドキュメント:https://docs.anthropic.com/ja/docs/claude-code/overview VS Code拡張:https://docs.anthropic.com/ja/docs/claude-code/ide-integrations よく使うコマンド CLIコマンド(起動前) Claude Code を起動するコマンド: claude # 対話セッションを開始 claude --continue # 直近のセッションを継続 c

    Claude Code を初めて使う人向けの実践ガイド
  • WITH句てんこもりのSQLをデバッグする - エムスリーテックブログ

    巨大なSQLの出力が意図と違っていたり違っているかもしれないとき、どこから確認しようか頭を抱えてしまうことってありますよね。せめて多段階で作られているたくさんのCTE (WITH句)、これらが一つずつどんな表を出力しているのか簡単にのぞけたら手がかりもあるのだけれど⋯ 今回はそれをわりと現実的な手間でできるようにする小技です。エムスリーエンジニアリングループUnit1(製薬プロモーション)/Unit9(治験臨床研究支援)エンジニアの三浦[記事一覧 ]です。 魔法の一行 デバッグを実現する一行 We are hiring 魔法の一行 SQLの最後に -- */ という無意味なコメント行を付けておいてください。ひと目見て分かる通り、まったく無意味です。ところがこれがあるだけで、デバッグのときにこんなことができるようになります―― デバッグを実現する一行 次のようなCTEの大行列があるとします

    WITH句てんこもりのSQLをデバッグする - エムスリーテックブログ
  • TokyoWomen.rbを開催するにあたって私が考えていること - okuramasafumiのブログ

    はじめに 3/1(土)にTokyoWomen.rb #1 というイベントを開催します! TokyoWomen.rbロゴ 女性の登壇者を増やし、技術イベントのジェンダーバランスを改善することを目標としたもので、登壇者は女性(性自認が女性の意味、以下同じ)のみ、参加者は性別不問となっています。 興味深いトピックが集まりすごく「濃い」タイムテーブルとなっています。 https://tokyowomenrb.connpass.com/event/342573/ まだまだ参加者募集中ですので、どなたもぜひご参加ください! この記事では以下、私がなぜTokyoWomen.rbを開催するか、開催するにあたってどんなことを考えているのかをお伝えできればと思います。 Kaigi on Railsを主催する中での気づき 私はKaigi on Railsという技術カンファレンスを立ち上げて主催しています。202

    TokyoWomen.rbを開催するにあたって私が考えていること - okuramasafumiのブログ
    JunichiIto
    JunichiIto 2025/02/21
    「女性登壇者限定でかつRubyに特化したイベントとして登壇者を募ったところ、とてもたくさんのすばらしいプロポーザルをいただくことができました」「バラエティ豊かなラインナップで私自身も大変楽しみ」ほんまそれ!!
  • 調査をサクサク進めるために。伊藤淳一が考える「良いプルリクエスト、悪いプルリクエスト」 | レバテックラボ(レバテックLAB)

    調査をサクサク進めるために。伊藤淳一が考える「良いプルリクエスト、悪いプルリクエスト」 2025年1月14日 伊藤淳一 1977年生まれ、大阪府豊中市出身。株式会社ソニックガーデンのRailsプログラマ、およびプログラミングスクール「フィヨルドブートキャンプ」のメンター。ブログやQiitaなどでプログラミング関連の記事を多数公開している。将来の夢はプログラマーをみんなの憧れの職業にすること。主な著書に「プロを目指す人のためのRuby入門 改訂2版 言語仕様からテスト駆動開発・デバッグ技法まで」(技術評論社)などがある。 keyboard_arrow_down はじめに keyboard_arrow_down TL;DR (最初にまとめ) keyboard_arrow_down なるべく小さいプルリクエストにすること keyboard_arrow_down プルリクエストのタイトルを具体的か

    調査をサクサク進めるために。伊藤淳一が考える「良いプルリクエスト、悪いプルリクエスト」 | レバテックラボ(レバテックLAB)
    JunichiIto
    JunichiIto 2025/01/14
    寄稿しました。暗黙知になりがちな「プルリクエストのベストプラクティス」を僕なりにまとめてみたのですがいかがでしょうか?本記事を叩き台にして「良いプルリクとは?」をチーム内で議論してみてください!
  • 10年後、プログラムを動かし続けるために。伊藤淳一が考える「良いコミット、悪いコミット」 | レバテックラボ(レバテックLAB)

    10年後、プログラムを動かし続けるために。伊藤淳一が考える「良いコミット、悪いコミット」 2025年1月6日 伊藤淳一 1977年生まれ、大阪府豊中市出身。株式会社ソニックガーデンのRailsプログラマ、およびプログラミングスクール「フィヨルドブートキャンプ」のメンター。ブログやQiitaなどでプログラミング関連の記事を多数公開している。将来の夢はプログラマーをみんなの憧れの職業にすること。主な著書に「プロを目指す人のためのRuby入門 改訂2版 言語仕様からテスト駆動開発・デバッグ技法まで」(技術評論社)などがある。 keyboard_arrow_down はじめに keyboard_arrow_down コミットが役立つシナリオ4パターン keyboard_arrow_down コラム:業務で使われるプログラムの寿命はとても長い keyboard_arrow_down 良いコミットの条

    10年後、プログラムを動かし続けるために。伊藤淳一が考える「良いコミット、悪いコミット」 | レバテックラボ(レバテックLAB)
    JunichiIto
    JunichiIto 2025/01/06
    寄稿しました。「俺たちは雰囲気でいつもgitのコミットをキメている」という新人さんたちに向けて、僕なりの指針を書きました。新人さんを指導しているリードエンジニア諸氏にも本記事を活用してもらえると幸いです!
  • コードを書かない管理職にはなりたくない、生涯プログラマー希望者のバイブル【ソニックガーデン・伊藤淳一】 - エンジニアtype | 転職type

    連載では、業界の第一線で活躍する著名エンジニアたちが、それぞれの視点で選んだ書籍について語ります。ただのレビューに留まらず、エンジニアリングの深層に迫る洞察や、実際の現場で役立つ知見をシェア!初心者からベテランまで、新たな発見や学びが得られる、エンジニア必読の「読書感想文」です。 著名エンジニアが、独自の視点で「おすすめ書籍」の紹介を行う連載。 今回の語り手は『プロを目指す人のためのRuby入門』(技術評論社)の著者、株式会社ソニックガーデンのプログラマー・伊藤淳一さん(@jnchito)だ。「この業界でエンジニアとして生き残っていきたいと考えていた新人時代に、大事な指針を教えてくれた一冊」と語る、『MY JOB WENT TO INDIA』(オーム社)を紹介いただいた。 発売日:2006年9月26日 著者:チャド・ファウラー 訳者:でびあんぐる 出版社:オーム社 ISBN-10:42

    コードを書かない管理職にはなりたくない、生涯プログラマー希望者のバイブル【ソニックガーデン・伊藤淳一】 - エンジニアtype | 転職type
    JunichiIto
    JunichiIto 2024/10/22
    寄稿させてもらいました!
  • システム内部音声でMacOS上の画面録画方法 | DevelopersIO

    概要 OSによって、画面録画する手段はそれぞれですが、MacOSの場合はシステム自体にQuickTime Playerというメディアプレイヤーが既にインストールされ、普通の動画再生だけではなく、画面録画する機能も付いてます。QuickTime Playerで画面録画することが便利ですが、そのまま録画すると、マイク経由でスピーカーからの音を録音するので、音質が低いし、雑音も入りますので、このブログでMacOSの内部音声を直接画面録画にインプットする方法を紹介したいと思います。 手順 ソフトウェアダウンロード BlackHole MacOS内部音声チャンネルを設定することには、他のソフトウェアが必要ですので、一つよく使われるのはblack holeというソフトウェアです。 まず、このblack holeサイトに入ってもらいます。 サイトに入ったら、メールアドレスと名前を記入します。(ダウンロー

    システム内部音声でMacOS上の画面録画方法 | DevelopersIO
  • Reddit - The heart of the internet

  • 【企業秘密】ダマスカス紋様と刃文の浮かび上がらせ方 | NO KNIFE NO lIFE

    刃文とダマスカス紋様の違い 刃文とは基的に焼き庖丁にのみ見られる紋様を指します。 焼きの場合は単一鋼材で作られており、その製造過程で一枚の金属の中に硬い部分と軟らかい部分が生まれるため、この境目が刃文となって現れます。 庖丁の中央に見られる白く曇った線が刃文です。 この線よりも峰側は軟らかく衝撃を吸収する役割を担っており、線よりも下(写真だと手前側)は焼きが入っているため非常に硬く、刃物として十分な耐久性を持っています。 これに対して合わせの庖丁は異なる二種類の金属を張り合わせて作られるため、その接着面が境目として現れます。 写真は高田ノハモノ・水墨仕上げの庖丁ですが、こちらは無地の材質で刃金を挟み込んでおり、中央に見られる複雑に入り組んだ線が合わせ目(接着面)になります。 高田ノハモノについてはこちらから ダマスカス紋様のある庖丁も構造は3枚合わせのものと全く同じで、外側の金属が無

  • 【ソフトウェア設計】例外処理を考える

    はじめに 最近書いてるソフトウェア設計シリーズです。今回は例外に関して。以前、以下のような記事を書いたのですが、もう少し深堀して書いてみました。 ちなみにソフトウェア設計シリーズは他には以下を書いています。 モジュールになぜ分けるのか? モジュール、依存、そしてカプセル化 モジュールをどう分割するのか? 簡潔さは力なり? 予測可能な振る舞いと簡潔さについて ドキュメントとしてのコメント TL;DR 例外は「原則」キャッチしない 業務例外や必ずハンドリングさせたい例外はOptionalなど戻り値の方が便利 だいたい以下の図が言いたい事のすべて 例外処理とは? 「例外処理(Exception Handling)」は言語に依らず普遍的な関心事です。端的に言えば例外処理は異常やシステムの動作に不備が発生した際の特別な分岐処理です。リカバリやリソースの解放、あるいはユーザへの通知などがありますね。

    【ソフトウェア設計】例外処理を考える
  • 愛されて23万View!新卒向け研修資料「テスト文字列に”うんこ”と入れるな(2024年版)」を公開しました|技術ブログ|北海道札幌市・宮城県仙台市のVR・ゲーム・システム開発 インフィニットループ

    ホーム 技術ブログ 愛されて23万View!新卒向け研修資料「テスト文字列に”うんこ”と入れるな(2024年版)」を公開しました 愛されて23万View!新卒向け研修資料「テスト文字列に”うんこ”と入れるな(2024年版)」を公開しました こんにちは松井です。今は会長になりました。 遡ること3年前、2021年の新卒研修向けに「テスト文字列に”うんこ”と入れるな」という資料を作成しました。 おかげさまで多くの方に読んでいただいたようで、SlideShareのView数は「23.6万View(2024年4月現在)」にまで達しました。 わたし的にはもうこれで満足していたのですが、 「会長、今年も例のうんこの話をしていただけませんか」 というオファーがあり、またこのクソみたいな話をすることになったという次第です。 せっかく話をするならばということで、事例やTIPSのページを新たに加え、「2024年

    愛されて23万View!新卒向け研修資料「テスト文字列に”うんこ”と入れるな(2024年版)」を公開しました|技術ブログ|北海道札幌市・宮城県仙台市のVR・ゲーム・システム開発 インフィニットループ
  • 長年の悩みだったギターアンプのノイズが「マイ電柱」で直った件 - give IT a try

    はじめに 僕は趣味でよくギター(エレキギター)を弾きます。 ですが、長年ずっと困っていたことがありました。 それはギターアンプのノイズです。 多かれ少なかれ、エレキギターを弾くときはアンプからノイズが出るものです。 しかし、僕の家のギターアンプからは明らかに異常な「キーン」というノイズが出ます。 実際どんな音なのかは以下の動画で確認できます。(うるさいのでボリュームには気を付けて!) www.youtube.com このノイズは以下のような特徴があります。 5〜6年前から急に発生し始めた 常時ノイズが出るわけではなく、たまに発生する ノイズが鳴り始めると鳴ったり止んだりを繰り返す ギターを変えても、アンプを変えても同じようにノイズが出る(なので、ギターやアンプの問題とは考えにくい) ギターを全くつないでいない状態でもノイズが出る(なので、ギターのピックアップがノイズを拾っているわけではない

    長年の悩みだったギターアンプのノイズが「マイ電柱」で直った件 - give IT a try
    JunichiIto
    JunichiIto 2024/04/04
    もともと「ホースの水」って書いてたんですが、今さっき見てみたら高圧洗浄機でトラックを洗車してたので、記述を一部修正しました🙏
  • 徹底解説! default gemsとbundled gemsのすべて | gihyo.jp

    この記事では、毎年少しずつ変化している標準添付ライブラリ、Default gemsとBundled gemsのRuby 3.3でのアップデートについて解説します。 標準添付ライブラリとDefault gems/Bundled gems⁠、それぞれの違い 私、柴田はRubyインタプリタと同時に配布されている便利なライブラリ群(標準添付ライブラリ)の開発だけではなく、アップデートや配布の仕組みを担当しています。この標準添付ライブラリの中にはDefault gemsとBundled gems、そしてどちらでもないライブラリの3種類があります。便宜上ではありますが、どちらでもないライブラリのことを標準ライブラリと呼ぶことにし、それぞれの特徴について解説します。 標準ライブラリ 標準ライブラリは、RipperやCoverageなど、Rubyのインタプリタの挙動に深く依存するライブラリです。標準ライブ

    徹底解説! default gemsとbundled gemsのすべて | gihyo.jp
  • 2024年1月1日からAmazonアフィリンクの画像が表示できなくなりそうなので、対応をまとめた

    以下、私のやり方であって「正解」ではないかもしれないのでご承知おきを。 11/30 Amazonより以下のメールが届いた。 お知らせ欄で告知しております通り、2023年11月30日(木)をもってアソシエイトツールバーの「画像リンク」及び「テキストと画像」リンクを廃止させていただきます。 画像リンク作成機能を使用して作成されたリンクは、2023年12月31日(日)以降表示されなくなりますので、画像リンクを掲載されている場合は、お早めに別のリンクへの差し替えのご対応をお願いいたします。 強調表示の内容は、Amazonアソシエイトの「お知らせ」には載っていない。そのため、twitter で騒ぎになっていないので、このメールが「ガセ」という可能性もある。 だが、もし当なら、私にとって、わりとヤバい話になる。というのも、ブログに書影を表示させるため、この機能を使っているから。 そして、画像を表示さ

    2024年1月1日からAmazonアフィリンクの画像が表示できなくなりそうなので、対応をまとめた
  • GemfileのPLATFORMSの書き方 - komagataのブログ

    bundle2.2からか対応platformが細かくなった。 arm64-darwin-22 arm64-darwin-23 x86_64-darwin-21 x86_64-darwin-22 x86_64-linux こんな感じでosのバージョン毎に追加してくのは辛い。みんなどうやってるのかなと思ってSlackruby-jpのsupportチャンネルで質問させてもらいました。 gohさん、kojix2さんに教えていただきました。ありがとうございます。 結論から言うとこう言う感じで良さそう。 PLATFORMS universal-darwin x86_64-linux mac関連は全部universal-darwinでOK。CIや番環境、WSL2の人用にはx86_64-linuxでOK。

  • プログラミングの原則:構造化テキストを文字列結合で作らない、置換でいじらない - Uzabase for Engineers

    こんにちは、ソーシャル経済メディア「NewsPicks」のむとうです。 先日から『Ghost of Tsushima』の開発者が書いた『ルールズ・オブ・プログラミング』というをちょっとずつ読み進めていて、プログラミング熱が高まっています。このは大きな指針を示すだけで具体の話をするものではないのですが、読み物として面白いので私も似たようなことをやってみたくなりました。 何年もこういう仕事をしているとバグが入るパターンというのが見えてきます。そしてだいたいどこに行っても何の仕事でも似たようなことをすることになるのですが、今回の話もその一つです。 構造化テキストを文字列結合で作らない、置換でいじらないというのはこれだけみると何のことか分かりづらいかも知れませんがSaaS Product Team セキュアコーディングの啓蒙 第2回 (SQL インジェクション編)の内容とある面では同じ話です。

    プログラミングの原則:構造化テキストを文字列結合で作らない、置換でいじらない - Uzabase for Engineers
  • Understanding The Gemfile.lock File

    If you’re not familiar with Gemfiles and gem versioning, this guide will make more sense if you start with my guide on updating gems. The very first time you run bundle install in a Ruby project that has a Gemfile, Bundler will automatically create a file called Gemfile.lock. That is the authoritative source of the gems your project uses, and their versions. Gemfile.lock makes sure that when you s

    Understanding The Gemfile.lock File
    JunichiIto
    JunichiIto 2023/10/15
    [bundler]
  • 過剰に丁寧な言葉を使って壁をつくらない - エス・エム・エス エンジニア テックブログ

    エス・エム・エスの技術責任者 @sunaot です。この記事では組織の文化をつくっていくときにどういうことをしているかを説明します。文化をつくるといったときに、もちろんトップレベルでどういう状態を目指しているかは大切なのですが、普段からチームづくりに心を砕いている人はよくご存知の通り、細かな日常での振舞いが大事になるという話です。 なぜ過剰にへりくだった表現に対してツッコミを入れるのか? 例として、「社内に対しての非常に丁寧な言葉使いに対してどのように振る舞うか」をテーマに説明をします。「なぜ過剰にへり下った表現に対してツッコミを入れるのか」と言い換えてもいいかもしれません。 仕事をしているとたまに「〜していただけたら幸いです」「ご教示ください」といった言い回しに出くわすことがあります。所属している組織の文化によっては違和感を感じることなくスルーするでしょうし、仮に若干の違和感を感じたとし

    過剰に丁寧な言葉を使って壁をつくらない - エス・エム・エス エンジニア テックブログ
  • Finding "equivalent" color with opacity

    JunichiIto
    JunichiIto 2023/09/20
    CSSやSASSで元の色を維持しつつ、透明度を上げる計算方法のあれこれ
  • Railsの起動時間を7分の1にした話|taogawa

    こんにちは。2021年12月にCAMPFIREに入社した小川です。 CAMPFIREではRailsを使って開発しています。わたしの入社後、いくつかRailsのパフォーマンスチューニングをする機会があったのですが、今回はそのうち、開発環境でのRailsの起動時間を約7分の1に短縮することができた事例についてご紹介したいと思います。 Railsの起動が遅いCAMPFIREで開発をしはじめてひとつ気づいたのが、開発環境でのRailsの起動にやけに時間がかかることでした。計測してみると1分以上かかっています・・・。 $ time bundle exec rake environment # ... real 1m10.845s user 0m8.075s sys 0m2.086s これは遅い。アプリケーションの規模はたしかに大きいのですが、それを加味しても遅すぎる印象です。 チームメンバーに尋ねて

    Railsの起動時間を7分の1にした話|taogawa