並び順

ブックマーク数

期間指定

  • から
  • まで

4441 - 4480 件 / 16789件

新着順 人気順

*programmingの検索結果4441 - 4480 件 / 16789件

  • ゲームエンジンにVueを合体させたらゲーム開発が捗った - Qiita

    実は、上記ラッパーライブラリ自体は半年ほど前にできていたのですが、記事にする前に、 実際にそれなりの規模のゲームを作ってみて、「実用的にどうなのよ?」ということを確かめたかったです。 上記ゲームはSteamでの評判もよく、ぜひ遊んでみて欲しいのですが、システム的には「マップを歩きまわる」「会話する」「アイテムを集める」などといったそれなりの規模の機能が備わっております。 今回Phavuerを使ってそれくらいの規模のゲームを作ることできた、という点で、ライブラリとしては重要な実績になったかなと思っています。 ゲームについてもGithubでオープンソースで公開中です。 なぜVueでラッピングしたのか できるだけ皆さんにも共感を得られるように紹介していきたいと思います。 人気ゲームフレームワーク Phaser3 とは? Phaser3はJavaScriptベースのゲーム開発用フレームワークです。

      ゲームエンジンにVueを合体させたらゲーム開発が捗った - Qiita
    • AI生成の「CLAUDE .md」、逆に精度が下がるという研究

      本記事では、コーディングAIエージェントに渡す「指示ファイル」の効果について、ざっくり解説します。 株式会社ナレッジセンスは、生成AIやRAGを使ったプロダクトを、エンタープライズ企業向けに開発しているスタートアップです。 この記事は何 この記事は、コーディングAIエージェント向けの指示書ファイル(AGENTS.mdやCLAUDE.md)の効果を検証した論文[1]について、日本語で簡単にまとめたものです。 本題 ざっくりサマリー 「CLAUDE.md」をAIで生成すると、むしろタスクの成功率が下がります。 ETH ZurichとLogicStar.aiの研究チームによって2026年2月に発表されました。 指示ファイルなし / LLMによる指示ファイルあり / 人間による指示ファイルありでの比較。SWE-BENCH LITE(左) / AGENTBENCH (右). もう少し前提から話します

        AI生成の「CLAUDE .md」、逆に精度が下がるという研究
      • Learn JavaScript  |  web.dev

        Web Platform Dive into the web platform, at your pace.

          Learn JavaScript  |  web.dev
        • シスコ、AIにセキュアなコードを生成させるためのルールセット「Project CodeGuard」をオープンソースで公開

          シスコシステムズは、AIコーディングツールを用いてコーディングを行う際に、生成されるコードが脆弱性を持たず安全なパターンを用いたものにするためのルールセットなどを備えた「Project CodeGuard」をオープンソースで公開しました。 Markdownで書かれたセキュリティルールなど Project CodeGuardは、コミュニティによって作成されたMarkdown形式で書かれたセキュリティルールと、ルールが遵守されているかを検証するバリデータ、それらをGitHub Copilot、Codex、Claude Code、Cursor、Windsurfなどの主要なAIコーディングツール用に変換するトランスレータを備えています。 セキュリティルールは、以下の分野の脆弱性をカバーしています。 暗号化 ポスト量子暗号を含む安全なアルゴリズム、安全なキー管理、証明書の検証 入力の検証 SQLイン

            シスコ、AIにセキュアなコードを生成させるためのルールセット「Project CodeGuard」をオープンソースで公開
          • テスト優先度をあげたくなる実話 - フロントエンド版 -

            Storybook・テストに関して「メンテナンス工数に見合うだけのメリットがあるか?」という議論を、経験したことはないでしょうか。フロントエンドは、とにかく動くものを作ることが優先され、Storybook・テストが二の次になっている現場も少なくないと思います。 限りある工数を割きチームで取り組むものですから、導入するためには「どういったメリットがあるのか?」という具体的な例をチームに示す必要があります。これは今年、筆者が体験した実メリットのお話です。導入を躊躇している現場にむけ、参考になればと思い書きました。 【Storybook】不要な Global CSS を削除できた きちんとコンポーネント設計され、コンポーネントに閉じた指定をしていたとしても、どこかに必ず Global な CSS があると思います。何かしらの資材を受け継ぎ立ち上げたプロジェクトに関しては、Global な CSS

              テスト優先度をあげたくなる実話 - フロントエンド版 -
            • 生成AIがGoogleテクノロジーの公式ドキュメントを参照できる「Developer Knowledge API & MCP Server」、Googleが発表

              生成AIがGoogleテクノロジーの公式ドキュメントを参照できる「Developer Knowledge API & MCP Server」、Googleが発表 Googleは、Google Cloud、Android、FirebaseなどGoogleテクノロジーの公式ドキュメントの情報を取得し、生成AIから参照できるDeveloper Knowledge APIおよびそれに対応したMCP(Model Context Protocol)サーバのパブリックプレビューを発表しました。 Google公式ドキュメント群をAPI経由で取得 Developer Knowledge APIは、Googleの公式ドキュメントの内容を取得できるAPIです。これによりスクレイピングなどに頼ることなく、つねに公式ドキュメントの最新の内容にアクセスできます。 アクセスできるのはGoogleクラウド、Android

                生成AIがGoogleテクノロジーの公式ドキュメントを参照できる「Developer Knowledge API & MCP Server」、Googleが発表
              • 人間のために書く原稿に対してモチベーションが上がらなくなってきた

                Warning: Undefined array key 0 in /home/wwnstyle/wirelesswire.jp/public_html/wp-content/themes/wirelesswire_v3/functions.php on line 25 Tweet 売文・・・つまり、文章を書いて売る仕事を生業としてから、ちょうど30年になる。 昔は原稿料も良くて、高校生の頃には月収が親父の手取りを超えていた。 まあ世の中そんなに甘くはなく、そんな時代はほんの一瞬で、学生時代は原稿料でギリギリ食い繋いでいたが、つまらないことでライターの先輩の機嫌を損ねて干されたり、学園祭の準備に打ち込みすぎて働き忘れたりして、引っ越し屋のアルバイトをしたりしながらそれでもなんとか細々とでも売文は続けてきた。 文を書いて原稿料をもらう。それで生活するというのは、なかなか難しい。 僕も本業が別

                  人間のために書く原稿に対してモチベーションが上がらなくなってきた
                • 愚かな人間の都合など完全無視、LLMのための高効率プログラミング言語「Sui」(粋)/AIが正確に、安く実行できることを最優先【やじうまの杜】

                    愚かな人間の都合など完全無視、LLMのための高効率プログラミング言語「Sui」(粋)/AIが正確に、安く実行できることを最優先【やじうまの杜】
                  • 削除のビジネスロジックをドメイン層に閉じ込める簡単で強力な「DeletableIDパターン」の紹介

                    この記事は 株式会社ログラス Productチーム Advent Calendar 2023 13日目の記事です。 はじめに 〇〇を削除できるかどうかのビジネス処理、皆さんはどう実装していますか? 同僚の話題になった記事でも削除の認可処理をどこに記述すべきか?は難しいと説明されています。今回はお題は認可っぽいもので書きますが広範に「削除ができるかどうか?」のビジネスロジックをドメイン層にどう閉じ込めるかの便利な実装パターンを紹介します。 削除処理のビジネスロジックの取り扱いは難しい 削除処理のビジネスロジックの実装はシンプルだけど更新処理や作成処理と比べて意外と難しいです。 それはなぜかというとドメインオブジェクト内の実装に削除処理を書くことができないからです。 例えば権限に管理者と一般ユーザーの二つの権限があるとします。

                      削除のビジネスロジックをドメイン層に閉じ込める簡単で強力な「DeletableIDパターン」の紹介
                    • シグナルハンドラにprintf()を書いてはいけない - Qiita

                      三行でまとめると シグナルハンドラ内でprintf()してはいけない というより、余計な処理を書いてはいけない もう一度言う、シグナルハンドラで余計なことをするな、非常に大事なことだ はじめに シグナルハンドラでやってよい処理は非常に限られるのに、全くルールを守らないサンプルコードが世の中に大量に出回っている。printf()するなんてもってのほかなのだが、カジュアルにそこらじゅうで見かけて非常に悲しい。 この記事では、そんな状況を少しでも改善したいと思い初心者向きに書いたものだ。そのため、下記では、回避するにはどう実装すればよいのか、ルールを破るとどうなるのか、といった点を先に簡潔に記述する。 なぜしてはいけないのか、POSIXだとかリエントラントだとか、は下の方に追いやっている。玄人は読んでてウズウズするだろうが、細かい話はできるだけ目につかないような構成としたため了解いただきたい。

                        シグナルハンドラにprintf()を書いてはいけない - Qiita
                      • 2023年読んで良かった技術書Top5

                        こんにちは。uenikiです。2023年も残すところ後10時間となりました。 今回は2023年に読んで良かった技術書を紹介します。マネジメント系の本は抜きにして、ピュアに技術的な本を紹介します。これまであまり振り返りというものをせずに生きてきたのですが、たまには振り返りというものをしてみたいと思います。 2023年はたくさん言語化をしてきて、言語化することの気持ちよさにハマりつつあるので、アウトプットしてみようと思い立ちました。 Top5のご紹介 なっとく!関数型プログラミング まずは関数型プログラミングの入門書である本書を紹介します。人生を変えてくれる予感のある本に数年ぶりに出会った気がします。何よりも読んでいて楽しく、ワクワクします。 関数型プログラミングの原則から始まって、関数型独自の概念を一つ一つ丁寧に、なぜその概念が必要なのか?を解説してくれています。命令型の問題点を一つ一つ解決

                          2023年読んで良かった技術書Top5
                        • Auth.js v5ではじめる本格認証入門

                          Next.js 14 / Auth.js v5 / Prisma / Planet Scale / shadcn/ui / Tailwind CSS を用いた認証・認可をハンズオン形式で学びます。

                            Auth.js v5ではじめる本格認証入門
                          • 消耗せずに「良いコード」とはなにかを考える

                            次の記事が最近公開されたので、読んでみました。 結論としては、例えば同著者の「良いコード/悪いコードで学ぶ設計入門」という書籍と比較すると、だいぶ受け入れやすい主張になっていると感じました。(以前の書籍についてのコメント記事へのリンク) ところで、私は「良いコード」についての議論や指摘や検討を積極的にやったほうがよいと思っていますが、主に「消耗しない」という観点でこの記事についていくつかの構造理解やテクニックの部分で補足できそうだったので、以下補足していきます。 ざっくりとした主張でいうと、 トレードオフに見える部分は学習・教育で解決できるケースも多くある 品質特性への還元が難しいがコードの良し悪しを定める概念がある Webアプリにおいても再利用性は必要だし、モバイルアプリでも再利用性を求めて失敗することがある 再利用性というよりは、現実に即した概念の線をどこで引くかのバランスを大事にする

                              消耗せずに「良いコード」とはなにかを考える
                            • Anthropic、「Claude Code」の新機能「Remote Control」を発表/PCのターミナルで開始した「Claude Code」セッションを出先のスマホなどから遠隔操作

                                Anthropic、「Claude Code」の新機能「Remote Control」を発表/PCのターミナルで開始した「Claude Code」セッションを出先のスマホなどから遠隔操作
                              • グーグル「Gemini 3」を公開 AIモード検索にも導入 Gemini Agent登場

                                  グーグル「Gemini 3」を公開 AIモード検索にも導入 Gemini Agent登場
                                • 国産組込みOS「ITRON」が40年生き残ってきた理由を、生みの親と振り返る【TRON】 レバテックラボ(レバテックLAB)

                                  国産組込みOS「ITRON」が40年生き残ってきた理由を、生みの親と振り返る【TRON】 2026年2月17日 TRONプロジェクトリーダー 坂村 健(さかむら けん) 1951年東京生まれ。東京大学名誉教授、INIAD cHUB(東洋大学情報連携学学術実業連携機構)機構長。IEEEライフ・フェロー、ゴールデンコアメンバー。1984年からオープンなコンピュータアーキテクチャ「TRON」を構築。モバイル端末、家電製品、車のエンジン制御、宇宙機の制御など世界中で多く使われている。 トロンフォーラム公式サイト 現代のあらゆる電子機器の深部で、静かに、しかし確実に脈動し続けるOSがあります。日本から生まれた、オープンアーキテクチャの組込みOS「ITRON」です。 1984年、坂村健氏によって提唱された「TRONプロジェクト」から生まれたこのOSは、今も家電製品や自動車、産業機器、医療機器など、あら

                                    国産組込みOS「ITRON」が40年生き残ってきた理由を、生みの親と振り返る【TRON】 レバテックラボ(レバテックLAB)
                                  • なぜmapやreduceやfilterなのか〜前編|こわくない関数型プログラミング

                                    のように、式を変形してから代入するというテクニックが使えます。 もちろんこの式変形はxとyがどんな実数のときでも成り立ち、特定の値だとうまく行かない、なんてバグはありません。 割り算を含むような式では、「0で割るのは未定義」といったアサーション条件もきっちり定義されています。 数学で習ったたくさんの式たちは、どれをどう組み合わせてもバグがないのです。 プログラミングをしていて、たくさん作ったクラスやメソッドのどれをどう組み合わせてもバグがない状態なんて、ちょっと考えられませんよね。 バグの少ないプログラムを書きたい こんなことを考えてみましょう。 バグのない関数の組み合わせだけで全部の処理が書けるだろうか? 「関数の組み合わせ」と言うのは、 関数Aの返り値を関数Bの引数として渡す という意味です。四則演算もれっきとした関数です。Scalaなんかでは"+"とか"-"もちゃんと標準ライブラリの

                                      なぜmapやreduceやfilterなのか〜前編|こわくない関数型プログラミング
                                    • 開発生産性が上がるって分かったので GitHub Copilot Business を積極活用しています - Money Forward Developers Blog

                                      エンジニアリング戦略室の高井といいます。 みなさん、GitHub Copilot は利用されていますか? GitHub Copilot は GitHub と OpenAI が共同で開発した生成 AI を活用した開発支援ツールです。コードの自動補完、コード生成、ドキュメントの提案など、多岐にわたる機能を提供し、開発者の生産性を向上させることを目的としています。 マネーフォワードでは、昨年度にトライアルとして Copilot の利用を開始しました。本記事では、Copilot を利用して半年以上経過して、その利用がどのような効果をもたらしたかをレポートします。なお、ここで GitHub Copilot として言及されている Copilot のプランは GitHub Copilot Business です。 Copilot 利用状況・分析対象 なお、分析にはエンジニアリング組織のパフォーマンスを可

                                        開発生産性が上がるって分かったので GitHub Copilot Business を積極活用しています - Money Forward Developers Blog
                                      • 1行で発狂するコード - Qiita

                                        人は1行の記述で死ぬこともある 公開からコンスタントに閲覧をいただいている以下の記事。需要がありそうなので、もう1つ記事を書いてみようと思う。 題材は前回同様のJavaScriptのクソコードではあるが、前回は冗長を極めたクソコードであるのに対し、今回はたった1行である。 1行なのに、なんと示唆深いに富む(決してほめていない)コードだろうか。 不可思議なコード では、実際に見てみよう。 これを見て、何が return で返されるかわかります? 代入演算子 最初見たとき、代入文 a = ××× の評価値って何になるのかな? a が return されるのかなと思いました。 割り当て操作は、割り当てられた値として評価されます。 JavaScriptの仕様を確認し、「return a = ××× は、a がローカル変数である限り、 return ××× ということか、冗長だな」と判断しました。

                                          1行で発狂するコード - Qiita
                                        • Functional TypeScript

                                          オープンデベロッパーズカンファレンス(ODC)2024 での発表資料

                                            Functional TypeScript
                                          • データ分析を始めるにあたり最低限知っておくべきこと|データ分析とインテリジェンス

                                            まずやってみるのはいいけれども限度はあるはず。それはどこだサッカーに興味があるならば、ルールブックを熟読するよりも先にとにかくサッカーをやってみるのがいい、ということに反対する人はあまりいないと思う。 とはいえ全く何も知らないのではゲームが成立しなくなってしまうので、最低限知っておくべきことはあるはずだ。例えば、どうなったら得点になるのかは必須だろう。あとはゴールキーパー以外は手を使ってはいけないとか、範囲を出たらスローインになるとかだろうか。 では「データ分析」における「最低限知らないといけないこと」は何なのだろうか、と考えた内容をまとめた。 前提として、本記事の「データ分析」は「意思決定のための情報=インテリジェンスを作ること」に絞る。言い換えると、システムに組み込んで意思決定と行動を自動化するような「データ分析」は対象外とする。 インテリジェンスについての説明は「情報」には「データ」

                                              データ分析を始めるにあたり最低限知っておくべきこと|データ分析とインテリジェンス
                                            • Go Secure Coding Practice の日本語翻訳を公開します - Techtouch Developers Blog

                                              はじめに Go Secure Coding Practice とは コンテンツ一覧 良かったところ 注意すべきところ 最後に はじめに こんにちは。SRE の izzii です。 テックタッチのエンジニア規模もそれなりに拡大し、若手の採用も進んできたため、セキュアコーディングを徹底していきたいという思いがあり、まずは意識改革ということで勉強会を実施しました。セキュアコーディングを目的とした場合には教育だけでなく Static application security testing (SAST) の導入といった方法もあるのですが、まずは自分を含めた開発メンバーにノウハウをインストールすることにしました。セキュアコーディングへの意識が高まれば、いづれ SAST の導入の際に抵抗感も少ないだろうと考えています。いきなり SAST を導入しても、誤検知が煩くて浸透しないリスクもありうると考えてい

                                                Go Secure Coding Practice の日本語翻訳を公開します - Techtouch Developers Blog
                                              • 遺産であるCOBOLを現代化し、その正確性を自ら証明するAIを開発した話

                                                予想してみてください。CUSTはCustomer(顧客)でしょう。IDはそのままID。ですが、末尾のXは何を指すのか、さっぱりわかりません。 次に、一般的なAI移行ツールによって「現代化」された後のコードを見てみましょう。 名前はそのまま、スネークケース(snake_case)になっただけ。相変わらず意味不明です。業界ではこれを 「Py-BOL」 と呼びます。モダンな環境で動作し、中身はCOBOLの思考回路のままのPythonコードのことです。コンパイルも通るし実行もできます。しかし、保守性は絶望的です。 私はこの問題を解決するシステムを構築しました。 誰も語らない「3兆ドル」の問題 1959年に設計されたCOBOL(Common Business-Oriented Language)は、現在も1日あたり推定3兆ドルの金融取引を処理しています。ATM取引の約95%、クレジットカード決済の8

                                                  遺産であるCOBOLを現代化し、その正確性を自ら証明するAIを開発した話
                                                • Markdown(マークダウン)をVSCodeの拡張機能とスニペットで効率良く書く - Qiita

                                                  Markdownをはやく効率よく書くために 前提として、マークダウンを編集するエディタはVSCodeを使います。 Markdownファイルを使って記事を管理している場合、マークダウンを効率良く書けるかどうかは生産性に直結します。 VSCodeの拡張機能と基本設定(スニペット)を使ってマークダウンを速やかに編集する方法について書いていきます。 よく使う機能にフォーカスしてその操作をイメージできる一般的なショートカットキーを使う(覚える)のがポイントです。 拡張機能があるならそれを使う Markdown All in One ショートカットや便利なコマンドが有効になる拡張機能です。たくさんの機能がありますが、利用頻度が高いものだけ使います。 太字にするショートカット テキストを選択した状態で、Macなら ⌘ + B 、Windowsなら Ctrl + B で太字になります。多くのエディタで採用

                                                    Markdown(マークダウン)をVSCodeの拡張機能とスニペットで効率良く書く - Qiita
                                                  • AWS × Terraform 入門 〜環境設定ベストプラクティス〜

                                                    Terraformを使用してAWSリソースを管理するにあたり最低限必要な環境設定手順をまとめました。 公式のチュートリアル等で一般的に紹介されている手順に則るとセキュリティや利便性の面で課題があります。 ここで紹介する環境設定方法はその課題を解決する私なりのベストプラクティスな環境設定になっています。 これからAWSでTerraformを始める方の参考になれば嬉しいです。

                                                      AWS × Terraform 入門 〜環境設定ベストプラクティス〜
                                                    • Reactで再レンダリングを抑えるシンプルな方法

                                                      はじめに 「React で再レンダリングを抑えたい...」となった場合、多くの人が React.memo や useMemo、useCallback などのいわゆる 「メモ化」 を思い浮かべることでしょう。 しかし、そういった「メモ化」を用いなくても再レンダリングを抑える方法が実は存在しています。 今回はその代表的な例を2つ紹介していきたいと思います。 よくある例 まず例として、以下のような 「パフォーマンスに問題を抱えたコンポーネント」 を考えてみましょう。 import { useState } from "react"; export default function App() { let [color, setColor] = useState("red"); return ( <div> <input value={color} onChange={(e) => setColo

                                                        Reactで再レンダリングを抑えるシンプルな方法
                                                      • Goroutine はなぜ軽量スレッドと称されるのか

                                                        Concurrency is the ability of two or more threads to execute in overlapping time periods. Parallelism is the ability to execute two or more threads simultaneously. 並行処理は、複数個のスレッドを共通の期間内で実行する能力のことです。 並列処理は、複数個のスレッドを同時に実行する能力のことです。 構成と実行並行処理:複数の処理を独立に実行できる 構成 のこと並列処理:複数の処理を同時に 実行 すること Go 公式ブログの The Go Blog - Concurrency is not parallelism の記事の中でも、並行と並列は異なる概念であることが述べられています。 In programming, concurrenc

                                                          Goroutine はなぜ軽量スレッドと称されるのか
                                                        • Transformerに自分の好みのDLsite音声作品を学習させて、癖に刺さる新作を毎日通知するシステムを作った話 - Qiita

                                                          Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 作ったもの DLsiteの新作音声作品をクローリング -> 好みかどうか推論 -> 好みならSlack通知をするシステムを完全サーバーレス(AWS SAM)で構築しました。さらなる精度向上のため、Slackメッセージのボタンをもとに教師データを蓄積する処理も作りました。 デモ(ぼかしMAX) とてもわかりにくいですが、好みであろう作品がPOSTされているSlackの画面です。各メッセージについている「興味あり!」「別に…」ボタンを押すとLambdaが起動し、DynamoDBに新たな教師データとして保存されます。 なぜ作ったのか DLsi

                                                            Transformerに自分の好みのDLsite音声作品を学習させて、癖に刺さる新作を毎日通知するシステムを作った話 - Qiita
                                                          • Node.jsのバージョン管理にVoltaを推したい

                                                            Volta とは Voltaとは、JavaScript ツールマネージャーです。 タイトルでは Node.js のバージョン管理としていますが、 npm・yarn のバージョン管理も行うことができます。 公式サイトでは、「The Hassle-Free JavaScript Tool Manager(手間のかからない JavaScript ツールマネージャー)」と紹介されています。 チームの Node.js のバージョン管理を Volta に統一したところ非常に DX が上がり、Volta の恩恵を感じています。 この記事では、開発者の Volta 人口を増やすべく Volta の紹介と使用方法について解説していきたいと思います。 なかなか詳しく解説している日本語のソースはないので、公式ドキュメントを読んで適宜和訳しています。 公式ドキュメントを読むのがめんどくさいという人に読んでいただい

                                                              Node.jsのバージョン管理にVoltaを推したい
                                                            • VSCodeが物足りない人へ AstroNvimの紹介

                                                              はじめに みなさんはエディタに何を使っていますか? 筆者は最近、VSCodeからNeoVimに乗り換えました。 NeoVimは自分好みにカスタマイズしていくエディタです。 この記事ではVSCodeに飽きちゃった人やNeoVimを使ってみたいけど難しそうだなと思っている人に向けてAstroNvim を紹介します。 AstroNvimとはオールインワンのNeovim環境です。 カスタマイズも簡単にできるため、NeoVim初心者にはとてもおすすめです。 筆者もAstroNvimからNeoVimに入門しており、いまも使い続けています。 AstroNvim のインストール Macの場合はbrewを使って簡単に導入できます。 brew install neovim git clone --depth 1 https://github.com/AstroNvim/AstroNvim ~/.config/

                                                                VSCodeが物足りない人へ AstroNvimの紹介
                                                              • 如何にデータベースが重要でなぜ私達が学ぶのか / Reasons for learning a database

                                                                参考資料 - https://soudai.hatenablog.com/entry/2021/02/02/200104 - https://soudai.hatenablog.com/entry/2021/12/31/114009 - https://about.gitlab.com/blog/…

                                                                  如何にデータベースが重要でなぜ私達が学ぶのか / Reasons for learning a database
                                                                • フロントエンドアーキテクチャの話: Resource Setの紹介

                                                                  こんにちは、よしこです。 この記事は 2020年に立ち上げたWebフロントエンド構成の振り返り の「Applicationのアーキテクチャ」項の詳細記事です。単体でも読めますが、よければ元記事もあわせてどうぞ! この記事では、わたしの所属する株式会社ナレッジワークで開発・運用しているWebアプリケーションのドメインロジックやAPI通信部分のアーキテクチャについてご紹介していきます。いわゆるフロントエンドの中でも裏側の部分。 一番設計っぽい話になると思いますが、そのぶん「△△ライブラリの便利な使い方」「◯◯のベストプラクティス」というような具体的で汎用的な話とは異なり、うちではこうやってますという事例の共有以上の何物でもないです。 社内資料を社外にも公開するぐらいのイメージで共有していきます! 前提:アプリケーションの構成要素の4分類 前段として、大元の思想から話します。 まず、フロントエン

                                                                    フロントエンドアーキテクチャの話: Resource Setの紹介
                                                                  • A Proposal For Type Syntax in JavaScript - TypeScript

                                                                    Today we’re excited to announce our support and collaboration on a new Stage 0 proposal to bring optional and erasable type syntax to JavaScript. Because this new syntax wouldn’t change how surrounding code runs, it would effectively act as comments. We think this has the potential to make TypeScript easier and faster to use for development at every scale. We’d like to talk about why we’re pursuin

                                                                    • Lispを実装したくなったら読んでほしい本6選 - Arantium Maestum

                                                                      言語実装 Advent Calendar 2022の1日目の記事として書いた。 Lisp Advent Calendar 2022でも枠が空いていたのでダブル投稿。 プログラミング言語を実装してみたい!と思ったらまずは簡単なLispインタプリタから始めるというのは一つの王道だと思う。 複雑な構文解析は要らず最低限の再帰下降法パーサで手に入る構文木を、そのまま再帰的な関数で実行していくtree walking評価器。メモリ確保もヒープにそのまま置いていって、メモリ解放は実装言語のGCに任せるなりプログラムの終了時までやらなかったり。そんなインタプリタを作る経験から得られるものは非常に大きく、どんなプログラマでも一回は試してみてもいいのではないか?と思っている。(個人的な感想です) そんな簡易Lispを実装してみて沼にハマってしまい、より精緻な言語処理系を作りたいと思ったとする。その時点で:

                                                                        Lispを実装したくなったら読んでほしい本6選 - Arantium Maestum
                                                                      • 「ぷよぷよは計算困難」―パズル・ゲームと最適化アルゴリズム― – Ono Laboratory

                                                                        はじめに 最近,「一般化ぷよぷよのより強い計算困難性」なる研究を発表しました(東北大学の江藤宏先生,九州大学の木谷裕紀先生との共同研究.国内研究会であるゲームプログラミングワークショップで江藤先生による口頭発表.2021年12月30日現在,pdfはここから取れます). これは有名なビデオゲーム「ぷよぷよ」を一人用のパズルと見立てたとき,かつそれを一般化した場合,どの程度難しいものであるのかを(最適化)アルゴリズム論的に分析したものです.今回「最適化技術の応用・実践」に関する記事を集めよう,ということになりましたので,ちょうどよい題材ということで,この研究をより一般向けに解説してみようと思います.一般向けですので証明自体には踏み込まず,既存の定理と得られた定理の意義をおよそわかっていただくことをこの記事の目標とします.ただし「ぷよぷよ」について関してはおよそルール等がわかっている方を対象とし

                                                                        • これからのAIスキルは「プロンプト」ではなく「コンテキスト・エンジニアリング」──Google DeepMind フィリップ・シュミット氏が提起 | Ledge.ai

                                                                          Top > 学術&研究 > これからのAIスキルは「プロンプト」ではなく「コンテキスト・エンジニアリング」──Google DeepMind フィリップ・シュミット氏が提起

                                                                            これからのAIスキルは「プロンプト」ではなく「コンテキスト・エンジニアリング」──Google DeepMind フィリップ・シュミット氏が提起 | Ledge.ai
                                                                          • Claude Codeを20万円分使ってバイブコーディングの生産性を更に向上させるツールを作った

                                                                            バイブコーディングの効率化でGit worktreeが話題になっていたけど、コマンドの実行や管理が大変そうだったので、まずは効率化するツールを作りたいと思いました。いつもならシェルスクリプトとかエイリアスで済ませるところですが、バイブコーディングでOSSとして作ってみたら面白そうと思い、この1週間集中して開発しました。 結果、Git worktreeの管理を効率化するCLIツールをリリースすることができました。途中からはドッグフーディングで自らの生産性も向上させて、Claude Codeを20万円分以上使いましたがCLIツールとしてかなりクオリティの高いものを短期間で作ることができました。 作ったツール PhantomというCLIツールを作りました。Git worktreeを簡単に管理できるツールで、docker execみたいにワークツリーの中でコマンドを実行する機能があったり、tmux

                                                                              Claude Codeを20万円分使ってバイブコーディングの生産性を更に向上させるツールを作った
                                                                            • 150万MAUのNuxt.js製サービスを機能開発を止めずに1ヶ月&1人でNext.jsに置き換えた話

                                                                              Nuxt.js で開発されていたAI受診相談ユビーのフロントエンドを Next.js で作り直しました。 まだまだ仮説検証を繰り返すフェーズのスタートアップのため、機能開発を止めて一気に置き換えることはできず、機能ごとに少しずつ置き換えてリリースをしました。結果、5人のプロダクト開発チームによる機能開発と並走して、全体の移行を1人で1ヶ月の短期間で終わらせることができたので、その意思決定や過程、工夫を紹介します。 移行前の課題 まず前提として、移行前の Nuxt.js による実装は 2018 年に立ち上がったもので、当時 toC の Web サービスを持っていなかった Ubie が ほぼ 1 人の小さいチームで PoC 的に作り始めたものでした。また、当時の Next.js は今ほど多機能ではないプレーンなフレームワークでした。 これらを踏まえて、当時の状況で MVP を最速で作るための技

                                                                                150万MAUのNuxt.js製サービスを機能開発を止めずに1ヶ月&1人でNext.jsに置き換えた話
                                                                              • 財布を気にしたくないのでローカルLLM(Gemma3)にコードを書かせてみた - MNTSQ Techブログ

                                                                                SREチームマネージャーの藤原です。 LM Studio + Gemma 3 + Cline + VSCodeの環境を自由研究的に試用したので、その報告エントリです。 モチベーション プライベートでコードを書く際も最近はClineなどを使ってLLMを使ってコーディングをすることが徐々に増えてきました。 VSCodeとClineを組み合わせて外部サービスをつかってコードの変更作業を実施する場合、 何かコードの変更を依頼するたびに、財布の中身から少しずつお金が溢(こぼ)れていく感覚があるでしょう。 1回1回の額は少額とはいえ、多数回繰り返すとなかなかの金額になってきます。 会社では予算の範囲内であれば、利用できますが、個人開発の場合はなかなか躊躇してしまうこともあるでしょう。 また、先日Googleが公開したオープンなローカルLLMのGemma 3も話題になったりしています。 そこでAPI課金

                                                                                  財布を気にしたくないのでローカルLLM(Gemma3)にコードを書かせてみた - MNTSQ Techブログ
                                                                                • Python開発者のためのセキュアコーディングのコツ10個 - Qiita

                                                                                  本記事は2021年9月27日に公開したPython security best practices cheat sheetを日本語化した内容です。 2019年、Snykは最初のPythonチートシートをリリースしました。それ以来、Pythonのセキュリティの多くの側面が変化しています。開発者向けセキュリティ企業として学んだこと、そしてPython特有のベストプラクティスに基づいて、Pythonのコードを安全に保つために、この最新のチートシートをまとめました。 【チートシート】2021年版Pythonセキュリティベストプラクティス 本記事では、下記に関するPythonのセキュリティに関するヒントを紹介します。 外部データを常にサニタイズする コードをスキャンする パッケージのダウンロードに注意 依存先パッケージのライセンスを確認する システム標準版のPythonを使用しない Pythonの仮

                                                                                    Python開発者のためのセキュアコーディングのコツ10個 - Qiita

                                                                                  新着記事