shzawaのブックマーク (92)

  • YAGNIと拡張性のあいだ - 電通総研 テックブログ

    こんにちは!Xイノベーション部プロダクトイノベーションセンターの米久保 剛です。 弊社のテックブログ上では今回が初めての記事執筆となります。アーキテクチャ設計やアプリケーション設計の話を中心に、不定期に情報発信していきたいと考えています。 YAGNI原則 YAGNI原則をご存知でしょうか。 エクストリーム・プログラミング(XP)の重要な原則の一つであるこの原則は、You Ain't Gonna Need Itのアクロニム(頭字語)から命名されています。日語にすると「どうせ要らないって」というニュアンスでしょうか。推測に基づいて余計な機能を作り込んだところで将来実際に使われる可能性は低く、時間と労力を無駄にするばかりかコードの複雑化などのリスクさえあります。ですから、現時点でわかっている要件をちょうど満たすだけの機能を実装すべきであるとYAGNI原則は主張します。 YAGNI原則は機能(

    YAGNIと拡張性のあいだ - 電通総研 テックブログ
    shzawa
    shzawa 2024/05/27
  • フロントエンド開発の効率化!Nx と Playwright でビジュアルリグレッションテストを賢く実施しよう - Techtouch Developers Blog

    はじめに なぜ VRT が必要なのか? VRTとは? Nx と Playwright で賢く VRT を実施する どう賢く実施したか 結果 まとめ 参考資料 はじめに 「べログ ラーメン TOKYO 百名店」の全店舗訪問を目指してラーメン巡りを続けているフロントエンドエンジニアの kenshin です。 フロントエンド開発者の皆さん、新機能を追加したり、ライブラリをアップデートした後に UI が予期せず変更されてしまった経験はありませんか?このような問題を素早く検知し、未然に防ぐ方法として、ビジュアルリグレッションテスト(以下、VRT)があります。 この記事では、Nx と Playwright を用いて VRT を効率的に行う方法をご紹介します! なぜ VRT が必要なのか? フロントエンド開発では、新機能の追加やライブラリのアップデートにより、予期せぬ UI 変更が発生することがありま

    フロントエンド開発の効率化!Nx と Playwright でビジュアルリグレッションテストを賢く実施しよう - Techtouch Developers Blog
    shzawa
    shzawa 2024/05/27
  • ドキュメントを書く目的を整理してみた

    こんにちは。フロントエンドエンジニアの辻です。 弊社 Gaji-Labo では、各メンバーのノウハウを共有する Wiki の策定を進めています。社内では職能横断 Wiki や標準 Wiki と呼ばれています。 異なる職能の知見を集合して、チークワークの強化・コミュニケーションの円滑化を図るのが目的です。 はじめは手が止まる事もありましたが、現在ではいくつか Wiki が策定され、活用も始まりつつあります。 こうした取り組みの中で、「 Wiki、もとい、ドキュメントを書く目的」を私なりの言葉で整理できてきました。 今回はそれを紹介していきます。 ドキュメントを書く目的 = 知識の積集合を形成する そもそも、ドキュメントを書く目的とは何なのでしょうか? 様々な目的があると思いますが、私は「知識の積集合を形成する」事にあると考えています。 そして、知識の積集合を形成するためには、下記の2ステップ

    ドキュメントを書く目的を整理してみた
    shzawa
    shzawa 2024/05/23
  • The story of 'stale-while-revalidate' HTTP Cache and missing headers

    The story of 'stale-while-revalidate' HTTP Cache and missing headers The Cache-Control HTTP header offers a wide range of possibilities for optimizing web applications. Two of its relatively interesting values are the stale-while-revalidate and stale-if-error attributes, described in the RFC 5861 specification. Support for the former attribute has already been implemented in the most popular brows

    The story of 'stale-while-revalidate' HTTP Cache and missing headers
    shzawa
    shzawa 2024/04/15
  • v5 で何が変わる? 非同期状態管理ライブラリ TanStack Query の新機能と最適化 - Techtouch Developers Blog

    はじめに 三行まとめ TanStack Query とは? v5 アップデート内容の紹介 hooks のインターフェースの統一 Suspense の正式サポート v4 v5 Optimistic Update をシンプルに そもそも Optimistic Update とは? デモアプリ Optimistic Update の実装例 v4 v5 まとめ 参考資料 はじめに こんにちは!テックタッチでフロントエンドエンジニアをしている tsune です。野球好きの自分は、この時期になるとプロ野球開幕が待ち遠しくなってきます⚾ 開幕戦のチケットも確保したので、当日は会社のメンバーと一緒に神宮球場に行く予定です🥳 この記事では 2023 年 10 月に正式リリースされた TanStack Query の v5 へのアップデート内容を紹介します! また、その中でも Optimistic Upda

    v5 で何が変わる? 非同期状態管理ライブラリ TanStack Query の新機能と最適化 - Techtouch Developers Blog
    shzawa
    shzawa 2024/03/11
  • 「いらない機能はさっさと消したい」負債解消の初手「消す」を組織全員で実践する方法【Sansan西場正浩】 レバテックラボ(レバテックLAB)

    「いらない機能はさっさと消したい」負債解消の初手「消す」を組織全員で実践する方法【Sansan西場正浩】 2024年1月16日 Sansan株式会社 執行役員 VPoE/VPoP 西場 正浩 大学院で数理ファイナンスの博士号を取得後、大手銀行で数理モデルの開発に従事。その後医療系IT企業でエンジニアやプロダクトマネジャー、事業責任者、採用人事などを幅広く務める。2021年にSansan株式会社へ入社。技術部研究開発部でマネジメント業務に当たり、現在はVPoEとしてエンジニア組織の整備と強化を、さらにVPoPとして、営業DXのためのSaaS「Sansan」のグロースを担う。 X(@m_nishiba) note 多数のビッグプロダクトがローンチから10周年を迎える昨今、技術的負債は多くの開発チームにおいて巨大な課題となっています。積み重なった負債の影響で開発生産性が下がり、返済しようにもリ

    「いらない機能はさっさと消したい」負債解消の初手「消す」を組織全員で実践する方法【Sansan西場正浩】 レバテックラボ(レバテックLAB)
    shzawa
    shzawa 2024/01/16
  • 俺だけが頑張ってるという感情は危険 - Konifar's ZATSU

    時間が微妙に空いてしまったので、その間に自分の経験を踏まえてガーッとまとめる。 特に誰のことを言ってるとかではないので「俺かな…」とか無駄に心配にならないようにしてほしい。 「なんで俺がこんなに頑張らないといけないんだ」みたいな感情湧くことあるよね。「なんで俺がアイツの仕事までしなきゃいけねえんだ」とかさ。「俺はこんなにちゃんとやってるのにあいつらは」とかさ。もうめっちゃあるよね。 その頑張りはたぶん正しいんだけど、この負の感情マジで無駄だなーと思っている。人と自分を比べだすとめっちゃ疲れるんだよね。大体さ、その怒りの根源は自分の不甲斐なさの認識から来てることもあるわけ。自分が圧倒的にできて、他の人にも影響を与えられるくらいなのであれば何も問題ないんじゃないかって。それができない分イライラしちゃって、自分だけなんでこんなに頑張らなきゃいけないんだろうって気持ちになる。 重要なのは、頑張りは

    俺だけが頑張ってるという感情は危険 - Konifar's ZATSU
    shzawa
    shzawa 2023/11/28
  • 真意を確認している要注意ワード - Konifar's ZATSU

    言った人と聞いた人の認識がずれやすい言葉というのがあると思っていて、その話を雑に書いておきたい。 自分はこれらを"要注意ワード"と呼んでいて、出てきたら真意を確認するようにしている。無意識的にやっている人は結構いると思うので、同じような"要注意ワード"の知見吸いたい。 リスク 「リスクがある」と言われたときは、何のリスクのことを言っているかを確認している。 たとえば何かの開発を1週間後にリリースしたい、と言った時に「いやーこれは結構怖いしリスクありますよね」みたいな話になったとする。ここでいうリスクは何を言っているのだろうか。なんとなく品質が担保しきれないリスクのことを言っているような気がするが、実は間に合わないかもしれないことをリスクと言っているのかもしれない。あるいは、チームメンバーのモチベーションが下がることをリスクと言っている可能性もある。 何のリスクのことを言っているのかすり合わ

    真意を確認している要注意ワード - Konifar's ZATSU
    shzawa
    shzawa 2023/11/28
  • 「@Roomba 掃除しろ」 Slack BOT から新型ルンバ980をWiFiで制御する【後編】

    iPhoneのパケットキャプチャ - QiitaMac(投稿ではOS X 10.9〜で説明)でのiPhoneのパケットキャプチャについて投稿します。 色々なやり方があると思いますが、自分は ・HTTPリクエストとレスポンス内容を確認する場合はCharles。 ・ネットワーク関連のエラー解析を行う場合はWireShark を使っております。 上記2つについて手順や自分が思う良いところ(個人的な見解ですが。。)などついて記載します。 HTTPプロキシとしてPC上で動作し、iPhoneからのリクエストとレスポンスをモニタリングします。 参考: http://www.charlesproxy.com/ 1.下記Webページの"Download a free trial"からCharlesをダウンロード/インストール。 http://www.charlesproxy.com/download/ 2

    「@Roomba 掃除しろ」 Slack BOT から新型ルンバ980をWiFiで制御する【後編】
    shzawa
    shzawa 2023/11/19
  • 開発要望タスクの優先度が「高」ばかりで悩んでませんか? - CARTA TECH BLOG

    CTO室 相談室でCARTAの各部署の技術メンター・コーチをしている前田@brtriver です。 自分の仕事内容を説明するのが難しいですが、スタッフエンジニアでいう右腕です! いろんな部署のサポートをしていると開発要望タスクのリストを確認する場面がよくあります。 そして、その中の「優先度」という項目で正しく優先度をつけることができていない現場が多いと感じます。 そこで、今回はどのように「優先度」を考えればよいかについて私自身が意識していることをまとめてみるので、ぜひ一緒に考えてみましょう。 優先度が「高」だらけになってしまう チケット管理において優先度が「高」だらけになってしまう現象を目にしたことはありませんか? チケットは困ってる人が書くため、基とその優先度は「高」が多くなります。 チケットに残すために書いたとしても、優先度低いタスクはそもそもやらないという判断されることが多く、そ

    開発要望タスクの優先度が「高」ばかりで悩んでませんか? - CARTA TECH BLOG
    shzawa
    shzawa 2023/11/14
  • Importing projects

    shzawa
    shzawa 2023/11/08
    “You can run any public GitHub repository on StackBlitz by adding the username and repository name to the URL like so: stackblitz.com/github/{GH_USERNAME}/{REPOSITORY_NAME} ”
  • Amazon Verified Permissionsとgolangで認可処理を実装してみた - Techtouch Developers Blog

    Amazon Verified Permissions とは 従来の認可処理 Cedar 言語の使い方 基的な記述方法 RBAC の例 ABAC の例 golang で動かしてみる 1. ポリシーストアを AWS コンソールから作成する 3. サンプルアプリケーションの実装 最後に こんにちは、2023年5月にバックエンドエンジニアとしてジョインした yamanoi です。 最近は Cloudflare スタックに注目しており、新機能を触ったりアップデートを眺めたりしています。 今回は先日 GA (一般利用可能)になった AWS のサービス Amazon Verified Permissions を、 golang で実装した簡単なサンプルを交えて紹介したいと思います。 Amazon Verified Permissions とは Amazon Verified Permissions

    Amazon Verified Permissionsとgolangで認可処理を実装してみた - Techtouch Developers Blog
    shzawa
    shzawa 2023/11/08
  • ブラウザでリロードしながらキャッシュの挙動を確認してる全ての開発者へ | blog.jxck.io

    Intro こういうタイトルを付けるのはあまり好きではないが、あえてこのようにした。 「ブラウザでキャッシュがヒットしない」 以下は、 Web における Caching の FAQ だ。 サーバで Cache-Control を付与したのにキャッシュがヒットしない サーバで ETag を付与したのに If-None-Match が送られない サーバで Last-Modified-Since を付与したのに If-Modified-Since が送られない 先日も、筆者が書いた MDN の Cache セクションで「記述が間違っているのでは?」と同様の質問を受けた。 Issue about the Age response header and the term "Reload" · Issue #29294 · mdn/content https://github.com/mdn/cont

    ブラウザでリロードしながらキャッシュの挙動を確認してる全ての開発者へ | blog.jxck.io
    shzawa
    shzawa 2023/11/06
  • Working Out Loud 大声作業(しなさい)、チームメンバー同士でのトレーニング文化の醸成 - スタディサプリ Product Team Blog

    ソフトウェアエンジニアリングと一見関わりはなさそうで、しかしチームで成果を出す過程においてとても重要だと筆者が考えているコンセプト、 "Working Out Loud" について書いてみます。 日語の記事がほとんど見当たらないのであまり知られている言葉ではないかもしれません。 対象読者 以下に興味や関心を持つ方を対象読者として想定しています。 チーム開発におけるコラボレーション手法 チーム開発者としての振る舞い方 テックリードやスペシャリストの育成 が、心ではチーム開発する全ての方に届いてほしいです。 まえがき ある夜に同僚の@ujihisaと近場ないし遠方のEngineering ManagerやVPofEの皆さんと話す機会があり、その折にふと筆者がこぼしたのが 「開発などの日常の業務において自分がやっている以下の思考様式が大変便利なので、この考え方を最近入社したメンバーにもインス

    Working Out Loud 大声作業(しなさい)、チームメンバー同士でのトレーニング文化の醸成 - スタディサプリ Product Team Blog
    shzawa
    shzawa 2023/10/28
  • 23/10/21 就活に苦しむインテリの学生に社会の真実を教える - LWのサイゼリヤ

    お題箱124 671.以前ツイートされていた雑な格言シリーズの「面接では嘘を吐いてもよい」や「結果が全て」等の意味を詳しく教えて欲しいです。現在進行形で振り回されてます このツイートですね。 仕事に関する言説って「面接では嘘を吐いてもよい」とか「結果が全て」みたいな、まあ正しいっちゃ正しいけどその言い方だと学生は誤解するだろみたいな「精緻な言語化を怠った雑な格言」が無限にあってだいぶ振り回されたのけっこうムカついてる — LW (@lw_ru) 2023年9月22日 いま無職なのでやや気が引けますが書きます(無職が語ることじゃねえだろと思ったので、念のため信頼できる社会人の友達に下読みしてもらって内容に問題ないことを確認しました)。 最初に書いておくと、僕は数百人規模の中小ITでしか働いたことがないので、価値観がその規模感に寄っています。仕事の感性は職や規模によってかなり違って、例えば同じ

    23/10/21 就活に苦しむインテリの学生に社会の真実を教える - LWのサイゼリヤ
    shzawa
    shzawa 2023/10/28
  • VS Code:コードの折りたたみ、展開(フォールド、アンフォールド)をする方法

    マウス操作では左端に表示されるアイコンをクリックすることでコードの折りたたみ、展開ができます。すべてを折りたたみ、展開するにはShiftを押しながらクリックします。 キーボードショートカットでの操作は以下のとおりです。 Ctrl+Shift+[:折りたたみ Ctrl+Shift+]:展開 Ctrl+K Ctrl+L:折り畳み/展開のトグル Ctrl+K Ctrl+[:再帰的に折りたたみ Ctrl+K Ctrl+]:再帰的に展開 Ctrl+K Ctrl+0:すべて折りたたみ Ctrl+K Ctrl+J:すべて展開 Ctrl+K Ctrl+1:レベル1で折りたたみ Ctrl+K Ctrl+2:レベル2で折りたたみ Ctrl+K Ctrl+3:レベル3で折りたたみ Ctrl+K Ctrl+4:レベル4で折りたたみ Ctrl+K Ctrl+5:レベル5で折りたたみ Ctrl+K Ctrl+6:レベ

    VS Code:コードの折りたたみ、展開(フォールド、アンフォールド)をする方法
    shzawa
    shzawa 2023/10/16
  • Goコンパイラのお勉強(3)~配列の効率的な操作に関する最適化~ - Techtouch Developers Blog

    はじめに string と byte のキャスト最適化 1. map のキー指定のためのキャスト 2. string を byte 毎に処理するためのキャスト 3. 比較のためのキャスト memclr による配列ゼロクリア最適化 ガベージコレクションのマークスキャン回避 おわりに 参考文献 はじめに SRE の izzii (𝕏: @ahneahneahne) です。今回をもって「Go コンパイラのお勉強」と題した連載ブログが完結です!仕事の話とは直接関係がないネタだったので、書く内容に悩むということはなく気持ちよくかけました。さて、今回は「配列の効率的な利用」と題して golang/go CompilerOptimizations で扱われている残り物の紹介をしていきます笑 残り物とは言っても知ると知らないとでは Go コードの読み方が変わるかと思いますので、ぜひ! [第 1 回] G

    Goコンパイラのお勉強(3)~配列の効率的な操作に関する最適化~ - Techtouch Developers Blog
    shzawa
    shzawa 2023/10/16
  • Microsoft Intune で Mac を管理するときに躓いたこと - Techtouch Developers Blog

    あいさつ Mac のパスワードポリシーを変更すると必ずローカルユーザーのパスワードを変更する必要がある Mac へブラウザ拡張機能を配布するにはplistを配布する おわりに あいさつ こんにちは、CSE(Customer Success Engineer) の kacchan です。先日、大学時代からファンであるプロのジャズギタリストからレッスンを受けたこともあり、毎週末とりあえずギターをさわるようになってきました。アドリブをいいかんじで取れるように練習するぞ! さて、半年くらい前にはなるのですが社内へ Microsoft Intune 導入を進めました。そのときに Mac 関係で躓いたことがあったのですが、あまりインターネット上に情報がなかったので紹介します。 Mac のパスワードポリシーを変更すると必ずローカルユーザーのパスワードを変更する必要がある 結論から述べると、以下の mac

    Microsoft Intune で Mac を管理するときに躓いたこと - Techtouch Developers Blog
    shzawa
    shzawa 2023/10/02
  • Four Keysを用いた改善活動のアンチパターンと、本質的な改善のために必要な「なぜ?」 - Agile Journey

    Agile Journeyをご覧のみなさん、はじめまして。株式会社リンクアンドモチベーションの川津(@KawatsuYusuke)です。こちらの記事では主に私たちがFour Keys メトリクスを元に、開発生産性向上を目指した活動に関する話題についてお伝えします。 と言っても、『LeanとDevOpsの科学』をはじめ、Four Keysの運用に関するトピックはすでに多く語られています。また、Four Keysは便利なメトリクスであるがゆえに、ときに「Four Keysを改善する」という手段が目的化してしまうことがあります。稿では主にこれから開発生産性向上に取り組もうとしている方に向けて、私たちの取り組みと、体験したアンチパターンをもとに、「Four Keys改善の取り組みには "なぜ?" が大事」についてお伝えします。 私たちの開発生産性向上のはじまりと、目指すべき状態の設定 Four

    Four Keysを用いた改善活動のアンチパターンと、本質的な改善のために必要な「なぜ?」 - Agile Journey
    shzawa
    shzawa 2023/09/29
  • GitHub Actionsからpushする際に権限でエラーが出た場合に確認するポイント【GitHub Actions】 - yousanのメモ

    初めに 実行内容 エラー内容 対応方法 初めに 個人で自動化する際にGitHub Actionsを使用しています(*1)。動かす際に権限周りでハマったので,メモしておきます (*1) GitHub Actionsをサーバーレスで使うことは,以下の範囲であれば2023/2/4時点での利用規約上大丈夫みたいです。 使い過ぎには気をつけましょう 当社のサーバーに負担をかける行為で、その負担がユーザーに提供する利益と不釣り合いなもの(例えば、コンテンツ配信ネットワークやサーバーレスアプリケーションの一部としてActionsを使用しないこと、ただし、低負荷であれば低利益のActionでもよい) docs.github.com 実行内容 まず処理内容ですが,以下のような処理を 特定の GitHub Actionsフロー(yml)内で行っています。普通にcommitしてpushするだけです。 - nam

    GitHub Actionsからpushする際に権限でエラーが出た場合に確認するポイント【GitHub Actions】 - yousanのメモ
    shzawa
    shzawa 2023/09/28