ClaudeがResendと「Building in Public(公開しながら開発する)」を推奨する理由 | Better Stack Podcast 第15回

BBetter Stack
컴퓨터/소프트웨어마케팅/광고창업/스타트업구직/면접AI/미래기술

Transcript

00:00:00Better Stackポッドキャストへようこそ。ここではAIやソフトウェア開発、
00:00:04あらゆる種類の新しい技術について対談しています。ホストの1人、リチャードです。そして...
00:00:09ジェームズです。
00:00:10ジョシュです。
00:00:11そしてクリスです。
00:00:12やあ、クリス。会えて本当に嬉しいよ。このポッドキャストをずっと企画しようとしていたんだけど、
00:00:17ようやくゲストとして迎えることができて光栄だ。クリスを知らない人のために、
00:00:21自己紹介してもらえるかな。クリス、君は何者だい?
00:00:24ああ、名前はクリス・ペニングソン。ResendでDXエンジニアをしています。開発者向けのメールAPIを提供している会社です。
00:00:32ここ数年『Coding in Public』というYouTubeチャンネルも運営しています。
00:00:36それらを通じて皆さんと繋がれたんだと思います。今日はその話や、
00:00:40他にも話したいことについて語れるのを楽しみにしています。
00:00:42君のクールなマイクのビデオセットアップについてもね。
00:00:45あれはResendのおかげですよ。ええ。
00:00:47なるほど。それについては後で詳しく聞かせてもらうよ。
00:00:50でも、Resendに入社することになったきっかけは何だったの?
00:00:55これまで色々なことをやってきたからね。
00:00:56どうやってResendへの道が開けたのか教えてくれる?
00:00:59そうですね、本当に幸運だったと言うほかありません。
00:01:03運が大きかったんです。
00:01:04多くの要素が正しいタイミングで噛み合いました。特にResendのCEO、ゼノとの出会いが大きいです。
00:01:09彼はResendのCEOです。
00:01:10YouTubeを始めたのは、自分が学んだことを言語化するためでした。
00:01:162023年当時、私が学んでいたことの一つが『React Email』でした。
00:01:21Resendが出てきた時、ゼノがベータ版へのアクセス権をくれたんだと思います。
00:01:27彼らがローンチしたのとほぼ同じタイミングで、両方について投稿しました。
00:01:32当時は知らなかったんですが、
00:01:33チームがそれを見て、ゼノが連絡をくれたんです。
00:01:36そこから親しくなりました。
00:01:38そして2024年の夏、サンフランシスコで会いました。
00:01:43私が街にいたので、彼に「会えないかな」とメッセージを送ったんです。
00:01:47彼はとても忙しい人ですから、
00:01:48時間はないだろうと思っていたら、会ってくれました。
00:01:51ほとんど人生の話をして過ごしましたね。
00:01:53自分を売り込むつもりもなかったし、当時募集があったわけでもありませんでした。
00:01:58ただ友情を育んだだけで、その年の秋に彼から「DXロールが空いているんだけど、考えてみないか」と連絡が来ました。
00:02:05そんな方向性は全く考えてもいなかったんですが。
00:02:06でも、あれよあれよという間に話が進みました。
00:02:10これが良いフィット感だと感じました。
00:02:13Resendは人が素晴らしいんです。それが全てですね。
00:02:16チームには本当の仲間意識があります。
00:02:19そういったことがすべて良い方向に作用しました。
00:02:21ゼノと出会い、チームと出会い、即座に乗っかったんです。
00:02:24彼と話してから4週間後には、ブラジルでチーム全員と一緒にいましたね。
00:02:30すべてが動き出してからの展開はかなり早かったです。
00:02:33ええ。
00:02:33Resendを皆に教え、私たちがやっていることを、強引な売り込みではなく、開発者に優しい方法で伝えられる機会を得られて、本当に運が良かったと思います。
00:02:44とにかく、売り込みは私の性分じゃないですし。
00:02:46まあ、それが旅路の簡単な要約ですね。
00:02:49いいね。
00:02:50Grokから誤った情報を得ていたようです。React Emailについて、君がチャンネルで大規模なビデオを作ったんだと思っていました。
00:02:57実際、多くの再生数を稼いで、そこから向こうが連絡してきたとばかり。
00:02:59でも、それは間違いだったわけだね。
00:03:01まあ、完全に間違いというわけではありません。ゼノと最初に出会ったのは、彼がその最初のビデオを見て「ぜひ繋がりたい」と連絡をくれたからなんです。
00:03:11そこから話をし始めました。
00:03:13その後、Resendのビデオを作りました。
00:03:14そして直接会った。
00:03:15そこから始まったと言えます。
00:03:17それが彼らの目に留まった最初のきっかけだったと思います。
00:03:20いいね。
00:03:20なるほど。
00:03:21AIも完全に幻覚を見ていたわけじゃなかったんだな。
00:03:24今回はね。
00:03:26ポッドキャストが始まる前にも言いましたが、私の開発者YouTubeの初期のビデオの一つにReact Emailがあるんです。
00:03:32初めて作ったビデオの3本目がReact Emailでした。
00:03:35React Emailが登場した2023年頃ですね。
00:03:38React Emailが出たばかりの時でした。
00:03:39そうそう。
00:03:41ええ。
00:03:41出たばかりだとは知りませんでした。
00:03:43たぶんリリースから1週間以内にビデオを作ったと思います。
00:03:46Twitterで見かけて、「おっ、これいいな」と思って、
00:03:47すぐビデオにしたんです。
00:03:48運が良かったですね。
00:03:50彼らと繋がった当時は、何かフルタイムの仕事をしていましたか?それともYouTubeがメインでしたか?
00:03:57ええ、YouTubeはあくまで「サイドプロジェクト」でした。
00:04:02本業ではなかったんです。
00:04:03教会の手伝いをしていて、
00:04:05他にも手伝ったり。
00:04:06そうですね。
00:04:06自分でも何か小さなことをやっていました。
00:04:09それに加えて、ある企業でドキュメント作成のパートタイムの仕事をしていました。
00:04:11それを8年くらい続けていました。
00:04:13それが本業でしたね。
00:04:16だから、色々なことを同時にやっていた感じです。
00:04:19YouTubeは本当に副業でした。
00:04:22YouTubeを始めた最初の6ヶ月は、妻にも内緒にしていました。
00:04:25ただ録画して、喋って、アップするだけ。
00:04:27誰ともそのことについては話しませんでした。
00:04:28特別なものにするつもりはなかったんです。
00:04:29誰かに見てもらうつもりもありませんでした。
00:04:31私は口頭で話さないと、自分が何を理解しているか確認できないタイプなんです。
00:04:36ビデオ制作をする人なら分かると思いますが、録画を始めてみて、
00:04:40「あれ、仕組みがよく分かってないな」ってなる時があるんです。
00:04:41それで、最初からやり直す必要があって。
00:04:44自分が分かっていない内容について話そうとして、何度も録画し直しました。
00:04:48録音しても、
00:04:49全然うまくいかない。結局分かっていないのがバレバレで。
00:04:52だから撮り直すしかなかった。
00:04:53だから、常にこれは「サイドプロジェクト」だったんです。
00:04:55そのうち、何とか納得のいくビデオに仕上がる。
00:04:57自分がそのトピックを理解したと確信できるまでね。
00:05:00そうなんです。
00:05:01だからYouTubeは常に副業でした。
00:05:03他の役割の方が、私の時間を多く費やしていたんですよ。
00:05:06Resendに来るまでは、企業内での開発経験はほとんどありませんでした。
00:05:12そんなわけで、
00:05:13言った通り、本当に運が良かったし、ゼノがチャンスをくれたことに本当に感謝しています。
00:05:20教えること、コンテンツを作ること、あるいは自分自身に教えることは、仕組みを理解し、パズルのピースを合わせる助けになります。
00:05:27本当にありがたいことだと思っています。
00:05:30その点には恵まれていました。
00:05:32分かったつもりになっていても、いざ話そうとすると「全く分かっていない」と気づくものです。
00:05:37そうしてビデオを準備して公開するというプロセスを繰り返すと、少しずつ理解が追いついてくる。
00:05:46非常に準備された状態になりますね。
00:05:48数年前から始めたことの一つに、ライブストリーミングがあります。何もない状態からスタートするんです。
00:05:54もう少し壁にぶつかって、自分が本当に理解しているかを確認する必要があると感じたからです。
00:05:59ビデオなら短時間でそれっぽく作れますが、中身を本当に理解しているとは限りませんから。
00:06:05あるいは、撮影中に調べ物ばかりになってしまう。
00:06:08ライブストリーミングは、自分が何を話しているか真に理解しているかを試す最高の場です。
00:06:13多くの場合、実際には理解できておらず、壁に何度もぶつかる。それがプロセスなんです。
00:06:17失敗を恐れず、公の場かどうかにかかわらず、その壁にぶつかる姿勢が大事なんだと思います。
00:06:25そうすれば大きく成長できるはずです。
00:06:28その「分からない」という感覚を快適に感じることが、開発者になるということでしょう。
00:06:32壁に何度も何度もぶつかり、「絶対に解決してやる」と思えること。
00:06:37調べてみるということです。
00:06:39今はAIのおかげで簡単になった部分もありますが、本質を知らなくても済んでしまう側面もありますね。
00:06:46専門的なコーディング経験がない状態でここまで来たのは、本当に感銘を受けます。
00:06:51動画制作となると、私ならどこから始めていいか分かりません。
00:06:55どうやってトピックを見つけたんですか?
00:06:57AstroやReactについても扱っていますよね。
00:06:59何について動画を作るか、どうやって決めていたんですか?
00:07:02私の場合、すべてが非常に自然な形でした。
00:07:05その週に学んだことを、そのままビデオにするだけでした。
00:07:09それがずっと私のチャンネルのやり方です。
00:07:11キャリアや大きなものにしたい、あるいは注目を集めたいなら、それも一つの方法だとは思います。
00:07:16オーディエンスやコミュニティを築くには、とても有効な手段でしょう。
00:07:21でも私は、そうではなかった。
00:07:23そのようにするチャンスはたくさんありましたが、とにかくその週にやっていることを守り続けてきました。
00:07:28だから、開発系でよくあるような「大バズり」したビデオというものはないんです。
00:07:35数年かけて10万再生を超えたビデオはいくつかありますが、100万再生に近づいたようなものは一つもないと思います。
00:07:43ただ学んでいることを上げているだけですから。
00:07:44流行のトピックというわけでもない。
00:07:47「このJavaScriptの概念を学んで、それをビデオにする」という繰り返しでした。
00:07:53学ぶこと。
00:07:54Astroがベータ版だった頃から、色々と触れていました。
00:07:57機能が追加されるにつれて理解が深まり、「サーバー側でこんなことができたらいいな」と思うようになった。
00:08:07当時はSSRと静的レンダリングの違いさえ分かっていませんでした。
00:08:11でも、私が学びたいと思うタイミングでAstroが機能を追加していったんです。
00:08:15だからAstroのコンテンツは、私がまさに学んでいる過程の記録なんです。
00:08:21私にとっては、学んだことをすぐに教えるという非常に有機的なプロセスでした。
00:08:26それが注目を集め、幸運なことに素晴らしい人々と繋がることができたんだと思います。
00:08:35意図的なものでは全くありませんでした。それが今の私に至る道だったんだと思います。
00:08:42それは健全なあり方ですね。流行を追わず、自分が学んでいることを話すというのは。
00:08:49以前はYouTubeでも収益化できる良い手段でしたが、今は状況が完全に変わりました。
00:08:56チュートリアルでは稼げないというクリエイターも多いです。
00:09:00流行か、さもなくばエンターテインメントに振り切らないと。
00:09:03どう感じますか?
00:09:04チャンネルの方向性を変えるつもりはありますか?
00:09:07一理あると思います。
00:09:09キャリアとして収益化を目指すなら大変でしょう。幸い、私はそれを目的としてこなかった。
00:09:15ずっと楽しい副業であり続けています。
00:09:17自己満足かもしれませんが、自分自身の学びを言語化する場として機能しているんです。
00:09:24伝統的なウォークスルー型の再生数は、確かに激減していますね。
00:09:30皆さんはとても上手くやっていますよね。
00:09:32教育的な側面とそうでない部分がうまくブレンドされている。
00:09:37単なるウォークスルーではない。
00:09:39概念的な部分が多いですよね。
00:09:40リチャードがノートを取り出して描き始めるところが大好きなんです。
00:09:44あれは本当にいい。
00:09:45真似したいと思ってます。
00:09:47教える手法として、それを捉えるやり方はあるはずです。
00:09:52ただ、従来のチュートリアル動画の再生数は、3〜4年前のようにはいかないでしょう。
00:09:58私にとってターゲットはそこではないので、大きな問題ではありません。
00:10:01重要ではないんです。
00:10:03ここ数ヶ月YouTubeからは遠ざかっていましたが、Resendのマーケティングと教育をほぼ一人で担っているからです。
00:10:12DXエンジニアとしてもう一人採用しましたが、彼女はイベント担当に完全に回ってしまったので。
00:10:19今はほとんど一人です。
00:10:21正直、余裕がないんです。
00:10:23今の生活リズム上、仕方ないですね。
00:10:27採用活動中ですし、
00:10:28新しい人が来れば、時間ができるはずです。
00:10:31今後どうなるかは、まだ分かりません。
00:10:34今の活動は続けるつもりですが、概念的なトピックと、より詳細なディープダイブのどちらもやっていきたいですね。
00:10:43概念的な深い内容と、ゼロから学んで自分自身のために教えるような、ゆっくりとしたコンテンツの両立が目標です。
00:10:56再生数は稼げないかもしれませんが、それでいいんです。
00:10:59最初から私のモチベーションは常に一つでした。それが真北を指す羅針盤になり、自分を支えてくれています。
00:11:07再生数を気にせず、そうした活動ができるのは幸運ですが、どうなるかですね。
00:11:12今後を見てみましょう。
00:11:13Bash Bunnyが良い例だと思います。
00:11:16彼女はライブストリーミングで成功しています。
00:11:18今、Rustを独学で学ぶ旅をしているところですね。
00:11:22AIが介在しなくても、人がコードを書く姿を見たいという需要は依然としてあることの証明です。
00:11:29面白いものです。
00:11:30AIを使わない時は、「やっとAIじゃない人のコードが見られた」というコメントをよくもらいます。AI疲れもあるのかもしれませんね。
00:11:41ただ、どちらも必要だと思います。コーディングは根本から変わりましたし、これからもそうでしょう。
00:11:50この新しい世界で何ができるか模索しなくてはいけません。
00:11:54でも同時に、構文に直接触れるという触覚的な感覚も大切です。
00:11:59私自身、それが好きなんです。
00:12:00だから、これからもAIを使わないコーディングを趣味として続けることは間違いありません。
00:12:09Resendの仕事に家庭生活、それに動画制作まで、どうやって時間を捻出しているのか想像もつきません。
00:12:17自身の動画制作や新しいスキルの学習、手作業でのコーディングなど、どうやって時間を捻出しているのですか?
00:12:23多くの開発者と同じように、私も好奇心旺盛で、いろいろなことを並行してやる方法をいつも探しています。
00:12:28私には3人の子供がいますからね。
00:12:32娘2人のサッカーのコーチもしています。
00:12:37でも、コーチをしながら「このチームのために小さなウェブサイトを作れるかも」と思ったりします。
00:12:42子供たちと一緒にやるプロジェクトにするんです。
00:12:43子供と一緒に座って、
00:12:44一緒に作るんです。
00:12:45「こういうコンセプトがあるんだ」と言って、
00:12:46サーバーからストリーミングする方法を考えてみたり。
00:12:49そうやって遊んでいます。
00:12:50以前、譲らなければならない子猫がいた時も、
00:12:54娘たちと一緒に座って、
00:12:56彼女たちにページの設計を手伝ってもらいました。
00:12:59そして一緒にコードを書きました。
00:13:00当時、6歳と8歳だった子供たちがデザインしたような見た目になりましたね。
00:13:05そんな風に、生活の多くの要素を融合させようとしています。
00:13:083Dプリンターも持っていますし、
00:13:10この前も息子と何か適当なアプリを作っていて、同じようなことをしていました。
00:13:16私はリヴァプールFCの大ファンなんです。
00:13:18これで皆さんの評価が下がらないといいのですが。
00:13:23息子とも、
00:13:24そんな楽しいものをたくさん立ち上げてきました。
00:13:25人生のあらゆる側面に、そういった創造性を取り入れようとしているんだと思います。
00:13:31アートやクラフトも大好きで、
00:13:34子供たちと一緒にそういうこともたくさんします。
00:13:35とにかく、そういうことにはエネルギーがあるんです。
00:13:38他の人たちと一緒にやっている時は、それが自分を引き離すものとは感じません。
00:13:42むしろ、自分を彼らに引き寄せてくれると感じます。
00:13:44友達であれ、子供たちであれ、
00:13:48人生の様々な側面で、創造性を活かして時間を過ごそうとしています。
00:13:54そうして学んだことが重なり合い、仕事やYouTubeチャンネルでも使いやすくなっているんです。
00:14:00チャンネルの動画は、たいてい朝早くに収録しています。
00:14:04朝5時半くらいに録画することが多いですね。
00:14:07かなり早いです。
00:14:09それが、私がチャンネルに費やせる時間です。
00:14:12残りの一日は仕事ですね。
00:14:15夜は、時々子供たちと一緒に何かをします。
00:14:18質問の答えになっているか分かりませんが、
00:14:21とにかく創造性を生活のすべてに取り入れ、人から引き離されるのではなく、人と繋がるきっかけにしようとしています。
00:14:27まさにそれが、AIコーディングの最もクールな点の一つだと思います。HTMLやReactなどの構文をわざわざ教え直す必要がなくなったんです。
00:14:39「Claudeに聞けばいいよ」と言って、何が起きているのかを一緒に話すだけでいい。
00:14:43誰かの最初のアプリを世に出すのが、明らかにずっと簡単になりましたね。
00:14:49AIはマイクロサイトを作るのに最適だと思います。
00:14:52小さなものが必要な時、既存のサービスをGoogleで探す代わりに「Claude、これ作れる?」と聞くようになりました。
00:14:58結局、使うのは私だけなので、最高品質である必要はありませんからね。
00:15:04なので、とても便利です。
00:15:05子供たちとそんな風に使っていると聞いて、クールだなと思いました。
00:15:08ええ、色々な作業が確実にスピードアップしました。
00:15:11子供たちがアイデアを出す助けにもなります。例えば、友達と図書館をやりたいと言い出して、
00:15:16カスタムメイドの本をたくさん作って、本の貸し借りができるウェブサイトも作りました。
00:15:22うちの娘二人と友達二人、計四人の子供たちのためだけのものだったんですけどね。
00:15:27でも、こういうことができて本当に楽しかったです。
00:15:28子供たちはインスピレーションを受けて「こうできる?」と聞いてきて、
00:15:31普段なら、そんな時間取れなかったでしょうね。
00:15:34Resendで働く友人のクリスティーナは、
00:15:41「アプリは家庭料理のようなもの」だと言っています。
00:15:44誰かに手料理を振る舞うように、大げさなものでなくていいんです。
00:15:48AIのおかげで、そんなことが簡単に素早くできるようになりました。
00:15:52いいですね、私が子供の頃にそれがあれば良かった!私はMinecraftがきっかけでコーディングを学びました。
00:15:56プラグインを追加したかったんです。
00:15:58そのためにJavaを学ぶ必要があって。どうやって習得したのか分かりませんが、何とかたどり着きました。
00:16:03それはすごいですね。
00:16:04先ほど娘2人に息子1人とおっしゃっていましたが、私も娘が2人います。
00:16:08最初の娘が生まれた時は、トイレの蓋を上げっぱなしでも許されましたが、
00:16:14今はもうダメですね。
00:16:16常に下げておかないと。
00:16:18ご家庭のバランスはどうですか?そういうこと、ありますよね。
00:16:22ええ、娘を持つ父親として生活を改めなければなりません。
00:16:26その通りです。
00:16:27ところで、Resendでのお仕事について伺いましょう。
00:16:29いろいろと手掛けていらっしゃるようですね。
00:16:31動画やドキュメント、メールスキルの作成など。
00:16:34正式な役職名は何ですか?本来は何をする役割なのですか?
00:16:40そうですね、社内の様々なことと繋がっています。
00:16:44大まかに言えば、DevRel(デベロッパーリレーションズ)のカテゴリーになります。
00:16:48私たちは「DXエンジニア」と呼んでいます。開発者のマインドを持つ人々にアピールしたいので。
00:16:56ドキュメントからブログ投稿、変更履歴、ソーシャルコンテンツ、動画、教育など、製品のあらゆる部分を開発者目線で扱っています。
00:17:06イベントでの登壇や人々との交流も行っています。
00:17:10その全般ですね。
00:17:13製品にも携わりますし、機能の開発をしたこともあります。
00:17:17かなり包括的になっていますね。
00:17:21チームが大きくなるにつれて、やっていることも増えています。
00:17:24Resendについて皆さんに話せるのは素晴らしいことです。
00:17:28私は自分の役割を、製品について伝えるだけだとは思っていません。
00:17:31Resendで何をしているか理解してもらうのはもちろんですが、
00:17:35社内にいる人々の声を外に届けるのを手助けすることも大きな役割だと思っています。
00:17:40先ほど言ったように、Resendは私にとって「人」が重要なんです。
00:17:45素晴らしい開発者やデザイナー、サクセスエンジニアたちがたくさんいます。
00:17:50彼らは多くのことを成し遂げています。
00:17:51ですから「彼らの声をどうすれば増幅できるか」を常に考えています。
00:17:55彼らのためにゴーストライターをすることも多いですね。
00:17:57会議で彼らが言ったアイデアを拾い上げて、
00:18:00「20分ほどインタビューさせてください。なぜこのアーキテクチャにしたのか聞きたい」と言って。
00:18:06エンジニアリングの記事として投稿したりします。
00:18:09作業は私が引き受けますが、彼らに確認してもらい発信します。
00:18:12ですから、私の役割は単に製品を宣伝するだけではありません。
00:18:15Resendの考え方を伝えることなんです。
00:18:17非常に、非常にカルチャーを大切にする会社です。
00:18:20このまま続いてほしいですね。
00:18:22成長するにつれて、それを維持するのは難しいことですが。
00:18:25製品だけでなく、社内のメンバーを皆さんに知ってもらうことも考えています。
00:18:31それが私の役割の全容です。
00:18:36Resendには同じように考えている人がたくさんいます。
00:18:39CEOのゼノもソーシャルメディアでの発信が得意ですし、
00:18:44エンジニアたちも自分たちで発信しています。
00:18:48外部への発信を気にしているのが私だけというわけではありません。
00:18:52でも、伝統的な意味でのマーケターではありません。
00:18:56ゼノに雇われた時、「マーケターから教育者まで、この役割はどこに位置するのか」と聞いたんです。
00:19:01私はマーケティングには全く興味がないので。
00:19:03全く興味がないと言いました。
00:19:05彼は「それでいい」と。
00:19:06私たちがしていることを自然でオーガニックな形で人々に伝えたいだけだからと。
00:19:11ですから私は、製品とResendのメンバーについて人々に教育する者だと考えています。
00:19:16入社した時、会社の規模はどれくらいでしたか?今はどうですか?
00:19:21私は10番目の採用でした。
00:19:22今は45、46人くらいだと思います。
00:19:28入社して1年半が経ちました。
00:19:30いいですね。
00:19:31メールでも触れましたが、ResendはClaudeに推奨されるのがとても上手ですよね。
00:19:38どうやっているのか全く分かりません。
00:19:40メールが必要なものを作ると、ClaudeのコードはいつもResendを勧めてきます。
00:19:44他にもたくさん代替案があるはずなのに、Resendを使うよう誘導されるんです。
00:19:48すごいことです。
00:19:49それを実現するために何かしているのですか?
00:19:53基本を徹底しようと努力してきました。
00:19:56SEOは常に重要でしたが、多くの人が意思決定のためにClaudeを使うようになり、さらに重要性が増しています。
00:20:06開発者はメールのことなんて気にしたくないですよね。
00:20:08ただ動くものが欲しいだけです。
00:20:09動けばそれでいい。
00:20:11ですから、少なくとも基本はカバーしなければなりません。
00:20:17JSON-LDの設定から、ページの構造化、H1タグを一つにするなど、SEOの基本ですね。
00:20:27もちろん、それ以上のこともしています。
00:20:30lmms.txtのようなものも活用しています。
00:20:33例えば料金ページにcurlリクエストを送るとMarkdownが返ってくるようにするなど。
00:20:40Q&Aも重要です。
00:20:43可能な限りアコーディオン形式のQ&Aを配置しています。LLMはそういう情報を好むようです。
00:20:49他社と協力して「通知APIベスト5」のような記事を交換で書いたりもします。それもAIにとって重要なようです。
00:20:58それらもAIにとっては非常に重要みたいですね。
00:21:01それに、正直なところ「直近性バイアス」もあると思います。
00:21:03AIは新しいベンダーを好む傾向があるようです。
00:21:08私たちはちょうどいいタイミングで登場しました。
00:21:112023年1月に会社が設立されました。
00:21:14LLMの学習が本格化するまさにそのタイミングでした。
00:21:18その直近性バイアスも関係しているはずです。
00:21:21MCPやAIツールといった新しい分野に常に早く対応しようとしています。
00:21:30業界の新しい動きにいち早く乗ることで、他の人たちが話題にしてくれたり、ツールで使ってくれたりする恩恵も受けられます。
00:21:43すべての要素が積み重なった結果ですが、魔法のような特効薬があるわけではありません。
00:21:50AI SEOやGEO(生成AI最適化)などと呼ばれるものを攻略しようとする企業は多いですね。
00:21:57私たちは機会があるたびに、それらを改善するヒントに従ってきました。
00:22:04結局はSEOの基本を正しく押さえることです。
00:22:08LLM関連の動きに誰よりも早く対応すること。
00:22:10直近性バイアスは強力なので、投資を続け、何が効果的か学び、常にリストのトップに居続けられるよう願うしかありません。
00:22:20現時点ではClaudeが7割くらいの確率で私たちを勧めてくれています。
00:22:24それは凄いです。
00:22:24Claudeに推奨されるのはRailways、Fly.io、Vercelなど、ごくわずかな会社です。どうやっているのか誰も本当のところは分かりません。
00:22:34みんなクレイジーなトリックを使っているんでしょう。Claudeも推奨事項を公開していますが、誰も確信は持てない。モデルの進化が速すぎて、すべてやり直しになるかもしれません。
00:22:53面白い場所ですね。これからどうなるか楽しみです。
00:22:57そうですね。
00:22:57あまりにゲーム化しすぎても、誰でもできてしまいますから。
00:23:01通常のSEOと同じで、少し謎めいている部分がある。モデルの提供者すら正確な理由を把握していないこともあるでしょう。
00:23:10だから、何というか、間違いなく絶えず状況が変わるものだし、目標を達成したからといって喜んでばかりもいられないね。
00:23:17君が言ったように、モデルが変化して突然推奨されなくなる可能性は大いにある。でも今のところは、口コミと、それにClaudeなどの組み合わせが効いているみたいだ。
00:23:29人間にもエージェントにも、常にトップに選ばれるようでありたいですね。
00:23:35AIの影響がResendの成長にどう寄与していると思いますか?
00:23:39ゼノが利用者の急増を示すグラフを投稿していましたよね。AIの影響ですか、それとも別の要因でしょうか?
00:23:51プロのマーケターならデータを示せるんでしょうが、残念ながら私は違います。改善しようとはしていますけどね。
00:24:00複数の要因が重なっていると思います。
00:24:03AIは間違いなくその一つですが、AIに何を使うべきか聞いたからといって、直接的にResendに繋がるわけではないはずです。
00:24:09Supabaseとの統合は以前からありましたし、
00:24:15Supabaseが多くのAIエージェントに利用されるようになったことで、メール機能を追加する際にResendが自然と推薦されるのです。
00:24:25AIが他の企業に影響を与えることで、その「上げ潮」の波に一緒に乗れているということでしょうか。
00:24:33まさに「上げ潮はすべての船を持ち上げる」というやつです。
00:24:36一緒に成長できているんです。
00:24:38それが大きいですね。
00:24:39最高のマーケティングは常に口コミです。
00:24:42人々が私たちを愛し、話題にしてくれる。それに感謝しています。
00:24:46それが大きな要因でしょう。
00:24:49私たちは常に開発者第一の姿勢を貫いています。
00:24:54最近は「バイブ・コーダー」やクリエイターも増えていますが、基本的には開発者向けです。
00:25:07その層にどう適応していくかが課題ですね。
00:25:09これまで開発者が中心だったので、口コミの力が大きかったのでしょう。
00:25:14バイブ・コーダー層が増えると、DNSの設定のような込み入った部分で苦戦することもあります。
00:25:22それは私たちのせいではなく、
00:25:23メールの仕組みそのものの問題ですからね。
00:25:24それでも、Supabaseなどとの統合のおかげでうまく回っています。
00:25:29そして私たちが持ついくつかの統合機能のおかげで、彼らが成長する際に簡単にスケールアップできるようになりました。
00:25:35AIの話題が出たついでに伺いますが、AIによってあなたの働き方は個人的にどう変わりましたか?
00:25:41そうですね、この5ヶ月間が一番大きな変化だったと思います。
00:25:46個人的な面でも仕事の面でも、いろいろと変化がありました。
00:25:50仕事でAIを主に活用しているので、その話をしましょう。
00:25:54他者からコンテキストを集めるのに非常に役立っています。
00:25:59例えば変更履歴を作る時、概要は分かっていても、Claudeにリサーチを頼みます。
00:26:05「このプロジェクトに関わった全員を探し出して、RFCを読み込んでくれ」と指示するんです。
00:26:14カバーすべき項目を箇条書きでリストアップしてもらう。
00:26:17文章を作成する際には、自分の言葉を磨く力も必要だと思います。
00:26:21リサーチ作業において、この力は非常に強力です。
00:26:26コードベースには共通のパターンが多いので、
00:26:28カスタマーストーリーや新しいランディングページの作成など、過去の知見を借りることができます。
00:26:35「新しいランディングページを作ってくれ」というタスクで、エージェントを動かすこともあります。
00:26:41中身はすべて投げ込みます。
00:26:42中身は自分で書きますが、構造を作ってもらうんです。
00:26:44そんな感じでいろいろと。
00:26:45作業がかなり速くなりました。
00:26:47エージェントスキルについては、かなり早い段階から取り組んでいたと思います。
00:26:50Cursorが対応する前からの話です。
00:26:53だから、それを聞いたときは『これはすぐに飛びつかないと』と思いました。
00:26:57そして、これらが一体何なのか徹底的に調べました。
00:27:00なぜ重要なのか、といったことです。
00:27:01そんな感じですね。
00:27:02それも大きな要因でした。ツールをどう使いこなすか、どう作業に組み込むかを考えたんです。
00:27:08どのスキルを使いたいか、どう呼び出すか。Claudeは毎日7つも新機能を出してくるので、
00:27:14常にキャッチアップしようとしています。
00:27:15個人的な面では、少し別の話をしましょうか。
00:27:18私は公開呼び出し可能なエージェントを持っています。
00:27:20Resend内にもいくつかあります。
00:27:23非常に限定された特定のタスクに使っています。
00:27:26ただ、自分自身のエージェントを使って、GitHubと同期するObsidianのVaultですべてのタスクを管理しています。
00:27:33これはかなり複雑なシステムなので説明しても退屈かと思いますが、タスクマネージャーと対話できるのは本当に便利です。
00:27:40プログラムから開いて、全体を見渡すこともできます。
00:27:44個人的なレベルでは、とりあえず壁に向かって投げといて、後で確認してそのシステムを信頼する、ということができるようになりました。
00:27:50仕事では、リサーチのスピードが上がりました。特定の分野で何が起きているか、すぐ理解できます。
00:27:56どこへ進むべきかのアウトラインを教えてくれたり、コーディングでは、例えばSlackで『Cursor、これやって。このバグ見つけたからちょっと修正して』といった小さな作業です。
00:28:07新しいランディングページを素早く立ち上げたり、機能の構造を素早く整えたりするのにも役立っています。
00:28:16仕上げのコード作業は、自分自身で行うようにしています。
00:28:19ええ、それはとても良さそうですね。
00:28:21AIのポッドキャストにするつもりはなかったんですが、Resendで複数の公開Claudeを使っていると言いましたよね。個人的には、セキュリティに不安を感じてしまうんです。
00:28:33アクセスすべきでないものにアクセスされてしまうのが怖いんです。
00:28:37それで、まず、なぜResendで複数の公開Claudeを使っているのか、何に使っているのか教えてもらえますか?
00:28:44ええ、それらは主に特定のチームやアクションに限定されています。
00:28:48例えばマーケティング用が1つあり、インスタンスを個別にスコープしています。
00:28:55専用の1Password Vaultにアクセスさせて、特定のAPIキーへのアクセス権のみを与えることで、権限を制限しています。
00:29:05専用のTwitterアカウントなどを持たせています。
00:29:08独自のGapsアカウントも持っています。
00:29:09毎週月曜日には、それが立ち上がって、
00:29:13Twitter、LinkedIn、SEO、ウェブサイトの分析データをすべて確認します。
00:29:23それを集めて、足りない部分は何かを整理してくれます。
00:29:26ドキュメントを見て、ユーザーからの質問などを確認します。
00:29:29かなり限定された情報だけを与えています。
00:29:32それで毎週レポートを出してくれるんです。
00:29:35それがマーケティングなどで使っている一例ですね。
00:29:37他のチームもそれぞれ持っています。
00:29:39インシデントの主な原因は何か、といったことをすぐに確認できるものもあります。
00:29:44チームが飛びついたときに、すべての詳細がすでにそこに揃っているわけです。
00:29:48ここでも、API管理を通じて、エージェントが存在する場所やアクセス先を制限するようにしています。インターフェースはSlackのみです。
00:29:57チームによって活用度は異なりますが、最初に私たちが始めたので、他のチームが『これは面白い、自分たちも何かできるかな』となったんです。
00:30:03他のチームも『これは面白い』となって。
00:30:05これを使って何ができるか試してみよう。
00:30:07ある程度分析が必要な自動生成タスクにおいて、大部分で役立っていると思います。
00:30:14また、質問をするのにも使っています。
00:30:17Xなどで投稿を見たら、『ここに挙げられた10社の中に、うちの顧客はいる?』と聞いたりします。
00:30:24それについて基本的なデータを見に行く権限を持たせています。
00:30:27ですが、多くは能力を非常に特定のものに絞り、私が10分や15分かけて検索したくないような面倒な作業を、私がHermes(私たちの公開Claude)に『これ調べて』と言って処理してもらうという形です。
00:30:41マーケティングチームが使っているHermesに『これやって』と指示を出すんです。
00:30:47そうやって進めていきます。
00:30:48面白い旅路ですよ。
00:30:50実はCEOのZenoが最初にこれを推進したんです。
00:30:52経営陣がバックについているとやりやすいですね。
00:30:55繰り返しになりますが、非常に特定のことだけに絞るよう細心の注意を払っています。
00:30:59極めて重要な情報にはアクセスさせないようにしています。
00:31:03もしもの時はすぐに停止できるようにもしており、実際これについてはアクセスさせたくないな、という時に停止したこともあります。
00:31:11アクセスを制限したり、APIキーを無効にしたりね。
00:31:14ただ、今後公開ClaudeやClaudeそのものを使う人が増えるにつれて、APIのスコープ設定はより重要になると思います。
00:31:22Resendでも、そのあたりにさらに投資していこうと考えています。
00:31:26他の多くの企業も同じことをしていますね。
00:31:29そうすれば、特定のタスクはエージェントに任せつつ、余計なアクセスはさせないという確信が持てるようになります。
00:31:35すごいですね。スコープ設定は重要です。Stripeなどもエージェントが代行して支払いを行う仕組みがありますが、
00:31:44もう少し深く掘り下げたいです。聞いたことのない非常に賢い使い方があったので、真似させてもらうかもしれません。
00:31:50HermesエージェントがTwitterを見に行く、つまり自分専用のTwitterアカウントを持ってログインし、
00:31:55ツイートを読み込んでいるということですよね。
00:32:00投稿すべきツイートを提案させるのか、あるいは人気の情報を集めてくれるのか、どちらでしょう?
00:32:07ええ、投稿させることも試しましたよ。
00:32:09あまり上手くはなかったですけどね。
00:32:10もっと賢い人がやれば上手くいくのかもしれませんが、私にはできませんでした。
00:32:14なので主に競合分析に使っています。
00:32:17『みんな今、何についてツイートしてる?』といった具合に。
00:32:19『重要そうな話題があるから、何かアクションを考えた方がいいですよ』と教えてくれるんです。
00:32:23そんな感じですね。
00:32:25それにツイートをそのまま入力して『これの背景を詳しく教えて』と聞くこともできます。
00:32:30私たち独自のGrokみたいなものですね。
00:32:33ちなみにHermesという名前は、本物のHermes(xAI)が有名になる前に付けた名前なんですよ。
00:32:38なので今はHermesになっています。
00:32:40ソーシャルメディア関連の使い方は基本的にそんな感じです。
00:32:48以前は毎日投稿させていましたが、今は週に一度、競合分析をしてくれます。
00:32:51『みんなが何を投稿しているか』を教えてくれるんです。
00:32:53競合リストを渡して、彼らの発言を追跡させています。
00:32:56今は必要なときにインタラクティブに使う形に落ち着いていますね。
00:33:00なるほど。
00:33:01それはすごくかっこいいです。
00:33:02私たちももっとやるべきですね。
00:33:03今のところやっていません。
00:33:04みんなそれぞれ自分のやり方で使っていますが、
00:33:06全社共通のシステムというのはまだありません。
00:33:11HermesボットがTwitterを巡回して、私たちが見逃している素晴らしいトピックを教えてくれるなんて、
00:33:17すごくクールだと思います。
00:33:18あなたはしばらくの間、一人でチームのような役割を担ってきましたが、AIは間違いなく生産性を上げてくれますよね。
00:33:27他に何か、業務を円滑に進めるために頼りにしているものはありますか?
00:33:33Raycastが好きですよね。
00:33:35それについて話してもいいですよ。
00:33:36他に現在、積極的に使っているものはありますか?
00:33:39ええ、Raycastにはかなり執着していますね。
00:33:43初期のベータ版から使っています。
00:33:46何でもすぐに飛びつくと言われたこともありますが、Raycastは自信を持っておすすめできるものです。
00:33:52ヘビーユーザーですよ。
00:33:53毎年Raycastの統計が出るんですが、自分の数値が恥ずかしくなるくらいです。
00:34:01なので、あれは大きいです。
00:34:02Obsidianを使ってVaultを管理し、タスク管理もしています。
00:34:08社内独自のシステムもありますしね。
00:34:11Resendという会社自体が、
00:34:17顧客の懸念や私たちが推進していることに深く関心を持っているというのも大きいですね。
00:34:21チーム全員が外向きに考えていると感じます。
00:34:26多くの職場では、ただ製品を作ることに集中しすぎて、
00:34:31『作れば勝手に使われる』と思いがちですが、
00:34:33ここの開発者は自分たちが作るものに誇りを持っています。
00:34:36だからこそ語り、推進し、改善を提案し合うんです。
00:34:39私は事実上一人チームのようなものですが、Christinaも助けてくれますし、会社全体がそういう思考回路なんです。
00:34:45それが私の仕事を楽にしてくれます。
00:34:49みんなが常に情報を持ち寄ってくれる。
00:34:51私は聞き役に回り、
00:34:53『これできるかも?』と投げかける。
00:34:55デザインチームもすぐに協力してくれます。
00:34:59私が発信するものの多くには、彼らのデザインや指紋が残っています。
00:35:04チーム全体の成果なんですよ。
00:35:06本当にチーム戦です。
00:35:08個人的な面で言えば、やはりRaycastですね。
00:35:13Obsidianも使っています。
00:35:14OmniFocusを15年使って、包括的なメンタル管理をしています。
00:35:19Resend社内ではLinearを使っています。
00:35:22Slackは基本的にすべてがそこで起こります。
00:35:24チャンネルが多すぎる。
00:35:25新入社員が初めてSlackを開いた時のあの表情を見るのが好きです。
00:35:30そんな感じですね。
00:35:30特別な秘訣はないですが、
00:35:32自分ができることについて可能な限り現実的であろうと努めています。
00:35:40そうすれば多くを達成できます。
00:35:41そして、やり遂げられます。
00:35:44自分の中ではメンタルを調整するトリックのようなものです。
00:35:47自分を追い込みすぎたり、予定を詰め込みすぎると、いつも遅れている気分になります。
00:35:52だからあえて余裕を残しておくことで、常に先回りしている気分でいられるんです。
00:35:56単純なメンタルトリックですが、私には効果があります。
00:35:58だから『これをする』と決めたら、確実にやり遂げるようにしています。
00:36:04残念ながら、やることが増えるほど難しくはなりますが。
00:36:08仕事の進め方に魔法のような秘訣があるわけではなく、
00:36:12ただ道具をリストアップし、やり方を知るだけです。
00:36:16先日読んだあなたの記事、数日前でしたっけ?
00:36:19『予測可能性はスーパーパワーである』でしたよね。
00:36:23実際にかかる時間よりも長く見積もって計画するという考え方ですが、
00:36:28午後1時までの計画しか立てないんでしたっけ?
00:36:33どのくらい前からそのアプローチを使っているんですか?
00:36:38理にかなっているなと思いました。
00:36:40タスクには時間がかかるので、時間を allotment(割り当て)するというやり方。
00:36:46調子はどうですか?
00:36:49最近のことなんですか?
00:36:50ええ、もう何年も続けています。
00:36:53自分の性質を知っているんです。すぐ脇道に逸れたり、好奇心が抑えられなかったりする。
00:36:57他のことに目がいく。
00:36:57それに物事は計画通りにはいかない。
00:37:0020分で録画できると思った動画が、
00:37:031時間半かかったりする。
00:37:05人生そんなものですよね。
00:37:06進め方は2つしかないと思います。
00:37:091つは完璧な日を毎日計画して、失敗して落ち込むこと。
00:37:13自分を負け犬のように感じること。もう1つは、
00:37:15計画そのものに無理があることを自覚して、人生を受け入れること。
00:37:18特に人との関わりでは、余裕を持つことが重要です。
00:37:22人は機械ではありませんから、その分、余裕を持つことが本当に大切なんです。
00:37:28例えば先日、ある人との打ち合わせが30分の予定でした。
00:37:311時間かかりました。忙しい人は『打ち合わせは終わりだ』と言えるんでしょうが、
00:37:35「もうミーティングは終わり」と言えるほど
00:37:37忙しくて重要な人もいるだろうけど、私は違う。
00:37:40その人には特別な配慮が必要だった。
00:37:43ならそれでいい。
00:37:44急ぐ必要はない。
00:37:46相手に全神経を注いでいると感じてほしいですから。
00:37:50何年もそうしています。
00:37:51結局のところ、毎日『何も達成できなかった』と感じる日々が続いていたので、
00:37:55何かが足りない。
00:37:56そこで『ここまでしか計画しない』というトリックを使うようになったんです。
00:38:00完璧でない日々も考慮に入れる。
00:38:03そうすると毎日目標を達成できて、翌日の分にまで手が出せるようになる。
00:38:07それが翌日の分なんだけど、
00:38:09脳内では『これは明日やること』と思える。
00:38:10理想を言えば、金曜日にはすべて終わっている状態です。
00:38:14そうすればボーナスとして、やりたいことをやる時間がある。
00:38:17結局やることには変わりないですが。
00:38:19先回りしている気分になれる。
00:38:20前向きになれる。
00:38:21好奇心を持てる。
00:38:22人に時間を使える。
00:38:24脳をハッキングして、
00:38:29常に後手に回り、プレッシャーにさらされるのではなく、最高の自分として働く方法です。
00:38:33いろいろありますよね。
00:38:34忙しいのはわかります。
00:38:35そう感じないと言えば嘘になりますが、
00:38:37メンタルハックによって仕事がより良いものになりました。
00:38:41もともと達成できる量なんてたかが知れているんです。
00:38:44大事なのは、圧迫される経験にするか、
00:38:48楽しめる経験にするかということ。
00:38:50本当によくわかります。
00:38:52私も毎日『何も終わらなかった』と感じるキャンプにいるようなものです。
00:38:55あれもこれも終わらせたかったのに、といつも思ってしまいます。
00:38:57だから、ぜひその記事を読んでみたいですね。簡単に陥ってしまう罠ですから。
00:39:02何というか、なんて言えばいいんでしょう。
00:39:06達成したいことがたくさんある、あるいはやらなければならないことが多い場合に特にそうです。
00:39:12ですから、自分を追い込みすぎないための良い心の持ちようだと思います。
00:39:16記事を読んでみますね。
00:39:17ええ、あなたの脳も同じ仕組みで動いているか教えてください。少なくとも私はそうです。
00:39:20公の場でこうして話しているわけですが、
00:39:22どういう仕組みか分かっていても効果はあるんですよ。
00:39:25ええ、ええ。
00:39:26それはいいですね。
00:39:29動画のセットアップについては後で詳しく聞きますが、
00:39:31まずは視聴者からの質問がいくつか来ているので。
00:39:35かなり具体的な内容ですよ。
00:39:37もし答えられなければ、無理に答える必要はありません。
00:39:40まず一つ目はQProductions23さんからです。
00:39:43彼が言うには、使い捨てメールアドレス(テンポラリーメール)を追加する予定はありますか?
00:39:47アプリケーションのプロトタイプを素早く作るために便利だそうです。
00:39:51質問の意図が完全に理解できているか自信がないのですが。
00:39:53どういう意味でのテンポラリーメールでしょうか?
00:39:56私もよく分からないんです。
00:39:58ただ私の解釈では、一時的なメールを送る機能のことなのかなと。
00:40:05例えば、使い捨てメールの受信ボックスを用意して、
00:40:08動作テストに使いたいとか、そういうことかもしれません。
00:40:10ああ、なるほど。Resendの中に組み込まれたメール受信ボックスのようなものですか?
00:40:14ええ、そんな感じです。
00:40:15それは以前にも上がった機能リクエストですね。
00:40:18今は既存のお客様にとって何が役立つのかを優先して考えていて、
00:40:23新しい顧客を増やすための機能とどうバランスを取るか、という状況です。
00:40:25チームには共有しておきますね。
00:40:28今のところはお伝えできるのはそれくらいです。
00:40:29現時点で実装計画があるわけではありません。
00:40:31次はLife of Codeさんからの質問です。
00:40:33スパムフィルターやIPのフラグについて、また品質を保つためにどうすべきか聞いてくださいとのことです。
00:40:39ドメインの信頼性(レピュテーション)と到達率については語り始めると長くなってしまうので、
00:40:43あまり長くならないようにしますが、内容は盛りだくさんです。
00:40:46以前にもこのテーマでコンテンツを作ったことがあるので、
00:40:49そちらを参考にしてもらうのが一番良いかもしれません。
00:40:52一般的に開発者は、たくさん送ればその分ちゃんと受信箱に届くだろうと思いがちですが、
00:40:57実際に届くまでに解決すべき要素は非常に多いのです。
00:41:00特にGmailなどがそうですが、
00:41:03今のメール環境は、ある意味で彼らが牛耳っています。
00:41:06彼らが重視しているのはIPのレピュテーションよりも、ドメインのレピュテーションです。
00:41:09だからといってIPが重要でないわけではありません。
00:41:13我々は自社のIPを健全に保つよう努めていますが、
00:41:15最終的に重要なのはあなたのドメインです。
00:41:20郵便局をイメージしてみてください。
00:41:22見ず知らずの人が突然やってきて、10万通の手紙をポンと置いていったら、
00:41:27例えば、ある日突然10万通の手紙を窓口に持ち込んだとしたら、
00:41:30信用などあるはずがありません。
00:41:32レピュテーション(信用)を築くには時間がかかりますが、
00:41:34失うときは一瞬です。
00:41:36自分自身でさまざまな安全策を講じる必要があります。
00:41:42例えばサブドメインから送信するようにすれば、
00:41:45万が一そのドメインで問題が起きても、プラットフォーム全体に影響を与えずに
00:41:50別のサブドメインへ切り替えることができます。
00:41:55そうした基本的な準備が必要です。
00:41:59また、ログイン認証などのトランザクションメールだけでなく、
00:42:01配信停止リンクを必ず含めることなども重要です。
00:42:03アドバイスはたくさんあります。
00:42:06GmailやYahoo、Outlookなどの受信側のプロバイダーは、
00:42:08それぞれ独自のアルゴリズムでスパムかどうかを判断しています。
00:42:12そのフィルターの詳細は誰にも教えません。
00:42:16もし公開したら、スパムだらけになってしまいますから。
00:42:20彼らは送信頻度など、あらゆるシグナルを読み取っています。
00:42:22DMARC、SPF、DKIMといった認証設定も重要です。
00:42:24専門用語を並べましたが、メールの世界は非常に複雑です。
00:42:27しかし、根本的な考え方は「自分は信頼されるべき送信者か?」
00:42:30「相手は受け取ることに同意しているか?」と自問することです。
00:42:35Resendではコールドメールは許可していません。
00:42:38必ず相手の同意が必要です。
00:42:42基本を守り、受け取りを望んでいる人にだけ送る、
00:42:45そして大量メールを一度にスパムのように投げ込まない。
00:42:47これらを徹底することが大切です。
00:42:50特定の禁止ワードがあるわけではありませんが、
00:42:53リンク先ドメインと送信ドメインは一致させること、
00:42:57画像も同じドメインから読み込むことなど、
00:42:59ベストプラクティスに従うことが大切です。
00:43:01Gmailなどは「なぜスパム判定されたのか」を教えてくれる場合もあるので、
00:43:05改善のヒントになります。
00:43:07Resendでは全てのメールに到達率のインサイトを表示しているので、
00:43:10教育的な意味も含めて利用者にアドバイスを提供しています。
00:43:14信頼性のある方法で、予測可能なパターンで送る。
00:43:17そうした考え方こそが重要です。
00:43:19具体的な技術的アドバイスも必要に応じて我々が支援します。
00:43:23スパムフィルターや到達性については以上が概要です。
00:43:25専門用語が多くて理解できたか分かりませんが。
00:43:27素晴らしいですね。
00:43:30あなたのメールに関する知識の深さには驚かされます。
00:43:34メール送信の仕組みを構築するのが、
00:43:36いかに多くの壁があるかということがよく分かりました。
00:43:39私も自分でやろうとしたことがありますが、大変でした。
00:43:41React Emailが出た時にすぐ飛びつきましたよ。
00:43:44メールって、自己ホストしてはいけないと言われる代表例ですよね。
00:43:49本当に楽しくない経験になりますから。
00:43:52その通り、まさに苦行です。
00:43:53メールサービスプロバイダーになるというのは、そういう挑戦の連続です。
00:43:57React Emailが生まれた経緯もユニークですよね。
00:44:00創業者のZenoとBooが、手作業でメールのHTMLを書くのにうんざりして、
00:44:05テーブルレイアウトなんて、一体いつの時代の技術だ?と思ったそうです。
00:44:06略語だらけで分かりにくかったかもしれませんが、
00:44:10素晴らしいと思います。
00:44:11メールに関する驚くほど豊富な知識ですね。納得です。
00:44:15先ほど、Resendが開発者にとってどうメールを簡単にするのか説明してほしいと聞こうと思っていました。
00:44:20今の話を聞くだけで、メールの設定がいかに多くの障壁を伴うものかよく分かります。
00:44:24そうですよね。
00:44:26ええ。
00:44:27私も自分でやろうとした時、React Emailが出た瞬間に飛びつきました。
00:44:31Resendもそうですが、メールにはこれほど面倒なことがあったのかと実感しました。
00:44:35私はセルフホスティングが好きなんですが、メールだけは絶対にセルフホストするなと言われますよね。
00:44:41本当に、苦労することになりますから。
00:44:43ええ。
00:44:43ええ。
00:44:44メールサービスプロバイダーの世界へようこそ。
00:44:46そこには、また別の挑戦が待っています。
00:44:49ええ。
00:44:50React Emailから始まったのは、本当に素敵な裏話だと思います。
00:44:53共同創業者のZenoとBooの二人は、その時あることに直面していて…
00:44:58もしメールのHTMLを手書きしたことがあるなら分かるでしょうが、まるで何世紀前かという世界です。
00:45:02テーブルタグを使ったり、floatを使ったり、彼らは「もっとマシな方法があるはずだ」と考えました。
00:45:07ええ。
00:45:07いくつか方法はありましたが、現代的な感覚が足りませんでした。
00:45:10そこで彼らは、実際に使えるものを作ろうと言い出したんです。
00:45:14TypeScript、React、Tailwindを使って。
00:45:16そうしてReact Emailが生まれました。
00:45:18そしてその過程で、メール配信自体も良くないということでResendが生まれました。
00:45:21ええ。
00:45:22だから取り組んだんです。
00:45:23メールには本当に特殊な事情が多いんですよ。
00:45:26私たちは、プラットフォームを通じたスパムを排除することでユーザーを守ることに時間を費やしています。
00:45:31スパムを送ろうとする人が絶えませんから。
00:45:33そのため、信頼と安全(Trust and Safety)専門のチームがいます。
00:45:36メールを大規模に送り始めると、メールのエキスパートになるか、エキスパートを雇う必要があるんです。
00:45:39その両方が必要になります。
00:45:41Resendの強みであり、私たちの核となっているのは…
00:45:45「サポートもDX(開発者体験)の一部だ」と考えている点です。
00:45:51APIがどれほど良くても、
00:45:54何かあった時に連絡しても誰もいなければ意味がありません。
00:45:57エキスパートの力が必要な時に、私たちがその役割を果たしたいと思っています。
00:46:00有料プランの顧客であれば、共有Slackチャンネルを利用できるようにしています。
00:46:06非常に迅速に回答するように心がけています。
00:46:09もちろん、もっと改善したいですね。
00:46:11それは常に掲げている高い目標です。
00:46:14問題が発生した時に、私たちが一緒に取り組めるようにしたいんです。
00:46:18私たちも飛び込みます。
00:46:19GoogleのPostmaster Toolsの設定なども、
00:46:22一緒にライブでデバッグしながら解決策を探ります。
00:46:25サポートまで含めたDXという姿勢を大切にしているんです。
00:46:31Resendに来てくれた人たちが、そんな風に思ってくれたら嬉しいですね。
00:46:35私たちが支えますし、あなたがエキスパートである必要はない、私たちがエキスパートですから。
00:46:39顧客のためにこれを続けていきたいんです。
00:46:41私の最初のメール開発経験はフリーランス時代でした。
00:46:45「メール機能を追加して」と言われて。
00:46:47無知な私は「メールなんて完成された技術だろう」と思っていました。
00:46:50何年も前からあるものですからね。
00:46:51そんなに難しくないはずだと。
00:46:53そしてウサギの穴(複雑な世界)に落ちて「なんてことだ!」となりました。
00:46:57クライアント間の互換性がもう大変で。
00:46:59ブラウザエンジンはいくつかあるのに、メールクライアントは何百とあるんです。
00:47:03合意された基準なんてありません。
00:47:05巨大企業が決めない限り、これからも基準なんてできないでしょう。
00:47:11全クライアントで同じ表示にさせるだけで難しいんです。
00:47:15今ではReact Emailにリンターや互換性チェック機能、プレビューがあります。
00:47:19人々が自信を持ってメールを送れるよう、今後も改善していきたいと思っています。
00:47:24自信を持って送れるように。
00:47:26Claudeを使えばHTMLメールはすぐに作れますが、それが正しく表示されるかは分かりません。
00:47:30ウェブブラウザで綺麗に見えても、それが全てを意味するわけではありません。
00:47:33メールクライアントはそれぞれ全く別物ですから。
00:47:35メールには罠のような落とし穴がたくさんあるんです。
00:47:40私たちはそれを簡単にしようとしています。
00:47:42ですが、メールは継ぎはぎだらけのレガシー産業のようなものです。
00:47:46本質的に複雑な構造を持っているんですよ。
00:47:51ですから、手を引いて導いてくれるような誰かが必要なんです。
00:47:55この番組の動画制作をされている方には、どんな機材から始めて、どう買い替えていったかという成長の物語を聞くのが恒例です。
00:48:02あなたの物語も聞きたいですね。
00:48:04ぜひ聞かせてください。
00:48:07最初はウェブカメラ一台から始まりました。
00:48:11実は長い間、動画すら撮っていませんでした。
00:48:14以前の会社にいた時は、ボイスオーバーだけを録音していました。
00:48:19早い時期にRE20というマイクを手に入れたので、それは本当にありがたかったです。
00:48:26何よりも音声が重要だと思っていました。
00:48:30チャンネルを始めて数年後にようやく顔出しをしました。
00:48:35特別な大発表というわけではなく、
00:48:37ただ自分を映しただけでした。
00:48:38ウェブカメラはInsta360を使っていました。
00:48:42それを何年も使っていました。
00:48:44Resendに入社して6、7ヶ月経った頃のことです。
00:48:49「動画に力を入れて、いつでも時間に関係なく、
00:48:53常に同じ環境で撮影できるようにしよう」となりました。
00:48:56それで、このセット全体をデザインしてくれた会社と協力しました。
00:49:00地下のオフィスにあるんですよ。
00:49:03部屋のレイアウトも変えました。
00:49:04以前の動画を見たことがある人は分かるかもしれませんが、前はあちらを向いていました。
00:49:07今はこっちを向いています。
00:49:09壁を塗って、棚を設置して、いろいろとDIYしました。
00:49:12カメラはPanasonicのLumix S5 IIだったと思います。
00:49:22レンズは覚えていません。
00:49:24私はカメラオタクではないので、勧められたものを買いました。
00:49:27そのまま使っています。
00:49:2835mmだったかな。
00:49:30ですが、テレプロンプターとモニターが2台あります。
00:49:33あと、この照明のセットアップが本当に役立っています。
00:49:36ボタンで照明をすべてオフにできるようにしていて、
00:49:40スイッチを1回押すだけで、すべてが準備完了になります。
00:49:43デスクの下にあるボタンを2つ押すだけで、
00:49:48すぐに録画を開始できます。
00:49:49Zenoがスタジオに投資してくれたことに、
00:49:54本当に感謝しています。
00:49:55おかげで撮影がとても簡単になりました。
00:49:58あと、あそこに小さなコンピュータがあるんですが、これは実際のSC30で、
00:50:02カリフォルニアで購入して飛行機で持ち帰ったものなんです。
00:50:06座席の足元に詰め込んで、入らなかったのでジャケットで隠して持ってきました。
00:50:10でも、無事に持ち帰れました。
00:50:11あれは手に入れるのが本当に楽しかったですね。
00:50:13チャンスがあるたびに少しずつセットを増やしています。
00:50:18次に何を追加するかといった目標は特にありませんが、
00:50:20背景をいじるのも楽しいですね。
00:50:24照明についてもう少し詳しく教えてもらえますか?
00:50:25ここにいる全員、録画については多少知っていると思うので。
00:50:28どんなライトをどこに置いているのか知りたいです。
00:50:31そうですね。
00:50:32そうですね。
00:50:32正確な製品名はよくわかりません。
00:50:34セットアップ時に教えてもらった時は知っていたはずですが。
00:50:36これはAmaran(アマラン)だったかな、メーカー名は忘れましたが、
00:50:383フィートくらいの大きさがあるやつです。
00:50:40これがメインの大きなライトですね。
00:50:43天井を照らすスポットライトが1つあります。
00:50:45頭の後ろから下向きに照らしているライトも1つあります。
00:50:48あとは横に小さなアンビエントライトが1つあります。
00:50:51今のセットアップは、全体を明るくしすぎないようにしています。
00:50:55カメラにもっと仕事をさせることで、熱で焼けるのを防ぐためです。
00:50:58最初にセットアップした時は、明るさが5倍くらいありました。
00:51:02もう、座っているだけで汗だくでしたよ。
00:51:04これではとても仕事になりません。
00:51:06なので、今はかなり控えめにしています。
00:51:09その分、カメラに少し頑張ってもらっているというわけです。
00:51:13とにかく、計4つですね。
00:51:14メインの大きなライトと、アンビエントを作る天井のライト、
00:51:20それからヘアライト用のライトと、横のアンビエントライトです。
00:51:25動画を始めた当初は、顔から1フィートくらいの距離に
00:51:28ライトを全開の明るさで置いていたんですよね。
00:51:31撮影中、本当に焼き尽くされるかと思いました。
00:51:35本当に楽しい時間ではありませんでしたね。
00:51:37ええ。
00:51:37そうですね。
00:51:38ヘアライトの存在を知った時は衝撃的でした。
00:51:41少しずつパーツを増やしていくんです。
00:51:42最初は1つでいいと思っていても、徐々に周囲から
00:51:44「髪を照らすヘアライトが必要だぞ」なんて言われてね。
00:51:48ええ。
00:51:49奇妙な沼にハマっていく感じですね。
00:51:51ですね。
00:51:52ええ。
00:51:52基本的には、会社が「こうしろ」と言う通りにしただけです。
00:51:56仕組みについてはよく理解していないんですよ。
00:51:57ゼロから今の状態になりましたが、結果には満足しています。
00:52:01ええ。
00:52:02本当に素晴らしい会社ですね。
00:52:03私たちにも何かできないか、連絡してみないといけませんね。
00:52:06私は照明をいくつか持っています。
00:52:08Amaranは持っていませんが。
00:52:09良いものだとはよく聞きます。
00:52:10私はElgatoのKey Lightを使っていて、なかなか快適ですよ。
00:52:14カメラは同じPanasonicのLumixですが、私のほうが少し古いモデルかもしれません。
00:52:18それでも十分ですね。良いレンズも使っていますし。
00:52:21ええ。
00:52:21私はPanasonicのビデオの扱い方が本当に好きで、他より少し安かったのも
00:52:26動機の一つです。
00:52:27その方向に進んだのは、それが主な理由ですね。
00:52:30ライブ配信でも使えていますか?
00:52:32よくオーバーヒートすると聞くので。
00:52:34今のところは、かなりうまくいっています。
00:52:36接続しているCam Linkに問題が出始めているような気はしますが。
00:52:41今日の通話中には起きないといいのですが、以前にも何度か問題がありました。
00:52:47配信中にカメラが突然落ちたりすることもあって。
00:52:50誰も見ていないなら、まあ大丈夫かな、なんて。
00:52:53基本的には大丈夫ですが、少しずつ問題が増えてきました。
00:52:58原因はCam Linkかもしれないので、別の解決策を探そうと思っています。
00:53:02再接続すれば直るので。
00:53:03そうですね。カメラ自体は問題ないと思います。
00:53:06つい先日、Cam Linkを買い替えました。壊れかけていたので。
00:53:09結局、別のメーカーのCam Linkを買いましたよ。
00:53:13何がベストかはわかりませんが、やはりCam Linkが原因かもしれませんね。
00:53:16まあ、そんな感じです。
00:53:20ええ。
00:53:20時々、心の中にメモをしておくことがあるでしょう。
00:53:22Podcastの「Syntax」を聴いていたら、彼らもCam Linkで問題があって
00:53:27別の何かに乗り換えたと言っていました。
00:53:30原因はわかりませんが、問題が続くようなら彼らがおすすめする製品を探して買うつもりです。
00:53:34十分な時間が経てば、彼らのウェブサイトで検索して
00:53:37推奨されているものを買うことにします
00:53:39ええ。
00:53:39「ローンチ・ウィーク」の動画はいくつか見ましたが、本当にうまく作られていますね。
00:53:44あれは同じ会社が制作したのですか?
00:53:45それとも別の会社でしょうか?どのような仕組みになっているんですか?
00:53:49そうですね。
00:53:50ええ。
00:53:51私たちは3回前のローンチ・ウィークのオフサイトでバルセロナに一緒にいたのですが、
00:53:57そこで「自分たちで録画してみようか」という話になったんです。
00:53:59それから、今回ではなく1つ前のさらに前の回は、
00:54:01実際に自分たちで録画したのですが、思ったよりもずっと難しくて。
00:54:07会議室のような場所で撮影していたのですが、
00:54:10下の階でランチが行われていて、周囲の雑音もひどくて、
00:54:13かなり混乱しましたね。
00:54:15それで、「これは思った以上に大変だ」と気づいて、
00:54:20どこかと協力できないか探しました。
00:54:21そして、サンフランシスコのOpen Light Studiosというところと繋がったんです。
00:54:23それで、今回と前回の両方でそこで録画を行いました。
00:54:25それでサンフランシスコにある、確かオープン・ライト・スタジオという所と繋がることができました。
00:54:31今週と先週、そこで収録を行いました。
00:54:35あとは私が引き継いで、そこからすべて編集します。
00:54:40学びの多い経験ですね。
00:54:40今までやってこなかったような仕事ばかりですから。
00:54:44今回は音楽や効果音といった仕上げを外部の専門家に依頼しました。
00:54:48それによって、私には出せないような洗練された仕上がりになりました。
00:54:55それは本当に助かりました。
00:55:01少しずつ積み重ねてきている感じです。
00:55:03最初は彼らが撮影し、私がすべて編集していましたが、
00:55:05最初は撮影まで向こうがやってくれていて、
00:55:08編集はすべて私の方でやっていました。そして先日のローンチウィークには、
00:55:12最終的なエディターが音楽や効果音などを加えてくれました。
00:55:13ですが、画面に映る編集の大部分は今でも私が担当しています。
00:55:17素晴らしいですね。
00:55:19動画は本当に質が高いと思います。
00:55:21トランジションも好きですよ。
00:55:22複数のカメラを使い、発言内容を説明する
00:55:23吹き出しのようなテロップも素敵です。
00:55:24カメラを複数使って、素敵な吹き出しや
00:55:28話の内容を説明するテキストを入れていますよね。
00:55:30今回は少し手抜きをして、
00:55:30Figmaを使って吹き出しを作成しました。
00:55:32動画と上手く合うように調整したんです。
00:55:36その前は、DaVinci Resolveでカスタムアニメーションを組みました。
00:55:415時間くらいかけて、光を屈折させるような
00:55:43カスタム吹き出しを作ったのですが、
00:55:46労力がかかりすぎましたね。
00:55:50今回は他にすることが多すぎて、
00:55:53あそこまでやる精神的な余裕がありませんでした。
00:55:59DaVinci Resolveに詳しい人から見たら
00:56:01「Fusionで何をしているんだ?」なんて言われそうですが。
00:56:03前回はかなり凝ったことをして楽しかったのですが、
00:56:06残念ながら今回は時間が足りませんでしたね。
00:56:09Figmaでアニメーションができるとは知りませんでした。
00:56:10調べてみないといけませんね。
00:56:13基本的にはFigmaでガラス効果のある吹き出しを作り、
00:56:14それをDaVinci Resolveに書き出して、
00:56:17アニメーションを付けただけです。
00:56:23最後に、何か「スパイシー」な技術的意見はありますか?
00:56:26切り抜き動画になりそうなやつで。
00:56:29Reactサーバーコンポーネントがこれほど長い間、
00:56:30あやふやな領域に留まっているのは面白いと思います。
00:56:34それをDaVinci Resolveに書き出して、中でアニメーションをすべて仕上げました。
00:56:39すみません。
00:56:39ええ。
00:56:40実装方法に問題があると思います。
00:56:45あと、メンタルモデルの問題もあります。
00:56:47去年、ディーン・アブラモフがAstroを使って
00:56:52Reactサーバーコンポーネントを解説していました。
00:56:55「自らの仕組みを説明するのに他のフレームワークを使わなければならない」
00:57:01というのは、設計としてあまり賢いアプローチではない証拠ですよね。
00:57:06Reactの開発者たちは私よりはるかに優秀だとはわかっていますが、
00:57:10私の個人的な結論としては、
00:57:11すべてのサイトはAstroをデフォルトにすべきだ、
00:57:13というのが私の辛口な意見です。
00:57:15みんながWebアプリを作っているわけではありませんし、
00:57:21基本的なWebサイトならAstroで十分です。
00:57:24単純なアプリでもAstroで事足りることも多いですし、
00:57:28コンテンツコレクションの恩恵も受けられます。
00:57:32型安全なMarkdown、多様なレンダリングパターン、
00:57:36フォントや画像のフルサポートなど、必要なものが最初から詰まっています。
00:57:45それに、ほとんどの場合、人々は本格的なWebアプリを作っているわけではなく、Astroで基本的なウェブサイトに必要なことはほぼすべてできると思うんです。
00:57:55もちろん、複雑なアプリの話はしていませんが、基本的なアプリであっても、Astroを使えばほとんどのところまで到達できます。しかも、コンテンツコレクションのような素晴らしい機能も使えて、
00:58:03型安全なMarkdownが利用でき、欲しいレンダリングパターンはすべて揃っていますし、フォントや画像のサポートも完備されています。システムにこれほど多くの機能が組み込まれているんです。
00:58:12明確に境界が引かれているからです。
00:58:14だからこそ、みんなAstroをデフォルトにすべきだと思います。
00:58:21今のメタフレームワークが実装しようとしているRSCは、
00:58:29技術的にもメンタルモデルの面でも機能していません。
00:58:30まあ、私はただのAstroファンボーイなので、期待通りでしょう?
00:58:34あなたの主張には反論できませんね。
00:58:43私も個人的にAstroを愛用していますし。
00:58:47Reactサーバーコンポーネントも、ちょうど昨日か今日、
00:58:49また脆弱性が見つかったばかりですよね。
00:58:52ええ、あなたの意見に反論するつもりはありません。
00:58:54私も個人のサイトにAstroを使っていますし、Astroが大好きですから。それに、React Server Componentsについてですが、
00:59:00ご存じない方のために言うと、昨日か今日あたりにまた脆弱性が見つかったばかりですよ。
00:59:04サーバーコンポーネントは少し荒れすぎです。
00:59:05人々が不信感を抱き始めているのも無理はありません。
00:59:06役立つパターンではありますが、明らかに課題があります。
00:59:11「TanStack Start」が最近サーバーコンポーネントを
00:59:14独自に実装した方法は面白いと思いました。
00:59:18彼らは脆弱性の影響を受けないでしょうし、
00:59:21何がサーバーコンポーネントかが明確ですから。
00:59:27Next.jsはすべてがサーバーコンポーネントファーストですからね。
00:59:32Tannerは本当にすごいですね。
00:59:33家の近くに住んでいるんですが、どうやってあんなに
00:59:37膨大な量を開発し続けているのか理解できません。
00:59:38彼は根本的に「どうするのが最善か」を見抜く力があるのでしょう。
00:59:40いつも感銘を受けています。
00:59:45本当に人柄も最高で、会えばただの「普通の人」にしか見えません。
00:59:48ですが実際には、フロントエンド界のすべてを
00:59:50書き換えているような人物ですから。
00:59:51ぜひPodcastに招待したいと思っています。
00:59:53TanStackのライブラリは、今のJS界のあらゆる問題を
00:59:56解決してくれるようですから。
01:00:06「Better Stack Podcast」を聴いていただき、ありがとうございます。
01:00:11AppleやSpotifyなど、各配信プラットフォームで聴けます。
01:00:15Chris、今日は参加してくれてありがとう。
01:00:17AIやその他のトピックについて話せて最高でした。
01:00:20正直、最高に普通の男として振る舞うんです。
01:00:23でも実は、私たちがこれまでやってきたことを全て書き換えていることに気づかされます。
01:00:27特にフロントエンドの世界では。
01:00:29私はTanStackの大ファンなので、彼をポッドキャストに招待したいとずっと思っていました。
01:00:33彼らのライブラリは、現時点でのJavaScriptエコシステムにおけるあらゆる問題を解決してくれるようです。
01:00:38文字通り、全てをですね。
01:00:40Better Stackポッドキャストをお聴きいただき、ありがとうございました。
01:00:43ポッドキャストを聴ける場所ならどこででも見つけていただけます。
01:00:45AppleやSpotifyなど、いたるところで配信しています。
01:00:48そしてクリス、参加してくれてありがとう。
01:00:50あなたとお話しできて、AIや取り組んでいることについて聞けて最高でした。
01:00:54また将来、再演できたらいいですね。
01:00:55AIやその他のことについてもっと語り合いましょう。
01:00:58それでは、私からはこれでさようなら。
01:01:00さようなら。
01:01:01さようなら。
01:01:02さようなら。

