iimon TECH BLOG

iimonエンジニアが得られた経験や知識を共有して世の中をイイモンにしていくためのブログです

LINEやInstagramで送った写真の画質が落ちる仕組み

はじめに 画像圧縮の種類 可逆圧縮(Lossless) 非可逆圧縮(Lossy) AirDrop・LINE・Instagramで何が起きているか AirDrop LINE Instagram JPEG の圧縮の仕組み 1. ブロックへの分割 2. DCT 3. 量子化 なぜ再保存するたびに劣化するのか まとめ さいごに 参…

A2UIの仕組みを整理して動かしてみる

はじめに こんにちは。iimonでエンジニアをしている保田です。 最近Generative UIというキーワードを見かけることが増え、気になって調べてみました。 AIチャットの応答がテキストだけでなく、カードやフォームなどのUIで返ってくることもよく見かけるように…

テスト自動化、ツールの前に「方針設計」に関して調べてみた

1. はじめに 2. 前回の記事のおさらい 3. ツールを選んだ後に気づいたこと 「何をテストするか」が決まっていなかった 方針がないまま自動化するリスク 4. 方針設計、どこまで考えられるか 各層に何を書くかの判断基準 自動化できるもの・できないものの線引…

デザインエンジニアとしての観点を整理する ― レビューと設計を行き来するために

1. はじめに どうも、エンジニア&デザインを担当しているタクシです。 最近、デザイナーとの協業の仕組みを整えまして、手始めにデザインレビューを導入することにしました。 今はAI時代!GeminiやClaudeを使ったりもしつつ、、ではありますが、そもそもレ…

tsyringe触ってみた

はじめに こんにちは。kogureです。最近暑くなってきて冬が恋しいです。断然冬派です。 社内でプロダクトの改善に取り組む中で、DI(Dependency Injection)を取り入れるようになりました。 ここでTypeScriptでDIコンテナライブラリって何があるんだろう?と…

【計画】Claude Code Routinesでバグ修正をどこまで委任できるか試してみる

こんにちは!iimonでエンジニアをしている なかむ です。 普段は主に「入力速いもん」の拡張機能を開発しています! 今日は 「Claude Code Routinesで技術負債の修正をどこまでAIに任せられるか」 という検証について、現時点での計画とこれから何を試すかを…

Google Apps Script(GAS)で遊んでみた

こんにちは。iimonでエンジニアをしているhayashiと申します。 普段は主に拡張機能を開発しております。 最近スプレッドシートを弄ることがちょいちょい出てきて、 GASで遊んでみたので、その内容を纏めました。 Google Apps Scriptとは Google Apps Script …

LLMが構造的な出力を行う方法を調べてみた — デコーディング手法とその最適化

こんにちは、iimonでエンジニアをしている須藤です。 最近、アプリケーションでLLMを利用していて、JSON出力がどの程度安定しているのか気になっていました。 また、ClaudeやOpenAIが「100%のスキーマ準拠」を謳っていて、その裏側の仕組みも面白そうだった…

npmサプライチェーン攻撃の脅威と対策

1. はじめに 2. npmサプライチェーン攻撃の系譜 2-1. サプライチェーン攻撃とは 2-2. 代表的な攻撃手法 悪意あるパッケージの新規公開 タイポスクワッティング ディペンデンシーコンフュージョン 既存パッケージの改ざん 2-3. 取り込まれた後の動作 2-4. 起…

開発中プロダクトの挙動を外出先から確認する(Claude Cowork Dispatch)

はじめに こんなときありません?? Claude Cowork Dispatch 準備するもの 設定 Claudeがアプリを操作する優先順位 実際にClaude Cowork Dispatch使ってみる ①ローカルマシンで開発中のプロダクトをスマホから確認する ②ローカルマシンで開発中のプロダクト…