フラミナル

考え方や調べたことを書き殴ります。IT技術系記事多め

2022年の振り返り

アウトプット ゲームのリリース ブログ記事 登壇 技術書展12 への寄稿 OSS 資格 触った技術/サービスの振り返り Cloud Build GitHub Actions Terragrunt Ethereum / Solidity ArgoCD External Secret Operator Monobit Cloud Armor Spanner Agones Locust & …

【新規ツール探し】ngrok-go で速攻でローカルのウェブサーバを外部に公開する

記事作成日:2022/12/17 情報 名前 URL Github https://github.com/ngrok/ngrok-go 公式サイト https://ngrok.com/docs デモサイト 開発母体 ngrok version 言語 Go 価格 無料 ライセンス MIT 情報 何ができるもの? 利用シーン 登場背景 所感 使い方 ngrok …

【新規ツール探し】Iacやコンテナ、アプリの脆弱性チェックができる「Snyk」を触った

記事作成日:2022/12/16 情報 名前 URL Github https://github.com/snyk/cli 公式サイト https://docs.snyk.io/ デモサイト demo 開発母体 snyk version 言語 価格 有料 (一部無料) ライセンス Apache-2.0 license 情報 何ができるもの? 利用シーン 登場背…

【新規ツール探し】ソフトウェアのアップデートを自動で!GitHubで使える「Renovate」

記事作成日:2022/12/15 情報 名前 URL Github https://github.com/renovatebot/renovate 公式サイト https://docs.renovatebot.com/ デモサイト 開発母体 MEND version 34.56.3 言語 TypeScript 価格 無料 ライセンス AGPL 情報 何ができるもの? 利用シー…

【新規ツール探し】GitHubでパッケージの脆弱性を調べてPRで教えてくれれる「dependabot」

記事作成日:2022/12/14 情報 名前 URL Github https://github.com/dependabot/dependabot-core 公式サイト https://docs.github.com/ja/code-security/dependabot デモサイト 開発母体 GitHub version 言語 Ruby 価格 無料(部分的に有料) ライセンス Prospe…

【新規ツール探し】asdf と比較しても使いやすいCLI のバージョン管理ツール「aqua」

記事作成日:2022/12/13 情報 名前 URL Github https://github.com/aquaproj/aqua 公式サイト https://aquaproj.github.io/ デモサイト https://asciinema.org/a/498262?autoplay=1 開発母体 suzuki-shunsuke 氏 version 1.25.0 言語 Go 価格 無料 ライセン…

【新規ツール探し】Spanner の DDL を yaml で管理できる「splanter」

記事作成日:2022/12/12 情報 名前 URL Github https://github.com/kauche/splanter 公式サイト https://note.com/kauche/n/ne033cde0c9ea デモサイト 開発母体 カウシェ version 0.1.0 言語 Go 価格 無料 ライセンス MIT 情報 何ができるもの? 利用シーン …

GoでClosureと戯れてみる

Closure(クロージャ) とは、関数が実行された時にその静的スコープで定義された変数を利用できる関数です。 同じ関数を別に呼ぶと 同じ関数で複数のクロージャを作る ポインタをクロージャに渡す 使ったコード - framinal-new-tools/go-closure at main · li…

【新規ツール探し】MySQL + Vitess をフルマネージドで提供する宇宙スケールのDB「PlanetScale」を触った

記事作成日:2022/12/11 情報 名前 URL Github 公式サイト https://planetscale.com/ デモサイト 開発母体 PlanetScale version - 言語 - 価格 有料 ライセンス - 情報 何ができるもの? できないこと(MySQLとの互換性) 利用シーン 登場背景 価格 所感 使い…

【新規ツール探し】GitHubのコンテナレジストリ「ghcr」を触ってみる

記事作成日:2022/12/10 情報 名前 URL Github - 公式サイト https://docs.github.com/ja/packages/learn-github-packages/introduction-to-github-packages デモサイト 開発母体 GitHub version - 言語 - 価格 https://docs.github.com/ja/billing/managing…

