asterisc

技術ネタ中心にその他雑多なこと

移転しました

諸般の事情により blog.akito0107.dev こちらのサイトに記事を移しました。新しい記事などはこっちに上げていく予定です。

2018年の振り返りと2019年の抱負

はじめに 2018年のアウトプットをまとめた上で、2019年何していくのかをいくつかまとめていきます。 2018年の振り返り アウトプット ツール・ライブラリ 去年は業務で書いたコードからいろいろ切り出して、公開したものが多かった。特に、自動生成や静的解析…

Annotating errorsのlinter

はじめに Go言語の話です。 過去の記事でも触れたDave Cheney先生の記事や、各種のerror handling best practiceでも触れらているように、Goのerrorは、そのままreturnせず、errors.Wrapなどでannotateすると良いとされています。 ですが、人間(というより…

TypeScriptのcompiler APIをいじる

はじめに これを作っているときに、もともとのagreedとswaggerの型の帳尻を合わせるために、TypeScriptのASTをいじっていろいろやりました。 そのときに調べたことなどをメモ代わりにまとめます。この内容は調べたこと+僕独自の解釈が入っている可能性があり…

wasmでGoのAST Viewerを作った話

はじめに Goの1.11からwasm向けのバイナリを吐けるようになりました。 wasm上でパーサを実行し、GoのASTをビジュアライズするものを作ったので、その紹介をします。 作ったものはこちら。 github.com AST Viewer Goに限らない話かもしれないですが、コード自…

Goのカスタムエラーとその自動生成について

はじめに この記事はGo2アドベントカレンダー14日目の記事です。 GoのErrorハンドリングについては、これまでにも様々なパターンが発表されてきました。 今回は独自定義のエラーについて、これまでのパターンをまとめた上で、その実現をeasyにするgenerrとい…

agreed-typedの紹介

はじめに agreed-typedというツールを現在開発中なので、その紹介をします。 github.com 自分は普段バックエンドを書いているエンジニアで、フロントエンドエンジニア向けのツールであるagreedをメインで活用することはないのですが、APIのドキュメンテーシ…

フロントエンド向けvalidator: favalidの紹介

はじめに 少し前にフロントエンドのjs向けvalidatorフレームワークの favalid というものを作ったので、その紹介記事を書きます。 favalidの特徴 フロントエンドというかjs向けvalidatorといえば joi や yup 、v8nといったようなライブラリがありますが、そ…

CIとTest Sizesの話

はじめに 前回 akito0107.hatenablog.com どちらかというとこっちが本編。 前回の記事ではTest Sizesについて紹介したが、今回の記事はその分類が実際の開発にどう役に立っているのかをまとめたいと思う。もちろん用語の統一も大きな意味を持つが、それ以外…

結合テストと呼ぶのをやめた話

はじめに 最近、意図的に「単体テスト」「結合テスト」という呼び方を避け、Google Testing Blogで紹介されてるTest Sizesによる分類(small / medium / large)に従った呼び方でテストを呼んでいる。 この分類方が自分の身の回りに徐々に浸透してきて、実際…

Node.jsでもassertしたい

まえがき この記事はリクルートエンジニアアドベントカレンダー12日目の記事です。 Node.jsでのAssertion Assertionとは? 多くのプログラミング言語で assert というメカニズムが実装されています。 assert はプログラムを記述する人が、絶対にコードのこの…

東京Node学園祭2016に参加しました

2016年11月12, 13日と開催された東京Node学園祭に参加してきたので、その報告をします。 nodefest.jp 登壇したはなし 僕は初日にLTしました。発表資料はこれ。 speakerdeck.com 色々書いてありますが、 Node.jsを始めとするJavascript界隈は特に言語の変化が…

はじめました。

技術ネタを中心に、勉強したことをアウトプットしていきたいと思います。