アプリケーション

Goのhtml/templateでURLをエンコードさせない

アプリケーション

概要 html/templateを使っているときに、テンプレートに渡すURLをエンコードさせたくなかった。 template.URLを使う Goのhtml/templateを使って、URLをテンプレートに渡すとエンコードされてしまう仕様になっている。 cf. https://pkg.go.dev/html/template#hdr-Contexts セキュリティ上の理由でこのような仕様になっている...

Golang Tips

buildxを使ったGoアプリケーションイメージのクロスコンパイル

アプリケーション

概要 プライベートで開発しているアプリケーションのイメージをクロスコンパイルする必要性に駆られて(ローカルの開発環境と本番の環境でアーキテクチャが異なっていることが起因)対応したのでメモ。 buildx Docker Desktopにはbuildxが標準で備わっているのでそちらを利用する。 Docker Buildx buildxを使うことでマルチアーキテクチャ対応のイメージを簡単に作ることができ...

Golang Docker

FuelPHPの2023年3月現在の現況

アプリケーション

概要 2023年3月現在のFuelPHPの現況についてざっくり調べたことをまとめる。 独自に調べた情報なので正確性には欠けるかもしれない。 PHPのフレームワークはLaravelが圧倒的に人気があるように感じるが、FuelPHPもまだ現役で使っている人がいるかもしれないので、何か一助になれば嬉しい。 FuelPHPバージョン情報 独自に調べたFuelPHPの情報をまとめる。 Version ...

FuelPHP

Goを学びなおす

アプリケーション

概要 仕事でもプライベートでも何年かGoを触っているが、今一度このタイミングで学び直してみると効果的ではないかなと思って色々学び直した。 その際に読んだ記事をリストアップしておく。 モチベーション 基本的なことの復習、仕様で拾い切れていなかった部分や新機能のキャッチアップ、tips周りを拾って、Goのコーディング力を上げるためのベースを鍛え直したい。 仕様理解 仕様理解に関連する記事をgo.dev...

Golang

GoのHTTP Routerを比較するベンチマーカーを実装した

アプリケーション

Makuake Advent Calendar 2022の5日目の記事です! 概要 GoのHTTP Routerのパフォーマンスを比較するためのベンチマーカーを実装した。 bmf-san/go-router-benchmark 現在のところ以下のHTTP Routerを比較対象としている。 bmf-san/goblin julienschmidt/httprouter go-chi/chi gi...

Golang

homebrewで過去バージョンをインストールする

アプリケーション

概要 Homebrewでインストールするパッケージで過去のバージョンを指定してインストールしたいときがたまにある。 Homebrewは最新版のみ保持する方針になったらしく、過去バージョンをインストールするときはひと手間かかったのでメモ。 やり方 今回vim9系からvim8系のダウングレードをしたかったので、そのときの手順を例に上げる。 手順は以下。 brew tap-new bmf-san/vim...

homebrew vim

Cloud Functionsを使ってSlack AppのSlash Commandを実装

アプリケーション

概要 Cloud Functionsを使ってSlack AppのSlash Commandを実装する。 今回作ったボイラープレートはこちら。 go-slack-app-on-cloud-functions-boilerplate Slash Commandの使えるSlack Appを作る方法は色々あるが、安く、簡単に、サーバーレスで作れるということでCloudFront Functionsを使って...

slack-bot Slack Golang Google Cloud Platform Cloud Functions