2024/02/15 このエントリーをはてなブックマークに追加 はてなブックマーク - レコメンドとSEOの海に埋もれた俺達のインターネット

レコメンドとSEOの海に埋もれた俺達のインターネット

カテゴリ: ,

最近の話題な記事をいくつか見て、自分もなにか書きたくなった。

google検索の劣化して専門家はdiscordに行ってしまいインターネットには屑情報だけになってしまった(https://orangestar2.hatenadiary.com/entry/2024/02/13/174845)

我々の愛したGoogle検索はすでに死んでいる(https://novtan.hatenablog.com/entry/2024/02/15/105259)

脱タムパ的思考論ー「言語化がスゲぇ」が実は全く凄くない理由。(https://note.com/symsonic/n/n2c491800482a)


自分としても、以前にこんな記事を書いていた。このあたりとつながるところを感じ、再考してみようと思った。

インターネットに開き続けていたい(https://yyyank.blogspot.com/2021/05/blog-post.html)

ベテランになるほどブログを書かなくなってくる(https://yyyank.blogspot.com/2023/05/blog-post.html)


誰でもインターネットに繋がる時代。動画、記事、何でも見れる時代。簡単に動画投稿、記事投稿が出来る時代。コンテンツは溢れた。誰もが閲覧でき、誰もがチャンスを作れる時代であり、大量のコンテンツがインターネットには渦巻いている。


大量のコンテンツ全てがあなたの求めるものか?
より届けたいものを示すために、各プラットフォームは進化した。具体的にはSNSのおすすめ、人気ランキングなど。
大量のコンテンツを整理し、ユーザー個別に興味の有りそうなものが並ぶ。すごい時代だよなと思う。作る側はレコメンドエンジンを工夫してよりユーザーに満足してもらうような仕掛けも出来る。


というわけで、アルゴリズムに沿って各プロダクトで考えた、あなたが「なんとなく興味のありそうなコンテンツ」が並ぶわけですが。



X(Twitter)、YouTube、Facebook。何でも良いが
初手、ふと目に入るページは大体決まって「なんとなく興味のありそうなコンテンツ」が並ぶようになってしまった。その時点で既に恣意的なフィルターがされていると言っても良い。

「なんとなく興味のありそうなもの」の中から、1つを選び、更に探索する。サイト内をサーフィンする。そういった流れを各サイトは作っている。
おすすめは毎回変わり、刹那的なものになり、追いかけることも困難になっている。


つまり、日々の生活は「おすすめの海」をくぐり抜けるところから始まる。それだけで集中力は奪われる。


そして、すでにフィルターされてしまったものから探索している。実は、能動的に見えてかなり受動性が高い気がする。知らず知らずに能動性を奪われるように仕向けられている。


お気に入りやマイページのようなものもあるが、ヘビーユーザー向けであり、大体は「おすすめ」がどんどん現れ、興味関心を惹く仕掛けがメインに散りばめられている。


大量のコンテンツから、限りある集中力を奪われないために、人類はタイパ思考なるものを選んだ。

「最近の若者はタイパとか効率しか考えとらん」と厄介オジサンになりたくなる一方で、大量コンテンツの溢れるSNS全盛の世の中と共に成長してきたと考えると納得行くというか、そうなるよなぁというところもある。

タイパを意識しないとSNSを見るだけで無限にコンテンツを消費して毎日が終わる。



能動性という意味で、「自分で検索してゼロから探す」という選択肢がある。

しかしこれも冒頭で記載したブログ記事にあるように ハックされたSEOによって意味が薄れてしまった。

レコメンドと同じく「いかがでしたか?の海」「SEOの強いサイトの海」をくぐり抜けるところから始めないといけない。
厄介なことに、検索エンジンを使いこなせないと掻い潜ること自体が難しい。


かくして、個人ブログや個人の意見、レコメンドやSEOといった拡大レンズのないコンテンツには、顕著にたどり着きにくくなった。
元々、仕組み的にSEOやオススメに埋もれるのが常であると思うけど、より一層その傾向が増し、もはや「見えない」レベルまで来ているのかもしれない。


X(Twitter)はもはや、レコメンドやインプレゾンビ、フェイクに囲まれて周囲が見えない。

過去にコミュニティの知り合い同士で自然発生的に生まれたやりとりも、相当減ったと思う。ある意味そういった自然発生のための「自然」が減ったとも言える。



そうなると、レコメンドや検索エンジンの邪魔の入らないところへと場所を変えるしかない。DiscordやSlackなどクローズドなコミュニティにたどり着くのもある種仕方ない。

その結果、みんな個人ブログをなかなか書かなくなるし、知見は内に閉じる。
そういったことは以前に僕が怪文書に記した。
この流れは分かる一方で、このサイロ化はどうにかしたいというのが個人的な意見。


端的に言うと、オジサンなので昔みたいな雰囲気でワイワイやりたいんや!
とだけ言うと懐古主義的なだけにも取れるけど、時代の流れとともに皆が昔のインターネットを感じられないのが勿体ないなと思うところが強い。

昔に戻る、というよりは今の時代に合わせつつ、何か良い方向性は無いかなというのを常に考えたい。


「昔は良かったよね」とか「オジサンたちはなんか楽しそうですよね」で終わりたくない感じがある。


ひとつ言えるとすれば、クローズドなコミュニティであっても良い知見は何らかのカタチでインターネットの海に放流しておいてほしいということ。開けていて欲しいということ。
道は細くても、たどり着ける道がないよりはマシということかもしれない。



レコメンドや検索エンジンを特別批判したいわけではない。時代とともに変遷した結果の今なので、今悪く写ってるだけとも言える。悪いと言うより、食傷気味というのが近そう。

レコメンドや検索エンジン自体が良くなっていくのも大事だし、作る側、ユーザー側がレコメンドや検索エンジンの海をうまく乗りこなす術を更に磨くというのが、良い気がする。理想論ぽいけど。


理想はありつつ、捨てたくなるぐらいに色々な難しさを持つものになってきているという前提知識は持っておいたほうがスマートな気がする。


レコメンドも検索もない世界で思いつくのが
本の世界である。
名著と呼ばれるような本であれば間違いないだろうというところはある。

どこかの若者が「本ってコスパがいいんですね」と言っていたというのをどこかで聞いたのが印象的。


しかし、出版自体も以前に比べて難しくはなくなってきている。
はじめは有益なことを書いてあり、読み込むうちに自分のサイトやコンテンツに誘導するような本に出会ったことが何度かある。
また詳しい人から見れば全然、的外れである本もたくさん出版されている。

そういったところを踏まえると、手放しに本だから良いと言える時代でもなくなってきている。


ウダウダ書きましたが、明確に自分の答えがあるわけではありません。すみません(ここまで読んでくれ方には申し訳ないですが)

でもどうしていくのが良いのか。というのは考えてみたい。


まず、レコメンドも検索エンジンも、僕としては中の人ではないので、どちらかというと与えられた側。
与えられたものに文句ばっかり言っても仕方ないなと言う面もある。今までありがたく使ってきたのも自分である。


なので、最近は何かコミュニティなりを活性化をして、最終的にインターネットに放流しておくのが良いかななどと考えている。明確な答えがあるわけではなく、考え続けている最中。


ネットでの会話、懇親会、カンファレンス会場の廊下、二次会、登壇者とのふとした会話、帰りの電車なんでも良いけど
様々なコミュニティの活発さを作っていければなと思ったりします。


正直に言うとX(Twitter)で色々生まれにくくなってる気がするのが一番困るかもしれない。代替のSNSで同じような盛り上がりを作るのが難しそうで。


ともかく、個人レベルでやれることから、何か良い流れが作れていければと思う。微力ながら。



2024/02/01 このエントリーをはてなブックマークに追加 はてなブックマーク - ATDD(受け入れテスト駆動開発)から、増え続けるテストの難しさを考える

ATDD(受け入れテスト駆動開発)から、増え続けるテストの難しさを考える


プロダクトの成長という視点を引き合いに出しつつ、成長とともに増えるE2Eテストの在り方を考えてみます。

ATDDを実践している観点から書いてみます。


ATDD(受け入れテスト駆動開発)というもの

これは

  • はじめに、受け入れテストを書き
  • そのテストがパスするように実装をする
    というものである。

今いる会社の場合

  • テストシナリオを書いて
  • Seleniumの Webドライバーで動くテストによってエンドツーエンドのテスト実装する
  • そのテスト実装をパスさせ
  • パスした後にリリースを行う

つまり、機能開発の度に受け入れテスト、テストシナリオを書くのである。


これらのメリットは

  • シナリオという明文化された機能に対しての文書が毎回生まれること
  • プロダクトマネージャーやプロダクトオーナーにとっても分かりやすい文章。チームのプログラマにしか読めないようなものではない文章が作られること
  • テストを前提として実装していくテストファーストであること
    などが挙げられる

ATDDと言っても色々あるのだろうが、今いる会社ではそのようにやっている


これは小さなプロジェクトのうちは良いのだが
プロダクトが成熟していき、サービス自体も大きくなっていくと段々と問題が発生する。

まず、E2Eテストとはエクスペンシブなものであること。コストが高い
TDDの観点だと、レッド・グリーン・リファクタリングのサイクルが遅くなりやすい。
ユニットテストなどでテストケースを書き→実装を書き→テストを実行し→…というサイクルを回すのと比較して、ゆったりとしたフィードバックループになってしまう。
なので、これはなかなか TDDというやつの旨みを活かしにくいであるのではないかと思う。


はじめにブラウザで動作するテストを書くため、ユニットテストなどをする必要性が薄れてしまい、ユニットテストを書くという行為が減ってしまう。という罠がある。
言い換えると、ユニットテストやインテグレーションテストがSeleniumによるエンドツーエンドのテストによってまかなえてしまうということである。


これはATDDに限った話ではないが
機能が増えれば増えるほど、E2Eテストの全体時間は長くなり重くなり不安定になる。
それらをメンテし、壊れやすいテストを保証し続ける必要がある


ATDDでプロダクトを育てていくと、前述したような問題に直面することがあるのかなと考えている

サービスが順調に進めば進むほどプロダクトが成長すればするほど。この問題は深刻化していく

では、どうすれば良いのだろうか?


ヒントとなるのはテストピラミッド、テストトロフィーのようなものと考える。

簡単に言ってしまうとテストピラミッドを維持するため

  • 不要になったE2Eのテストを捨てる。元から不要なものは書かない
  • エンドツーエンドのテストではなく、ユニットテストなどで代替できるところは変更していく。もしくは元からユニットテストを書く
  • 細かく分けすぎた機能のシナリオを集約していくことでテストケースを減らす
  • コードベースを分けてテストケースや実装を小さく留める

などの対策を打つ。

こういったアプローチを取ればテスト実行時間が長くなることは避けられ、効果的な検証をし続けることができる。
CI なども遅くなることはなくなり、フィードバックサイクルを回すことを維持できるはず。


コードベースを分ける方法としては、マイクロサービスやマイクロフロントエンドなどが考えられる。

ただし、テストを早く保つためだけにサービスを開けるというのは本末転倒であり、注意が必要な点である。
ビジネス、業務ドメインの単位でテストスコープを区切り、サービスを区切るということが重要な気がする。


サービス規模にもよるが、全テスト実行が遅くなっていくことを許容し、CIの実行回数や実行タイミングを限定的にすることで対処することも考えられる。


色々書いたのだけど、補足すると
ATDDは、なんだかんだ全てに対してテストが書かれているっていう安心感はすごい。

何かリファクタリングをして動かなくなった機能があれば、ちゃんとテストが失敗してくれる。

一方で、プロダクトの成長とともに複雑さも増していく。そこの課題感や解決法も考えてみたかったので、今回ブログを書いてみた。


実は、こういった悩み、課題感が深刻になるのはプロダクトやサービスがかなり大きくなった段階になってからである可能性は高い。

小さい規模や、小規模から大きくなり始めたぐらいであれば、この記事で書いたような創意工夫で騙し騙しなんとかやってくるのではないだろうか。


かなりの大規模なサービスで、こういったテストを大量に抱えている場合は

腰を据えて、様々な部分で戦略的アプローチが必要な気がする。


しかし、共通しているのは

  • 不要なものは捨てること
  • 不要なものは書かないこと
  • 細かすぎるものを集約すること
  • 適切な手段を選ぶこと

かもしれない。


まあ大体ここに書いてあるんですけどね

https://gihyo.jp/dev/serial/01/savanna-letter/0005




2024/01/05 このエントリーをはてなブックマークに追加 はてなブックマーク - 2023年のふりかえり(やんくver.)

2023年のふりかえり(やんくver.)

カテゴリ: ,

あー、すっかり振り返りが遅くなって
なんやかんや言ってる間に新年早々いろんな事件というか問題が起こりすぎて振り返りなんていうテンションじゃなくなってきちゃったんですけど。
まぁ一応毎年やってるのでやっていきましょうか。

皆さんも落ち着かない新年になってるかなと思いますけど。
これでも読んで気を紛らわしてください


忙しい1年であった。それに尽きる。
仕事はタイトなスケジュールが多かったりとか。
兼務でマーケターをやっていたというのも大きい。
兼務については、noteに詳細を書きました。
https://note.com/yy_yank/n/n664b0de1268b

自分の意識や事業との関わり方っていうのが
結構大きくかわった1年ではあった。

プライベートは子供が生まれたことで
出産前後のなんやかんやがたくさんあり、これも忙しかった。


ところで、あまり「忙しい」という言葉は使いたくないし
それを言い訳にしたくないと思っている。

「忙しい忙しい〜」と日頃言ってるようなやつには、
皆が気を使ってしまうし、楽しい話も転がってこなさそうなので。

ただまぁ、そうも言ってられないぐらいに
前年度比で業務量を増やしたので
「忙しい」と表現せざるを得ないのがちょっと負けた気分ではある。


  • 時間管理
  • 運動
  • 毎月ブログを書く

>時間管理

未達。

昨年より寝落ちが減ったという意味ではやや成功。

しかしプライベートでも仕事のことを考えている時間が多かったため、自己研鑽や趣味、家庭に熱心に何かやるというのができなかったのは大きい失敗。

>運動

達成。筋トレとウォーキングを1年間続けて体重も4〜5キロ減ったので明確に達成と言ってよいだろう※

※年末年始で見事に体重がリバウンドしたというオチはあるが

>毎月ブログを書く

達成。定量数字としてはなんとか持続した。

一方で技術よりの内容や実際にコードを書いたり試したりという基本的な活動が出来てなかったのが悔やまれる感じ。好きなコード書いて遊んでたいんや


とにかく今年は忙しすぎてあまり記憶にないんだけれども、

色々と思い出して1月から。

1月

1月に何をやっていたか。確かあれだな。結構大きいリリースを控えていて、それを頑張ってやってた記憶があります
あと、確か身内が自転車で事故に遭い、軽い打撲で済んだのは幸いだったが、事故処理全般やケアみたいなところをしたりしていてちょっと気が休まらなかった記憶がある。

あと、Kindle Paper Whiteを買った。

買うのは数年ぶりであったが、比較するとスペックが段違いだったので、買い換えただけで幸せになれた。

月末は胃腸炎になって、嘔吐で死にかけていたのを鮮明に覚えている
あれは本当にツラかった。妻と僕二人共ダウンしている状態で、娘は回復し、保育園に送り届けられたのがせめてもの救いだった気がする。保育園に預けられなかったら更に地獄だった。

2月

2月は目立ったことは特にないかなぁ。
お家を2022年買ったので、その確定申告が大変だった。
あと、ここだけの話、この時期は視野を広く色々考えようと
ちょびっとだけカジュアル面談とか受けたりしてたような気がする。
2024年の1月現在は、今の仕事にまた注力しようというモードなのでアレなんだけど。
色々フラフラと自分は移ろい行くけど、「良き仲間と楽しいことをしたい」というところだけはブレないところかもしれない。
この頃に色んな会社の話を聞いて刺激を受けたのが、今の自分とかに活きているので感謝している。

3月

特に記憶がない。WBCが盛り上がって楽しかった。

4月

自作キーボードを久しぶりに作った。Corne Cherry。
未だに使っていて楽しい。

MiniAxe、Uzu42、Corne Cherry。この3つがすごい好きでどれもずっと使っていきたい。

5月

この頃からティアキン(ゼルダ)をやり始めていたらしい。
実は、大事にやり込みすぎて、まだ全クリしていない。
そろそろ全クリしたい。
なんかすぐリリースしないといけない機能が立て続いてめっちゃコード書いてた。たしか。

6月

JJUG CCCで久しぶりにオフラインで色んな人に会った。
マスクをつけており、数年ぶりに会う人ばかりのため、ほとんどの人に気づかれなかった。溢れ出る存在感のはずなのに、なぜ。

7月

業務で、今までやってこなかった領域がドッと増えて大変。でも楽しい!なんもわからんのが楽しい!っていうのをやっていた。

8月

お盆で妻の実家に帰ってラーメンを食べたり、
マーケの仕事の課題で頭を抱えたりしていた。

9月

頭を抱えていたマーケの仕事が1つなんとかなった。

10月

新たな仕事がまた増えて、
面白くなってきやがったって感じになっていた。
仕事で色々な課題があって頭を抱えていた。

11月

いろいろな課題はなんとかなった。
新しいマーケの仕事で頭を抱えていた。
子供がもうすぐ生まれるということもあり、今がラストチャンスや!
とばかりに、いろいろな人と飲みに行ったりしていた。

12月

師走。仕事が集中しバタついた。
頭を抱えていたマーケの仕事はなんとかなった。
育休に入るためのこまかな引き継ぎ的なものなども発生したため、まさに師走だった。

そして、臨月。無事に子供が生まれた。母子ともの無事で本当に良かった。生まれてからも、すくすくと育っている。

余談だけど、子供が生まれてから自由な時間は減るだろうと、短めに髪の毛を切っておいたのは正解だった。
これまで、一応美容院に通っていたりしたのだが、割り切ってQBハウスでええんちゃう?と行ってみた。

結論、結構満足度が高かった。必要十分のオイシいところはしっかり抑えつつ、安い、早い。

一周回ってこれぐらいが丁度いい。

自分にとっては、変化の多い1年だった。

プライベート面だと、子供が生まれた。ここだけの話。めちゃくちゃ可愛い。

仕事の変化も大きかった。それを転職などせず、同じ会社、環境下で発生させることが出来たのはなんとなく良かったのかなと思っている。
しんどいタイミングも多かった分、乗り越えることもたくさん出来た。

あと、課題もたくさん見えてきた。
ちょっと変かもしれないけど、課題がたくさんある、考えていけるというのが嬉しい。


  • ラクをする
  • 時間管理
  • 毎月ブログを書く

この3つ。

ブログについては、毎年の目標なので割愛。

ラクをするに関しては、自分含めチーム、事業の各チームみんな。
みんなラクして楽しくやりたい。そして、抽象的だけど、本質的な価値や課題、理想に向き合う時間を増やしたいなと思う。
特に2023年の反省としては、「やれるだけやることに振り切った」ため、業務量を自分が抱えすぎた。ここをうまく捌いて自分がラク出来る仕組みなりなんなりを仕込んでいこうと思っている。

仕事は仕事でありつつ、プライベートの時間管理も引き続き目標にしたい。


だいぶ長くなってしまった感があったけど、今年の振り返りでした。
自分にとっては割と色々あった1年だったし、しょうがない。
みんなに読んでもらう文章と言うより、どっちかというと内省的な文章が多かったと思うけど、なんか面白がってもらえれば幸いかなと思います。

それでは2024年、皆にとって、ここから良い年にしていきたいですね。

各々やれることをやっていきましょう

2023/12/27 このエントリーをはてなブックマークに追加 はてなブックマーク - モジュラーモノリスの簡単さ/難しさ

モジュラーモノリスの簡単さ/難しさ

はい、というわけで今回はね。モジュラーモノリスの簡単さ、難しさというタイトルでやっていきたいと思うんですけれども(ユーチューバー風)
実際にモジュラーモノリスに取り組もうとして感じた簡単さ、難しさに関して今日は書いていこうと思います。

2023/11/20 このエントリーをはてなブックマークに追加 はてなブックマーク - リアーキテクチャはROIと共に語っても良いんじゃないか

リアーキテクチャはROIと共に語っても良いんじゃないか

カテゴリ: ,




なんか、ずっと腑に落ちてないことがあって。
「XXで生産性を上げる」とか「技術的負債をなくす」とかよく言いますよね。

その志はとても良いのですけど、じゃあ実際にやってみて、その結果どのぐらい生産性が上がったのか、負債がなくなった結果どういう効果が得られたのかというのはあまり聞かない。

GA