タグ

t-wadaのブックマーク (11,337)

  • 102. A Philosophy of Software Design (3/3) w/ twada | fukabori.fm

    MP3ファイルをダウンロード 内容紹介 twadaさんをゲストに、A Philosophy of Software DesignをテーマにしたエピソードのPart3です。今回は「認知負荷」についてひたすら語っていただきました。 出演者 話したネタ 書籍:A Philosophy of Software Design, 2nd Edition 認知負荷 (Cognitive Load) とは何か? 書籍:チームトポロジー 価値あるソフトウェアをすばやく届ける適応型組織設計 “クソコード” という言葉をなんとかしたい 認知資源の消費量 課題内在性負荷 と 課題外在性負荷 波動拳 課題内在性負荷が高いことは、悪いことではない 循環的複雑度 99. Podcastを編集する技術 w/ tomiyama における課題外在性負荷の下げ方 例外と課題外在性負荷の関連 横断的関心事 アスペクト指向プログラ

    102. A Philosophy of Software Design (3/3) w/ twada | fukabori.fm
    t-wada
    t-wada 2023/08/16
    ポッドキャスト fukabori.fm の ep.102 に出演し、名著『A Philosophy of Software Design (2nd ed)』をテーマに話しました。今回はなんとなく使われがちな「認知負荷(Cognitive Load)」という言葉を深掘りしていきます #fukabori
  • 101. A Philosophy of Software Design (2/3) w/ twada | fukabori.fm

    MP3ファイルをダウンロード 内容紹介 twadaさんをゲストに、A Philosophy of Software DesignをテーマにしたエピソードのPart2です。今回は「例外」についてひたすら語っていただきました。 出演者 話したネタ 書籍:A Philosophy of Software Design, 2nd Edition 書籍における例外・エラーの扱い Define error out of existence 例外はなぜ複雑性を増大させるのか? プロダクションレベルのコードにおけるエラーハンドリングの分量 結果に着目する設計へのシフト 防御的プログラミングとは Design by Contract エラーを適切に出すための「適切」とは その例外は回復可能なものかどうか?プログラミングミスなのか?という観点 エラーの運用側への通知 例外のバッドパターン:例外を catch

    101. A Philosophy of Software Design (2/3) w/ twada | fukabori.fm
    t-wada
    t-wada 2023/08/12
    ポッドキャスト fukabori.fm に出演し、名著『A Philosophy of Software Design (2nd ed)』の第10章「Define Errors Out Of Existence」を軸足に、エラーや例外、それらのハンドリング、ロギング等の設計についてお話をさせていただきました
  • React

    2023年度リクルート エンジニアコース新人研修の講義資料です

    React
    t-wada
    t-wada 2023/08/12
    新卒向けReact研修の皮を被った全222ページ(!)の圧倒的資料
  • 株式会社リクルート エンジニアコース新人研修の内容を公開します!(2023年度版) | Recruit Tech Blog

    こんにちは! 2023年度エンジニア新卒の、吉田です。 株式会社リクルート 新卒エンジニアコースでは、部署への配属前に、BootCampと呼ばれる新人研修を行っています。 日は2023年度の研修の内容を、実際に受講した新卒の立場から紹介させていただきます。 研修の内容については毎年反響をいただいていますが、今年度も一段と進化し、より充実した研修でした。 ページ下部に研修資料を公開していますので、ぜひ研修の雰囲気を感じ取っていただけると嬉しいです。 研修の概要 エンジニアコースの新人研修は、配属後にスピード感を持って成長できるようになることを見据え、 「さまざまな技術領域の講座を受け、興味関心を広げて、知らなかった好奇心に出会う」 「現場で求められる『仕事への取り組みスタンス』をつかむ」 「気軽に相談できる仲間(同期)をつくる」 の3点が目的とされています。 今年度は、入社前に行われたスキ

    株式会社リクルート エンジニアコース新人研修の内容を公開します!(2023年度版) | Recruit Tech Blog
    t-wada
    t-wada 2023/08/11
    リクルートの新人研修資料を今年も公開いたしました。ブラウザ、React、Next.js、Webアクセシビリティ、事業価値とエンジニアリング、TOC、TPS、A/Bテスト、検索結果の品質向上、現代的システム開発概論などなど特盛りです
  • 100. A Philosophy of Software Design (1/3) w/ twada | fukabori.fm

    MP3ファイルをダウンロード 内容紹介 twadaさんをゲストに、A Philosophy of Software Designをテーマに色々と語っていただいたエピソードです。 出演者 話したネタ 書籍:A Philosophy of Software Design, 2nd Edition 資料:“A Philosophy of Software Design” を30分でざっと理解する 記事:ソフトウェア設計についてtwada技術顧問と話してみた 〜 A Philosophy of Software Design をベースに 〜 記事:【続】ソフトウェア設計についてtwada技術顧問と話してみた 〜 A Philosophy of Software Design をベースに 〜 書籍の翻訳は出ない? Working Code isn’t Enough ストラテジックアプローチ と タ

    100. A Philosophy of Software Design (1/3) w/ twada | fukabori.fm
    t-wada
    t-wada 2023/08/02
    ポッドキャスト fukabori.fm の ep.100 公開収録に出演し、名著『A Philosophy of Software Design (2nd ed)』をテーマにお話をさせていただきました。何卒よろしくお願いします! #fukabori
  • 和田卓人(t_wada)さんをお呼びして「質とスピード」の社内講演をしていただきました! - stmn tech blog

    こんにちは、スタメンCTOの松谷(@uuushiro) です。 7/25に、 和田卓人さん (以下、t_wadaさん)をお呼びし、「質とスピード」の社内講演会を開催しました! t_wadaさんにご依頼したきっかけ スタメンが提供する「エンゲージメントプラットフォーム TUNAG(ツナグ)」はスタメンの創業事業で、サービス提供から約7年が過ぎました。この約7年間、プロダクト成長に注力してきた中で、内部品質や開発効率などに関する課題が後手に回っていました。 TUNAGが成長軌道に乗ってきた今、今後もエンジニア組織をスケールさせながら、継続的にプロダクトの価値を素早く世の中に届けていくために、開発者体験(DevEx)に関する明確な戦略が不可欠だと考えており、この課題に集中して取り組むために、今年の4月からCTO室にDevEx(Developer eXperience)チームを立ち上げ、2023

    和田卓人(t_wada)さんをお呼びして「質とスピード」の社内講演をしていただきました! - stmn tech blog
    t-wada
    t-wada 2023/07/26
    "弊社の代表や他の職種メンバーも参加" "Slackチャンネルは大盛りあがりで、学びになるだけでなく非常に楽しい時間" "「質とスピード」の講演は、我々スタメンにおける「内部品質に対する共通認識」の構築を加速"
  • twadaさんによる2023年度版TDDワークショップを開催しました - Pepabo Tech Portal

    挨拶 こんにちは。2023年04月に入社した、minne事業部エンジニアの@kazuです。 この度、弊社GMO ペパボ(以下、ペパボ)では2022年に引き続き、今年も日のTest-Driven Development(TDD) の第一人者である @t_wada さんをお招きしてTDDワークショップを開催しました。前回:『t_wadaさんによるTDDワークショップを開催しました』 なぜTDDワークショップを開催しているのかについては、こちらの記事『ふつうの開発と TDD ワークショップ』で詳しく説明していますのでご覧ください。 さて、それでは今回のTDDワークショップで何をしたのか、どんな気づきがあったのかなどについて、参加パートナーからそれぞれお話ししてまいります。 具体的な研修内容 概要 ワークショップは、事前に各参加パートナーが基調講演/ライブコーディングの動画を予習し、動画内でのラ

    twadaさんによる2023年度版TDDワークショップを開催しました - Pepabo Tech Portal
    t-wada
    t-wada 2023/07/07
    今年特に印象に残ったのはGitHub Copilot等のコーディング支援AIを多くの参加者が活用していることでした。開発フローの質とスピードに大きな影響を与える変革の年であり、TDDの世界もまた大きく変わると再認識しました
  • 結合テストの自動化にQAはどうかかわっていったか - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは、サイボウズの永田です。 私は、サイボウズの開発部、アジャイル・クオリティで、アジャイルの品質を探求する活動をしています。 この記事では、2023年3月9日、JaSST Tokyo 2023テクノロジーセッションで発表させていただいた内容を、より解説を入れながら紹介します。 結合テストの自動化にQAはどうかかわっていったか 今回取り上げる事例では、kintoneフロントエンド刷新プロジェクト(フロリア)で結合テストの自動化を決定した際に、QAメンバーがどのように関与し、困難に直面しながらも、信頼性の高いテストコードを作成するに至るまでの過程をご紹介します。 フロリアについては次のブログをご覧ください。 blog.cybozu.io テストのポリシー ~このミッションにおけるQAのチャレンジ~ フロリア内で新しく3つのチームが立ち上がった際、各チームのテスト戦略の中心を、自動

    結合テストの自動化にQAはどうかかわっていったか - Cybozu Inside Out | サイボウズエンジニアのブログ
    t-wada
    t-wada 2023/07/07
    "各チームのテスト戦略の中心を、自動テストへと移行させることに決定" "QAと開発者のコラボによるテスト設計の議論により、より品質に確信が持てる結合テストのコードを設計できるように" いい事例発表だ
  • CommonJSからES Modulesへの移行する方法。トップダウンかボトムアップか

    Secretlint v7でCommonJS からES Modulesへの移行を行いました。 Secretlint v7.0.0をリリースしました。Pure ESMへの書き直し この記事では、CommonJS(CJS)からES Modules(ESM)への移行を行った経緯と、移行する方法について紹介します。 CJSからESMへの移行は、率直に言えば単調な作業で、メリットが見えにくい作業です。 しかし、将来的にCJSよりもESMが主流になることは間違いないので、移行することは必要です。 移行の作業は、移行方法が決まれば大部分は機械的な書き換えが可能です。 では、実際にどうやって移行したのかを紹介します。 ESMへの移行の影響は依存元へと連鎖する Secretlintのリポジトリはmonorepoになっていて、だいたい40コぐらいのパッケージが含まれています。 そしてパッケージ間で依存関係があ

    CommonJSからES Modulesへの移行する方法。トップダウンかボトムアップか
    t-wada
    t-wada 2023/07/06
    CJSからESMに段階的に移行していく手法が丁寧に説明されていて素晴らしい。ESMの性質を考えると依存ツリーの葉側ではなく根側から移行するのが良い
  • 第6回 自動テストのサイズダウン戦略 ~テストダブルを作る前に考えるべきこと~ | gihyo.jp

    このコラムの主なテーマは、信頼できる実行結果にできるだけ短い時間でたどり着く自動テスト群の構築です。稿では、テストダブルをうまく活用してテストピラミッドを構築する戦略を立てます。 信頼性の高い自動テスト群を求めて 自動テスト全体の中長期的な信頼性を守るために、図1のようにLargeからMediumへ、MediumからSmallへテストサイズを適宜下げ、テストピラミッドを構築します[1]。テストサイズとは、単一プロセスに閉じたテストをSmall、単一マシンに閉じたテストをMedium、そういった制約がないテストをLargeテストと呼ぶ分類基準です。 図1 テストピラミッド サイズダウンを考えるとき、テストダブルの活用が思い浮かびます。テストダブルとは、自動テストに使用する偽物、代用品のことです。単一プロセスや単一マシンに収まらない外部依存を偽物に置き換え、テストサイズを下げます[2]。 テ

    第6回 自動テストのサイズダウン戦略 ~テストダブルを作る前に考えるべきこと~ | gihyo.jp
    t-wada
    t-wada 2023/06/28
    #wdpress の連載『サバンナ便り』の第6回「自動テストのサイズダウン戦略」が #gihyojp で公開されました。互換性の観点からテストダブルを捉え直し、1.テストダブルを使わない 2.作らない 3.工夫して作る の順番で検討します
  • 質とスピード(AWS Dev Day 2023 Tokyo 特別編、質疑応答用資料付き) / Quality and Speed AWS Dev Day 2023 Tokyo Edition

    AWS Dev Day 2023 Tokyo GS-1-2 | 6月 22 日(木)10:55 - 11:45

    質とスピード(AWS Dev Day 2023 Tokyo 特別編、質疑応答用資料付き) / Quality and Speed AWS Dev Day 2023 Tokyo Edition
    t-wada
    t-wada 2023/06/23
    AWS Dev Day 2023 Tokyo ゼネラルセッション講演資料を公開しました。講演時間に合わせて内容を絞りつつ改訂しました。 #AWSDevDay
  • t_wadaさんの「レガシーコード改善ワークショップ」体験記🦁 - コドモン Product Team Blog

    こんにちは!コドモン開発部の加藤です。 すっかり暑くなってきましたね。我が家ではが換毛期を迎えて、家中毛だらけになりながらも日々なんとか暑さを乗り切っています。 最近コドモンでt_wadaさんにレガシーコード改善ワークショップを行っていただきました。 今回はそのワークショップの様子についてレポートしていきます! レガシーコード改善ワークショップの概要 t_wadaさんの紹介 ワークショップの目的と内容 目的 1.午前の部 2.午後の部 ワークショップ中のハイライト 午前の部 活発な実況チャンネル🗣️ テストを書いただけでは設計はよくならない、を実感する😬 質問コーナーではE2E肥大化の課題に注目が集まる👀 午後の部 最初のテスト作成をライブコーディングで学ぶ💪 実践を始めると意外と手が動かない……🥺 人が1on1を受けている姿をみられるの貴重👏 まとめ レガシーコード改善ワー

    t_wadaさんの「レガシーコード改善ワークショップ」体験記🦁 - コドモン Product Team Blog
    t-wada
    t-wada 2023/06/22
    株式会社コドモンにお招きいただき、レガシーコード改善ワークショップを行いました。研修用のSlackチャネルを実況や質疑応答にフル活用し、効果的な研修を行うことができました。ご参加ありがとうございました!
  • サバンナ便り〜自動テストに関する連載で得られた知見のまとめ(2023年5月版)〜 / Automated Test Knowledge from Savanna 202305 edition

    2023/05/17(水) Qiita Conference 2023

    サバンナ便り〜自動テストに関する連載で得られた知見のまとめ(2023年5月版)〜 / Automated Test Knowledge from Savanna 202305 edition
    t-wada
    t-wada 2023/05/18
    Qiita Conference 2023 基調講演の講演資料を公開しました。自動テストの知見をまとめています。最近行っている講演の最新版です。 #QiitaConference
  • 『WEB+DB PRESS』 休刊のお知らせ:WEB+DB PRESS

    WEB+DB PRESSは,2023年8月発売のVol.136をもって隔月刊誌としては休刊させていただきます。物価上昇による製作費の高騰など諸般の事情により,今回の決定に至った次第です。 突然の休刊案内にてたいへん恐縮ではございますが,何卒ご理解を賜りますよう,お願い申し上げます。 22年以上の長きにわたり,絶大なご支援をいただきましたことを,厚く御礼申し上げます。 弊誌で扱っていた分野のコンテンツは,今後も弊社刊行のSoftware Designやgihyo.jp,書籍などで提供させていただきます。また,必要な場合には「特別号」の編集・刊行なども検討してまいります。 最後に,皆様の一層のご活躍を心より祈念しております。

    『WEB+DB PRESS』 休刊のお知らせ:WEB+DB PRESS
    t-wada
    t-wada 2023/05/02
    vol.1からの読者で、何度か特集を書かせていただいて、キャリアを通じてお世話になった雑誌でした。そしていま、連載中の雑誌が休刊するという希有な経験をしようとしています。寂しい。最終回どうしようかな……
  • ようこそ | docs

    GitHub Copilot パターン&エクササイズ のドキュメンテーションへようこそ! 👋 このコミュニティ駆動のオープンソースガイドは、GitHub Copilot のベストプラクティスを提供することに専念しています。 あなたのプロジェクトにこれらの慣行を理解し、評価し、統合するのを簡単にすることが私たちの目的です。 🚀 �X�:�U このドキュメントは、開発者がGitHub Copilotや他のAI駆動のツールをより良く使用するのを助けるために、GitHubのカスタマーサクセスアーキテクト @yuhattor によって提供されています。 GitHubの公式ドキュメントではなく、個人やコミュニティの意見が反映されたコミュニティドキュメントとしての特性を持ちます。 ぜひコントリビューションをして、あなたの意見もこのに反映させてください。 これらのパターンの一部は個々の環境で効果が実

    ようこそ | docs
    t-wada
    t-wada 2023/04/27
    "このドキュメントでは、GitHub Copilot などをつかった AI ネイティブ開発におけるベストプラクティスを特定の形式でまとめて、簡単に理解、評価、そしてあなたの状況に適用できるようにしています"
  • コード品質はやはりビジネスに影響を与える - mtx2s’s blog

    私たちソフトウェアエンジニアは、コード品質についてしばしば論ずるけれども、ではコード品質の良し悪しがどれほどビジネスに影響するのかと問われると、回答に窮する。只々、「コード品質が悪いと変更により多くの時間がかかります」だとか、「欠陥の修正に追われて開発時間が奪われます」だとか、個人の経験やエンジニア的一般論に頼った定性的な説明に終始するしかない。ソフトウェアを繰り返し変更する頻度が高いほど、コード品質が開発時間に影響を与えるのは確かにそのとおりだと思えるが、はたしてそれは、どれほどのインパクトなのだろうか。 2022年の研究論文 "Code Red: The Business Impact of Code Quality – A Quantitative Study of 39 Proprietary Production Codebases" では、コード品質がビジネスに与えるインパクト

    コード品質はやはりビジネスに影響を与える - mtx2s’s blog
    t-wada
    t-wada 2023/04/27
    コード品質(保守性)のビジネスインパクトを時間という形で計測した論文の解説。低品質なコードに含まれる欠陥は高品質なコードの15倍。開発時間は高品質なコードの平均2倍、最大9倍、そして予測可能性が著しく低下
  • オープンソースの開発者が製造責任や賠償責任を負う可能性があるとして、EUのサイバーレジリエンス法案にPython Software FoundationとEclipse Foundationらが異議を表明

    欧州連合(EU)の政策執行機関である欧州委員会は、サイバー攻撃による社会的な被害が大きくなってきていることを背景に、現在広く普及しているさまざまなデジタル製品やサービスのセキュリティをより高める目的で、サイバーレジリエンス法案(CRA:Cyber Resilience Act)を検討しています。 この法案が目指すところは、より脆弱性の少ないデジタル製品が市場に投入されるようにすること、市場に投入後も製造者が製品のライフサイクル全体を通じてセキュリティに真剣に取り組むことを保証すること、そしてユーザーもセキュリティを考慮した製品を選択できるようにすること、などです。 欧州委員会では同時に製造者責任法の改定案も検討中です。これは従来の製造者責任法ではカバーされていなかったデジタル関連の製品やサービスに対しても製造者責任を問えるようにするものです。 しかしこれらの法案ではオープンソースの開発者が

    オープンソースの開発者が製造責任や賠償責任を負う可能性があるとして、EUのサイバーレジリエンス法案にPython Software FoundationとEclipse Foundationらが異議を表明
    t-wada
    t-wada 2023/04/21
    "これらの法案ではオープンソースの開発者が製造責任や賠償責任を負う可能性があり、それがオープンソースの開発と革新を阻害することになる" "膨大な潜在的費用のリスク" "製造者の定義があいまいなまま"
  • 第5回 テストピラミッド ~自動テストの信頼性を中長期的に保つ最適なバランス~ | gihyo.jp

    粒度の異なる各自動テストをどの程度書くか悩まれている方は多いと思います。今回は、自動テストの理想的なバランスを示す「テストピラミッド」について説明します。 テストピラミッドとは何か テストピラミッドとは、コスト(記述コストと実行コスト)と忠実性(物の挙動を反映している度合い)が高く、実行速度と決定性(テストが毎回同じように安定して動く度合い)が低いテストほどケース数を減らすべきだという、自動テストケース数の望ましい比率をピラミッド型に視覚化したものです。 図1は、テストの粒度をユニットテスト、インテグレーションテスト、E2E(end to end)テストの三段階で示しており、テストピラミッドの説明によく用いられます。ユニットテストが最も多く、E2Eテストが最も少ない状態に近づけることで、開発速度と信頼性の高いバランスが得られると言われています。 図1 テストピラミッド なぜ比率を意識する

    第5回 テストピラミッド ~自動テストの信頼性を中長期的に保つ最適なバランス~ | gihyo.jp
    t-wada
    t-wada 2023/04/20
    #wdpress で連載しているコラム『サバンナ便り』の第5回「テストピラミッド」が #gihyojp で公開されました。自動テストの信頼性を中長期的に保つテストピラミッドを、テストサイズやテストダブルも含めて説明しています。
  • @t_wadaに学ぶテスト駆動開発【CARTA 23新卒研修】 - CARTA TECH BLOG

    こんにちは!CARTA 技術広報の@ShuzoNです。 @t_wadaさんによるテスト駆動開発の研修を行いました @t_wadaによる 「みてわかるテスト駆動開発」 4/12(水)、 CARTA技術顧問である@t_wadaさんを招聘し、テスト駆動開発(TDD: Test-Driven Development )研修を行いました。 テスト駆動開発とは テスト駆動開発とは、開発時にコードの検証を小さく重ねフィードバックを得ながら進めるプログラミング開発手法です。これにより大きな問題を小さな問題に分割し、漸進的に安心しながらコードの改善を進めることが出来ます。 具体的には、最初に実コードに期待する振る舞いをテストするコード(テストコード)を書き、そのテストコードが成功するように実コードを連続的にリファクタリングしていきます。結果的には、テストコードが実コードの振る舞いを担保してくれるため、自分

    @t_wadaに学ぶテスト駆動開発【CARTA 23新卒研修】 - CARTA TECH BLOG
    t-wada
    t-wada 2023/04/19
    CARTA HOLDINGS の新人ソフトウェアエンジニアの皆様に向けてテスト駆動開発研修を行いました。隣り合ってペアプログラミングできるオフライン開催は本当に久しぶりです。
  • AWSの主要サービスをローカルでエミュレートする「LocalStack 2.0」リリース。機能の同等性と性能などさらに向上

    AWSの主要サービスをローカルでエミュレートする「LocalStack 2.0」リリース。機能の同等性と性能などさらに向上 AWSの主要なサービスのAPIをローカルマシン上でエミュレートする機能を提供する「LocalStack」のバージョン2.0が正式リリースとなりました。 LocalStack 2.0 is here! Our next-gen cloud emulation platform comes with significant improvements in parity, performance, and efficiency for a better development and testing experience for your cloud applications. Read more here: https://t.co/7rU0pKVxW6 #LocalSt

    AWSの主要サービスをローカルでエミュレートする「LocalStack 2.0」リリース。機能の同等性と性能などさらに向上
    t-wada
    t-wada 2023/04/18
    LocalStackが2.0になって忠実性がさらに向上。ローカルで動けばテストサイズをLargeからMediumにできる。テストピラミッドを形成してCI上で頻繁に自動テストを回せる範囲が広がり、AWS上でテストすべきケースと頻度が減る。