ソフトウェアエンジニアとしてのAIツールとの付き合い方を藤井聡太さんから勝手に学ぶ

このツイートを見て「ハッ」としたので、自分なりの ChatGPT との付き合い方を書いておく。 ChatGPTで吐き出された回答とかソースコードが本当に正しいのか疑いながら活用しないといけないという状況を実体験することで、数年前からプロ棋士の先生達が将棋AI…

【新規ツール探し】kubectl debug で使えるコンテナイメージ「koolkits」

記事作成日:2022/12/08 情報 名前 URL Github https://github.com/lightrun-platform/koolkits 公式サイト デモサイト 開発母体 Lightrun version - 言語 Dockerfile 価格 無料 ライセンス Apache-2.0 license 情報 何ができるもの? 利用シーン 登場背景 …

【新規ツール探し】gRPC を RESTful API で提供できる grpc-gateway

記事作成日:2022/12/07 情報 名前 URL Github https://github.com/grpc-ecosystem/grpc-gateway 公式サイト https://grpc-ecosystem.github.io/grpc-gateway/ デモサイト 開発母体 CNCF version 2.14.0 言語 Go 価格 無料 ライセンス BSD 3-Clause 情報 何…

【新規ツール探し】全文検索エンジンの ElasticSearch と Kibana を触ってみた

情報 情報 何ができるもの? 高速な検索のために キャッシュについて データ量について データの削除について 結果整合性、強整合性 データはどう持ってる?複製される? 他のツールとの違いについて 利用シーン 登場背景 所感 使い方 何ができるもの? http…

【新規ツール探し】JavaScriptでシンプルに負荷テストができるk6を触った

記事作成日:2022/12/04 情報 名前 URL Github https://github.com/grafana/k6 公式サイト https://k6.io/ デモサイト 開発母体 Grafana Labs version 0.41.0 言語 Go 価格 無料 ライセンス AGPL-3.0 license 情報 何ができるもの? 対応プロトコル ブラウザ…

【新規ツール探し】OpenAPI と Swagger に入門してみる

記事作成日:2022/12/03 情報 名前 URL Github https://github.com/OAI/OpenAPI-Specification 公式サイト https://www.openapis.org/ デモサイト https://editor.swagger.io/ 開発母体 OpenAPI Initiative version 3.1.0 言語 JavaScript 価格 無料 ライセ…

【新規ツール探し】GitHub Actionsを最速テストできる Act「簡単に動かせすぎてビビった」

記事作成日:2022/12/02 情報 名前 URL Github https://github.com/nektos/act 公式サイト デモサイト 開発母体 Casey Lee 氏 version 0.2.34 言語 Go 価格 無料 ライセンス MIT 情報 何ができるもの? 動作の流れ 使い方 デモ オリジナルの CI を足してみる…

go reference を眺めて知らないことまとめておく

