並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 36 件 / 36件

新着順 人気順

状態管理の検索結果1 - 36 件 / 36件

  • 技術選定の失敗 2年間を振り返る TypeScript,Hono,Nest.js,React,GraphQL

    技術選定の失敗 2年間を振り返る TypeScript,Hono,Nest.js,React,GraphQL はじめに 新たに書きました。 MySQLを使っても会社は潰れない 久々に記事を書いたのでどうぞお手柔らかに... 私が過去2年間で行った技術選定の成功と失敗を振り返り、その学びを共有したいと思います。 文才無いので淡々と箇条書きでいきます Twitterエンジニア垢作りました。エンジニアのお友達がいません。 @uncode_jp 注意 意見を押し付けるものではありません。ただ建設的な議論は大事だと思う。 自分の意見は明確に、歯切れのよい表現を意識している。人それぞれだよねみたいな感じに逃げたくない。技術選定に結論はある(過激)。 ただし技術選定にはコンテキストがあり、例えばプロダクトのフェーズや組織の事情によって当然結論は変わる可能性がある。 OSSの開発者さん達は偉大ですごい。あ

      技術選定の失敗 2年間を振り返る TypeScript,Hono,Nest.js,React,GraphQL
    • 独力でWebサービスを開発・構築できるフルスタックエンジニアへのロードマップ─幅広いスキルを「Udemy夏のビッグセール」で学ぶ! - はてなニュース

      ※ Udemy「夏のビッグセール」とはてなによるプレゼントキャンペーンは終了しました。記事で紹介しているフルスタックエンジニアのスキルは、引き続きUdemyの講座で学習できます。 Webで新規サービスを立ち上げる際に、UIからインフラ周りまで一人で面倒を見られるエンジニアは、少人数のスタートアップでなくとも非常に頼れる存在です。どんな課題に直面しても技術力で乗り越える、そんなスキルフルなエンジニアに憧れる方も多いでしょう。 この記事では、フロントエンドのプログラミング(JavaScript周辺)からサーバーサイド、インフラ、さらに開発手法まで、Web開発で必要になるさまざまなレイヤーのフルスタックなスキルの現在地と、関連するUdemyの講座を紹介します。 株式会社ヘンリーでVPoEを務める松木雅幸(@songmu)さんの執筆です。 フルスタックエンジニアに必要なスキル さまざまな講座でまと

        独力でWebサービスを開発・構築できるフルスタックエンジニアへのロードマップ─幅広いスキルを「Udemy夏のビッグセール」で学ぶ! - はてなニュース
      • 「下書き」「一時保存」という要件を甘く見積もってはいけない

        「一時保存や下書きできるようにしたい」といった要望が出てくることがあると思います。世の中のサービスでよくある機能ですしあったら便利だなと思うのも当然です。 同じ要望を受けた当時の私はその大変さに全く気づいていませんでした。 意外と考えることが多いよ、というのが伝わると幸いです。 当初明確になっていた仕様 入力フォームには必須と任意の項目があるが、必須項目が未入力状態でも一時保存できる 入力フォームにはファイルを添付できる 正式データと一時データは同じ一覧ビューの中で両方とも表示させる 一時データはユーザー単位ではなく共有される(誰かが作った一時データは自分も閲覧編集できる) 一時データは正式データに対してひとつのみ存在できる 最終的には上記以外にももっと細かい仕様になったのですが、この後の検討や設計の流れに沿って随時記載していきます。 データの持ち方の方針 方法としては以下二つの案がありま

          「下書き」「一時保存」という要件を甘く見積もってはいけない
        • フロントエンドフレームワークからサーバーにアクセスするパターン | フューチャー技術ブログ

          僕が触り始めた頃のウェブフロントエンド開発はデバッガーもなく、ダイナミックHTMLと呼ばれて文字をチカチカさせたりするようなものでした。IE6という超安定ブラウザが出てきたり(Netscape 4.xも7.xも不安定だった)その後jQueryが登場したときは、天使が降臨したように思えたものです。 そこから長い年月が経ち、ウェブフロントエンドの比重が大きくなるにつれ、フロントエンドのコードはどんどん複雑化しました。OpenAPIなどのコードジェネレータなども普及した結果、通信というものが隠され、イベントの中でawaitや.then()で呼ばれる何か、みたいな理解をしているメンバーも今後増えていくのではないかという懸念があります。 現在ではウェブフロントエンド開発はReactやVueといったフレームワーク上で行われ、イベントというのはそのフレームワークの提供するライフサイクルイベントに対応付け

            フロントエンドフレームワークからサーバーにアクセスするパターン | フューチャー技術ブログ
          • 人生3回目のCSVエディタを作っている話

            私は今、人生で3回目のCSVエディタを作っています。もはや狂気です。 なぜ作り始め、なぜ今また作り直しているかみたいな話を書きたいと思います。 About Me 株式会社ヘンリーでソフトウェアエンジニア & アーキテクト的なことをしつつ、個人開発してます。 Social accounts: kohii on GitHub @kohii00 on X 今までに作ったCSVエディタたち 初代SmoothCSV(2011年〜) 私は新卒で入った会社で公共系のシステム開発に従事しており、CSVを扱う機会が多くありました。(今は医療スタートアップにいますがこの業界もよくCSVが現れます。) 既存のCSVエディタをいろいろ試してみたのですが、どれも求めるものと違うと感じ自分で作るしかないと思い、作りました。 SmoothCSV。時代を感じるUI Java / Swingで作成 (当時Javaくらいしか

              人生3回目のCSVエディタを作っている話
            • [改訂新版]プロになるためのWeb技術入門

              2024年11月28日紙版発売 2024年11月28日電子版発売 小森裕介 著 B5変形判/528ページ 定価3,960円(本体3,600円+税10%) ISBN 978-4-297-14571-2 Amazon 楽天ブックス 丸善ジュンク堂書店 ヨドバシ.com 電子版 Gihyo Digital Publishing Amazon Kindle honto 本書のサポートページサンプルファイルのダウンロードや正誤表など この本の概要 なぜWebシステムをうまく作ることができないのか?――本書は2010年に初版が発行されました。Webに携わるエンジニアだけでなく,Webマーケティング担当者にいたるまでWebの仕組みを根本から理解するための技術書として多くの方々に利用されました。それから10数年の月日が流れ,本書の特徴である技術の根本をていねいに解説するスタイルはそのままにアップデートを図

                [改訂新版]プロになるためのWeb技術入門
              • すぐに役に立つものはすぐに陳腐化してしまうから方法ではなく設計の本を読む - API Design Patterns の読書感想文 - じゃあ、おうちで学べる

                あなたがさっきまで読んでいた技術的に役立つ記事は、10年後も使えるでしょうか?ほとんどの場合でいいえ はじめに 短期的に効果的な手法や知識は、ソフトウェア開発の分野において、急速に価値を失う傾向があります。この現象は、私たちが何を重点的に学ぶべきかを示唆しています。最も重要なのは、第一に基本的な原理・原則、そして第二に方法論です。特定の状況にのみ適用可能な知識や即座に結果を出すテクニックは、長期的には有用性を失う可能性が高いです。これは、技術や手法が時間とともに進化し、変化していくためです。 learning.oreilly.com 「API Design Patterns」は、このような考え方を体現した書籍です。しかも480 ページもあります。本書は単なる手法の列挙ではなく、Web APIデザインの根幹をなす原則と哲学を探求しています。著者のJJ Geewax氏は、APIを「コンピュータ

                  すぐに役に立つものはすぐに陳腐化してしまうから方法ではなく設計の本を読む - API Design Patterns の読書感想文 - じゃあ、おうちで学べる
                • 【2024年版】エンジニア必見 生産性があがるチートシート集 - Qiita

                  1. 生成AIチートシート もはやエンジニアの必須ツールとなってきた生成AI。ペアプロやエラー対応などプログラミングに関わるところから、ビジネス判断におけるブレスト相手として、日常の些細なタスクにまで対応する強い味方です。またそれら生成AIを応用したAIエージェントやワークフローを用いたプロダクトなどの開発も日進月歩で進んでいます。 本パートでは、日々進化する生成AIを最大限に活用できるよう、多種多様な生成AIを一覧化して網羅したものから、それらの利用方法・プロンプトエンジニアリングにまで踏み込んだチートシートを集めました。 プロンプトエンジニアリング ソフトバンク - ChatGPTから高度な回答を引き出すプロンプト文例集 業務に使えるプロンプトが幅広く掲載されており、実用的です! マイナビ - プロンプトエンジニアリング・チートシート マイナビから公開されているチートシート。役割の設定

                  • ライブラリ選定のときに使えるツールあれこれ

                    自分が使ってるやつを紹介します。 GitHub Star History 指定したGitHubリポジトリのスターの増加数をグラフで見れるサイトです。 たとえば、👇の3つのReactのUIライブラリを例に見てみます。 mui chakra-ui shadcn-ui ▲https://star-history.com/#shadcn-ui/ui&chakra-ui/chakra-ui&mui/material-ui&Date こんな感じで、一目でライブラリの人気度合いをざっくり比較できます。 使い方 テキストボックスに、比較したいライブラリのGitHubリポジトリURLを入力するだけです。 また、「Align timeline」にチェックを入れると、グラフのスタートを揃えれます。 たとえば、Prisma ORMとDrizzle ORMを比較するとPrismaの方が圧倒的に見えますが、スタート

                      ライブラリ選定のときに使えるツールあれこれ
                    • 2025年の年始に読み直したいAIエージェントの設計原則とか実装パターン集

                      関連リソース Agent Design Pattern Catalogue: A Collection of Architectural Patterns for Foundation Model based Agents 【論文紹介】LLMベースのAIエージェントのデザインパターン18選 基盤モデルを用いたAIエージェントの設計パターン The Landscape of Emerging AI Agent Architectures for Reasoning, Planning, and Tool Calling: A Survey The Landscape of Emerging AI Agent Architectures for Reasoning, Planning, and Tool Calling: A Survey は、「AIエージェントのアーキテクチャ」について、シン

                        2025年の年始に読み直したいAIエージェントの設計原則とか実装パターン集
                      • 「プログラマとCLINE - これはパンドラの箱なのか」を観た - laiso

                        www.youtube.com 昨夜未明、インターネット某所で、プログラミング支援ツール「Cline」と、それを用いたゲーム開発の経験談*1を語り合う会合がありました。 CLINEが持つ、人間の介入を最小限に抑えながら暴走機関車ようにコードを生成する性質を軸に、CopilotやCursorなど既存のAIコーディングツールとの比較や、これまでのコーディングツールのアプローチからの変化、今後の開発における展望も議論されていました。 Clineの性質 ホストの@mizchiさんはClineを「強いパーミッション持って自動で実行されるのでイテレーションの回数が多い」「AIにコーディングのアシスタントではなく主導権を持たせても何とかなるということを気づかせてしまった」と評価していました。Cursorなどと比較してその自律性(相談せず勝手にやっちゃう)に強く惹かれているそうです。 確かに全部読み込ませ

                          「プログラマとCLINE - これはパンドラの箱なのか」を観た - laiso
                        • 日本のエンジニアよ、技術スタックのチェックリスト共有はやめろ - Qiita

                          Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 日本のソフトウェアエンジニアリングコミュニティの皆さんへ エンジニアリングは、単なるチェックリストではありません。システムを深く理解し、その制約を把握する学問です。ここ数年、日本のソフトウェアコミュニティの技術ブログを拝見する中で、少し気になる点があります。 それは、日本と海外との技術的なギャップが広がっているように見えるだけでなく、技術的な議論や知識の共有が十分に行われていないことです。 私が過去15年間で多くのプロジェクトを開発してきた中で、技術的な意思決定は常に長期的な影響を伴うものでした。特定のデータベースやプログラミング言語を

                            日本のエンジニアよ、技術スタックのチェックリスト共有はやめろ - Qiita
                          • 熟練が必要なUIについて、それがよくない理由と、UIの慣性について

                            久しぶりに記事を書く。最近マルス端末のUIについてツイートがあった。 この件に関して、UIについてやUXに対して日々やってきている人間は「ダメなUI」という認識の人が多いように思う。一方で、システムの開発者にとってはこれは、その認識でない人間が多いようだ。なので、この辺を私なりに意見を書いておこうと思う。 まぁ、これはいつもなのだが、書いていることが散らかってる。基本的に音声入力のメモなので、読みにくいかもしれないが読んでくれ参考になれば幸いだ。 熟練が必要なUIは基本的によくない まず、基本的に熟練が必要なUIはそもそも良くないって話をしていく。順番に話していこう、まず、熟練が必要なUIが支持される理由を考え、それに対して、批判していき、なぜ熟練が必要なUIはダメかを語ってみよう。 熟練が必要なUIが支持される理由 その前に、こういった熟練のUIが支持される理由についてかいておこう。それ

                              熟練が必要なUIについて、それがよくない理由と、UIの慣性について
                            • 【セールは12月2日まで!】ブラックフライデーだから買っておきたいUdemy講座! ソフトウェアエンジニアのキャリアでずっと役立つ定番&大作講座をまとめてレビュー・紹介します! - はてなニュース

                              ソフトウェア開発の技術トレンドは移り変わっていきますが、数年前から急激に盛り上がってエンジニアリング環境を変化させた生成AIのトレンドもひと段落し、今年は落ち着いて技術の基本をしっかりと時間をかけて学ぶのにちょうどよいタイミングかもしれません。 オンライン学習プラットフォーム「Udemy」が11月29日まで実施するブラックフライデーセールと12月1日・2日のサイバーセールでは、対象講座が1講座1,300円からと通常よりもお得に、気になる講座をまとめて購入できるチャンス! 時間をかけて取り組みたい技術要素や、これから長く役立つであろう技術領域の講座を厳選してご紹介します。 定番から新作・大作までまとめてチェックできるのもブラックフライデーならでは。何十時間にもなる大作講座の見どころもいくつか抜き出してレビューしています。皆さんのこれからのキャリアにフィットする講座を、この機会にぜひ見つけてく

                                【セールは12月2日まで!】ブラックフライデーだから買っておきたいUdemy講座! ソフトウェアエンジニアのキャリアでずっと役立つ定番&大作講座をまとめてレビュー・紹介します! - はてなニュース
                              • 【最新版】フロントエンドを学べる最高の教材集 - Qiita

                                Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに フロントエンドを学べる教材をまとめました。 今回紹介するフロントエンド技術は下記になります。 ロードマップ (全体像) JavaScript TypeScript React Next.js 対象者 これからフロントエンドを学びたい人 モダンフロント技術に挑戦したい人 ロードマップ (全体像) エンジニア向けの学習ロードマップがまとめられている。 現在の自分の立ち位置を把握し、次にやるべきことの方向性を知れる。 エンジニアが使うであろう、ほぼ全技術が網羅的にまとめられているので、全体像を掴む上では一度目を通す価値はある資料にな

                                  【最新版】フロントエンドを学べる最高の教材集 - Qiita
                                • MySQLを使っても会社は潰れない

                                  MySQLを使っても会社は潰れない そんな話は聞いたことがない。AWS Lambdaが再帰実行されて潰れた会社の話は実際に聞いたことがあるが。 つい先日、私が書いた記事がとんでもなく大事になってしまい、大変な賛否を巻き起こした。 まさかこんなに読まれると思っていなかったので、大変驚いたのと同時にインターネッツの恐ろしさを体感した。 その中でも特に物議を醸したのが「MySQLを使うと会社が潰れる」というフレーズだった。 「MySQLを使うと会社が潰れる」とはなんだったのか 私がこのフレーズを選んだ理由は、言うまでもなく単に読者の注意を引く表現を使いたかったからである。 このフレーズがセクションの先頭にあったら、「なにをいってるんだこいつ?」と先を読んでみようという気になると思った。 そして続きを読んでいくと「なんだそういうことか」と意図を汲んで、それで同意するかしないかは人それぞれだろうなと

                                    MySQLを使っても会社は潰れない
                                  • React / Remix への依存を最小にするフロントエンド設計 - 一休.com Developers Blog

                                    CTO 室の恩田(@takashi_onda)です。 一休レストランのフロントエンドアーキテクトを担当しています。 Intro 一休レストランでは、以前ご紹介したようにフロントエンドで React / Remix を利用しています。 user-first.ikyu.co.jp 一方、設計方針としては、React / Remix への依存が最小になるように心掛けています。 今日は、そんな一見矛盾するような設計方針について、ご紹介したいと思います。 この記事を読んでいただき Remix に興味をもたれたら、明後日 2024/8/7(水) 19:00〜 のオンラインイベント offers-jp.connpass.com にもご参加いただけると嬉しいです。 この記事でご紹介している疎結合なフロントエンドアーキテクチャを実現する Remix の魅力についてお話します。 なぜ依存を最小にするのか? R

                                      React / Remix への依存を最小にするフロントエンド設計 - 一休.com Developers Blog
                                    • クレジットカードの不正検知システムを3日で設計し、3週間で本番リリースした話 - LLMで加速するソフトウェア開発 - LayerX エンジニアブログ

                                      はじめに 背景:クレジットカード不正検知システムとは 3日でDesign Doc 2本、ADR 5本を執筆 3週間で開発し、本番環境にリリース LLM活用による効率化のポイント 目的・要件の整理 要件を満たす技術的オプションの洗い出し・技術調査 PoC実装 ドキュメントの執筆・技術選定 本実装 学び おわりに はじめに 新規プロダクトやプロジェクトの立ち上げにおいて、どれだけ意思決定を明確化し、設計を固めることができるかは、後々の開発効率や品質に大きな影響を与えます。一方で、最初が肝心だからといって調査や設計に何か月も費やす余裕は、多くの企業にはありません。できる限り早く設計を確立し、実装を開始して価値を生み出すことが求められます。 LayerXのバクラク事業では、法人向けのクレジットカード「バクラクビジネスカード」を提供しています。サービス開始時から不正利用を検知する仕組みを導入していま

                                        クレジットカードの不正検知システムを3日で設計し、3週間で本番リリースした話 - LLMで加速するソフトウェア開発 - LayerX エンジニアブログ
                                      • 2024年末にデザインパターンについて考える - Qiita

                                        Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? Futureアドベントカレンダーの3日目のエントリーです。昨日は@yamat2667さんのFlutterの記事でした。 デザインパターンというと、普段のプログラミングから一歩踏み込んで設計力を上げたい人が履修すべきコンテンツのように思われているようなツイートなりを見かけます。オブジェクト指向言語全般に使える知識だ、とか、開発者同士のコミュニケーションに使えるぞ、とか、コードの質が上がるぞ、とか。 一方で、パターンを詰め込もうとすると逆にコード量が増えて、パターン由来の変なクラス名が増えたりして、設計が歪むぞ、というのも当初から言われてき

                                        • TypeScript で Web 開発をする際の候補メモ

                                          2025/01/04 Git Hooks ツールの Lefthook を追記 2025/01/05 フロントエンドの状態管理に XState を追記 各リンクテキストを対象名がわかりやすい形式に変更 概要 以前のプロジェクトで使っていたり、進行中に差し替えまでは出来ないけど次使うならこれを使おうと思っていたライブラリやツールなどが、いざ新しくプロジェクトを作ろうと初期構築を始めたら色々と失念している事ってよくありませんか? 最近実際それがあり、個別のページにわかれて技術メモはとってあったりするのですが探しながらは手間なのとブクマしただけのものもあるので、インデックス的に手軽に気になった技術をメモっておく見ながら構築したり技術選定の前段階に使うようなノートを作ったので誰かのお役に立つかもと公開してみます。 気軽に雑にメモるのを前提に作ったものをそのまま公開しているので文体等は統一されてません

                                            TypeScript で Web 開発をする際の候補メモ
                                          • AIスクレインピングエージェントの構築(LangGraph, Firecrawl)

                                            はじめに この記事では、LangGraphとFirecrawlを使用して、企業のWebサイトから特定の情報を抽出するWebスクレインピングエージェントを構築する方法を紹介します。具体的には、企業のホームページから社長の名前を取得する方法を解説します。 参考にさせていただいた動画 この動画では特定のキーワードをホームページから取得していますが、今回は正規表現では取得できないより抽象的な情報を取得することに挑戦しました。 使用技術 LangGraph LangGraphは、AIエージェントを作るためのツールで、複雑な処理をいい感じに管理してくれる便利なフレームワークです。状態遷移グラフを使って、どの処理をどの順番でやるかを分かりやすく設計できます。 特徴: 処理の流れを図にして確認できる(Mermaid図対応) 条件分岐や並列処理ができて柔軟 タスクの状態を一括管理 本プロジェクトでの役割:

                                              AIスクレインピングエージェントの構築(LangGraph, Firecrawl)
                                            • 令和に構築するEC2踏み台サーバー - y-ohgi's blog

                                              TL;DR 令和に踏み台サーバーを作成する Amazon Linux 2023AMIとSSM Agentを利用したEC2 証跡を取得する About EC2とSSMのセッションロギングを使用して証跡を取得することが目的。 ECS/Fargateでも同様のことが可能ですが、SSM AgentがプリインストールされているAMIのEC2を使い捨てる方が運用コスト的や構築コスト的に楽なためEC2を選択。 How To アーキテクチャ Instance Profileの作成 assumerole.json $ cat <<EOL > assumerole.json { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "ec2.amazonaws.com" }, "Action

                                                令和に構築するEC2踏み台サーバー - y-ohgi's blog
                                              • Pythonで作るポップなポモドーロタイマー - Qiita

                                                Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに こんにちは!今回は、Pythonを使ってポモドーロタイマーを作成する過程を、要件定義から実装まで詳しく解説します。このプロジェクトを通じて、以下のスキルを身につけることができます: ソフトウェア開発のプロセス(要件定義、仕様策定、設計、実装) Pythonの基本的な構文とオブジェクト指向プログラミング Tkinterを使ったGUIアプリケーションの作成 時間管理の基本概念とその実装方法 それでは、プロジェクトの各段階を見ていきましょう。 1. 要件定義 まず、ポモドーロタイマーの基本的な要件を定義します。 1.1 機能要件 2

                                                  Pythonで作るポップなポモドーロタイマー - Qiita
                                                • チュートリアル: Yjs, valtio, React で実現する共同編集アプリケーション - ROUTE06 Tech Blog

                                                  Yjsは、リアルタイム共同編集を実現するためのアルゴリズムとデータ構造を提供するフレームワークです。Notion や Figma のように、1 つのコンテンツを複数人で同時に更新する体験を提供することができます。 Y.Map, Y.Array, Y.Text といった共有データ型を提供し、それらは JavaScript の Map や Array のように利用できます。さらにそのデータに対する変更は他のクライアントに自動的に配布・同期されます。 Yjs は Conflict-free Replicated Data Types (CRDT) と呼ばれるアルゴリズムの実装であり、複数人が同時にデータを操作してもコンフリクトが発生せず、最終的に全てのクライアントが同じ状態に到達するように設計されています。 クイックスタート Y.Map がクライアント間で自動的に同期されるコード例を見てみましょ

                                                    チュートリアル: Yjs, valtio, React で実現する共同編集アプリケーション - ROUTE06 Tech Blog
                                                  • PostgreSQL環境における、DB定義変更を伴う無停止リリース「概要と計画」編 - RAKUS Developers Blog | ラクス エンジニアブログ

                                                    こんにちは。 株式会社ラクスで先行技術検証をしたり、ビジネス部門向けに技術情報を提供する取り組みを行っている「技術推進課」という部署に所属している鈴木(@moomooya)です。 ラクスの開発部ではこれまで社内で利用していなかった技術要素を自社の開発に適合するか検証し、ビジネス要求に対して迅速に応えられるようにそなえる 「技術推進プロジェクト」というプロジェクトがあります。 このプロジェクトで「PostgreSQL環境における、DB定義変更を伴う無停止リリース」にまつわる検証を進めているので、その中間報告を共有しようかと思います。 ※本記事はタイトルに「概要と計画」編とあるように、通年で行う調査の前半時点の中間報告となります。 実際の検証結果については3月末に予定している後編をお待ち下さい。 課題の経緯、前提条件 課題の経緯 無停止リリース実現のモチベーション 前提条件 実現手法 候補に上

                                                      PostgreSQL環境における、DB定義変更を伴う無停止リリース「概要と計画」編 - RAKUS Developers Blog | ラクス エンジニアブログ
                                                    • WebAssembly所感

                                                      WebAssemblyをちょっといじってみて思ったところをまとめてみます。 設計思想 WebAssembly/designに設計文書がまとまっています。特にHighLevelGoals.mdから読み取れるポイントは以下の4点です。 サンドボックス化された環境であること。 移植性があること。つまり、特定の実CPUアーキテクチャ等に依存しないこと。 少なくともC/C++の(十分に高速な)コンパイルターゲットとして機能すること。 安定した仕様を持つこと。 サンドボックスという観点からは、先行技術として以下のようなものが特筆に値します。 Webサンドボックス JavaScript および asm.js Javaアプレット Flash (ActionScript) NaCl, PNaCl Web以外のサンドボックス OSのユーザーランド、特にLinux userland これらのサンドボックスとの比

                                                        WebAssembly所感
                                                      • この世の中に溢れているので自分が発言する必要はないが「ソフトウェアは認知の限界まで複雑になる」を自分なりに再考する - じゃあ、おうちで学べる

                                                        人間が何もしないと病気になるのと同じように、ソフトウェアも何もしないと複雑になる。 はじめに ソフトウェア開発の世界に飛び込んでから、「ソフトウェアは認知の限界まで複雑になる」という言葉を耳にしたとき、正直なところ、「ほへー」って思いながら何も理解していませんでした。しかし、大規模なシステムに携わるようになって、その言葉の重みを身をもって感じるようになりました。内部構造や相互作用が複雑化し、全体を把握するのが難しくなっていく。それは挑戦であると同時に、私たち開発者の存在意義を問いかけるものでもあります。 A Philosophy of Software Design, 2nd Edition (English Edition) 作者:Ousterhout, John K. Amazon この複雑性との闘いは、時に苦しいものです。でも、それを乗り越えたときの喜びは何物にも代えがたい。私たちの

                                                          この世の中に溢れているので自分が発言する必要はないが「ソフトウェアは認知の限界まで複雑になる」を自分なりに再考する - じゃあ、おうちで学べる
                                                        • 小規模プロダクトにおける React 状態管理ライブラリ選定 in 2024 - バイセル Tech Blog

                                                          はじめに こんにちは! テクノロジー戦略本部24年新卒の高橋です。 2023年の10月から内定者インターンを経験し、現在は開発3部CRMチームでフロントエンド(以後、FE)エンジニアとして働いております。 チーム内でFEの状態管理ライブラリを選定する機会があり、調査していく中で得た知見を共有したく、執筆に至りました。 少しでも状態管理ライブラリの選定に困っているFEエンジニアの参考になればと考えています。 はじめに 概要 前提 課題感 Context APIの思想とのズレ Context APIの記述量の多さ 状態管理ライブラリに求める要素 小さい単位で取り扱い可能 ボイラーテンプレートが少なく、APIが直感的で書き方の自由度が高くない 軽量 Reactアプリケーション内外での状態管理が可能 最終決定 検討候補 Redux Zustand Jotai Valtio 評価表 移行設計 既存C

                                                            小規模プロダクトにおける React 状態管理ライブラリ選定 in 2024 - バイセル Tech Blog
                                                          • TypeScript/JavaScript Array完全攻略2024 | フューチャー技術ブログ

                                                            TypeScriptアドベントカレンダーの12/5のエントリーです。昨日は@nanasi-1さんの【TypeScript】ジェネレーターによる遅延評価でフィボナッチ数列を生成するでした。 イマドキのJavaScriptの書き方2018というのを以前書いたのだけど、配列周りはかなり変わっているな、というのを思ったので、そこの部分だけアップデートするつもりで書いてみました。 実環境で使えるECMAScriptバージョン今時のブラウザは常に最新に更新されるはずなのでECMAScript 2024の機能もフルに使えるはずですが、おそらくNode.jsのLTSが一番古いJavaScriptエンジンということになるのかな、と思います。本記事執筆時点でサポート中のバージョンは以下の4つです。軽くメソッドを調べたりした感じ、こんな感じかと。202x年の11月ぐらいになると、ES202xがLTSバージョンで

                                                              TypeScript/JavaScript Array完全攻略2024 | フューチャー技術ブログ
                                                            • 開発プロセスをインクリメンタルに改善する - 一休.com Developers Blog

                                                              一休.comレストランのエンジニアのkymmtです。 2023年度の下半期、一休.comレストランの開発チームでは開発プロセス改善に取り組みました。改善は小さい単位で徐々に進め、バックログの作りかたやカンバンの運用方法を改善することで、フロー効率の向上、開発ペースの把握、チーム内外からの進捗の見える化ができるようになりました。 この記事では、このようなインクリメンタルな開発プロセス改善の取り組みについて紹介します。 従来の開発プロセス 主に2023年度前半の開発プロセスは次のような形でした1。 プロダクトのリリースに必要なタスクが長いバックログとして存在し、ひたすらタスクを消化 その状況に課題を感じ、区切りを入れるために2週間のスプリントを導入 この時点では、スプリントは2週間ごとに状況を確認するためのもので、目標に対するふりかえりや、次のスプリントの計画を作るためのものとしては活用してい

                                                                開発プロセスをインクリメンタルに改善する - 一休.com Developers Blog
                                                              • mixi2ライセンスページから学ぶ、便利なFlutterパッケージ【120over】 - くらげになりたい。

                                                                mixi2がFlutter製だと聞いて、使いはじめてみたけど、 さわり心地とか含めて、いろいろ素敵だなと思い、 ライセンスページの利用ライブラリを見てみたときの備忘録(*´ω`*) 見てみると、知らないすてきなパッケージがたくさんあったので、 ちょっと整理してみた(2024年12月18日時点) ライセンスページは以下からみれる 設定 > mixi2について > ライセンス 注意事項 ライセンスページに書かれているものをまとめただけなので、 実際には使っていないものや間接的につかっているものも含まれている可能性があります 公式情報ではないので、あくまで参考程度で! ベース部分 土台部分はこんな感じっぽい。馴染みある構成 状態管理など: riverpod + flutter_hooks + freezed ルーティング: go_router フォント: google_fonts(Noto Se

                                                                  mixi2ライセンスページから学ぶ、便利なFlutterパッケージ【120over】 - くらげになりたい。
                                                                • CursorとDesign Docで実現する漸進的なアーキテクチャ改善 - LayerX エンジニアブログ

                                                                  こんにちは。バクラク申請・経費精算 ネイティブアプリエンジニアのchocoyamaです。 最近妻が身近な金継ぎ師を探しているので、もし身近な金継ぎ師がいらっしゃる方はご紹介いただけると嬉しいです。 この記事はLayerXテックアドカレ2024の23日目の記事です。 今回の記事では私たちモバイルアプリチームが実装アーキテクチャをどのように決定・運用しているのかをご紹介したいと思います。 前提情報 現在バクラクのモバイルアプリチームは、社員3名 + インターン生1名といったエンジニア構成でFlutter製のネイティブアプリ開発を行っています。 このアプリはフォームを中心としたプロダクトで、今年9月にストアリリースを行いました。 bakuraku.jp アプリの規模感としては、実装ボリュームがとても大きく、クライアント側でカバーすべき機能の膨大さから、私個人の経験としても過去最大レベルに複雑度の

                                                                    CursorとDesign Docで実現する漸進的なアーキテクチャ改善 - LayerX エンジニアブログ
                                                                  • DDDを実践するための手引き(ドメインイベント編)

                                                                    ドメインイベントを扱う実装は様々な流派があり、本記事ではなるべく一般的なものを取り上げたいと思っていますが、あくまで一例です。 実装例は Kotlin を使っていますが、他の言語でも同様の実装が可能です。 ドメインイベントとは イベントとは「過去に発生した出来事」であり、ドメインイベントは「ビジネスドメイン上で発生した重要な出来事を表すメッセージ」です。 (例: チケットが割り当てられた、注文がキャンセルされた) ドメインイベントはシステム内の状態の変化(=集約の状態の変化)を表現するものであり、通常は集約がドメインイベントの発生源となります。 用途 ドメインイベントは主に次のような目的で使用されます。 1. イベントの発生を起点に、別の処理をトリガーする ドメインイベントは、システムの異なる部分間を連携させるために使用されます。 ドメイン上の要件として「...したら...する」のようなフ

                                                                      DDDを実践するための手引き(ドメインイベント編)
                                                                    • 新規プロダクト開発では新しい技術をどう採用するのか? カオナビでの運用経験をリスクヘッジに生かし挑戦を成功に導く!〔ヨジツティクス開発者インタビュー〕 - はてなニュース

                                                                      株式会社カオナビでは、社員の個性や才能を発掘するタレントマネジメントシステム「カオナビ」を主力プロダクトとして、HR領域の機能開発に2012年から注力しています。 そして2024年4月、隣接する経営管理領域のSaaS「ヨジツティクス」を独自に開発してリリースしたことで、マルチプロダクト戦略にかじを切りました。 現在の開発組織で新規プロダクトの経験がない中、どのようなことに気を使いながら開発を進めたのでしょう。プロダクトオーナーを務める福田健(ふくだ・けん)さんと、フロントエンドでの技術選定などをリードした別城慎治(べっき・しんじ)さんに話を伺いました。 ※この記事は株式会社カオナビによるタイアップ広告です。 カオナビ エンジニア採用サイト テクノロジーで社会の仕様をアップデートする 採用サイトを見る スプレッドシートに限界を感じて予実管理を楽にしたい Next.jsでApp Routerの

                                                                        新規プロダクト開発では新しい技術をどう採用するのか? カオナビでの運用経験をリスクヘッジに生かし挑戦を成功に導く!〔ヨジツティクス開発者インタビュー〕 - はてなニュース
                                                                      • Rust/Tauriに入門したので画像変換デスクトップアプリを開発してみた

                                                                        こんにちは!某製造業で新米DXエンジニアをしているものです。 先月から Rust の学習を始めました。 学習している理由としては 今までインタプリタ言語を使ってきたので、コンパイル言語に挑戦したい 爆速で動くコードを書きたい ネイティブアプリの開発をしてみたい WebAssembly を使えるようになって、Web アプリ開発の幅を広げたい といったところです。 そんな中、Rust でデスクトップアプリを開発するために Tauri を使ってみました。 正月の暇をつぶすために軽い気持ちで始めましたが、色々苦しんだので備忘録を残しておきます。 今回は長くなりそうなので、目次をご活用ください m(._.)m アプリの概要 今回作ったアプリは、ざっくり言うと 主要形式の画像を次世代拡張子である AVIF,WEBP に圧縮、変換するデスクトップアプリです。⚡️ 制作期間は5~7日くらいです。 GitH

                                                                          Rust/Tauriに入門したので画像変換デスクトップアプリを開発してみた
                                                                        • 【フルスタックエンジニアへの道!】ReactとTypeScriptの修行をした話 - Findy Tech Blog

                                                                          こんにちは、ファインディでFindy Team+(以下Team+)を開発しているEND(@aiandrox)です。 普段はバックエンドの開発をメインで担当しているのですが、3ヶ月間フロントエンドの開発に挑戦する機会がありました。短い期間でしたが、フロントエンドテックリードから直接指導してもらいながら実装をすることで、フロントエンドの開発を一人でできるくらいに慣れることができました。 今回は、その経験と学びについて書いていきます。 フロントエンドに挑戦する前の自分について フロントエンドに挑戦することになった経緯 フロントエンドを学ぶ上で助けられたこと フロントエンドのノウハウが溜まった記事の充実 開発ツールが揃っている テックリードとマンツーマンでタスクをやっていく react.devの輪読会 つまづいた点 タスク粒度を適切に分割すること Team+のフロントエンドの責務の考え方 Type

                                                                            【フルスタックエンジニアへの道!】ReactとTypeScriptの修行をした話 - Findy Tech Blog
                                                                          1