データベースを削除したのはAIではなく、あなた自身だ
先週、Cursor/Claudeエージェントが本番データベースを削除したと非難する投稿が話題になった。しかし筆者は、そもそも本番DB全体を削除できるAPIエンドポイントが存在すること自体が問題だと指摘。AIを過信せず、開発者が責任を持ってコードを理解し、適切なプロセスを構築することの重要性を説く。自動化は人間のミスを減らすが、AIも過ちを犯す可能性があり、単なるツールとして活用すべきだと論じている。
先週、Cursor/Claudeエージェントが本番データベースを削除したと非難する投稿が話題になった。しかし筆者は、そもそも本番DB全体を削除できるAPIエンドポイントが存在すること自体が問題だと指摘。AIを過信せず、開発者が責任を持ってコードを理解し、適切なプロセスを構築することの重要性を説く。自動化は人間のミスを減らすが、AIも過ちを犯す可能性があり、単なるツールとして活用すべきだと論じている。
The author explains why they refuse to add query strings (like ?v=1) to static asset URLs for cache-busting, arguing it is unnecessary, ugly, and not the intended use of query strings. Instead, they propose using proper versioned file paths to avoid caching issues.
The author refuses requests to add tracking parameters like query strings to URLs, arguing they clutter links, undermine privacy, and degrade web simplicity. Instead, they advocate for clean, durable URLs that rely on proper HTTP referrer headers or other non-intrusive means for analytics.
Pydantic replaced database triggers with application-level audit logs for tracking changes, citing better maintainability, testability, and flexibility. The new approach uses middleware and event hooks to log data mutations, avoiding the hidden complexity of triggers in the database layer.
The article argues that blaming AI for deleting a database is a scapegoat; the real responsibility lies with the human who gave the AI system access and authority to perform destructive actions without proper safeguards. It emphasizes that AI tools follow instructions and that failures stem from inadequate security, oversight, and human error rather than AI autonomy.
The author explains why they have banned query strings from their website, arguing they break caching, disrupt URL readability, and create maintenance burdens. Instead, all content uses clean, static URLs without query parameters.