Key Takeaway

Resendは、AI向けに最適化したSEO戦略と、学習内容をそのまま公開するオーガニックなコンテンツ制作を組み合わせることで、開発者コミュニティ内での高い推奨率と信頼を確立している。

Highlights

  • ResendはDXエンジニアの役割として、ブログ投稿やドキュメント、動画制作を通じて開発者に直接製品の考え方を伝えている。

  • ClaudeがResendを推奨する背景には、JSON-LDの設定やアコーディオン形式のQ&A活用など、SEOの基本をLLM向けに徹底した戦略がある。

  • YouTubeチャンネルの運営は学習したことを言語化する副業として継続し、流行を追うよりも毎週の学びを記録するプロセスを重視している。

  • 社内業務では特定のチームごとに権限を制限した公開Claude(Hermes)を活用し、GitHubのタスク管理や競合分析などのルーチンを自動化している。

  • React Server Componentsの複雑なメンタルモデルを考慮し、基本的なWebサイトにはAstroをデフォルトにすべきであるという見解がある。

Timeline

キャリア形成とYouTubeの活用

  • React Emailのビデオ制作がResendのCEOの目に留まり、入社のきっかけとなった。
  • YouTubeは収益化目的ではなく、自身が技術を真に理解するための言語化ツールとして位置付けている。
  • 何度も撮影し直すプロセスを通じて、曖昧な理解を解消し技術習得を深めている。

