並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 377件

新着順 人気順

interfaceの検索結果1 - 40 件 / 377件

  • ゲームプログラミング研修 - KAYAC Engineers' Blog

    こんにちは。技術部平山です。 たぶん15年ぶりくらいに研修の類の講師をやったので、そのことについて書きます。 概要 2D用(github)、 3D用(github) の2つのUnityプロジェクトをテンプレートとして用意して、 そこに「コードだけで」ゲームを作る研修をしました。 どちらも、Hierarchyに何かを足すことは禁止、 足して良いアセットはC#ファイルのみで、 そのC#ファイル内ではUnityEngineの機能を使用禁止、 というレギュレーションです。 いずれも、IMachineなるインターフェイスが存在し、 これを通してゲームを作ります。 例えば2D用のIMachineの主要部分はこんな感じです。 public interface IMachine { public int Width { get; } // スクリーン横解像度 public int Height { get

      ゲームプログラミング研修 - KAYAC Engineers' Blog
    • NATゲートウェイの通信内容を調査して対策し、コストを約60%削減した話 - ZOZO TECH BLOG

      はじめに こんにちは。WEARバックエンド部SREブロックの春日です。普段はWEARというサービスのSREとして開発・運用に携わっています。本記事では、約60%のコスト削減に成功したNATゲートウェイの通信内容の調査方法と通信量の削減方法についてご紹介します。 目次 はじめに 目次 背景 コストの把握 NATゲートウェイの通信内容の把握 CloudWatchメトリクスでの確認 VPCフローログでの確認 リゾルバーでのクエリログでの確認 調査結果をもとにNATゲートウェイ経由での通信量を削減する AWSサービスとの通信 Datadogとの通信 WEARのAPIとの通信 ECRパブリックリポジトリとの通信 結果 まとめ 背景 ZOZOではより効果的な成長を目指してコストの最適化を進めています。コストの増大はサービスの拡大を鈍化させる原因となるため、常に最適な状態に保つことが必要です。WEARで

        NATゲートウェイの通信内容を調査して対策し、コストを約60%削減した話 - ZOZO TECH BLOG
      • データ詰め替え戦略 - kawasima

        このSpring Bootを使ったクリーンアーキテクチャの例は、データの詰め替え過剰にみえる。 https://www.baeldung.com/spring-boot-clean-architecture これだけのモデルと詰め替えが必要なのだろうか? 『Get Your Hands Dirty on Clean Architecture 』にこのマッピング戦略(詰め替え戦略)が書かれている No Mapping (レイヤ間でモデルを共有し、詰め替えをしない) 2-way Mapping (各レイヤで独自のモデルを持ち、レイヤを跨ぐ呼び出しは上位レイヤが詰め替えの責務を負う) Full Mapping (各レイヤで独自のモデルを持ち、レイヤを跨ぐ呼び出しには専用のモデルを使う) またこの戦略のどれを選ぶかの基準は『Balancing Coupling in Software Design

          データ詰め替え戦略 - kawasima
        • チュートリアル: 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
          • Golang開発者のためのクリーンアーキテクチャ

            はじめに クリーンアーキテクチャは、ソフトウェア設計の分野で非常に重要な概念です。 しかし、その理解は容易ではなく、明確な正解が存在するわけではありません。 多くの人が異なる解釈を持ち、他の設計思想と混在していることもあります。 この記事では、自分なりの視点からクリーンアーキテクチャを解釈し、その整理した内容を共有します。 このアーキテクチャの目的は、システムの各層を独立させ、変更に強く、テストしやすい設計を実現することです。 この記事では、クリーンアーキテクチャの基本概念、Golangでの実装方法、およびディレクトリ構成について詳しく説明します。 なお、この記事では個人的な見解を述べており、必ずしも正解を書いているわけではありません。もし誤りがあれば、ぜひご指摘いただけると幸いです。 クリーンアーキテクチャの基本概念 クリーンアーキテクチャの元となったのは、ロバート・C・マーチン(通称「

              Golang開発者のためのクリーンアーキテクチャ
            • DDDを実践するための手引き(ドメインイベント編)

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

                DDDを実践するための手引き(ドメインイベント編)
              • 「第4のブラウザ言語」WebAssemblyが変えるフロントエンド開発 | レバテックラボ(レバテックLAB)

                執筆 山内 直 有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)に所属するテクニカルライター。出版社を経てフリーランスとして独立。ライター、エディター、デベロッパー、講師業に従事。屋号は「たまデジ。」。著書に『Bootstrap 5 フロントエンド開発の教科書』、『作って学べるHTML+JavaScriptの基本』など。 監修 山田 祥寛 静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。 主な著書に「独習」シリーズ、「これからはじめるReact実践入門」、「改訂3版 JavaScript本格入門」他、

                  「第4のブラウザ言語」WebAssemblyが変えるフロントエンド開発 | レバテックラボ(レバテックLAB)
                • goのエラーをスタックトレースも含めて構造化ログで残したい - エムスリーテックブログ

                  こんにちは、エムスリーエンジニアリンググループの福林 (@fukubaya) です。 golangでずっと課題に思っていたエラーの処理について試行錯誤してみました。 イオンモール センソックシティは、カンボジアにある商業施設。本文には関係ありません。 エラー処理のベストプラクティスは? ぼくがかんがえるエラー処理の要件 検討したパッケージ 構造化ログ パッケージの検討 pkg/errors cockroachdb/errors goark/errs go-errors/errors go-errors/errors がよさそう? pkg/errors や cockroachdb/errors は使えないのか ラップして使う errors.WithStack(err) と呼びたい slogで使う errors.Join() に対応したい まとめ We are hiring! エラー処理のベス

                    goのエラーをスタックトレースも含めて構造化ログで残したい - エムスリーテックブログ
                  • ログラスのTerraform構成とリファクタリングツールの紹介

                    この記事は毎週必ず記事がでるテックブログ "Loglass Tech Blog Sprint" の 47週目の記事です! 1年間連続達成まで 残り 6 週 となりました! はじめに ログラスのクラウド基盤でエンジニアをやっているゲイン🐰です。 ログラスではAWS上でアプリケーションを動かすためにIaCとしてTerraformを採用しています。 我々のTerraformの構成を紹介するとともに、現状の課題とリファクタリングの事例を共有できれば幸いです。 ログラスのTerraform構成 ざっくりログラスのアプリケーションにまつわるTerraform構成は以下のようになっています。 基本的にはterraform/usecaseディレクトリ配下にmoduleとして定義されています。 中身は比較的にベタでリソースが書かれており、それらをterraform/envディレクトリの各ディレクトリ内で呼

                      ログラスのTerraform構成とリファクタリングツールの紹介
                    • TypeScript/JavaScriptの不要なコードを削除するツール「Knip」の紹介 - ベースマキナ エンジニアブログ

                      こんにちは、taroです! 今回は、ベースマキナのTypeScriptのプロジェクトで不要なコードの検知・削除で使用しているKnipについて紹介します。 Knip とは Knipは、TypeScript/JavaScriptのコードベースの不要なコードを検出するCLIツールです。 以下が検出できる不要なコードの例です。 package.jsonのdependencies/devDependenciesの中で使われていないpackage exportされているがどこからもimportされていない変数、関数、型など 使用していないファイル その他、検出できる内容の一覧はこちらで確認できます。 またExperimentalな機能(2024年7月現在)として不要なコードの自動削除も可能です。 ちなみにTypeScript/JavaScriptの不要なコードの検出するツールではts-pruneも知ら

                        TypeScript/JavaScriptの不要なコードを削除するツール「Knip」の紹介 - ベースマキナ エンジニアブログ
                      • OS徒然草 (1) - VA Linux エンジニアブログ

                        はじめに コンピュータのアーキテクチャ プログラムの構造 あとがき 執筆者 : 小田 逸郎 はじめに 筆者は自分のことを OS 開発者 (OS屋) だと思ってます。最近は、OSにあまり深く関われていないのですが、筆者が若かりし頃に情熱を注いだものであり、筆者の基盤をなしているものであることには間違いないです。 筆者が OS (UNIX) の開発に携わり始めたのは、1986年のことなので、もう40年近く経ってしまいました。その間に OS の規模も随分大きくなってしまったようです。 筆者が始めた頃の UNIX は、デバイスドライバを除くと、20K行くらいだったと記憶しています。 全コードをラインプリンタで出力、コピー、製本し、皆で読み合わせて、勉強会をしたりしていました。そんなことができる分量だったのです。 今の Linux の規模はどれくらいでしょうか。筆者たちが「Linuxカーネル 2.6

                          OS徒然草 (1) - VA Linux エンジニアブログ
                        • On the origins of DS_store

                          arno.org If you are a Mac user, or if you have transferred files from Mac to Windows, you’re probably familiar with .DS_Store files. But where does this name come from? Back in 1999 I was the technical lead for the Mac OS X Finder at Apple. At that time the Finder code base was some 8 years old and had reached the end of its useful life. Making any changes to it require huge engineering effort, an

                          • TypeSpec、Orval、Storybook を使ってフロントエンドのモック生成を自動化する

                            はじめに フロントエンド開発において、効率的かつ一貫性のあるモック生成は非常に重要です。本記事では TypeSpec、Orval、Storybook の 3 つのツールを使用して自動生成でモックを実現する方法を紹介します。 TypeSpec は、大規模な API を提供するために Microsoft が開発し、使用している新しい API 記述言語です。 Orval は、OpenAPI 仕様から TypeScript のクライアントコードを生成するツールです。これにより、最新の API 仕様に基づいたクライアントコードを常に保持し、API との通信がスムーズに行えるようになります。 Storybook は、コンポーネントを独立して開発・テストするためのインタラクティブなツールです。コンポーネントの見た目や動作を個別に確認できるため、UI の一貫性を保ちながら効率的に開発を進めることができます

                              TypeSpec、Orval、Storybook を使ってフロントエンドのモック生成を自動化する
                            • Cloudflareスタックをモリモリ使ってアバター画像生成サービスを作った話

                              Cloudflare Workersを中心とした、Cloudflareの開発者向け製品群(いわゆるCloudflareスタック)は、今やそれだけでちょっとしたサービスを生み出すことが不可能ではなくなってきています。 今回、システム構成をCloudflareスタックにほぼ全振りした新サービスをお仕事で作ったので、工夫した点を紹介します。 なお、本記事で紹介するサービスは7月4日に正式リリースしたばかりで、本格的なトラフィックをほとんど経験していない状態でこの記事を書き始めています。2ヶ月ほど運用した後での生の声は、8月25日に新潟で行われる、Cloudflare Meetup Niigataで講演枠をいただいてお話しする予定ですので、気が向いた方は新潟まで足をお運びいただければと思います。 他にも機会があれば登壇したいので、Cloudflare系のイベントにお誘いいただけますと幸いです! キ

                                Cloudflareスタックをモリモリ使ってアバター画像生成サービスを作った話
                              • Webアプリケーションにおけるレートリミット、サーキットブレーカー、リトライの役割を調べて実装してみた - RAKUS Developers Blog | ラクス エンジニアブログ

                                はじめに Webアプリケーションにおけるレートリミット、サーキットブレーカー、リトライの役割 リトライ サーキットブレーカー レートリミット レートリミット、サーキットブレーカー、リトライの実装 サンプルアプリケーションの実装 リトライ、サーキットブレーカー、レートリミットを追加 まとめ 年に1度の技術イベント「RAKUS Tech Conference」を開催します!! はじめに こんにちは!エンジニア2年目のTKDSです。 今回は、レートリミット・サーキットブレーカー・リトライについて調べた内容を紹介し、ライブラリを使ってGoで実装してみます。 Webアプリケーションにおけるレートリミット、サーキットブレーカー、リトライの役割 リトライ リクエストが失敗した場合に再試行します。 リトライは、一時的な障害に対して効果を発揮します。 ネットワークの瞬断やサービスの一時的な過負荷など、やり直

                                  Webアプリケーションにおけるレートリミット、サーキットブレーカー、リトライの役割を調べて実装してみた - RAKUS Developers Blog | ラクス エンジニアブログ
                                • 第820回 改めてUbuntuに入門したい人向けのUbuntuサーバー講座2024 | gihyo.jp

                                  2024年もいつの間にか半分が過ぎました。夏越の祓も終わり、なぜか既に始まっている気もする本格的な夏に向けて心機一転気合を入れる時期です。 今回は、研修期間が終わった途端にもう誰がメンテナンスしているかもわからなくなった古いサーバーのリプレースを依頼された不幸な新社会人に向けて、改めてUbuntuサーバーの初歩的なインストール方法について紹介します。 ちなみにUbuntuデスクトップや基本的な部分については、第811回「ゴールデンウィーク特別企画 新学生・新社会人向けのUbuntuデスクトップ講座2024」を参照してください。 図1 Ubuntuサーバーのインストール画面 Ubuntuサーバーとは まず最初にUbuntuサーバーに関する一般的な話をしましょう。「⁠とりあえずUbuntuのインストール方法がわかれば良い」のであれば、「⁠Ubuntuサーバーのインストール手順」まで読み飛ばして

                                    第820回 改めてUbuntuに入門したい人向けのUbuntuサーバー講座2024 | gihyo.jp
                                  • Go で実 DB を使ったテストをしてみた - Repro Tech Blog

                                    はじめに こんにちは。Repro で新規事業の開発をしている冨永です。 我々のチームでは主に、ユーザーのイベント集計を定期的にバッチ処理するフローで Go を採用しています。 Go で RDB など外部依存のあるコンポーネントを扱うテストをする際 interface などで抽象化しモックすることが多かったのですが、実際にその部分の挙動が確かめられないという不安がありました。 そこで今回は testfixtures というライブラリを使って実際に DB アクセスするテストを書いてみたのでその紹介です。 きっかけ まずはチーム内でテストに関する共通認識を作るためワークショップを実施しました。 各々の『知りたいこと』『教えたいこと』『議論したいこと』を話し合った結果、以下のような話題が上がりました。 今回は特に『外部依存のあるコンポーネントでテストが書き辛い』というトピックが盛り上がり、その中で

                                      Go で実 DB を使ったテストをしてみた - Repro Tech Blog
                                    • Astro+WP APIでPageSpeedInsightsで簡単に100点取る

                                      前書き WordPressで稼働しているリニューアル案件で、Astroを使って実装を行った。 ライブラリにサイトが完全に依存するデメリットもあるものの、 Astroを使用した理由としては、コンポーネント指向による保守性拡張性の観点からと、サイトの最適化の観点から採用した。 結果普通のレンタルサーバーでPageSpeedInsightsでほぼ100点満点。 SPの点数 PCの点数 使用感と感想 正直これまでのタスクランナーやモジュールバンドラーなどを使ったHTML開発は若干レガシー化している感があった。 そんな中、まさに現時点でのWeb開発ベストプラクティスを詰め込み、ほぼ何も考えずに最適化されたサイトを実装できる非常にすぐれたライブラリだと感じる。 また、これまでPageSpeedInsigthsの点数を上げようと思ったら、構築後、PageSpeedInsightsの助言に一つ一つ従いなが

                                        Astro+WP APIでPageSpeedInsightsで簡単に100点取る
                                      • GitHubに100種類以上の機能を追加し、インターフェースを使いやすく改良するブラウザ拡張機能「Refined GitHub」

                                        「Refined GitHub」はGitHubに多数の使いやすい機能を導入してくれるブラウザ拡張機能です。 GitHub - refined-github/refined-github: :octocat: Browser extension that simplifies the GitHub interface and adds useful features https://github.com/refined-github/refined-github Refined GitHubの導入手順は次の通り。まず、上記のリンクをクリックしてRefined GitHubのGitHubリポジトリを開きます。Refined GitHubはChrome版・Firefox版・Safari版がありますが、今回はChromeを使うのでChromeのロゴの横のボタンをクリック。 Chromeウェブストア

                                          GitHubに100種類以上の機能を追加し、インターフェースを使いやすく改良するブラウザ拡張機能「Refined GitHub」
                                        • 【10周年前祝い】歴史・年表でみるAWSサービス(AWS Lambda編) -機能一覧・概要・アップデートのまとめ・入門- - NRIネットコムBlog

                                          小西秀和です。 「歴史・年表でみるAWS全サービス一覧 -アナウンス日、General Availability(GA)、AWSサービス概要のまとめ-」から始まった、AWSサービスを歴史・年表から機能を洗い出してまとめるシリーズの第8弾です(過去、Amazon S3、AWS Systems Manager、Amazon Route 53、Amazon EventBridge、AWS KMS、Amazon SQSについて書きました)。 今回は2014年11月にアナウンスされたサーバーレスでフルマネージドなコード実行サービスを提供するAWS Lambdaについて歴史年表を作成してみました。 今年2024年11月にはAWS Lambdaがアナウンスから10周年を迎えるということで、かなり早めではありますが前祝いという意味も含めて、この記事を書きました。 今回もAWS Lambdaの誕生から機能追

                                            【10周年前祝い】歴史・年表でみるAWSサービス(AWS Lambda編) -機能一覧・概要・アップデートのまとめ・入門- - NRIネットコムBlog
                                          • TypeScriptの標準ライブラリで使われているdeclaration mergingのテクニック

                                            TypeScriptの標準ライブラリとは、TypeScriptに組み込みで備わっている型定義のことです。ECMAScript仕様で定義されているJavaScriptの言語機能に対する型定義が含まれています。また、ブラウザに組み込まれているWeb標準のAPIに対する型定義も含まれています。 TypeScriptの標準ライブラリでは、declaration mergingというテクニックが使われています。皆さんが普段書くアプリケーションコードではあまり使う機会がないかもしれませんが、TypeScriptの型定義、とりわけ標準ライブラリの型定義においては重要なテクニックです。 この記事では、declaration mergingの概要と、TypeScriptの標準ライブラリでどのように使われているかについて解説します。 declaration mergingとは Declaration merg

                                              TypeScriptの標準ライブラリで使われているdeclaration mergingのテクニック
                                            • AWS CloudFormationの最近の変更点 - Qiita

                                              AWS CloudFormationの最近の変更 AWS CloudFormationでは2023年末から2024年6月にかけて多くの改善・機能追加がありました。 特に下記は「三大変更点」と呼んでもいいかなと思います。 Gitと同期(Git Sync) (2023/11) IaCジェネレーター (2024/02) オンラインエディタをデザイナーからApplication Clomposerへ変更 (2024/03) また、『最近CloudFormationのデプロイが早くなった気がする』とか思っている人も多いと思います。下記の変更がアナウンスされています。 4 スタック作成を高速化 (2024/04) スタックセットでも地道に変更があり、オプションが追加されています。 5 スタックセットで「同時実行モード」オプション追加 (2023/11) 他にも変更はありますが、CloudFormati

                                                AWS CloudFormationの最近の変更点 - Qiita
                                              • 綺麗なコードを書くためのコードレビューチェックリスト - Qiita

                                                綺麗なコードを書くためのコードレビューチェックリスト PR出す前にこの観点は必要だよねリストまとめ 1. 設計と仕様の整合性 コードが既存のシステム設計に一致しているか確認します。 例えば、MVCアーキテクチャを採用している場合、モデル、ビュー、コントローラーが適切に分離されているかをチェックします。 機能要件 コードが仕様書に記載された機能を正しく実装しているか確認 テストケースを使って期待される動作を検証すると効果的 非機能要件 パフォーマンス、セキュリティ、拡張性などの非機能要件も満たしているかをチェックし YAGNI(You Aren't Gonna Need It)の原則 必要な機能だけを実装し、将来の要求に備えて無駄な機能を追加しない。これはコードの複雑さを減らし、保守性を高めます。 オブジェクト指向設計の原則 単一責任の原則 (Single Responsibility Pr

                                                  綺麗なコードを書くためのコードレビューチェックリスト - Qiita
                                                • Starlinkで10拠点を接続!バッチリ使えます! | IIJ Engineers Blog

                                                  結構長くゲーム業界に出向していましたが、2022年秋に戻ってきました。ゲーム業界での経験も生かしながらIIJのエンジニアとしてちょっと面白いことを提供できていければいいなぁと思っています。格闘ゲームの世界チャンピオン(Evo2017)になった従兄弟がいますが彼にゲームを教えたのは僕ではありません。マスターリーグ大変そう、あと取締役就任おめでとう! Starlinkが日本に使えるようになって1年半が過ぎました。イベント、山小屋、災害現場、船舶での利用などの事例はプレスリリース含めて色々な場面で見かけるようになってきました。 一方で普通の?利用についてはあまり紹介されていないような印象があり、まだまだ皆さん様子見なのかもしれません。 Starlinkは衛星通信を個人でも利用できる価格帯と使い勝手にまで落とし込んでいて、既存回線のバックアップ用途はもちろんメイン回線としても実用的な性能を提供して

                                                    Starlinkで10拠点を接続!バッチリ使えます! | IIJ Engineers Blog
                                                  • Falcon Content Update Remediation and Guidance Hub | CrowdStrike

                                                    Updated 2024-07-25 1954 UTC Using a week-over-week comparison, greater than 97% of Windows sensors are online as of July 24 at 5pm PT, compared to before the content update. Content Configuration Update Impacting the Falcon Sensor and the Windows Operating System (BSOD) Executive Summary PDF This is CrowdStrike’s preliminary Post Incident Review (PIR). We will be detailing our full investigation i

                                                      Falcon Content Update Remediation and Guidance Hub | CrowdStrike
                                                    • What's coming next for ESLint - ESLint - Pluggable JavaScript Linter

                                                      When we released ESLint v9.0.0 in April, it was the first major release in 30 months and formally introduced the new configuration system. ESLint v9.0.0 also made some rule API changes to prepare the core for what’s coming next. After the release, we spent a lot of time creating compatibility utilities, a configuration migration tool, and a rule API transform utility to help the ecosystem move to

                                                        What's coming next for ESLint - ESLint - Pluggable JavaScript Linter
                                                      • Doggo

                                                        Features Human-readable output with color-coded and tabular format JSON output support for easy scripting and parsing Multiple transport protocols: DNS over HTTPS (DoH) DNS over TLS (DoT) DNS over QUIC (DoQ) DNS over TCP DNS over UDP DNSCrypt Support for ndots and search configurations from resolv.conf or command-line arguments Multiple resolver support with customizable query strategies IPv4 and

                                                        • Did Google Just Kill Streamlit?

                                                          Sitting on my couch, browsing through YouTube recommendations, I came across a video by Prompt Engineering on Google’s latest open-source Python framework named ‘Mesop,’ which is used by teams at Google for internal tooling and rapid prototyping. If you are wondering what ‘Mesop’ means, stop overthinking. Not everything in life makes sense. Will, if you are reading this, drop it in the comments be

                                                            Did Google Just Kill Streamlit?
                                                          • AWS SDK for Go でエンドポイントの向き先を httptest.NewServer() にしてテスト | フューチャー技術ブログ

                                                            はじめにTIG真野です。 AWS SDK for Go を使ったコードをクラウドサービスに依存無しでローカルにてテストするとき、次のような手法が考えられます。 外部アクセス部分をインターフェースにしてテスト時はモックコードに差し替えよく見る手法だが、テスト目的のみでインターフェースを作る手間があるSDKのmiddlewareを使用詳細はAWS SDK for Go V2でinterfaceのモック”無し”でテスト - 365歩のテックを参考くださいインターフェースの作成を抑えられるメリットがあるLocalStackなどのモックサービスを利用別プロセス(いわゆる、テストサイズはMedium)になるため。実行時間は1,2より増える。実環境に近い環境でテストできるため品質を上げやすい利点があるhttptest.NewServer() でモックするフューチャーで実績が多いのはLocalStackで

                                                              AWS SDK for Go でエンドポイントの向き先を httptest.NewServer() にしてテスト | フューチャー技術ブログ
                                                            • 旧式Windows PCでも「Windows 11」に移行できる“最低限の条件”はこれだ

                                                              関連キーワード Windows 10 | Windows 11 | Windows | Microsoft(マイクロソフト) Microsoftは、クライアントOS「Windows 10」のサポート終了日を2025年10月14日に設定している。基本的にはその日までに「Windows 11」への移行が必要になる。Windows 10までの「Windows」を搭載する現行PCで、Windows 11に移行できる条件とは何なのか。実は、総じて厳しい条件ではない。対象のPCがWindows 11への移行が可能なのかどうかを以降で確認しよう。 旧式Windows PCでも「Windows 11」に移行できる条件はこれだ 併せて読みたいお薦め記事 Windows 10のサポート終了ガイド 第1回:Windows 11を保留にして「Windows 10を使い続ける」のが“やむを得ない理由” 第2回:Wi

                                                                旧式Windows PCでも「Windows 11」に移行できる“最低限の条件”はこれだ
                                                              • Cloudflare Zaraz adds support for server-side rendering of X and Instagram embeds

                                                                Cloudflare Zaraz adds support for server-side rendering of X and Instagram embeds07/10/2024 We are thrilled to announce Cloudflare Zaraz support of server-side rendering of embeds, featuring two Managed Components: X and Instagram. You can now use Cloudflare Zaraz to effortlessly embed posts from X or Instagram on your website in a performant, privacy-preserving, and secure way. Many traditional t

                                                                  Cloudflare Zaraz adds support for server-side rendering of X and Instagram embeds
                                                                • A Git story: Not so fun this time | Brachiosoft Blog

                                                                  Linus Torvalds once wrote in a book that he created Linux just for fun, but it ended up sparking a revolution. Git, his second major creation, also an accidental revolution. It’s now a standard tool for software engineers, but its origin story wasn’t so much fun this time, at least for Linus. Linus doesn’t scale 1998 was a big year for Linux. Major companies like Sun, IBM, and Oracle started getti

                                                                    A Git story: Not so fun this time | Brachiosoft Blog
                                                                  • Falcon Content Update Preliminary Post Incident Report | CrowdStrike

                                                                    Preliminary Post Incident Review (PIR): Content Configuration Update Impacting the Falcon Sensor and the Windows Operating System (BSOD) Updated 2024-07-25 1900 UTC Executive Summary PDF This is CrowdStrike’s preliminary Post Incident Review (PIR). We will be detailing our full investigation in the forthcoming Root Cause Analysis that will be released publicly. Throughout this PIR, we have used ge

                                                                      Falcon Content Update Preliminary Post Incident Report | CrowdStrike
                                                                    • DuckDB Community Extensions

                                                                      DuckDB Extensions Design Philosophy One of the main design goals of DuckDB is simplicity, which – to us – implies that the system should be rather nimble, very light on dependencies, and generally small enough to run on constrained platforms like WebAssembly. This goal is in direct conflict with very reasonable user requests to support advanced features like spatial data analysis, vector indexes,

                                                                        DuckDB Community Extensions
                                                                      • NVIDIA Transitions Fully Towards Open-Source GPU Kernel Modules | NVIDIA Technical Blog

                                                                        NVIDIA Transitions Fully Towards Open-Source GPU Kernel Modules With the R515 driver, NVIDIA released a set of Linux GPU kernel modules in May 2022 as open source with dual GPL and MIT licensing. The initial release targeted datacenter compute GPUs, with GeForce and Workstation GPUs in an alpha state. At the time, we announced that more robust and fully-featured GeForce and Workstation Linux suppo

                                                                          NVIDIA Transitions Fully Towards Open-Source GPU Kernel Modules | NVIDIA Technical Blog
                                                                        • Modern Approaches to Network Access Security

                                                                          This document is distributed as TLP:CLEAR. Disclosure is not limited. Sources may use TLP:CLEAR when information carries minimal or no foreseeable risk of misuse, in accordance with applicable rules and procedures for public release. Subject to standard copyright rules. TLP:CLEAR information may be distributed without restrictions. For more information on the Traffic Light Protocol, see cisa.gov/t

                                                                          • Maestro: Netflix’s Workflow Orchestrator

                                                                            By Jun He, Natallia Dzenisenka, Praneeth Yenugutala, Yingyi Zhang, and Anjali Norwood TL;DRWe are thrilled to announce that the Maestro source code is now open to the public! Please visit the Maestro GitHub repository to get started. If you find it useful, please give us a star. What is MaestroMaestro is a horizontally scalable workflow orchestrator designed to manage large-scale Data/ML workflows

                                                                              Maestro: Netflix’s Workflow Orchestrator
                                                                            • 「Lunar Lake」Deep Diveレポート - 【Part 2】Memory、GPU、NPUについて

                                                                              レポート 「Lunar Lake」Deep Diveレポート - 【Part 2】Memory、GPU、NPUについて 前回はP-CoreとE-Coreの話に終始してしまったので、今回はもう少し広範な話をしたい。 謎のMemory Side Cache Photo01は基調講演のスライドから切り出して、ついでに複数のスライドの情報を重ね合わせたものである。上側がCompute Tileであるが、向かって右端にP-Core×4+12MB L3 Cache、その下にIPU(Image Processing Unit:通常ならISPと呼ばれるが、要するにカメラ入力に対応した画像処理エンジン)、右にNoCが入り、そのNoCの上にMedia EngineとMemory Side Cache、NOCの下にE-Core×4+4MB L2 CacheとDisplay Engine、その左がNPUとなり、一

                                                                                「Lunar Lake」Deep Diveレポート - 【Part 2】Memory、GPU、NPUについて
                                                                              • Introducing Llama 3.1: Our most capable models to date

                                                                                Meta is committed to openly accessible AI. Read Mark Zuckerberg’s letter detailing why open source is good for developers, good for Meta, and good for the world.Bringing open intelligence to all, our latest models expand context length to 128K, add support across eight languages, and include Llama 3.1 405B—the first frontier-level open source AI model.Llama 3.1 405B is in a class of its own, with

                                                                                  Introducing Llama 3.1: Our most capable models to date
                                                                                • An Introduction to Asynchronous Programming in Rust and a High-level Overview of Tokio's Architecture

                                                                                  An Introduction to Asynchronous Programming in Rust and a High-level Overview of Tokio's Architecture Asynchronous programming allows the development of services that can handle millions of requests without saturating memory and CPU utilization. Support for asynchrony is usually baked into the programming language; we take a look at async support in Rust, a type-safe and memory-safe systems progra

                                                                                    An Introduction to Asynchronous Programming in Rust and a High-level Overview of Tokio's Architecture