並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 51件

新着順 人気順

golang web api example githubの検索結果1 - 40 件 / 51件

  • 【2020年】CTF Web問題の攻撃手法まとめ - こんとろーるしーこんとろーるぶい

    はじめに 対象イベント 読み方、使い方 Remote Code Execution(RCE) 親ディレクトリ指定によるopen_basedirのバイパス PHP-FPMのTCPソケット接続によるopen_basedirとdisable_functionsのバイパス JavaのRuntime.execでシェルを実行 Cross-Site Scripting(XSS) nginx環境でHTTPステータスコードが操作できる場合にCSPヘッダーを無効化 GoogleのClosureLibraryサニタイザーのXSS脆弱性 WebのProxy機能を介したService Workerの登録 括弧を使わないXSS /記号を使用せずに遷移先URLを指定 SOME(Same Origin Method Execution)を利用してdocument.writeを順次実行 SQL Injection MySQ

      【2020年】CTF Web問題の攻撃手法まとめ - こんとろーるしーこんとろーるぶい
    • Content-Disposition の filename という地雷。 (1個の観点で17個の脆弱性を見つけた話) - ぶるーたるごぶりん

      English ver: https://gist.github.com/motoyasu-saburi/1b19ef18e96776fe90ba1b9f910fa714#file-lack_escape_content-disposition_filename-md TL;DR 1つのブラウザ、1つのプログラミング言語、15個の { Web Framework, HTTP Client ライブラリ, Email ライブラリ / Web Service 等} で脆弱性を見つけました。 見つけた脆弱性は、全て 1つの観点で発見した (多分 50-80 くらいのプロダクトの調査をした)。 RFC の記載では、(かなりわかりにくく)この問題に対する要件が記載されており、WHATWG > HTML Spec の方はしっかりと書かれているといった状況にある。 この問題は、 Content-Dispo

        Content-Disposition の filename という地雷。 (1個の観点で17個の脆弱性を見つけた話) - ぶるーたるごぶりん
      • Go Scheduler

        ↑ ↓ Go Scheduler Introduction Compilation and Go Runtime Primitive Scheduler Scheduler Enhancement GMP Model Program Bootstrap Creating a Goroutine Schedule Loop Finding a Runnable Goroutine Goroutine Preemption Handling System Calls Network I/O and File I/O How netpoll Works Garbage Collector Common Functions Go Runtime APIs Disclaimer This blog post primarily focuses on Go 1.24 programming langu

          Go Scheduler
        • 時雨堂クラウドサービスを支える技術 v1

          v2 へ移行中です 円安の影響や、自社製品がスケールアウトに対応したこと、Cloudflare LB の WebSocket の挙動が残念だったことなどを踏まえ、サービス構成を変更を検討中です。 脱 Vultr Egress 料金が Linode だと Vultr の半額 Linode へ移行 脱 Cloudflare LB Linode の NodeBalancers へ移行 マルチリージョンでの利用は Linode の Akamai Global Load Balancer 公開待ち 脱 Cloudflare サポートに不安があるため Akamai へ移行 脱 TimescaledB 移行は Linode PostgreSQL の提供開始待ち OLAP は DuckDB + S3 互換オブジェクトストレージへ移行 ログ保存は VictoriaLogs へ移行予定 脱 DataPacke

            時雨堂クラウドサービスを支える技術 v1
          • 開発視点から見る、新しい分散型SNS「Bluesky」とAT Protocolの可能性 | gihyo.jp

            開発視点から見る⁠⁠、新しい分散型SNS「Bluesky」とAT Protocolの可能性 2023年4月初旬、日本で盛り上がりの兆しを見せ始めた分散型SNS「Bluesky⁠」⁠。本記事では、Blueskyのクライアント開発を行う筆者が、開発視点から見たBluesky、そのコア技術であるAT Protocolについて解説します。 なお、Bluesky誕生の背景や基本機能などについては、syui氏の記事「ネクストブレイク分散型SNSの大本命、Blueskyを先取り!」を併せてご覧ください。 Bluesky をコマンドラインから扱う Blueskyクライアント開発のきっかけ Blueskyにはすでにクライアントが存在します。BlueskyのオフィシャルからはiOSアプリが、また Android向けにはkamakuraさんが開発している青雲というアプリが提供されています。 通常はこれらのクライ

              開発視点から見る、新しい分散型SNS「Bluesky」とAT Protocolの可能性 | gihyo.jp
            • OpenAPI GeneratorでPython Web API構築 | フューチャー技術ブログ

              この記事はPython Advent Calendar 2022 カレンダー2の3日目です。昨日はtttakehさんのじゃんけん画像を分類してみたでした。 はじめにこんにちは。TIG DXユニットの村上です! さて、私の所属しているプロジェクトではバックエンドシステムに主にGo言語を用いており、Go言語によるWeb APIを構築しています。 例えばLambdaとGoを使ったサーバーレスWebAPI開発実践入門など、Future Tech Blogには多くのノウハウが投稿されていますので是非ご覧になっていただければと思います。 今回はGo言語ではなくPythonでWeb APIを構築しました。その際にOpenAPI Generatorが便利だったのでご共有します。 OpenAPI GeneratorOpenAPI GeneratorはAPIリクエストやレスポンスの内容を定義し、それを元にプロ

                OpenAPI GeneratorでPython Web API構築 | フューチャー技術ブログ
              • Goの†黒魔術†に対する防衛術 ~Defence Against the Go's dark Arts~ - ANDPAD Tech Blog

                前書き 黒魔術のざっくり概要 黒魔術をどうやって使うか 黒魔術の副作用 黒魔術に対する防衛術 ~Defence Against the Go's dark Arts~ インターフェース適合アサーション 標準的な構文 動作メカニズム 主な用途 実装例 配列長アサーション 標準的な構文 動作メカニズム 主な用途 実装例 定数演算と型定義によるアサーション 標準的な構文 動作メカニズム 主な用途 実装例 マップキー重複アサーション 標準的な構文 動作メカニズム 主な用途 実装例 リンカエラーアサーション 標準的な構文 動作メカニズム import "C" の副作用 コンパイラの定数評価とデッドコード除去 (DCE) リンカのシンボル解決 主な用途 実装例 まとめ 前書き ソフトウェアエンジニアリングの世界では、一見すると動作原理が不可解でありながら、言語仕様の巧みな(あるいは強引な)解釈によって

                  Goの†黒魔術†に対する防衛術 ~Defence Against the Go's dark Arts~ - ANDPAD Tech Blog
                • Better gRPC な Connect に乗り換える - Go言語編

                  デジタル認知行動療法アプリ Awarefy は、2022年4月からバックエンドシステムを Go + gRPC / Protocol Buffers を用いて開発・運用しています。現在進行中の Web アプリ開発のために、connect-go への切り替えが事実上必要になったため、grpc-go から connect-go へのマイグレーションを実行しました。 Connect とはそもそも Connect とはなにかですが、Better gRPC と理解するのがよいでしょう。 Getting started | ConnectConnect is a slim library for building browser- and gRPC-compatible HTTP APIs.ConnectConnect is a slim library for building browser- an

                    Better gRPC な Connect に乗り換える - Go言語編
                  • AWS 環境の可視化を加速する Diagram-as-code とAmazon Bedrockの活用 | Amazon Web Services

                    Amazon Web Services ブログ AWS 環境の可視化を加速する Diagram-as-code とAmazon Bedrockの活用 「このシステム、全体像を見せてもらえますか?」この質問に即座に対応できる組織はどれくらいあるでしょうか。 多くの AWS ユーザーが直面している課題の一つが、インフラストラクチャの可視化です。AWS リソースの構築は Infrastructure as Code (IaC) を実現する AWS CloudFormation や AWS CDK などの発展により自動化が進んだ一方で、それらの構成図を作成する工程は依然として人の手に委ねられていることが多いのが現状です。 以下のような課題を抱えているチームは少なくないでしょう: AWS CloudFormation で管理している本番環境の構成図が古いままで、実態と合っていない 開発環境、ステージ

                      AWS 環境の可視化を加速する Diagram-as-code とAmazon Bedrockの活用 | Amazon Web Services
                    • GitHub - modelcontextprotocol/servers: Model Context Protocol Servers

                      Official integrations are maintained by companies building production ready MCP servers for their platforms. 21st.dev Magic - Create crafted UI components inspired by the best 21st.dev design engineers. ActionKit by Paragon - Connect to 130+ SaaS integrations (e.g. Slack, Salesforce, Gmail) with Paragon’s ActionKit API. Adfin - The only platform you need to get paid - all payments in one place, in

                        GitHub - modelcontextprotocol/servers: Model Context Protocol Servers
                      • Realize から Air に移行し、 Go(echo) + Air + docker-compose でホットリロードを利用して開発を行う。 - @teitei_tk Blog

                        この記事は Go 2 Advent Calendar 2020 の4日目の記事です。 tl;dr Goでホットリロード(a.k.a Live reload)を利用する際には今までは Realize というライブラリを使っている人が多いが、開発が止まっている。 issueも放置され、go modの対応もされておらず、2020/10/25現在のモダンな環境で構築を行うと詰まる点が多い。 代わりに Air というライブラリを利用してホットリロードを行う。 Go + docker-composeを利用してホットリロードを利用した開発を行いたいと検索をして一番多かったのがrealizeというライブラリだった。 github.com が、開発が停滞しているようで、issueも溜まっており、go modの対応もされておらず、2020/10/25 現在の環境で新規に作ろうとすると、いくつもハマる点があった

                          Realize から Air に移行し、 Go(echo) + Air + docker-compose でホットリロードを利用して開発を行う。 - @teitei_tk Blog
                        • OAuth 2.0 / OIDCを理解するために、自分でGoで実装してみた

                          OAuth 2.0 / OIDCを理解するために、自分でGoで実装してみました。 以下のハンズオンに従って実装していただくと、OAuth認可コードフローとOIDCの一連の流れの理解が深まると思います。 概要 OAuth 2.0は、ユーザーの認証情報を直接アプリに渡すことなく、外部サービスを通じて安全に認可を行うためのプロトコルです 。特にWebやモバイルアプリ開発では、認証と認可を分離しセキュアに委譲する手段として広く利用されています。OpenID Connect (OIDC)はOAuth2.0を拡張してユーザーのアイデンティティ情報を扱う仕組みで、OIDCではIDトークンと呼ばれるJWT形式のトークン(署名付き)が発行され、これによってクライアントはユーザーを識別できます。OAuth2.0単体ではユーザー個人を表すトークンは発行されませんが、OIDCではscopeにopenidを含めるこ

                            OAuth 2.0 / OIDCを理解するために、自分でGoで実装してみた
                          • proto定義や成果物の管理用レポジトリを構築した話 - Kyash Product Blog

                            こんにちは、Fundsチームの @convto です。Kyashでは銀行入金やコンビニ入金などの残高の入出金に関わる部分の開発をしています。 Fundsチームではその業務の性質上多数の外部ベンダとやり取りをしています。 それぞれベンダごとに仕様なども異なるため、その接続部分のいくつかはマイクロサービスとして切り出されています。 Fundsチームの管理しているサービス間の通信でgRPCを導入する際、今後の社内の別サービスなどにも汎用的に使えるようなproto管理レポジトリを構築したのでその紹介をしたいと思います。 proto管理レポジトリで満たしたい要件について はじめに、他社の事例も参考にしつつ、自分たちがprotoを管理するにあたってどのような要件を満たせれば良いのか整理しました。 他社の事例を調査したところ、以下のような構成が多かったように思います。 名称は app-proto や p

                              proto定義や成果物の管理用レポジトリを構築した話 - Kyash Product Blog
                            • Webシステム開発で関わる技術のまとめ(2022年に知った物) - Qiita

                              Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに Webシステムの開発に携わりたくて転職して9か月,知らない事ばかりで日々勉強しております。 自分の勉強用メモとして知っておくべき技術をまとめようと思いました。 (こちらの記事にインスパイアされたものです) 技術用語について,なるべく2~3行で概要を説明できる事を目指しています。 情報が多過ぎるので,主流な技術は見出しを赤字にしています。(主観強め) また,今後需要が増えそうな技術は青字にしています。(かなり主観強め) とはいえ,新しい技術が登場すれば,数年でトレンドが変わってしまう事も多々あると思います。 ほとんどはあくまでも

                                Webシステム開発で関わる技術のまとめ(2022年に知った物) - Qiita
                              • App Storeの返金情報を取得する方法 - Mirrativ Tech Blog

                                こんにちは、バックエンドエンジニアのogatasoです。 Mirrativでは、配信者にギフトを贈る際に必要なコインをアプリ内課金で購入できます。 今回、不正の検知と対策を目的として、過去および今後のすべての返金履歴を取得し、データベースに取り込む仕組みを導入しました。 本記事では、App Storeから送られてくる返金通知をリアルタイムで受け取る方法と、過去の課金が返金されていないか調べる方法について解説します。 目次 目次 App Store Server Notificationsとは 設定 テスト通知を送る JWTの生成 通知の検証とデコード サンドボックス環境でREFUND通知を取得する トランザクション情報のデコード 過去の返金履歴の取得方法 リトライ処理の必要性 返金トランザクションの見分け方 レートリミットについて We are hiring! App Store Serv

                                  App Storeの返金情報を取得する方法 - Mirrativ Tech Blog
                                • 【Golang】で【Amazon API Gateway Lambda オーソライザー】と【FirebaseAuth】を利用しての認証をやってみた - カミナシ エンジニアブログ

                                  初めに 初めまして。2021年3月より株式会社カミナシにジョインすることとなりました、エンジニアの@Takuと申します。 業務とは直接関係ないのですが、API Gateway Lambda オーソライザーとFirebaseAuthを組み合わせた認証をやってみたので記載させていただきます。 概要 以下のチュートリアルを元に Amazon API Gateway Lambda オーソライザーを利用した認証機能を作成しました。 docs.aws.amazon.com Amazon API Gateway Lambda オーソライザーを利用することで、 認証・認可部分をAPI Gateway側で共通化できるため、 マイクロサービス化(認証・認可と業務の責務分け) サービスを提供するサーバーの負荷軽減 などのメリットが見込めるのではと考えております。 その際チュートリアルから変更した点として、 OA

                                    【Golang】で【Amazon API Gateway Lambda オーソライザー】と【FirebaseAuth】を利用しての認証をやってみた - カミナシ エンジニアブログ
                                  • ConnectによるgRPCを超えたスキーマ駆動開発(Golang/TypeScript)

                                    こんにちは。PortalKeyの植森です。 前回、PortalKeyの主要技術に関してざっくりと解説をしました。 今回は、その中のひとつであるConnectについて掘り下げていきます。 Connectとは? Connectは、Buf Technologies社が開発したRPCフレームワークです。Protocol Buffersによって通信を定義し、効率的なサーバー/クライアント間通信を実現します。 まずはConnectの特徴について解説していきます。 Production-grade simplicity: 本番運用のシンプルさ Connectは本番運用でのシンプルさを特徴の1つとしています。 gRPCは通信するためにgRPCクライアントや grpcurl のようなツールを使わなければ通信することが困難であったり、Webから利用する場合 gRPC-Web を使う必要がありそのために Env

                                      ConnectによるgRPCを超えたスキーマ駆動開発(Golang/TypeScript)
                                    • gRPC Over HTTP/3

                                      Introduction At the time of writing, HTTP/3 is supported by 30.4% of the top 10 million websites. This market penetration is astounding, but it seems like all of this progress has been possible almost exclusively by work on browsers, load balancers and CDN providers. What about the backend? How’s HTTP/3 doing there? The answer, sadly, is not as incredible. Because of this, I have been very interes

                                        gRPC Over HTTP/3
                                      • 第775回 step-caで自前のLet's Encrypt/ACMEサーバーをUbuntu上に構築する | gihyo.jp

                                        最近のWebサイトを表示する際は、サーバー証明書とTLSを利用したセキュアな接続が大半になってきました。これはセキュリティ意識の向上もさることながら、Let's Encryptに代表される「サーバー証明書の更新の自動化」もその一助となっていることでしょう。今回はこのLet's Encryptっぽいサービスをローカルネットワーク内部に構築してみましょう。 図1 step-caを使えば、自己署名証明書であってもLet's Encryptと同じ方法で自動更新できる Let's EncryptとACMEプロトコル Let's Encryptは無償でサーバー証明書を発行し、自動的に更新処理を行える認証局です。インターネットに関わる名だたる企業・団体の多くが参加することで、300万サイト以上という非常に多くの利用者を抱えているにも関わらず、10年以上に渡って無償でオープンな組織運営を続けています。 L

                                          第775回 step-caで自前のLet's Encrypt/ACMEサーバーをUbuntu上に構築する | gihyo.jp
                                        • Kubernetes HPA External Metrics を利用した Scheduled-Scaling - スタディサプリ Product Team Blog

                                          こんにちは。SRE の @chaspy です。 Quipper では Kubernetes Horizontal Pod Autoscaler (以下、HPA) を利用して Pod のオートスケーリングを実現しています。 HPA は非常に便利で、ほとんどのトラフィック増減に対応できます。しかし、オートスケーリングの宿命ではありますが、突発的なアクセス、いわゆるスパイクアクセスにはどうしても対応できません。CPU 利用率が急激に上がり、HPA がすぐに Desired Replicas を増やしたとしても、Node*1 のスケールアウトに5分程度はかかってしまいます。 CPU 使用率に基づくオートスケーリングに対して、決まった時間に決まった個数を事前にスケールしておくことを Scheduled-Scaling と呼ぶことにしましょう。前者のオートスケーリングと併用して Scheduled-S

                                            Kubernetes HPA External Metrics を利用した Scheduled-Scaling - スタディサプリ Product Team Blog
                                          • 構造化ログと実装 -Goのslogによる実践- - Cybozu Inside Out | サイボウズエンジニアのブログ

                                            この記事は、CYBOZU SUMMER BLOG FES '24 (クラウド基盤本部 Stage) DAY 4の記事です。 クラウド基盤本部Cloud Platform部の pddg です。cybozu.comのインフラ基盤移行まだまだがんばっています。 今回の記事は、社内向けに書いていた「構造化ログとは何か・Goのslogパッケージをどう使うべきか」という話を一般向けに書き直したものです。なんとなくslogを使っているという状態から、チームでどのようにログを取るべきか方針を決められるようになるくらいの状態に持っていくための一助になればと思います。 背景 構造化ログに求められるもの 機械的に読み取り可能なフォーマット ログメッセージとパラメータの分離 一連の操作を特定するパラメータの付与 適切なメタデータの付与 slogパッケージによる実践 機械的に読み取り可能なフォーマットで出力する グ

                                              構造化ログと実装 -Goのslogによる実践- - Cybozu Inside Out | サイボウズエンジニアのブログ
                                            • May 2025 (version 1.101)

                                              Release date: June 12, 2025 Security update: The following extension has security updates: ms-python.python. Update 1.101.1: The update addresses these issues. Update 1.101.2: The update addresses these issues. Downloads: Windows: x64 Arm64 | Mac: Universal Intel silicon | Linux: deb rpm tarball Arm snap Welcome to the May 2025 release of Visual Studio Code. There are many updates in this version

                                                May 2025 (version 1.101)
                                              • WEARにおけるPUSH通知システムのリプレイス - ZOZO TECH BLOG

                                                こんにちは、WEARバックエンドブロックの天春(@AmagA001)です。バックエンドの運用・開発に携わっています。WEARはサービス開始から10年ほどの古いVBScriptを使った環境からRuby on Rails環境にシステムリプレイスを行なっています。本記事では、リプレイスの中でも既存環境が複雑で問題や課題が多くあったPUSH通知システムのリプレイスについてご紹介します。 目次 目次 PUSH通知システムとは リプレイス前のPUSH通知システム リプレイス前のPUSH通知システムの問題点 通知送信バッチのスケールアウトが出来ない 障害対応・運用が難しい状況 複数の開発言語による運用・改修コストが高い ステージング環境で通知確認ができない リプレイスの背景 リプレイス後のPUSH通知システム 非同期システム・EKS導入 既存システムの問題解決 バッチのスケールアウトが出来ない 障害対応

                                                  WEARにおけるPUSH通知システムのリプレイス - ZOZO TECH BLOG
                                                • Counter Service: How we rewrote it in Rust

                                                  Abstract The Integrity Data Platform (IDP) team decided to rewrite one of our heavy Queries Per Second (QPS) Golang microservices in Rust. It resulted in 70% infrastructure savings at a similar performance, but was not without its pitfalls. This article will elaborate on: How we picked what to rewrite in Rust. Approach taken to tackle the rewrite. The pitfalls and speed bumps along the way. Was it

                                                    Counter Service: How we rewrote it in Rust
                                                  • Introducing DRPC: Our Replacement for gRPC | Storj Engineering Blog

                                                    4/27/2021In 2016, Google launched gRPC, which has overall taken the systems programming community by storm. gRPC stands for something with a G, Remote Procedure Call; it's a mechanism for easily defining interfaces between two different remote services. It's tightly bundled with Protocol Buffers version 3 (another highly adopted data interchange specification from Google), and... it seems like eve

                                                    • Introducing the AWS Lambda Telemetry API | Amazon Web Services

                                                      AWS Compute Blog Introducing the AWS Lambda Telemetry API This blog post is written by Anton Aleksandrov, Principal Solution Architect and Shridhar Pandey, Senior Product Manager Today AWS is announcing the AWS Lambda Telemetry API. This provides an easier way to receive enhanced function telemetry directly from the Lambda service and send it to custom destinations. This makes it easier for develo

                                                        Introducing the AWS Lambda Telemetry API | Amazon Web Services
                                                      • 【gRPC】Connect が作られた背景概要/これまでの gRPC-Web/Connect でできること - SYM's Tech Knowledge Index & Creation Records

                                                        【gRPC】Connect が作られた背景概要/これまでの gRPC-Web/Connect でできること はじめに 何故 Connect が作られたのか? gRPC-Web とは proxy 層が必要な理由 gRPC-Web のソースを追う Envoy Proxy & gRPC-gateway 補足 Connect とは Connect-Web Connect-Web のソースを追う fetch api についての補足 Connect チュートリアル + α connect-go (サーバサイド) 初期構築 コード生成 ルーティング ERROR Interceptors Streaming Client-Side Streaming RPC Server-Side Streaming RPC 補足 (HTTP Trailer について) connect-web (フロントエンド) 初期構

                                                          【gRPC】Connect が作られた背景概要/これまでの gRPC-Web/Connect でできること - SYM's Tech Knowledge Index & Creation Records
                                                        • Database Migration with Atlas - LayerX エンジニアブログ

                                                          この記事は、LayerX Tech Advent Calendar 2022 7日目の記事です。 Enabling Team エンジニアの @yyoshiki41(中川佳希)です! 直近チームで、 ORMフレームワークである ent を使う機会があり、 そこで利用している Atlas というデータベースマイグレーションエンジンについての紹介です。 ent ent の詳細な説明は省略しますが、以下のような特徴があります。 Go 用の ORM フレームワーク Go で Schema を記述し、コード生成を行う コード生成により、静的型付けされた明示的なAPIを実現 アプリケーションの中で扱いやすいようモデリングした Schema とそのリレーションを定義可能 e.g.) Edges で、エンティティ間のリレーションを表現 Eager Loading, Hook, Privacy レイヤなどの拡

                                                            Database Migration with Atlas - LayerX エンジニアブログ
                                                          • Decoupling a service from monolith with Protocol buffers and connect-go - LayerX エンジニアブログ

                                                            7月はLayerX エンジニアブログを活発にする期間 です! 昨日は、プロジェクト管理はNotionしか勝たん!MLチームのスプリント管理を改善した話 今日の1つ目の記事は、バクラク事業におけるデータ組織とデータ基盤 2023 今日2つ目の記事はバクラク事業部 Enabling Team エンジニアの @yyoshiki41(中川佳希)が担当します。 バクラクでは開発言語に Go を採用しており、gRPC サーバーとして buf/connect-go を利用しています。このブログでは、既存で動いているアプリケーションにどのようなアプローチで gRPC を導入していったかを紹介します。 導入まで buf/connect-go 自体は2022年7月頃に新規レポジトリで小さく試すところから行われました。 既存プロダクトで grpc-go のコード資産(開発ツールやミドルウェア、インフラ設定)を持

                                                              Decoupling a service from monolith with Protocol buffers and connect-go - LayerX エンジニアブログ
                                                            • Getting started with the AWS Cloud Development Kit and Go | Amazon Web Services

                                                              AWS Developer Tools Blog Getting started with the AWS Cloud Development Kit and Go We are excited to announce that Go support for AWS CDK is now in Developer Preview. This means it is now ready for you to test drive in your own CDK applications. This post will show you how to initialize a new AWS CDK app as well as the basics of creating and deploying AWS CDK stacks using the Go programming langua

                                                                Getting started with the AWS Cloud Development Kit and Go | Amazon Web Services
                                                              • Goaのlinterを作った: Goalint - エムスリーテックブログ

                                                                永山です。 本記事では筆者の開発した、Go製のWebフレームワーク Goa (v3) 向けのlinterツール goalint を紹介します。 些細な間違いの検知を人間に頼ることはやめたい Goa とは モチベーション 既存のlinter goavl IBM OpenAPI Validator goalint 使用方法 goavlとのアプローチの違い 結果 We are hiring!! Goa とは goa.design Goaは、GoのDSLでHTTPやgRPCのAPIの仕様を記述するというアプローチが特徴的なGo製のWebフレームワークです。 昨今ではWeb APIの仕様の記述に OpenAPI を使用することも少なくないかと思いますが、GoaはそれをGo上で行うようなものであるといえます。 // Goaで記述されたAPI仕様の例 (以下より, 一部改変) // https://gi

                                                                  Goaのlinterを作った: Goalint - エムスリーテックブログ
                                                                • 現状と向き合ってシステムを考える時の頭の中をちょっとだけ - ytake blog

                                                                  このエントリはスターフェスティバル株式会社の スターフェスティバル Advent Calendar 2022 16日目記事でもあります。 みなさんは開発する時にどう考えていますか? 大した内容ではありませんが、今回は開発をする上で 「どう考えて設計して表現していくか」、という永遠の悩みの中で 自分が複雑な物事に立ち向かう時の頭の中を少し書き出してみようと思います。 各カンファレンスなどで話しているものを結合したものではあります。 一緒に仕事をしたりしている方々にはお馴染みの話です 前半くらいは前提の話や分析の思考、 後半はイベント駆動などにおけるメッセージについて という流れになってます。 ちなみに自身はスターフェスティバルではアプリケーション全般の開発には関わっていますが、 主にデータ基盤やデータドリブンなマインドを伝播させていくことや、 データを使った戦略を立てながらのプロダクト作りや

                                                                    現状と向き合ってシステムを考える時の頭の中をちょっとだけ - ytake blog
                                                                  • prompts.chat

                                                                    Welcome to the “Awesome ChatGPT Prompts” repository! While this collection was originally created for ChatGPT, these prompts work great with other AI models like Claude, Gemini, Hugging Face Chat, Llama, Mistral, and more. ChatGPT is a web interface created by OpenAI that provides access to their GPT (Generative Pre-trained Transformer) language models. The underlying models, like GPT-4o and GPT-o

                                                                    • Portable apps with Go and Next.js

                                                                      The release of Go 1.16 introduced a new embed package in the Go standard library. It provides access to files embedded in a Go program at compile time using the new //go:embed directive. It’s a powerful new feature because it allows building a binary with static dependencies like templates, HTML/CSS/JS, or images self-contained. This portability is great for easy distribution and usage. Previously

                                                                        Portable apps with Go and Next.js
                                                                      • クリーンアーキテクチャのお話

                                                                        概要 個人開発でクリーンアーキテクチャを実装してみました。理由は、夏のインターンでクリーンアーキテクチャを採用したプロダクトに参加させていただいたため、また、復習を込めてアウトプットしようと思いました。 初投稿で荒削りかもしれませんが、この記事を訪れた方々の役に少しでも立つことができれば幸いです。 はじめに クリーンアーキテクチャといえば下図を思い浮かべる人が多いと思います。 具体的な説明は様々な人がしているため、今回は簡単に説明しようと思います。 クリーンアーキテクチャについて詳しく知りたい方へ Uncle Bob: The Clean Code Blog Qiita: 実装クリーンアーキテクチャ クリーンアーキテクチャの特徴 ボブおじさんの記事を読んでみると以下のように記述されています。 Independent of Frameworks. The architecture does

                                                                          クリーンアーキテクチャのお話
                                                                        • go command - cmd/go - Go Packages

                                                                          Go is a tool for managing Go source code. Usage: go <command> [arguments] The commands are: bug start a bug report build compile packages and dependencies clean remove object files and cached files doc show documentation for package or symbol env print Go environment information fix update packages to use new APIs fmt gofmt (reformat) package sources generate generate Go files by processing source

                                                                          • WebAssembly: An Updated Roadmap for Developers

                                                                            The WebAssembly (Wasm) ecosystem is transforming. Developers can look forward to a modular, virtualizable, and robust environment for building applications, libraries, and services. We are excited to be working towards this with implementations for WASI-Preview 2. This roadmap reflects changes occurring in standards within the WebAssembly Community Group (CG) and the WASI Subgroup within the W3C.

                                                                              WebAssembly: An Updated Roadmap for Developers
                                                                            • Cybozu Frontend Monthly #9

                                                                              コンテンツ Compat2021: Eliminating five top compatibility pain points on the web 共有者: sakito Compat2021という取り組みの紹介記事になります。 同時にマイクロソフト、IgaliaからもCompat2021についての各社の取り組みについて記事が公開されています。 WebDNAなどを通して行われてきた調査で浮き彫りになった開発者が感じている問題について「ブラウザーの互換性」が多くあがっており、その問題について改善していくという内容になっています。 特にCSS関連でCSS Flexbox, CSS Grid, CSS position: sticky, CSS aspect-ratio property, CSS transformsが各ブラウザで微妙に挙動が異なることによる辛さが多く挙げられているので、こ

                                                                                Cybozu Frontend Monthly #9
                                                                              • 2021-12-08のJS: Rust + Node-APIのパッケージの公開、 #WebSpeedHackathon 、The 2021 Web Almanac

                                                                                JSer.info #569 - Rust + Node-APIでクロスプラットフォーム向けnpmパッケージを公開する - 別にしんどくないブログという記事では、Rustでnapi-rsを使って書いたコードをNode.jsから利用する方法について書かれています。 パッケージとして公開する場合、Node.jsのNode-APIを使うためネイティブモジュールとしてインストール必要があります。 その場合に、インストール後にpostinstallでバイナリをダウンロード/ビルドするのではなく、optionalDependenciesを使ってアーキテクチャごとのパッケージをインストールできるようにする方法についても紹介されています。 #WebSpeedHackathonの2021年版が開催されています。 重いサイトを軽くしろ!年末年始は #WebSpeedHackathon 2021 に挑戦しよう

                                                                                  2021-12-08のJS: Rust + Node-APIのパッケージの公開、 #WebSpeedHackathon 、The 2021 Web Almanac
                                                                                • Ubuntu 24.04 LTS (Noble Numbat) Release Notes

                                                                                  Noble Numbat Release Notes Table of Contents Introduction New features in 24.04 LTS Known Issues Official flavours More information Introduction These release notes for Ubuntu 24.04 LTS (Noble Numbat) provide an overview of the release and document the known issues with Ubuntu and its flavours. For details of the changes applied since 24.04, please see the 24.04.2 change summary. Support lifespan