タグ

hirose504のブックマーク (14,078)

  • React デザインパターン

    はじめに 長らくReactを雰囲気で書いてきました。コンポーネントを作り、propsを渡し、状態を管理する基的な概念は理解していたものの、より体系的なアプローチや設計パターンについては深く考えずにコードを書いていました。しかし、より大規模で保守性の高いアプリケーションを構築するにつれ、単なる「動くコード」を超えた、堅牢な設計原則の必要性を痛感するようになりました。 この記事は、私自身の再学習を共有するものです。 ※2025/04/21時点、私が関わっているプロダクトのCrowd AgentのReactのバージョンは"18.3.1"です。 目次 Reactデザインパターンとは HOC (高階コンポーネント) パターン[※React18以降では、カスタムフック推奨] Provider パターン Presentational と Container コンポーネントパターン React Hook

    React デザインパターン
    hirose504
    hirose504 2025/04/21
  • 嘘から始まった「スウェーデンの任天堂」奇跡の物語 ~北欧ゲーム市場を開拓した一介の電気店~

    これは―― スウェーデンの青年がついた嘘から始まった物語である。 【目次】 1.運命の出会い 2.行動力と無計画性 3.日人の商談ルール 4、G&Wバブルの崩壊 5.北欧ゲーム市場の開拓 6.「クラブニンテンドー」の創設 7.世界で唯一の任天堂支店 スウェーデンは北欧スカンジナビア半島の中央に位置する人口1000万人弱の王国。 首都はストックホルム。ノーベル賞やイブラヒモビッチで知られる。 ◆運命の出会い◆ 1981年初頭、シンガポールへ訪れていたオヴェ・バーグステン(Owe Bergsten)は、クリスマスシーズンに向けて輸入販売できそうな製品を探していた。彼は母国で電気店を営んでいる若きスウェーデン人である。野望に満ちた彼は輸入販売で一山当てようと画策していたが、とくに何の収穫もないまま帰国の日となっていた。するとフライトまでの空き時間、何気なく空港内を歩いていたらショーウィンドウの

    嘘から始まった「スウェーデンの任天堂」奇跡の物語 ~北欧ゲーム市場を開拓した一介の電気店~
    hirose504
    hirose504 2025/04/11
    “その条件が「最小注文10,000台」というとんでもない内容。約1500万円以上。何とか資金をかきあつめた彼はそれを3セット注文したのだ。もう一度言おう。彼はそれを3万台注文したのだ。このイカかれたナイスガイ。”
  • 『麻雀ファイトガール』ミツモト・ダイアがすごいので開発に事情聴取。生涯現役パツパツ魔法少女お母さんってどういうことなんですか談義 | ゲーム・エンタメ最新情報のファミ通.com

    麻雀ファイトガール』のミツモト・ダイアがすごい。 2025年2月下旬、コナミアミューズメントのアーケード麻雀ゲーム麻雀ファイトガール』に新キャラのミツモト・ダイアが参戦した。 お母さんキャラで未亡人、しかももうひとつの姿は魔法少女。キャラ属性盛り盛り。そもそも作の世界設定は、世界一の女子高生雀士を目指す“ファイトガール”たちによる麻雀大会なのだが……。まあ、たしかにお母さんも“ガール”だと思うけど。

    『麻雀ファイトガール』ミツモト・ダイアがすごいので開発に事情聴取。生涯現役パツパツ魔法少女お母さんってどういうことなんですか談義 | ゲーム・エンタメ最新情報のファミ通.com
    hirose504
    hirose504 2025/04/11
    “せっかくなのでどーんとでかい画像でどうぞ。” お気遣いありがとうございます
  • Reactで大量描画しても60fps出すためのパフォーマンスチューニング術 - SmartHR Tech Blog

    こんにちは、SmartHRでプロダクトエンジニアをやっている @Tokky0425 です。 みなさんは普段組織で働いていますか?僕は組織で働いています。 組織で働くにあたって便利なもの、ありますよね。そう、組織図です。 SmartHR にも組織図の機能があるのですが、部署数や従業員数が多いとブラウザ上での操作が重くなってしまうという問題がありました。 最近「数万人規模の組織図での 60fps」を目指してこの組織図機能の描画パフォーマンス改善を行ったので、その中で実践したフロントエンド開発における大量描画処理の Tips を共有します。(React を前提としています) そもそも問題はどこにあるのか 最近まで、SmartHRの組織図機能は数万人規模の企業で十分に使えるような作りになっていませんでした。というのも、対象従業員数が数万人を超えてくると、いろんな操作が著しく重くなり、実用に耐える操

    Reactで大量描画しても60fps出すためのパフォーマンスチューニング術 - SmartHR Tech Blog
    hirose504
    hirose504 2025/04/10
  • 「育児中でも、新しい挑戦はできる」データ分析未経験から、Kaggle金メダルをつかんだ女性の物語 - Findy Engineer Lab

    「何かに挑戦したいけれど、時間や体力に余裕がない」 「自分のキャリアが停滞している感覚がある」 育児や介護など、家庭の事情によりフルタイムで働けない方の中には、こう感じている人も少なくないかもしれません。ですが、そんな状況の中でも、小さな一歩から勉強を始め、成果を出した人がいます。LINEヤフー株式会社で人事総務として働く高橋今日子さんです。2人の乳幼児を育てつつ、データサイエンス未経験から約5カ月の猛勉強を経て、データを活用して予測モデルの精度を競う世界的なコンペティションKaggleで金メダルを獲得しました。「まとまった時間がなくても、新しい挑戦はできる」と話す高橋さん。その軌跡についてインタビューしました。 きっかけは「自分の力でデータを活用したい」という思いから ――高橋さんは人事総務として働かれています。一見すると、データサイエンスの世界からは遠い場所にいるようにも感じますが、な

    「育児中でも、新しい挑戦はできる」データ分析未経験から、Kaggle金メダルをつかんだ女性の物語 - Findy Engineer Lab
    hirose504
    hirose504 2025/04/10
  • ローカルLLMは次世代エロゲの夢を見るか|黒神

    ⚠️ タイトルでお察しの通り、この投稿には若干の NSFW 要素を含みます。 お気をつけてお読みください。 ちょっと前に酔った勢いで書いて下書き状態だったので供養しておきます。 ローカル LLM って夢があるなぁ、というお話です。 きっかけ ちょうど中国から DeepSeek が発表されたときくらいのお話です。 いつものように Twitter を眺めて情報を追っていたところ、やなぎさんのこのツイートが目に止まりました。 DeepSeekR1をきっかけにローカルLLMを触った人向け、日語に強いおすすめモデル紹介 ・calm3-22b-RP-v2(ロールプレイ特化)

    ローカルLLMは次世代エロゲの夢を見るか|黒神
    hirose504
    hirose504 2025/04/05
    “ちなみに指示だけでコーディングすることをバイブ… Vibe Coding というらしい” https://ja.wikipedia.org/wiki/%E3%83%90%E3%82%A4%E3%83%96%E3%82%B3%E3%83%BC%E3%83%87%E3%82%A3%E3%83%B3%E3%82%B0
  • 敏腕PMのもとでアジャイル開発やってみた

    これは何? 最近業務でやってたプロジェクトのキリがよくなったので、少しでも開発プロセスの知見を残そうと思って書いた記事です。 弊社は基アジャイル開発で案件を進めてるんですが、具体的な開発プロセス事例の紹介って案外アウトプットされないんですよね。 直近の案件の中で、長らくお世話になっている敏腕PMの方(以下Mさんとします)がいるんですが、直近の案件での事例を記事にしていいかと聞いたら快諾してくれたので、実際にやっていたことを書いていこうと思います。 はじめに アジャイル開発について語る際に、最も重要なのは 正解は一つではない ということです。 アジャイル開発の成功は、それぞれのチームの特性や状況に合わせて、柔軟にプラクティスを調整していくことにかかっています。この記事で紹介する内容は、あくまでも一例として捉えていただき、自分たちのチームに合った形を探る際の参考程度にしていただければと思いま

    敏腕PMのもとでアジャイル開発やってみた
    hirose504
    hirose504 2025/04/04
  • アプリケーション固有の「ロジックの脆弱性」を防ぐ開発者のためのセキュリティ観点

    スライド内でも紹介している、ロジックの脆弱性の診断やセキュリティ観点での仕様レビューが可能なAIエージェント「Takumi」は下記からウェイトリストにご登録いただけます。 https://flatt.tech/takumi

    アプリケーション固有の「ロジックの脆弱性」を防ぐ開発者のためのセキュリティ観点
    hirose504
    hirose504 2025/04/03
  • 4 ステップでモダンな tsconfig.json を作る - mizdra's blog

    tsconfig.json を使うと、型チェックを緩く/強くしたり、また出力する JS の形式を変えたりできる。しかしいくつかの事情から、正しく書くのが難しい。 オプションの数が非常に多い その数なんと 133 個 *1 オプションの意味や役割が理解しにくい 公式ドキュメントは丁寧にかかれているが... JavaScriptTypeScript の仕様、型の知識、歴史的経緯などを知らないと理解しづらい 推奨されるオプションが変わっていく 言語やエコシステムの進化/変化によって変わる 最近だと Node.js の TypeScript サポートで変わった 「オプションの細かい意味とかは一旦いいから、モダンで最小限の tsconfig.json がすぐに欲しい!!!」。そうした声に応えて、id:mizdra がオススメする「4 ステップでモダンな tsconfig.json を作る方法」

    4 ステップでモダンな tsconfig.json を作る - mizdra's blog
    hirose504
    hirose504 2025/04/02
  • ガンダムを全然知らなかった人が『ジークアクス』からガンダムに入り、その後『初代ガンダム』の初見感想をイラストと共に記録しながら完走した話

    須谷明🪷『5分でわかれ!印象派』発売中 @sugokuaki 歴史創作まんがをかいたりかかなかったりしています。好きな幼馴染は西郷隆盛と大久保利通です。『5分でわかれ!印象派』(KADOKAWA)発売中。お仕事のご依頼はツイッターDMかブログお問い合わせフォームからお願いします! sugokuaki.com ジュエルフィッシュ @ICHOYATARO @sugokuaki YouTubeで公開されてる初代ガンダムテレビ版の第一話を見てから映画を見るとニヤリとできると思います 映画の後でももちろん楽しいですが…おすすめはテレビを先に見る方ですかね めんどいと感じるかもですが20分ちょっとなのでそこをなんとか 2025-02-10 20:15:37

    ガンダムを全然知らなかった人が『ジークアクス』からガンダムに入り、その後『初代ガンダム』の初見感想をイラストと共に記録しながら完走した話
    hirose504
    hirose504 2025/04/02
  • 【保存版】親が亡くなったらやること全52項目を解説!一覧チェックシート付き - リハコ

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

    hirose504
    hirose504 2025/03/27
  • 1円も使いたくない個人開発のための技術スタック

    対象 一般的なWebアプリケーション 特に、学生などはクレジットカードが使えずそもそも支払いができないという状況もあるので無料のものをまとめてみました。 結論として Supabase Next.js Drizzle Cloudflare Pages Cloudflare D1 / KV どんな要素が必要か Webアプリの開発に必要なのはフロントエンドと、バックエンドです。 バックエンドといっても、その中身は実際の処理に加え、DB、またログイン認証機構が必要になります。 フロントエンド フロントエンドとしては、Next.js一強です。 すでにコミュニティも成熟しているので使いやすく、いろんなところに統合できます。 バックエンド処理 バックエンド処理は、Next.jsの"use server";を使えば簡単に行えるので、別にAPIを作ったりする必要はなさそうです。 フロント・バックエンドのデプ

    1円も使いたくない個人開発のための技術スタック
    hirose504
    hirose504 2025/03/17
  • ずっと仕事用バッグを探し続けて疲れてきた…PCが入るサイズの女性向け仕事バッグ、みんな何使ってるの?→ざっくり価格帯でまとめました

    uika🦔 @7hengeeee ずっとずっと仕事用バッグ探し続けて疲れてきた。女性が使うPCが入るサイズの仕事バッグってそこそこニーズあるんじゃないの?なぜこんなにもピンと来るものがない?私が社会人になってもう10年経つぞ?なぜロンシャン以外の選択肢がこんなにも狭いの!?!?もう自分で作りたいのですが… 2025-03-09 12:31:35 uika🦔 @7hengeeee ・肩かけできる ・PC入れても耐えられる作り ・重すぎない(鞄だけで1kgはキツい。理想は500だけどせめて600〜700) ・ガバッと開く ・できれば底鋲あり ・ダサくない。頼むから余計なことせずシンプルに作って これがどの価格帯でもないんだよ。50万出しても良い!良いぞ!!!ってなるものがない。 2025-03-09 12:34:27 uika🦔 @7hengeeee 50万出せばハイブランドのレザーバッ

    ずっと仕事用バッグを探し続けて疲れてきた…PCが入るサイズの女性向け仕事バッグ、みんな何使ってるの?→ざっくり価格帯でまとめました
    hirose504
    hirose504 2025/03/15
  • 「なぜセーラー服で出社してはいけないの?」 さくらインターネット・江草陽太氏の自由な発想の源 | ログミーBusiness

    さくらインターネット株式会社にはセーラー服を着た執行役員がいます。IoTプラットフォーム「sakura.io」の立役者である江草陽太氏です。同社に新卒入社し、1年半後の24歳のときに執行役員に就任し、技術全般を統括しています。 今回は、江草氏にやりたいことをやるスタンスはどのように作り上げられたのか、その原点をおうかがいします。後半は、さくらインターネット株式会社における多様性と、江草氏がセーラー服を着用して出社する理由について。前半はこちらから。 さくらインターネットは「性別」「年齢」「学歴」などのラベリングで個人を見ない――ここからは働き方についてお聞きしたいと思います。今お勤めのさくらインターネットさんは、働き方の多様性を尊重されていることもあって、多様性につながる取り組みをされていますね。実際にダイバーシティ雇用が自分の会社で行われているなと感じられますか? 江草陽太氏(以下、江草

    「なぜセーラー服で出社してはいけないの?」 さくらインターネット・江草陽太氏の自由な発想の源 | ログミーBusiness
    hirose504
    hirose504 2025/03/13
    着るのも自由なら言うのも自由だと思うから言わせてもらうけど、たとえ女性だとしても上司が職場にセーラー服着てきたら、あまり良い気分ではないのでやめて欲しい。もう少しカジュアルな服装であれば良いと思うが。
  • JavaScriptがブラウザでどのように動くのか | メルカリエンジニアリング

    実際にコードを用いてスタック領域とヒープ領域の概念を説明します。 person オブジェクトを宣言した時、JavaScript エンジンはオブジェクトの実体をヒープ領域にメモリ割り当てを行い、ヒープ領域にある実体への参照をスタック領域にメモリ割り当てを行います。 const person = { name: 'Taro', age: 24 }; 次のように新しい変数(newPerson)に再代入をすると参照がコピーされ、newPerson も person もヒープ領域に割り当てられた同じ実体に対する参照を持ちます。 const newPerson = person; Object.assign を使って新しいオブジェクトを生成するのは、参照コピーをしないための方法の一つで、よく使われる手法の1つです。 function getName(person) { return person.na

    JavaScriptがブラウザでどのように動くのか | メルカリエンジニアリング
    hirose504
    hirose504 2025/03/13
  • エンジニアってなんか性格悪い人多くね?

    WEBページの制作進行兼営業の仕事をしている クライアントから「こういうWEBページを作りたい」「このまえ作ってもらったWEBページのここを直したい」といった要望を聞き、これを取りまとめてエンジニアやデザイナーに発注、納品されたものをクライアントに渡すという仕事 で、この仕事をやっていて思うんだけどエンジニアって性格終わってる人多くね? 営業やWEBデザイナーといった他業種にはない独特の性格の悪さがあると思う エンジニア連中は頑固で融通が利かないしものの言い方が高圧的 「心理的安全性?なにそれ?」ってレベルの言葉遣いをしまくってくる 一方で社内のデザイナーさんの方はそんなことないんだよな 一体この差はなんなんだろう 最近あった具体例だと中途で入った新人さんが初発注するとき 一応規定のテンプレートに沿って発注書を作ったんだが受け持った案件がちょっと特殊であることがあとからわかって、仕様を詰め

    エンジニアってなんか性格悪い人多くね?
    hirose504
    hirose504 2025/03/06
    俺、エンジニアだけど、性格は良いよ(良くない
  • 『モンスターハンターワイルズ』の「セクレトに移動おまかせシステム」があるのは、過去作で“狩猟せずにやめたプレイヤー”もいたから。飽きる前に最速でハンティングへ - AUTOMATON

    『モンスターハンターワイルズ』の「セクレトに移動おまかせシステム」があるのは、過去作で“狩猟せずにやめたプレイヤー”もいたから。飽きる前に最速でハンティングへ - AUTOMATON
    hirose504
    hirose504 2025/03/04
    “ワールドのケストドンという小型モンスター12頭を討伐するクエストをクリアすると獲得できる実績の取得率は86.7%。ワイルズでは最序盤の大型モンスターの狩猟を完了すると獲得できる実績の取得率が約98.7%”
  • Clineに全部賭ける前に 〜Clineの動作原理を深掘り〜

    はじめに AIのコーディングアシスタントとして最近、急速に注目を集めているClineVSCode上でAIと連携し、コード生成からバグ修正、さらにはターミナル操作まで自動化できるこのツールは、多くのエンジニアの生産性を劇的に向上させています。 mizchiさんの『CLINEに全部賭けろ』という記事では、 AIから引き出せる性能は、自分の能力にそのまま比例する AI自体を管理するパイプライン設計を自分のコアスキルにする必要がある ともあるように、エンジニアはClineという強力なツールの最大限を使えるようになっていくべきです。 「AIの上手な使い方」が今のエンジニアにとって必須スキルになりつつあるため、単にClineを使うだけでなく、その仕組みを理解することで得られるメリットは数多くあります。例えば、現時点でのClineの得手・不得手を理解することでAIに対して的確に指示ができたり、clin

    Clineに全部賭ける前に 〜Clineの動作原理を深掘り〜
    hirose504
    hirose504 2025/03/04
  • Cline / RooCodeを安全に使うためにDevContainerを使い始めた

    AIコーディングエージェントは便利ですが、意図しない挙動を行った時に、被害を最小限にとどめる工夫がいるな〜と思っています。例えば、なんらかの設定をミスって、rm -rfが暴走するとか、無限ループを実行してしまうといったインシデントが考えられます。 当初そのために、今お買い得なXserver VPSを借りて快適な独立した作業環境を構築していました。4GBインスタンスでVSCode ServerとDockerを動かしてたんですが、メモリ使用に耐えられなくなってきて。ちょくちょくOOM(Out of Memory)が出て、「うーん、これは厳しいかな」と感じてました。 そこで、自宅PCを刷新して開発用VMをプロジェクトごとに建てようかと思ったんですが、それはそれでオーバーヘッドでかいですよね。OS管理とかアップデートとか考えると面倒くさい。 要は、プロセスが分離されてて、ワーキングディレクトリ外に

    Cline / RooCodeを安全に使うためにDevContainerを使い始めた
    hirose504
    hirose504 2025/03/02
  • AIをシステム開発に活かすコツ、全部書く|kmagai

    今や、AIを活用してソフトウェア開発すること自体は一般的になり、一種のブームと化している。 しかし、Web上で見かけるのはワンショットでテトリスを作る程度の小規模なプロジェクトの話がほとんどで、驚けるものの、正直あまり実用性は無いように感じる。 俺たちが当に知りたいのはテトリスの作り方じゃねえ!現実の中規模以上のシステム開発で、いかに楽に良いものを作れるかだろ! ということで、まずは弊社から現時点のノウハウを全公開しようと思う。 弊社ではCursorを1年以上活用(サービスがGAになったタイミングから全社員で利用)しており、一定のノウハウを蓄積してきている自負がある。ただ、あくまで一例ではあるので、ぜひみなさんの現場での活用事例も共有してほしい! 免責事項AIエディタでの開発は、LLMとAIエディタの進化に伴い、常に変化している。 そのため、この記事で述べる方法論は、現時点での、弊社での

    AIをシステム開発に活かすコツ、全部書く|kmagai
    hirose504
    hirose504 2025/03/02