Resendでの役割は、運とタイミング、そしてYouTubeでの発信活動が大きく影響している。教えるプロセスは自身にとってパズルのピースを合わせる学習法であり、ライブストリーミングを通じて壁にぶつかりながら知識を確実にする方法をとっている。

AIを活用したSEOとマーケティング

  • Claudeからの推奨を増やすために、JSON-LDやQ&A形式の配置など、LLMが好むSEOの基本を徹底した。
  • 業界の新しい動き(MCPなど)にいち早く対応することで、AIの直近性バイアスを戦略的に活用している。
  • 特定の魔法のような特効薬はなく、着実な技術的基礎の構築が推奨率向上につながっている。

メールAPIプロバイダーとして、開発者が意思決定にLLMを使う現状を見据え、検索エンジン最適化からLLM向け最適化へと注力ポイントを移行した。他社との記事交換や技術的な透明性を高めることで、Claudeによる推奨を7割程度まで引き上げている。

業務の自動化と家庭生活の両立

  • マーケティングや競合分析に、APIキー権限を制限した専用の公開Claude(Hermes)を導入している。
  • ObsidianとGitHubを同期させ、複雑なタスク管理を自動エージェントと対話することで効率化している。
  • 子供とのウェブサイト制作やアプリ作りを生活に取り入れ、創造性を家族との繋がりとして活用している。

