actually その後

2024/02/26

{{tag: go, test, testing, actually }} actually は Go の testing ライブラリです。明示的なインターフェースと一貫性の高いメソッド群、そしてメンテナンスやリファクタリングの際に力を発揮するフェイルレポートを備えています。 [[https://github.com/bayashi/actually ac...

つづきを読む

WSL2 に Ubuntu22 セットアップ

2024/02/10

{{tag: wsl2, ubuntu, ubuntu22}} Ubuntu18 で glibc が古くてどうにもならなくなったので重い腰をあげてアップグレードする。すでに WSL2 に Ubuntu18 が動いている状態からスタート。 WSL2 アップデート 管理者権限のPowerShell 管理者権限のシェルを起動する(PowerShellで以下を...

つづきを読む

2023年に買って良かったもの3選

2024/01/21

{{tag: amazon, bluetooth}} 年内に書こうと思っていたけど、年も明けてもうだいぶ時間がたってしまった。去年買って良かったもの3選です。ご査収ください。 USB TYPE-C マグネットアダプタ これは同僚に便利ですよと教えてもらって導入したもの。USB-C の口をマグネットで接続できるようにするもの。 [[https://amz...

つづきを読む

Web::Scraper の実装がカッコいいぞという話

2023/12/16

{{tag: perl}} この記事は、"[[https://qiita.com/advent-calendar/2023/perl Perl Advent Calendar 2023]]" 16日目の記事です。 {{cpan: Web::Scraper}} というPerlモジュールがあります。名前の通り、Webページをスクレイピン...

つづきを読む

Module::Setupをgo moduleのセットアップにも使っている話

2023/12/09

{{tag: perl, cpan, golang}} この記事は、"[[https://qiita.com/advent-calendar/2023/perl Perl Advent Calendar 2023]]" 9日目の記事です。 {{cpan: Module::Setup}} という Perl モジュールのボイラープレート...

つづきを読む

今夜あなたは目撃者!テストノ治安ヲ再生セヨ!

2023/12/05

{{tag: golang, testing, witness}} この記事は、"[[https://qiita.com/advent-calendar/2023/go Go 言語Advent Calendar 2023 シリーズ 2]]" 5日目になります。 こんばんは!はじめて Go のアドベントカレンダーにエントリーしました。...

つづきを読む

HTTP::Message に10年越しの PR がマージされた話

2023/12/02

{{tag: perl, cpan}} この記事は、"[[https://qiita.com/advent-calendar/2023/perl Perl Advent Calendar 2023]]" 2日目の記事です。 むかしむかしあるところ いまとなっては記憶が定かではないのですが、10年前の当時、私は Plack::Mid...

つづきを読む

運動会向けにカメラを比較してみたよ

2023/09/24

{{tag: life, camera}} 今年の運動会は通常開催という学校も多いことでしょう。開催自体の貴重さも爆上がりしているので、カメラで撮影をして、しっかり子どもの姿を記録に残したいですね。 というわけで、うちは普段スマホのカメラしか使ってないのですが、運動会に合わせてカメラを購入することにしました。 運動会向けのスペック 運動会は遠く離れた子...

つづきを読む

任意のコマンド出力に色付けする irir を普段使いにする新機能

2023/09/02

{{tag: golang, go, irir, color, cli}} irir [[https://github.com/bayashi/irir#irir irir]] は、任意のコマンドの出力に、あらかじめ用意されたルールベースで色を付ける CLI ツールです。ログ出力や、テスト結果をフィルタして色を付けたりすると、目 grep がおもむろに捗り...

つづきを読む

アニマルバスとほしまつり

2023/08/12

{{tag: book}} 子どもが小学生になると、学校の図書室で本を借りてくるようになる。これは、子どもが自由に選んで借りてくるものなので、子どもの嗜好が知れてとても興味深い。だから、私はどんな本を借りてくるかをこっそり、しかし実はきっちりチェックしている。 あるとき、子ども同士で取り合いになるほど人気でなかなか借りられない、大好きな本が借りられたといっ...

つづきを読む

GitHub が README.pod のレンダリングをやめてしまっている件

2023/08/11

{{tag: github, perl, module, readme, pod}} しばらく気づいてなかったが、GitHubはリポジトリトップで表示するREADMEについて、.pod のレンダリングをやめてしまった模様。 README.pod は、README としてピックアップされてはいるが、プレーンテキストとして表示されてしまっている。 もしかした...

つづきを読む

GoでGoLandやIntelliJ IDEAからVSCodeに乗り換えるとハマる

2023/08/06

{{tag: golang, vscode}} GoLandやIntelliJ IDEAといったJetBrain製のエディタから、VSCodeに乗り換えて Go を書きはじめると、突然 LSP が動いてないぞ?!となることがある。 特に、関数や変数の定義元参照や、参照先にジャンプする機能が突然動かなくなる。何もしてないのに! この現象の主な原因は、goの...

つづきを読む

複数のGoツールをひとつのhomebrewリポジトリで配布する

2023/06/09

{{tag: homebrew, tap, golang, go, cli, tool}} Goで書かれたCLIツールを homebrew で配布するために [[https://github.com/goreleaser/goreleaser-action goreleaser@goreleaser-action]] がよく使われている。よくある解説では、ひ...

つづきを読む

Goで標準出力をフィルタしてよしなに色を付けるツール書いた

2023/05/29

{{tag: golang, go, color, stdout}} タイトルの通り、Goで標準出力をフィルタしてよしなに色を付けるツール書きました。 [[https://github.com/bayashi/irir irir]] モチベーションは「 [[https://blog.izum.in/painting-go-test-outputs-4fc...

つづきを読む

Go の error をアサーションするメソッドの難しさ

2023/05/16

{{tag: golang, go, testing, error}} [[/diary/2023/0515 きのうの記事「Goのアサーションライブラリ actually のすべて」]] で最後にこう書きました。 errorのアサーションメソッドは今のところ NoError だけで、肝心の error そのものをアサーションするメソッドは実装していま...

つづきを読む

Goのアサーションライブラリ actually のすべて

2023/05/15

{{tag: golang, actually, testing}} ここ 1ヶ月くらい書いている Go のアサーションライブラリ [[https://github.com/bayashi/actually actually]] ですが、ぼちぼち pull-request を重ねて、そろそろ v1.0.0 も見えてきたのではないかということで [[https...

つづきを読む

JSONの中にJSONが突っ込まれてるやつを綺麗にするやつのGo版

2023/05/08

{{tag: go-jl, golang, json}} jl Perlでその昔、{{cpan: App::jl}} というコマンドラインツールを書きました。これは jl (じぇい、える)というコマンドで、JSONの中にJSONが突っ込まれているログを綺麗にひとつのJSONに整形して表示してくれるツールです。よく「ああ、JSONをprettifyするやつね...

つづきを読む

GoReleaserでハマったところ

2023/04/28

{{tag: golang, cli}} GoでCLIを書いたらgithub actionsで自動的にビルドしてリリースしてしまいたい。 GoReleaser を使えばYAMLファイル一枚で簡単にできる!という解説がいっぱい見つかるのでそれらを見ながらやってみたけどいくつかハマったのでメモを残しておく。 main.goがルートディレクトリにない場合 リ...

つづきを読む

Goのtestifyが自分には大きすぎたので actually

2023/04/26

{{tag: golang, testing, actually}} お仕事の Go ではよく[[https://github.com/stretchr/testify stretchr/testify]] を利用していますが、自分でライブラリを書いてテストを書こうと思ったとき、testify はちょっとでかすぎた。testifyはオールインワンテスティング...

つづきを読む

Goでちょっとリッチな木構造を扱うライブラリ書いた

2023/04/25

{{tag: golang}} きのうは [[/diary/2023/0424 Goプロジェクトの概要をツリー表示する goverview]] の紹介を緊急で配信しました。 きょうはその goverview で利用している [[https://github.com/bayashi/go-proptree ツリー表示用のライブラリ go-proptree]]...

つづきを読む

Goプロジェクトの概要をツリー表示するツール書いた

2023/04/24

{{tag: golang, cli}} 業務では PHP が9割、Goは残り1割くらいという状況なのだけど、けっこう付焼き刃で戦っている認識があり、2ヶ月くらい前から自身のGoスキルをもっとブラッシュアップしたいと思い立っていろいろと自主トレを行った。(実際は、3月、4月は趣味の釣りがお休みになるので、というのが理由の8割なんですけどw あと Rustの勉...

つづきを読む

暗黙のGolang

2023/04/14

{{tag: golang}} Golangの世界では常識的なことだし、効率の良い話なのだけど、外から見ると暗黙的に見えるクセつよポイント。春のgolangおさらい祭り。 大文字小文字がグローバルかプライベートかを表す 変数や関数がpackageの外に公開されるかが、変数名や関数名の最初の文字が大文字か小文字かによって決まる。非常に効率が良い。が、暗黙的...

つづきを読む

Goのリポジトリ名とディレクトリ名とファイル名とパッケージ名の関係

2023/04/11

{{tag: golang}} Golangプロジェクトのリポジトリ名とディレクトリ名とファイル名とパッケージ名の関係を完全理解したので愛しく切なく心強いメモを書いておく。 お仕事でやってるプロジェクトだと、ゼロから自分で書くことがほぼなかったのとボイラープレートが用意されていたりしてこの辺の理解が薄かった。自分でイチからライブラリやアプリケーションを書い...

つづきを読む

いにしえのGo

2023/04/07

{{tag: golang}} 春のGolangおさらい祭り いま golangをはじめると、1.20ではじめると思う。しかし、世の中にはいにしえのGoの情報もあふれている。オフィシャルに近いドキュメントでもすべてが最新ではないので注意がいる。古い情報を無視する技術は初学者にとってかなり重要であるが、なにせ学びはじめではハードルが高い。なので、古い情報を無...

つづきを読む

Goプロジェクトはどこから読み始めるのか

2023/04/05

{{tag: golang}} Golangで書かれたプロジェクトを読むとき、どこから読み始めるのか。春のgolangおさらい祭り。 func main() を探す プロジェクトがなんらかのアプリケーションである場合は、func main() が存在するのでそれを探す。たいていはリポジトリのルートに main.go があり、そこに func main()...

つづきを読む

インデックス

書いてる人