go.dev を読んで個人的に知ったことをまとめる raw string iota map / slice の初期化状態 メソッドの呼び出し方 slice 演算子 copy method raw string fmt.Println(`aaa aa aaa `) iota const ( c0 = iota // c0 == 0 c1 = iota // c1 == 1 c2 = iota // c2…

【新規ツール探し】シンプルに Go で gRPC が使える Connect「コードがとても見やすい!」

記事作成日:2022/12/01 情報 名前 URL Github https://github.com/bufbuild/connect-go 公式サイト https://connect.build/docs/introduction デモサイト https://connect.build/ 開発母体 Buf version 1.3.0 言語 Go 価格 無料 ライセンス Apache-2.0 lice…

【新規ツール探し】複数の Kubernetes クラスタにまとめて kubectl を実行できる「kubectl-foreach」が便利

記事作成日:2022/11/30 情報 名前 URL Github https://github.com/ahmetb/kubectl-foreach 公式サイト デモサイト 開発母体 ahmetb 氏 version 0.2.1 言語 Go 価格 無料 ライセンス Apache-2.0 license 情報 何ができるもの? 使い方 正規表現 特定のクラス…

【新規ツール探し】Sql から Go コードを生成する「sqlc」

記事作成日:2022/11/30 情報 名前 URL Github https://github.com/kyleconroy/sqlc 公式サイト https://docs.sqlc.dev/en/latest/index.html デモサイト sqlc - Playground 開発母体 kyleconroy 氏 version 1.16.0 言語 Go 価格 無料 ライセンス MIT 情報 …

【新規ツール探し】ローカルで簡単に使える Kubernetes が起動できる kind 「何これ楽ちんじゃん」

記事作成日:2022/11/29 情報 名前 URL Github https://github.com/kubernetes-sigs/kind 公式サイト https://kind.sigs.k8s.io/ デモサイト 開発母体 kubernetes-sigs version v0.17.0 言語 Go 価格 無料 ライセンス Apache-2.0 license 情報 何ができるも…

【新規ツール探し】ローカルマシンで仮想環境とコンテナを動かすFinchとは

記事作成日:2022/11/24 情報 名前 URL Github https://github.com/runfinch/finch 公式サイト デモサイト 開発母体 CNCF / AWS version 0.1.0 言語 Go 価格 無料 ライセンス Apache-2.0 license 情報 何ができるもの? 使い方 外部イメージの起動 build 利…

【新規ツール探し】開発・運用の情報を一元管理できるBackstageとは

記事作成日:2022/11/24 情報 名前 URL Github https://github.com/backstage/backstage 公式サイト https://backstage.io デモサイト Backstage Demo 開発母体 CNCF(元は Spotify) version 1.8.2 言語 TypeScript 価格 無料 ライセンス Apache-2.0 licens…

Go の Option パターンを generics と reflect でシンプルにしてみる

Goではインスタンスを生成する New に対していろんなパターンで作成をするために、よく Option パターンと呼ばれる書き方をします。 こんな感じです。(WithXXX で設定したい内容を付与できる) package main import ( "fmt" ) func main() { p := NewProduct(…

Open Saves をざっと眺める

Open Saves の概要: ゲーム向けのオープンソースのクラウドネイティブ ストレージ | Google Cloud Blog が紹介されていたのでみてみます。 開発チームが Cloud Storage 、Memorystore 、Firestore のいずれのストレージ ソリューションを使用するかについて…

Javaで-128~127のIntegerを==で比較するとtrueになる理由

以下のサイトで解説されています。 https://programming.guide/java/boxed-values-equality.html https://stackoverflow.com/questions/3131136/integers-caching-in-java Integer クラスでは -128〜127 の値の場合はJVM の起動時に上記の範囲の Integer オ…

【備忘】spanner の mutation と Statement DML のどちらを使うか

完全にメモ とあるソシャゲのAPIサーバで Spanner を使った。 このとき元々は Mutation を利用していたのだが、以下の理由で Statement DML に変えた。 もともと API サーバではクライアントからのリクエストを処理し、その結果に応じてミッションやアチーブ…

CloudFlareの記事を読んでTCPでIP固定の場合の挙動をまとめる(IP_BIND_ADDRESS_NO_PORT)

おっしゃるとおり、古典的な TCP/IP スタックの場合は、エフェメラルポートを確保してから connect(2) するので、クライアントとして同時接続数はポートの数に律速されます。一方で、linux の場合は IP_BIND_ADDRESS_NO_PORT というオプションがあり、これを…

浮動小数点演算について軽くまとめる

固定小数点 浮動小数点 という2種類の概念がある。 固定小数点 固定小数点は int(32bit) や long(64bit) といった固定桁数の中で表現可能な範囲で小数を表現する方式。そのためこの範囲の計算に収まる限りは誤差が発生しない。 ただし算術の結果、int や lon…