仕事の合間に個人的なプロジェクトや家庭生活を融合させることで、エネルギーを維持している。AIは特定のタスク(変更履歴の作成やリサーチ)を高速化するツールとして、仕事と趣味の双方で不可欠な存在となっている。

メール開発の課題と今後の展望

  • メールはクライアントごとの互換性が極めて低く、セルフホスティングは避けるべき領域である。
  • React Emailは、手作業によるテーブルタグでのHTML制作を回避し、現代的な開発体験を提供するために生まれた。
  • DXエンジニアの役割は単なる宣伝ではなく、サポートを通じた専門的な知見の提供までを含む。

メール配信の到達率はドメインレピュテーションに大きく依存し、その改善にはベストプラクティスの遵守が不可欠である。ResendはサポートをDXの一環と捉え、有料顧客にはライブデバッグを行うなど、エキスパートとしての伴走を重視している。

技術的見解とWebフレームワーク

  • Astroは基本的なWebサイト作成に必要な機能が網羅されており、デフォルトの選択肢として推奨される。
  • React Server Componentsの現在の実装とメンタルモデルには課題が多い。
  • TanStackのライブラリは現代のJavaScriptエコシステムにおける複雑な問題を解決する優れた手法である。

RSC(React Server Components)のような複雑な技術に依存せず、明確な境界を持つフレームワークの利点を主張している。開発者体験と実装の安定性を最優先し、フロントエンド界を再構築するような挑戦的なライブラリを高く評価している。

Community Posts

No posts yet. Be the first to write about this video!

Write about this video