Works
![GenORM image](/works/genorm.webp)
![FormStream image](/works/formstream.webp)
![isucrud image](/works/isucrud.webp)
![traP Collection image](/works/trap-collection.webp)
![ssh-separator image](/works/ssh-separator.webp)
#Go #Docker #CTF
ssh-separator
ssh接続をユーザーごとに用意したDockerコンテナへ振り分けるアプリケーションです。 traPで行う初心者向けCTFイベントのために作成しました。
![One Poll image](/works/one-poll.webp)
![重Book image](/works/cho-book.webp)
#Go #Vue.js #Cloudflare Workers
重Book
バーコードを読み取り本を管理することで、本の重複購入を防止するアプリケーションです。 CDNのキャッシュとエッジワーカーを活用し、軽い動作を実現しています。
![iwrapper image](/works/iwrapper.webp)
#Go #Static Analysis #Tool
iwrapper
Goのembeddedを使いinterfaceのラッパーを作ると、ラップ前と型アサーションの結果が変わってしまいます。 これを防止するコードを生成するツールです。
![portfolio(3代目) image](/works/portfolio3.webp)
#Astro.js #Alpine.js #Cloudflare
portfolio(3代目)
Astro.jsとAlpine.jsを使って作成したブログ機能付きのポートフォリオサイトです。 SSGによりパフォーマンスを向上させつつ、依存を削減しメンテナンス性を向上させています。
![isucon-go-tools image](/works/isucon-go-tools.webp)
![isuginx image](/works/isuginx.webp)
![go-clone-detection image](/works/go-clone-detection.webp)
![toy-git image](/works/toy-git.webp)
![go-feature-envy image](/works/go-feature-envy.webp)
#Go #Static Analysis #Tool
go-feature-envy
GoのソースコードからFeature Envy(外部モジュールへの過剰な依存による凝集度の低下)を検出する静的解析ツールです。
![Yuri-Bot image](/works/yuri-bot.webp)
#Go #traP #RSS
Yuri-Bot
traQでRSSを購読するためのbotです。 記事購読の他、部内で使用しているOSSの更新通知などに利用されています。
![portfolio(2代目) image](/works/portfolio2.webp)
![portfolio(初代) image](/works/portfolio.webp)
#Vue.js
portfolio(初代)
Vue.jsを使って作成したブログ機能付きのポートフォリオサイトです。
Presentations
![GenORM実装解説 image](/presentation/trap-lt.webp)
![DDDで学ぶ設計講習会 image](/presentation/ddd.webp)
![Dockerで作るCTF向けWebshell image](/presentation/klab-lt.webp)
![鯨飼いになろう講習会2 image](/presentation/docker2.webp)
![鯨飼いになろう講習会 image](/presentation/docker.webp)
![Golang講習会 image](/presentation/trap-golang.webp)
Articles
![技術的挑戦を通して感じるDeNA [日比谷音楽祭おさんぽアプリ2024 サーバー編] image](/article/9d30ecde-e94f-43a2-be59-076ca8e7c592.webp)
![multipart/form-dataの省メモリかつ高速なパーサー「FormStream」 image](/article/e7d8cdb2-4b18-4259-9542-5eb599efebb1.webp)
![Go Conference mini 2023 Winter IN KYOTOでLTしました image](/article/a641c6fc-bd4f-40b0-bb20-8304743b2a13.webp)
![ISUCON13にツールの力で勝ちたかった(mazrean) image](/article/3b8c94fb-81ac-4cf6-b9a3-f40e2bbab355.webp)
![traP Collectionでのダウンタイムほぼ0のAPI移行 image](/article/8ce56914-8682-455f-9800-3225f52fa365.webp)
![CGOでGoからZigのライブラリを呼び出す image](/article/b344f684-daeb-464b-95c2-9e684d048d02.webp)
![ISUCON12予選に参加して完敗しました(mazrean) image](/article/31735cf6-7fd3-4e75-b3d4-17a5a6096ea1.webp)
![CPCTF22 作問者writeup by mazrean image](/article/5f490e6d-f610-4cc8-91f7-32c17338cb84.webp)
![アーキテクチャとディレクトリ構造 image](/article/cd6a7955-cbdc-4e78-9709-39f6d821883d.webp)
![Genericsを使いミスを防ぐSQL Builder「GenORM」 image](/article/6031045b-5ce5-466f-9b46-702011d71a17.webp)
![学生枠でISUCON11予選を突破しました image](/article/d4aaf8a7-98cd-42c1-b8cf-ce97f6fbbd29.webp)
![CPCTFを支えたWebshell image](/article/29bd1310-e614-49e4-90a7-bf3e0f1cff67.webp)
![CPCTFを支えたインフラ image](/article/83c781c7-f739-4b4f-80b5-ef8eb5143cf5.webp)
![2020冬ハッカソン 2班 「Qtheme」 image](/article/201a5a53-4f48-4e4d-acb3-2b9550fa1762.webp)
![2020春ハッカソン18班 traPixiv「piQ」 image](/article/7a4a3bc9-41c8-475e-b5de-934b1a80f035.webp)
![セキュリティキャンプ全国大会2020に参加しました image](/article/54fd63fd-71f1-4fa8-b567-42533617daaf.webp)
![GORMを使い始めたら… image](/article/gorm.webp)
![鯨飼いになろう講習会をやった話 image](/article/docker.webp)
![GASの過剰に強強な環境構築 image](/article/gas.webp)
![猫でもわかる(諸説)OAuth 2.0 image](/article/oauth.webp)