この記事のあたりから作ってたやつがとりあえず出来ました。当初想定していたものよりかなりこじんまりしたものになったけど、まあ収益発生しそうなら強化していけばいいのかなぁという考えです。
以下作ったときの感想みたいなやつ
Puppeteer
スクレイピングで使ったライブラリです。いつもはselenium使ってたんですが、前やったときにだいぶ面倒くさい思いをした記憶があったので別のやつ模索してこれにしました。
かなり使いやすくて流石Google製だぜ!って感じ。本業の方でも結合テストとか総合テストやるときにこれ使ってみようかなーと思うぐらい使い心地良かったです。やっぱ環境用意するところのハードルがめちゃくちゃ低いのが良いですね
Supabase
Firebaseみたいなやつ。こういうのなんて言うんでしたっけ?
無料枠でも結構自由に使えるし、サクッとウェブアプリ作るときにDB必要ならこれでいいなと思いました。
ただfetchしたときに配列 or nullで返ってくるの個人的に面倒くさいなーと思いました。nullじゃなくて空配列のが楽じゃない?そうでもないのかな
あと調べた感じ動的にテーブル作成したり削除したりみたいなのをやろうとするのはちょっと面倒くさそうだなと思いました。一応rpcで行けそうではあると思う、後述するけどembedding使った検索はそれで作ったし
Open AI
今回AIを使った自動コンテンツ作成とembeddingを使った関連コンテンツ検索をできるようにしました。
AIを使った自動コンテンツ作成はprompt練るのがクソ作業すぎてキレそうでしたがなんとかやりきった感じ。
コストかけられそうならGPT4使ったほうが、文脈のテイストというか、なんて言えばいいんですかね?味?みたいなのが出やすくて、自然な文章が作れるような印象がありました。
要約みたいな感じとか、比較的ニュースサイトみたいに機械的な雰囲気で全然okならgpt3.5でも十分。工夫すれば感情っぽい要素を漂わせることも多分可能な気がしました(prompt練るストレス結構すごいけど)
embedding使った検索はsupabaseでやるならこの記事どおりなのでこれ見たほうが早いです。
よくわかんないけど関連記事の質は良いような気がする。。知らんけど
単純にタグとか人気とか考慮して作るよりは簡単だしいいんじゃないかなーと思います。多分。(どのようなテキストを変換するかでかなり違うと思うので改良の余地はとてもありそうな気はする)
Next.js v13
新しいやつで作りました。「俺の知ってるNext.jsじゃねぇ!」ってなりました
ただ書きなれると以前のバージョンよりシンプルに書ける感じになってる印象だったので、結構好きでした。
sitemap.xmlに関しては
これで作れるようになってて、ついにNext.jsの既存の仕組みで作れるようになったのかーいいねーとか思ってたんですが、やってみたらstaticな感じで作られるっぽいのでDBにデータが追加されても自動反映されず、再ビルド必要そうだったので採用やめました。
Add a Dynamic Sitemap to Next.js 13 Website Using Pages or App Directory | ClarityDev blog
この記事にあるroute.ts使うやり方で対応しました。
あとGoogleAnalytics対応するときに、nextjsの機能でパス取得とかすると、GoogleAnalytics部分だけクライアントサイドで動作させようとしても、全体に影響が出ちゃうみたいな現象があるらしく、Suspenseっていうので対応が必要になったっぽいです。
まあでも全体的には書きやすいなって感想のほうが大きかったです。
SEO
公開したの最近なんでまだ何も判断つかないです。
というか本当は狙うべきキーワードを狙うためのページ作ってないので、非常に良くないです。ちゃんとやらねばと思いつつモチベがないという。収益出たら頑張ろうかなぐらい
あと前回やってたときにindexing APIを使ってゴリゴリインデックス促したんですが、そのサイト3ヶ月ぐらいでぶっ飛んだんでやめとこうかなと思ってます。
感覚的にindexing APIの影響というより、【コンテンツ間での重複量が多い + UXが悪い + スパムアップデートが入った時期と重なる】あたりが原因なような気はしてるので使ってもいいと思うんですが、今回は使わずにのんびり様子見ようかなという次第です。
次にやること
会員登録のような仕組みを持つサイトを作ろうかなと思ってます。UGCベースのサイトをやってみたかったので
最近心変わりしたんですが、別に利益ベースである必要ないかもしれないってなったんですよね。(ないよりはあった方がいいが)結構利益欲しいで色々やってたんですが、それよりも自分の遊び心みたいな部分を満たせるように動いたほうが結局長続きしそうだし、いい結果出そうな気もしたので
よくゲームとかでも、結局プレイ時間長いやつは大抵上手いわけで、だから遊び続けられることこそが才能みたいな話があったりするんですが、そういう意味でもプログラミングというところのプレイ時間を伸ばせるような考え方にしたほうが色々いいのかなーと思ったりしました
そもそも今以上に金銭を得ても使い所ないですし。気楽な独身貴族なので
勝手にコンテンツが増える様子とか、そもそも人の意見とか黙ってみるのは割と好きではあるので、自分の興味のある領域でUGCベースのサイト作れたら楽しいだろうなぁという目論見です。
今度のは裏で回したいスクリプトとかもないし、vercelで全部作りきれるような構成でやりたいな。
ちょうど休憩時間終わったので終わりやす。