並び順

ブックマーク数

期間指定

  • から
  • まで

361 - 400 件 / 2563件

新着順 人気順

golangの検索結果361 - 400 件 / 2563件

  • 今流行りのgRPCについて簡単にまとめてみた(Goのサンプルコード付き) - Qiita

    はじめに (当時)Go歴1ヶ月の私が急遽gRPCを用いてバックエンドのAPIを開発してる業務に参画することになり、必要にかられて急いで学んだので、その時の学びを共有します✎ gRPCって最近よく聞くけど、「なにそれ?」って方も多いと思うので(私もそのうちの1人でした)、自分の学びを纏めるためにもgRPCのエントリー記事を書こうと決意し、Go 5 Advent Calendar 2020に登録しました! gRPCとは gRPCって良いらしい 最近gRPC流行ってるらしい 等聞いたことは多いと思いますが、簡単に説明すると RPC (Remote Procedure Call) を実現するためにGoogleが開発したプロトコルの1つ Protocol Buffers を使ってデータをシリアライズし、高速な通信を実現できる IDL(インターフェース定義言語)を使ってあらかじめAPI仕様を .pro

      今流行りのgRPCについて簡単にまとめてみた(Goのサンプルコード付き) - Qiita
    • Goは本当に1980年代の言語みたいなのか。 - Qiita

      はじめに 2020年8月15日現在、golang.orgのトップページに、The Why of Goという動画が、Featured Videoとして紹介されています。 Goに初めて触れて、ちょうどなぜこうなっている?と思う機会が多かったので、自分なりにまとめてみようと思います。 注: 要約というよりは、気になる部分をピックアップして解釈して文字にしているものなので、総合的な内容は動画を見てください。 Goとは1980年代の言語なのか Goとは1980年代の言語のようだと批判される。糖衣構文、多態、Genericsが使えない、依存性管理が粗末等と批判する人にとってGoは、1980年代以降のプログラミング言語の進化の歴史を無視しているように見えるようだ。 だけど、それらの要素があったら21世紀のプログラミング言語といえるということなのだろうか? このプレゼンテーションでは、そういう疑問をきっか

        Goは本当に1980年代の言語みたいなのか。 - Qiita
      • GCPで理想の構造化ログを出力する方法

        はじめに この記事では、GCP のマネージドサービス(Google App Engine[1]/Cloud Run/Cloud Functions/GKE)から Cloud Logging に良い感じの構造化ログ(理想の構造化ログ)を出力する方法について紹介します。 良い感じのログの例 前提条件 この記事で紹介する構造化ログの実装は基本的に以下の仕様にそって実装しています。重要な仕様なので興味のある方は一度読んでみることをおすすめします。 構造化ペイロードの特殊フィールド 用語の解説 本編に入る前に、この記事で使われるログ出力まわりの用語をまとめておきます。以下の用語については前置きなく使いますのでよろしくお願いします。 構造化ログ[2] プレインテキストではなく、JSON等のデータ形式で出力されたログのこと GCPのCloud Logging(旧Stackdriver Logging)で

          GCPで理想の構造化ログを出力する方法
        • Cloud Run Jobs がリリースされたので、何ができるか試してみた!

          2022/05/11にCloud Run Jobsがプレビューでリリースされました! Unlike services, which listen for requests, a job does not serve requests but only runs its tasks and exits when finished. 従来のCloud Runのserviceでジョブ的なことを実装する場合、ポートをリッスンしてリクエストを受け取り、ジョブを実行して、成功/失敗のレスポンスを返すという流れでした。 今回リリースされたCloud Run Jobsでは、ポートをリッスンする必要がなくなったということで、ついに待ち望んでいた機能がきたのか!?とさっそく動作確認し、僕が期待してたことは全部できそうでした🎉 これまでCloudBuildでワークフロー組んでたんですが、対応リージョン増えてC

            Cloud Run Jobs がリリースされたので、何ができるか試してみた!
          • OpenSSHのプロトコル拡張「UpdateHostKeys」の仕組みと実装 | 株式会社ヌーラボ(Nulab inc.)

            Backlog課Gitチームの@vvatanabeです。 先日、BacklogのGitリポジトリへSSHでアクセスする機能を提供するサーバーが、ECDSAとEd25519のホスト鍵をサポートしました。 GitリポジトリへのSSHアクセスに関連するセキュリティアップデートのお知らせ その際、OpenSSHのSSHプロトコル拡張の一つである「UpdateHostKeys」と呼ばれる機能を、Goで書かれたSSHサーバーに実装したので、その経験をもとに機能の仕組みと実装について解説します。 はじめに SSHにおける「なりすまし」を防止する仕組み UpdateHostKeysを説明する前に、SSHにおける「なりすまし」を防止するための重要な要素として、「ホスト鍵」と「known hosts」という仕組みについて説明します。 識別子としてのホスト鍵 ホスト鍵とは、SSHでコンピュータを認証するために使

              OpenSSHのプロトコル拡張「UpdateHostKeys」の仕組みと実装 | 株式会社ヌーラボ(Nulab inc.)
            • ウェブのプライバシー強化: サードパーティ Cookie 廃止への道

              .app 1 .dev 1 #11WeeksOfAndroid 13 #11WeeksOfAndroid Android TV 1 #Android11 3 #DevFest16 1 #DevFest17 1 #DevFest18 1 #DevFest19 1 #DevFest20 1 #DevFest21 1 #DevFest22 1 #DevFest23 1 #hack4jp 3 11 weeks of Android 2 A MESSAGE FROM OUR CEO 1 A/B Testing 1 A4A 4 Accelerator 6 Accessibility 1 accuracy 1 Actions on Google 16 Activation Atlas 1 address validation API 1 Addy Osmani 1 ADK 2 AdMob 32 Ads

                ウェブのプライバシー強化: サードパーティ Cookie 廃止への道
              • Top 20 Dockerfile best practices

                Learn how to prevent security issues and optimize containerized applications by applying a quick set of Dockerfile best practices in your image builds. If you are familiar with containerized applications and microservices, you might have realized that your services might be micro; but detecting vulnerabilities, investigating security issues, and reporting and fixing them after the deployment is ma

                  Top 20 Dockerfile best practices
                • MQTT Version 3.1.1 をふりかえる - OPTiM TECH BLOG

                  ご無沙汰してます。中野です。 相変わらずNATSやNSQやら、AWSやAzureやらと戯れてます。 はじめに IoTの流行りとともに脚光を浴びた通信プロトコルにMQTTと呼ばれるものがあります。 MQTTがIoTのシーンにおいて、HTTPなどの他のプロトコルと比較して、 プロトコル的にどう優れているのか、どう劣っているのか、結局ユースケース次第なのでここでは割愛します。 ただ事実としてあるのは、 Amazon Web Services (AWS) Microsoft Azure Google Cloud Platform (GCP) らが、IoT向けのメッセージブローカーとしてMQTTをサポートした以上、 MQTTというプロトコルの存在を無視はできないということです。 (製品に採用するかどうかは、ユースケース次第なのでまた別の話です。) (MQTTそのものの良し悪しより、それぞれのクラウド

                    MQTT Version 3.1.1 をふりかえる - OPTiM TECH BLOG
                  • bpftraceによるGoアプリケーションのトレース|hayajo

                    はじめにシステムの状態を的確に捉え、運用に必要なインサイトを継続的に得るための特性は「オブザーバビリティ」と呼ばれます。オブザーバビリティを実現することで、パフォーマンスのモニタリングやトラブルシューティングを効果的に行い、システムの信頼性を高めることができます。 この重要な特性を実現する上で、eBPFやbpftraceは強力なツールとなります。 本記事では、Goアプリケーションにおけるオブザーバビリティを実現するための一つの方法として、bpftraceを用いたトレースの手法を紹介します。 内容が多いため、目次を活用して段階的に読み進めることをお勧めします。 eBPFとbpftraceはじめに、eBPFとbpftraceについて簡単に説明します。 eBPFとはeBPF(Extended Berkeley Packet Filter)はLinuxカーネル内で動作する柔軟なプログラミングフレー

                      bpftraceによるGoアプリケーションのトレース|hayajo
                    • 自動化するならちゃんとエラーを出せ。想定しろ。不安になれ。 - じゃあ、おうちで学べる

                      はじめに 自動化やツール開発において、通常時に上手くいくのは当たり前です。大切なのは失敗を想定することです。自動化したツールがエラーも出さずに実行結果的にも成功してるので動いていると思っていたら、実は問題が発生していて泣いた経験は、多くの人にあるのではないでしょうか。エラーを出力し、適切に失敗させて、ログに記録することで、問題の早期発見と迅速な対応が可能になります。また、エラーが発生する可能性のある箇所を事前に想定し、適切に処理することで、ツールの信頼性と安定性が向上します。 しかし、エラーハンドリングができていても、それだけでは不十分です。優れた自動化ツールは、環境の変化に柔軟に対応できるようにコードが設計されているべきです。 また、自動化ツールの完成度を高めるには、エラーハンドリングだけでなく、保守性、拡張性、ユーザビリティなども考慮する必要があります。 自動化ツールを開発する際は、常

                        自動化するならちゃんとエラーを出せ。想定しろ。不安になれ。 - じゃあ、おうちで学べる
                      • OpenSSHがSHA-1を使用したRSA署名を廃止、BacklogのGitで発生した問題と解決にいたるまでの道のり | 株式会社ヌーラボ(Nulab inc.)

                        サービス開発部SRE課の@vvatanabeです。 2021年9月26日、OpenSSH 8.8がリリースされました。大きな変更として挙げられるのは、SHA-1ハッシュアルゴリズムを使用したRSA署名の廃止です。 本記事では、この変更がBacklogに与えた影響、その時現場で起こっていたこと、問題解決のプロセス、なにを教訓にしたのか等、順を追って解説します。 ※ 本記事はNuCon 2021で発表した内容をブログ化したものです。 問題の発覚 BacklogのGitへSSHでアクセスできない TypetalkのBacklog開発者のトピックで、以下のフィードバックが投稿されました。 「OpenSSH 8.8へアップデートすると、BacklogのGitへSSHアクセスできない」という内容でした。 問題の調査 Inside SSH protocol v2 深堀りしていく前に、SSHプロトコルの接

                          OpenSSHがSHA-1を使用したRSA署名を廃止、BacklogのGitで発生した問題と解決にいたるまでの道のり | 株式会社ヌーラボ(Nulab inc.)
                        • 歴史・年表でみるAWSサービス(Amazon EventBridge編) -機能一覧・概要・アップデートのまとめ・入門、Amazon CloudWatch Eventsとの違い- - NRIネットコムBlog

                          小西秀和です。 「歴史・年表でみるAWS全サービス一覧 -アナウンス日、General Availability(GA)、AWSサービス概要のまとめ-」から始まったAWSサービスを歴史・年表から機能を洗い出してまとめるシリーズの第5弾です(過去、Amazon S3、AWS Systems Manager、Amazon Route 53について書きました)。 今回はAWSサービスのイベント検知、条件に応じた他のAWSサービスへのイベント連携、イベントの生成などをするAmazon EventBridge(旧Amazon CloudWatch Events)について歴史年表を作成してみました。 今回もAmazon EventBridgeの誕生から機能追加やアップデートを追いながら主要機能を現在のAmazon EventBridgeの機能一覧と概要としてまとめています。 これらが、各AWSサービス

                            歴史・年表でみるAWSサービス(Amazon EventBridge編) -機能一覧・概要・アップデートのまとめ・入門、Amazon CloudWatch Eventsとの違い- - NRIネットコムBlog
                          • Slackアプリ開発の社内勉強会を開催しました - JX通信社エンジニアブログ

                            サーバサイド開発やインフラ周りをいじっているたっち(TatchNicolas)です。 JX通信社の日々の運用では、Slack workflowやbotが大活躍しています。 かなり作り込まれた高機能なBotもあり欠かせないものになっていますが、開発者メンバーのなかには普段そのリポジトリを触らない人・すでにあるものに機能追加・改修はするがゼロから立ち上げたことはない人などもいます。ハードルをグッとさげることで自分たちの斧を研ぎやすくできないか?と考えました。 そこで毎月開催している社内勉強会にて、今回はSlackアプリ開発をテーマにしましたのでその様子について紹介します。 内容 初めて触る人でも開発をすぐに始められるように、社内でよく使われる言語でテンプレになるリポジトリを用意しました。 Golang: https://github.com/TatchNicolas/slack-scaffol

                              Slackアプリ開発の社内勉強会を開催しました - JX通信社エンジニアブログ
                            • PHPer がはじめて Tour of Go を学んだときのポイント24選 - aoma blog

                              Goって興味はあったけど全然触ってこなかったaomaです。 Goには A Tour of Go という、これをやればGoマスターになれるステキサイトがあります。 A Tour of Go 普段PHPに慣れている中で、ムムッ!?っとなった点を目次別にメモしました。 PHPerでこれからGoを学ぶよって人の助けになれば幸いです。 Packages, variables, and functions. 変数名の 後ろ に型名を書く https://go-tour-jp.appspot.com/basics/4 戻り値となる変数に名前をつけることができる https://go-tour-jp.appspot.com/basics/7 関数の中では、var 宣言の代わりに := の代入文で暗黙的な型宣言が可能 関数の外では、キーワードではじまる宣言( var, func, など)が必要 https:

                                PHPer がはじめて Tour of Go を学んだときのポイント24選 - aoma blog
                              • Cloud RunとIdentity-Aware ProxyとGitHub ActionsでPull RequestごとのDeployment Previewを実現する - Hatena Developer Blog

                                マンガ投稿チームでWebアプリケーションエンジニアをしているid:stefafafanです。この記事では、最近私がチーム向けに整備したDeployment Preview環境の事例を紹介します。 Deployment Previewとはどのようなものか? チームとして求める要件 実現したDeployment Previewの全体像 1. DockerイメージをビルドしてArtifact RegistryにpushしてCloud Runで動かすまで GitHub Actionsでどのように実現したか 2. ロードバランサーと証明書の準備、またServerless NEGによる振り分け Certificate Managerでワイルドカード証明書を取得 Serverless NEGを用意してURL MaskでCloud Runのリビジョンタグと対応づける Identity-Aware Prox

                                  Cloud RunとIdentity-Aware ProxyとGitHub ActionsでPull RequestごとのDeployment Previewを実現する - Hatena Developer Blog
                                • GitHub Actionsを使ってGoプロジェクトのCI/CD及びカバレッジ計測をおこなう | おそらくはそれさえも平凡な日々

                                  GitHub Actionsを遅まきながら使ってみて、自分のアクティブなGitHub上のGoのOSSプロジェクトで知見がたまったので、共有するものである。 GitHub Actionsについて 非常に良い。VCSとCI/CDの統合は体験が良い。各種イベントをハンドリングできるが、そのイベントが元々Webhookで提供されていたものなので、Webhookを弄っていた身からすると非常に親しみやすかった。コードpush以外のイベントもハンドリングしてプログラマブルに扱えるので夢が広がる。 使い勝手とか具体的に良くなった点 リポジトリ直下の.github/workflows配下に既定のYAMLをpushすると、その設定にしたがって自動でアクションが動いてくれる。ブラウザ操作必要ないのは快適。 GitHub上でいろいろ完結できる Windowsのテストもできる! GITHUB_TOKEN 管理もうま

                                  • structのメモリ割り当て - Carpe Diem

                                    概要 Goにおけるstructのメモリ構造を知ることでフィールド順序に対する意識が変わったり、なぜunsafe.Sizeof(string)が16bytesでunsafe.Sizeof(slice)が24bytesになるかが理解できます。 環境 Go 1.15.6 darwin 20.1.0 x86_64 各型のメモリ割り当て unsafe.Sizeof()を使うとその変数がどれくらいメモリを割り振るかが分かります。 ※変数の分確保するメモリであり、参照先のメモリは含みません 型 unsafe.Sizeof() bool 1 int32 4 int 8 float64 8 string 16 []T 24 The Go Playground structのフィールドにそれぞれの型を付けると、その分メモリが割り振られます structのメモリ割り当て 例えばbool, float64, in

                                      structのメモリ割り当て - Carpe Diem
                                    • Chrome におけるスキームフル Same-Site の適用について

                                      .app 1 .dev 1 #11WeeksOfAndroid 13 #11WeeksOfAndroid Android TV 1 #Android11 3 #DevFest16 1 #DevFest17 1 #DevFest18 1 #DevFest19 1 #DevFest20 1 #DevFest21 1 #DevFest22 1 #DevFest23 1 #hack4jp 3 11 weeks of Android 2 A MESSAGE FROM OUR CEO 1 A/B Testing 1 A4A 4 Accelerator 6 Accessibility 1 accuracy 1 Actions on Google 16 Activation Atlas 1 address validation API 1 Addy Osmani 1 ADK 2 AdMob 32 Ads

                                        Chrome におけるスキームフル Same-Site の適用について
                                      • GoでDBを使ったアプリを書くときみんなどうしてる? Tonamelはどうしているか晒してみます - KAYAC engineers' blog

                                        こんにちは。ゲームコミュニティ事業部サーバサイドエンジニアの谷脇です。 この記事はTech KAYAC Advent Calendar 2022の2日目です。 私はTonamelというWebサービスを運営しています。Tonamelでは、GoとPerlを用いてサーバサイドアプリケーションを構築しています。 この記事ではTonamelでのパッケージ構成や、DBを使う際に用いているライブラリについて紹介します。 そもそもTonamelって何 パッケージ構成やは、アプリケーションの特性や、実装の複雑さなども考慮するため、前提として作っているものを説明します。 tonamel.com Tonamelとはeスポーツを始めとした競技の大会を開催するときに用いるプラットフォームです。大会主催者と参加者双方が利用します。 Tonamelの機能説明 この図に挙げているように、『参加者管理』と『トーナメント表』

                                          GoでDBを使ったアプリを書くときみんなどうしてる? Tonamelはどうしているか晒してみます - KAYAC engineers' blog
                                        • 100%型安全なgolangORM「ent」を使ってみた | フューチャー技術ブログ

                                          はじめにgolang ORM連載の2記事目となります。TIGの宮崎将太です。 突然ですがみなさん、ORMは何を使用していますか? golangだとGORMがデファクトスタンダードの位置を勝ち取りつつあり、当社でも特に理由がない限りはGORMを使用するケースが多い印象です。 今回は新たな可能性としてFacebook社謹製のent/entを検証します。個人的なORM経験としてはRuby on RailsのActiveRecordから始まり、当社謹製のUroboroSQLというORMからGORMまで割と多めに触れているので、大体どのORMでも気になる機能を中心に作りながら検証します。 entとは 公式から引用してくると以下の通りとのこと。 データベーススキーマをグラフ構造として簡単にモデル化 スキーマをプログラムのGoコードとして定義 コード生成に基づく静的型付け データベースクエリおよびグラフ

                                            100%型安全なgolangORM「ent」を使ってみた | フューチャー技術ブログ
                                          • Zig言語のドキュメントを見て「なるほど!」と思ったところ

                                            前回の続き。 ちょっとZig言語が面白そうです。まだあまりzigでコードは書いていないのですが、ドキュメントやソースコードをながめて思ったことを書き散らかしてみます。 (他の人がすでに書いていることはなるべく書かない) オブジェクト指向でなくてデータ指向 C言語に後にC言語っぽい文法の言語はたくさん出てきました。C++, Java, C#, Go, Rustなど。 C++やJavaはオブジェクト指向の考え方を取り込んだもので、GoやRustはいきすぎたオブジェクト指向を反省して、interface とか trait とか良いところだけを抽出した感じになっています。(個人の感想です) Zigには純粋にC言語からの改善をしていて、オブジェクト指向の香りがあまりしません。 むしろ「データ指向設計」(Data-Oriented Design)が意識されているらしいです。 紹介してもらったこの動画が

                                              Zig言語のドキュメントを見て「なるほど!」と思ったところ
                                            • 【第8回】Go言語(Golang)入門~環境見直し編~ – 株式会社ライトコード

                                              環境の見直し1回目の記事を書いた際に、弊社のメンバーから 「どうせだったら brew とか goenv で導入してみればよかったのに」 …というお言葉を頂いたので、折角なので、goenv で go の環境構築をやりなおしてみることにしました。 goenvとはgoenvとは、rbenv をベースとしたGo言語(Golang)のバージョン管理ツールです。 brew経由でインストールでき、バージョンを指定してインストール出来ることから、チーム開発や複数の環境での開発をしたいときに有用です。 goenvを導入してみようGo言語(Golnag)のバージョン1.13は、2019/10/2時点で、goenv の master には入っていないようなので、--HEADをつけてインストールします。

                                                【第8回】Go言語(Golang)入門~環境見直し編~ – 株式会社ライトコード
                                              • MediaPipe と TensorFlow.js を使ってブラウザで顔と手をトラッキングする

                                                .app 1 .dev 1 #11WeeksOfAndroid 13 #11WeeksOfAndroid Android TV 1 #Android11 3 #DevFest16 1 #DevFest17 1 #DevFest18 1 #DevFest19 1 #DevFest20 1 #DevFest21 1 #DevFest22 1 #DevFest23 1 #hack4jp 3 11 weeks of Android 2 A MESSAGE FROM OUR CEO 1 A/B Testing 1 A4A 4 Accelerator 6 Accessibility 1 accuracy 1 Actions on Google 16 Activation Atlas 1 address validation API 1 Addy Osmani 1 ADK 2 AdMob 32 Ads

                                                  MediaPipe と TensorFlow.js を使ってブラウザで顔と手をトラッキングする
                                                • メルカリShopsのキャッシュ戦略

                                                  メルカリ Shops の開発 vcl, python, golang, containers, typescript, etc. が入っている monorepo で開発が行われている。 なので、あまり専門性はあってもどの領域でも開発を行う。 メルカリアプリ上で動いているため、 webview がベースとなりパフォーマンスは普段以上に求められている。 技術スタックはこちらを参照 ユーザーへの UX を下げないために。。 First Meaningful Paint を速くするSkeleton などでフィードバックを適切に行う => とりあえず速く結果を返却すればよい 結果を速く返すために考えること 共通な結果はすべてキャッシュし、CDN などを使い近くに置く極力、ユーザーからのアクセスを origin まで到達させない常に新鮮な結果を近くに保持することにより、上記を満たせるようにする =>

                                                    メルカリShopsのキャッシュ戦略
                                                  • Docker without Docker

                                                    Docker without Docker Author Name Thomas Ptacek @tqbf @tqbf Image by Annie Ruygt We’re Fly.io. We take container images and run them on our hardware around the world. It’s pretty neat, and you should check it out; with an already-working Docker container, you can be up and running on Fly in well under 10 minutes. Even though most of our users deliver software to us as Docker containers, we don’t u

                                                      Docker without Docker
                                                    • GoのWebアプリケーションでステータスコード499を記録する | おそらくはそれさえも平凡な日々

                                                      この記事は、Go 4 Advent Calendar 2020の16日目の記事です。 さて、ある日、Goで書かれたHTTP APIサーバーのdeployをしたところ、急に500エラーの発生率が上がったことがありました。しかし幸いにもユーザー影響は出ていません。どうしたのでしょうか? ALBログの調査 このシステムはAWSのApplication Load Balancer(ALB)からプロキシされていますが、エラーリクエストに対応するALBのログを調べるとステータスコード460が記録されていました。460を調べると以下のように書いてあります。 The load balancer received a request from a client, but the client closed the connection with the load balancer before the id

                                                        GoのWebアプリケーションでステータスコード499を記録する | おそらくはそれさえも平凡な日々
                                                      • 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
                                                        • Chrome に、邪魔にならない通知許可 UI を導入します

                                                          .app 1 .dev 1 #11WeeksOfAndroid 13 #11WeeksOfAndroid Android TV 1 #Android11 3 #DevFest16 1 #DevFest17 1 #DevFest18 1 #DevFest19 1 #DevFest20 1 #DevFest21 1 #DevFest22 1 #DevFest23 1 #hack4jp 3 11 weeks of Android 2 A MESSAGE FROM OUR CEO 1 A/B Testing 1 A4A 4 Accelerator 6 Accessibility 1 accuracy 1 Actions on Google 16 Activation Atlas 1 address validation API 1 Addy Osmani 1 ADK 2 AdMob 32 Ads

                                                            Chrome に、邪魔にならない通知許可 UI を導入します
                                                          • 50 Shades of Go: Traps, Gotchas, and Common Mistakes for New Golang Devs

                                                            50 Shades of Go: Traps, Gotchas, and Common Mistakes for New Golang Devs 50 Shades of Go in Other Languages Chinese Translation: blog post, segmentfault (by wuYin) - needs updates Another Chinese Translation: blog post (by Shadowwind LEY) - needs updates Russian Translation: blog post (by Ilia Ozhereliev, Mail.Ru Group Blog) - needs updates Overview Go is a simple and fun language, but, like any o

                                                            • Goのバイナリから依存するmodule情報を取り出す方法 - knqyf263's blog

                                                              概要 内部挙動 ELFバイナリの準備 .go.buildinfo section Goのバージョン module情報 ldflagsについて Goのソースコード .go.buildinfo マジックバイト Goのバージョン情報へのポインタ module情報へのポインタ EXEファイルの処理 余談 まとめ 概要 Goでビルドしたバイナリは色々な情報を含んでいます。例えばビルドに使用したGoのバージョンを取得できます。 $ go version ./test ./test: go1.15.2 そしてついこの間知ったのですが、 -m オプションを使うことで利用しているmoduleの情報も取得可能です。 $ go version -m /usr/local/bin/terraform /usr/local/bin/terraform: go1.14.9 path github.com/hashic

                                                                Goのバイナリから依存するmodule情報を取り出す方法 - knqyf263's blog
                                                              • Web Vitals を支える科学

                                                                .app 1 .dev 1 #11WeeksOfAndroid 13 #11WeeksOfAndroid Android TV 1 #Android11 3 #DevFest16 1 #DevFest17 1 #DevFest18 1 #DevFest19 1 #DevFest20 1 #DevFest21 1 #DevFest22 1 #DevFest23 1 #hack4jp 3 11 weeks of Android 2 A MESSAGE FROM OUR CEO 1 A/B Testing 1 A4A 4 Accelerator 6 Accessibility 1 accuracy 1 Actions on Google 16 Activation Atlas 1 address validation API 1 Addy Osmani 1 ADK 2 AdMob 32 Ads

                                                                  Web Vitals を支える科学
                                                                • メルペイエキスパートチームの取り組み〜人類Gopher化計画の進捗報告〜 | メルカリエンジニアリング

                                                                  Merpay Advent Calendar 2019 の17日目は、メルペイ エキスパートチームの @tenntenn がお送りします。 筆者が所属するエキスパートチームでは「アウトプットをするところに技術は集まる」という考えのもと、工数の50%以上を技術コミュニティへの貢献に充てています。筆者はその中でもGoコミュニティを中心に活動しており、本記事では最近の活動について振り返ります。 筆者は「人類Gopher化計画」を掲げて、さまざまなバックグラウンドを持つ方にGoに触れてもらう活動をしています。名前は社内外で覚えてもらえるように少しふざけてキャッチーにしてありますが、活動自体はコツコツと行っています。 例えば、Goを学びたいと言ってもさまざまなバックグラウンドやスキルレベルの方がいます。効率よく学ぶためには、それぞれのスキルレベルに合わせた学び方やコミュニティが必要になるでしょう。同

                                                                    メルペイエキスパートチームの取り組み〜人類Gopher化計画の進捗報告〜 | メルカリエンジニアリング
                                                                  • Goにおいてアクターモデルを実現するライブラリ"Molizen"とその未来

                                                                    こんにちは。@sanposhihoです。 この記事では、アクターモデルとはなんぞやという話から始まり、僕が卒業論文のプロジェクトとして作成したGoのライブラリ、“Molizen”の紹介をします。 わりと長く、乱文ですが、適宜読み飛ばして興味のある部分だけをご覧いただければと思います。 マサカリは優しく投げてください。ここはこうした方がいいんじゃないかみたいなのも参考にしたいので是非。 Twitter(@sanpo_shiho)に投げていただいても、雑にGitHubのissueを立てていただいてもいいです。 sanposhiho/molizen: Molizen is a typed actor framework for Go. Goのアクターモデルのフレームワークを公開しました。未完成なので暖かく成長を見守ってください🌱 sanposhiho/molizen: Molizen is a

                                                                      Goにおいてアクターモデルを実現するライブラリ"Molizen"とその未来
                                                                    • SIerに生息する「おじさんSE」の生態を知る - Qiita

                                                                      ここでいうおじさんSEとは、主にSIerに生息する、 ・30歳以上で ・モダンな技術を知らない ・レガシーな技術しか知らない ・主に設計書などのドキュメント類を弄っており、コーディングをしない ・現状から変わる気がない(キャリアアップに対し具体的なアクションがない) 人たちを指す。 決して単に妙齢のエンジニアを一括りにしているわけではない。 「おじさんSE」より良い呼び方があれば、ぜひご提案いただきたい。 第1章 おじさんSEの仕事内容 おじさんSEは、コードを書くことはほぼ無い。 これは現場にもよるので、全く無いというわけではないが、 多くのおじさんSEはコーディングはしない。 ではおじさんSEは何をやっているのかというと、 ・内部設計書、外部設計書、詳細設計書の記述 ・結合試験以降の試験項目票の作成 ・試験結果のレビュー 大抵はこの3つになる。 99.9%はウォーターフォール型である。

                                                                        SIerに生息する「おじさんSE」の生態を知る - Qiita
                                                                      • DuckDB as the New jq

                                                                        Recently, I’ve been interested in the DuckDB project (like a SQLite geared towards data applications). And one of the amazing features is that it has many data importers included without requiring extra dependencies. This means it can natively read and parse JSON as a database table, among many other formats. I work extensively with JSON day to day, and I often reach for jq when exploring document

                                                                        • Amazon Verified Permissionsとgolangで認可処理を実装してみた - Techtouch Developers Blog

                                                                          Amazon Verified Permissions とは 従来の認可処理 Cedar 言語の使い方 基本的な記述方法 RBAC の例 ABAC の例 golang で動かしてみる 1. ポリシーストアを AWS コンソールから作成する 3. サンプルアプリケーションの実装 最後に こんにちは、2023年5月にバックエンドエンジニアとしてジョインした yamanoi です。 最近は Cloudflare スタックに注目しており、新機能を触ったりアップデートを眺めたりしています。 今回は先日 GA (一般利用可能)になった AWS のサービス Amazon Verified Permissions を、 golang で実装した簡単なサンプルを交えて紹介したいと思います。 Amazon Verified Permissions とは Amazon Verified Permissions

                                                                            Amazon Verified Permissionsとgolangで認可処理を実装してみた - Techtouch Developers Blog
                                                                          • multipart/form-data形式のファイルが突然アップロードに失敗する問題を仮説を立てながら解決する話

                                                                            こんにちは、株式会社カミナシのエンジニア @imu です。 はじめに 突然ですがファイルアップロードに失敗することってありますよね? カミナシレポートのプロダクトはオフライン機能を実装しており、オフラインで記録したデータをアップロードしたときに失敗するケースが、特定の条件下で起きるようになりました。そのため一部のお客様のデータが端末に残り続け、なんとかしてほしいとサポート依頼が発生しておりました。 私自身、半年ぶりにカミナシレポートのプロダクトに戻ってきたばかりで、リハビリのissueとなりました(笑) 今回は問題を解決するまでの仮説や、調査から解決までお話したいと思います! ※オフライン対応をなぜしているのかは以前書いたこちらを参照いただければと思います。 kaminashi-developer.hatenablog.jp 結論 何が問題だったか結論だけ知りたい方はこちらへ 開発環境 g

                                                                              multipart/form-data形式のファイルが突然アップロードに失敗する問題を仮説を立てながら解決する話
                                                                            • 2020年現在 Web系企業で採用されてる技術についてまとめてみた - Qiita

                                                                              はじめに 2020年も始まりましたね! タイトル通りですが、2020年現在スタートアップや大手のWeb系IT企業で採用されている、トレンドとなっている技術についてそれぞれのジャンル毎に求人や採用ページ、ブログを元にまとめてみました。 いくつかピックアップしている形になるので、記述できてないものもありますが、ご了承くださいm(_ _)m (適宜アップデートしていきたいと思います。) (自分のメイン領域がバックエンドなので、そちらに偏っていると思います) 言語編 Ruby サーバーサイドのスクリプト言語、動的型付け言語です。 まつもとゆきひろさん(Matzさん)により開発されたオブジェクト指向スクリプト言語。 日本生まれの言語です。 整数や文字列なども含めデータ型はすべてがオブジェクトであり、純粋なオブジェクト指向言語です。 有名なフレームワークである Ruby on Rails を使うと開発

                                                                                2020年現在 Web系企業で採用されてる技術についてまとめてみた - Qiita
                                                                              • Vulnerability Management for Go - The Go Programming Language

                                                                                Go vulnerability database The Go vulnerability database (https://vuln.go.dev) is a comprehensive source of information about known vulnerabilities in importable packages in public Go modules. Vulnerability data comes from existing sources (such as CVEs and GHSAs) and direct reports from Go package maintainers. This information is then reviewed by the Go security team and added to the database. We

                                                                                  Vulnerability Management for Go - The Go Programming Language
                                                                                • 私たちはKubernetes SchedulerにWasm拡張の夢を見るか | メルカリエンジニアリング

                                                                                  この記事はMercari Advent Calendar 2022の21日目の記事です。 こんにちは。メルカリのPlatform Infraチームで働いている @sanposhiho といいます。 個人的にKubernetesやその周辺のOSSにコントリビュートをしていて、特にKubernetesのコントロールプレーンのコンポーネントのうちの一つであるスケジューラー周りを触ってることが多いです。 この記事では、現状のスケジューラーにおける拡張性の課題と、スケジューラーに現代の汎用バイナリとも言えるWasm(WebAssembly)ランタイムを通した拡張性を持たせることができるのかどうかを検証してみます。 Kubernetes Scheduler とは スケジューラーはPodをどのNodeで実行するかを決定しているコンポーネントです。 その時の様々なリソースの状況を見たり、ユーザーが指定した

                                                                                    私たちはKubernetes SchedulerにWasm拡張の夢を見るか | メルカリエンジニアリング