iPhone 14 Pro に変えてからランニング中に写真撮るのが楽しくなった。背面の三つのレンズは醜いが、様々なズームレベルで写真が撮れるのは楽しい。
一つ前の記事では「やっぱりカメラにはかなわない」と書いているが、まぁセンサーサイズとかレンズの性能が違うので当たり前で、手軽に撮れるのにこの画質はやっぱりすごいと思う。晴れた日の昼間はかなり画質よい。夕方も露出を落とせばなかなかよい写真が撮れる(一枚目)。 iPhone 14 Pro 、買って良かった。
iPhone 14 Pro に変えてからランニング中に写真撮るのが楽しくなった。背面の三つのレンズは醜いが、様々なズームレベルで写真が撮れるのは楽しい。
一つ前の記事では「やっぱりカメラにはかなわない」と書いているが、まぁセンサーサイズとかレンズの性能が違うので当たり前で、手軽に撮れるのにこの画質はやっぱりすごいと思う。晴れた日の昼間はかなり画質よい。夕方も露出を落とせばなかなかよい写真が撮れる(一枚目)。 iPhone 14 Pro 、買って良かった。
去年、 Rebuild ポッドキャストで miyagawa さんがプロジェクターの話をしているのを何度か聞いて気になるようになりプロジェクターを買った。コロナ禍なので映画館に行きづらいし、居間のテレビのチャンネル選択権は自分にはないので寝室の壁に映して見られるプロジェクターを導入した。 Anker の Nebula Cosmos というもの。 明るさが 900 ANSI ルーメンあって、昼間でもカーテンを閉め切ればなんとか視聴可能。Android TV 内蔵で基本的にこれ一つあれば動画配信サービスの動画が見られる。コロナにかかってしんどいときもプロジェクターで動画を見て凌いだ。
プロジェクターで一番見たのはおそらく YouTube で、中田敦彦のYouTube大学、伊豆のぬし釣り、海外のキャンプ動画や登山動画をよく見た。海外の動画は画質が当たり前のように 4K で撮影・編集技術ともに高く(基本的に自撮りだが、三脚と複数台カメラとドローンを駆使していて映画並の映像クオリティ)、プロジェクターの大画面で見ると凄かった。この手の映像で魅せる系の動画はスマートフォンや Mac のディスプレイでは良さがわからなかったと思う。
その次によく見たのは Apple TV+ で、モーニングショーやテヘラン、テッドラッソあたりを見た。いまもフォー・オール・マンカインドを見てる。 Apple TV+ のドラマはどれも高画質なのが良い。なお Android TV にもちゃんと Apple TV アプリがあるので Apple TV+ の作品を問題なく視聴できる。素晴らしい。
プロジェクター、概ね満足しているが、不満な点としては以下。
ファンの音が少しうるさいのと夏場は排熱が厳しいと感じる。また部屋が狭く壁正面にプロジェクターを配置できなかったので斜めから投影しており(日本の住宅事情だとこういう設置方法が多いと思う)、補正が必要になる。角度補正機能はあるが、ちょいちょいズレるので手動で補正する必要がある。
しかしこれらはまだ許容範囲で、最も不満なのが Netflix が完全対応していないことだ。 Netflix は著作権的なアレでプロジェクターでのアプリ動作を拒んでいるようで、 Nebula で Netflix を見るためには Nebula Manager というモバイルエミュレーターのようなアプリを Google Play でインストールし、そのなかにスマートフォン版の Netflix アプリをインストールしなければならない。しかもこのスマートフォン版 Netflix は Nebula 付属のリモコンで操作できず、いちいちスマートフォンの専用アプリで操作する必要がありはちゃめちゃに使い勝手が悪い。極め付けは画質の悪さで、せっかく Full HD のプロジェクターで投影してるのにスマートフォン版 Netflix は SD 画質なのでぼやけたり滲みのある映像になってしまう。
ちゃんとした Netflix アプリを使うには Apple TV や Fire TV 、 Chromecast などを使えば良いのだが、 Netflix のためだけにそこまでするのはどうだかなぁという感じがするので未導入。結果として Netflix を見る頻度が落ちてとうとう解約してしまった。 Netflix オリジナルコンテンツは「金、セックス、権力」というような番組が多かったので食傷気味だったしこれでよかったのかもしれない。今後は YouTube と Apple TV+ と Amazon Prime Video を見て過ごすことにする。
ダークモードとライトモードの切り替えをグローバルナビゲーション(上の方の半透明の白い領域)から簡単に行えるようにした(これまではこのサイトについてのページで切り替える必要があった)。デフォルトは OS の設定準拠で、 OS がダークモードであればダークモードに、ライトモードであればライトモードで表示される。手動でテーマを切り替えると Cookie に設定値を保存する。機能と見た目は MDN Web Docs を参考にした。
CSS がぐちゃぐちゃなのでかなり難儀した( 3 年前にも同じことを書いている)。ダークモードとライトモードの切り替えなんて自分しかしていないと思うがかなり満足度の高い休日プログラミングだった。
Rust 製の全文検索システム Tantivy を Ruby から使える Tantiny を導入したことを書いた。
結構手軽に使えるのだがやはり日本語のトークナイズ(形態素解析)ができないのでいまいちなところがあった。 Tantivy には lindera-tantivy というものがあって、 Lindera は kuromoji のポートなので、これを使うと日本語や中国語、韓国語の形態素解析ができる。 Tantiny に導入できないか試してみたが、自分の Rust 力では到底無理だった。
ちなみに関連記事の表示でも日本語の形態素解析は行っている。
MeCab に neologd/mecab-ipadic-neologd を組み合わせてナウな日本語に対応させつつ形態素解析している。
この仕組みを作ってトークナイズは Ruby で自前で行い、 Tantiny および Tantivy にはトークナイズ済みの配列を食わせるだけにした( Tantiny はトークナイズ済みのテキストを受け付けることもできる)。トークナイズを自前で行うことで辞書ファイルで拾いきれないような固有名詞もカバーできる。例えば 山と道
なんかは MeCab と mecab-ipadic-neologd にトークナイズさせると 山
と 道
に分割されてしまう。自前のトークナイザーで単語として認識させていている。おかげで「山と道」をちゃんと検索できるようになっている。
なお、自前のトークナイザーはこんなコードになっている。
class Tokenizer
attr_reader :text
class << self
def run(text)
self.new(text).tokenize
end
end
def initialize(text)
@text = text
end
def cleansed_text
@cleansed_ ||= text.
gsub(/<.+?>/, '').
gsub(/!?\[(.+)?\].+?\)/, '\1').
gsub(%r{(?:```|<code>)(.+?)(?:```|</code>)}m, '\1')
end
def words_to_ignore
@words_to_ignore ||= %w[
これ こと とき よう そう やつ とこ ところ 用 もの はず みたい たち いま 後 確か 中 気 方
頃 上 先 点 前 一 内 lt gt ここ なか どこ まま わけ ため 的 それ あと
]
end
def preserved_words
@preserved_words ||= %w[
山と道 ハイキング 縦走 散歩 プログラミング はてブ 鐘撞山 散財 はてなブックマーク はてな
]
end
def nm
require 'natto'
@nm ||= Natto::MeCab.new
end
def words
@words ||= []
end
def tokenize
preserved_words.each do |word|
words << word if cleansed_text.match?(word)
end
nm.parse(cleansed_text) do |n|
next unless n.feature.match?(/名詞/)
next if n.feature.match?(/(サ変接続|数)/)
next if n.surface.match?(/\A([a-z][0-9]|\p{hiragana}|\p{katakana})\Z/i)
next if words_to_ignore.include?(n.surface)
words << n.surface
end
words
end
end
preserved_words
が手製の辞書だ。 はてな
や はてブ
も辞書登録しておかないと MeCab だとバラバラに分割されてしまって検索できなかった。
難点としては記事更新後に自動でインデックスの更新が行われず、 cron によるバッチ処理でインデックス更新を行っている[1]。なので検索インデックスにデータが反映されるまでにタイムラグがある。 Tantiny でやれれば記事作成・更新時のコールバックとして処理できるのでリアルタイムに変更を検索インデックスに反映させることができるが、個人の日記なのでタイムラグありでも大きな問題にはならない。
本当は Tantiny で lindera-tantivy を使えるようにして Pull Request がカッチョイイのだが、とりあえずは自分は目的が達成できたので満足してしまった。 5 年くらい前から Rust 勉強したいと思っているが、いつまでも経っても Rust を書けるようにはならない。
[1]: mecab-ipadic-neologd
を VPS 上でインストールできず(めっちゃメモリを使う)、手元の Mac で Docker コンテナ化して Docker Hub 経由でコンテナイメージを Pull して VPS 上で Docker 経由で動かしている(その辺について書いてる記事: ブログのコンテナ化を試みたけどやめた)
以前、以下の記事でこのウェブサイトへのアクセス元 User Agent について書いた。
そのとき Hatena::Russia::Crawler
というのが謎だということを書いた。最近のアクセスログを見ても相変わらずこの User Agent からのアクセスが多い。またアクセス頻度も高く、同一の URL に対して何度もアクセスしている。
これはやはりはてなの名を騙った怪しいクローラーなのではないかと思い調べてみた。
まず Hatena::Russia::Crawler
という User Agent からのアクセスの IP アドレスを調べてみたところ以下だった。
cat log/access.log | grep 'useragent:Hatena::Russia::Crawler/0.01' | cut -f2 | sort | uniq -c | sort -nr
434 remote_addr:52.68.0.227
419 remote_addr:54.249.85.140
417 remote_addr:54.92.97.59
379 remote_addr:54.250.227.185
whois してみると AWS で運用されているものであることがわかるが、はてなのものかは断定できない。
もしこの IP からはてなブックマークやはてなアンテナなどの User Agent でのアクセスもあれば Hatena::Russia::Crawler
ははてなのクローラーであると断定できるだろう。ということで調べてみたところこんな感じだった。
zcat -f log/access.log* | grep -E 'remote_addr:(52\.68\.0\.227|54\.249\.85\.140|54\.92\.97\.59|54\.250\.227\.185)' | cut -f13,2 | sort | uniq -c | sort -nr
16687 remote_addr:54.250.227.185 useragent:Hatena::Russia::Crawler/0.01
16448 remote_addr:54.92.97.59 useragent:Hatena::Russia::Crawler/0.01
16370 remote_addr:54.249.85.140 useragent:Hatena::Russia::Crawler/0.01
16272 remote_addr:52.68.0.227 useragent:Hatena::Russia::Crawler/0.01
73 remote_addr:54.249.85.140 useragent:HatenaBookmark/4.0 (Hatena::Bookmark; Scissors)
60 remote_addr:54.250.227.185 useragent:HatenaBookmark/4.0 (Hatena::Bookmark; Scissors)
56 remote_addr:52.68.0.227 useragent:HatenaBookmark/4.0 (Hatena::Bookmark; Scissors)
50 remote_addr:54.92.97.59 useragent:HatenaBookmark/4.0 (Hatena::Bookmark; Scissors)
31 remote_addr:54.92.97.59 useragent:Hatena::Fetcher/0.01 (master) Furl/3.13
31 remote_addr:54.250.227.185 useragent:Hatena::Fetcher/0.01 (master) Furl/3.13
31 remote_addr:54.249.85.140 useragent:Hatena::Fetcher/0.01 (master) Furl/3.13
26 remote_addr:52.68.0.227 useragent:Hatena::Fetcher/0.01 (master) Furl/3.13
19 remote_addr:54.92.97.59 useragent:Hatena::Scissors/0.01
19 remote_addr:54.250.227.185 useragent:Hatena::Scissors/0.01
16 remote_addr:52.68.0.227 useragent:Hatena::Scissors/0.01
9 remote_addr:54.249.85.140 useragent:Hatena::Scissors/0.01
なんと、 IP アドレスで検索してはてなのその他のクローラーもヒットしてしまった。つまり Hatena::Russia::Crawler
ははてなのクローラーということだ。
ただしググっても一切情報が出てこない。 Hatena::Russia::Crawler
で検索してトップヒットするのは自分のブログだ。
改めて Hatena::Russia::Crawler
による直近 30 日間のアクセス状況を調べてみるとこんな感じだ。
zcat -f log/access.log* | grep 'useragent:Hatena::Russia::Crawler/0.01' | cut -f5 | sort | uniq -c | sort -nr
15697 request_uri:/index.atom
9913 request_uri:/2022/04/20/integrate-charts-category-with-select-boxs
9373 request_uri:/2022/05/04/reputation-and-interpretation
8422 request_uri:/2022/05/11/fly-to-kamikochi-from-fukuoka
7716 request_uri:/2022/05/16/using-tantivy-over-tantiny
5906 request_uri:/2022/04/17/quit-using-hey
5139 request_uri:/2021/12/29/thoughts-on-manga-subscription
1308 request_uri:/2021/12/13/keep-a-stack-books-whether-reading-them-or-not
787 request_uri:/2022/06/23/each-entry-title-should-be-marked-up-with-h1
741 request_uri:/2021/12/13/keep-stack-books-whether-reading-them-or-not
456 request_uri:/2022/06/24/if-you-feel-apple-musics-recommendation-is-awful
100 request_uri:/2022/06/14/thoughts-on-hatena-bookmark
46 request_uri:/2015/12/07/thoughts-on-rural-life
46 request_uri:/2015/12/02/thoughts-on-t-on-t
46 request_uri:/2015/12/02/thoughts-on-christmas-song
45 request_uri:/2019/12/02/stop-drinking-outside-frequently
16 request_uri:/2020/11/08/where-i-went-in-2019
11 request_uri:/2015/12/05/omm-writer-music-is-nice-to-listen-to-while-writing
5 request_uri:/2022/05/04/the-golden-maintenance-week
2 request_uri:/2022/06/24/
2 request_uri:/2022/06/24
index.atom はフィードの URL なので除外するとして、特定の記事に対して数千回もアクセスがある。 30 日間で 9000 回ということは一日あたり 300 回だ。 1 時間あたり 12.5 回である。何のためにこんなに高頻度でクローリングしているのだろうか。
とここまで調べたところほかの Bot 系アクセスはどうなのかと改めて User Agent 毎のアクセス数を調べてみたらこんな感じだった。
zcat -f log/access.log* | cut -f13 | sort | uniq -c | sort -nr | head -10
124894 useragent:Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm)
65794 useragent:Hatena::Russia::Crawler/0.01
58274 useragent:Ruby
31493 useragent:Mozilla/5.0 (iPhone; CPU iPhone OS 15_4_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.4 Mobile/15E148 Safari/604.1
29454 useragent:Mozilla/5.0 (compatible; AhrefsBot/7.0; +http://ahrefs.com/robot/)
21492 useragent:Tiny Tiny RSS/21.11-7cfc30a (https://tt-rss.org/)
20351 useragent:Slackbot 1.0 (+https://api.slack.com/robots)
18765 useragent:Mozilla/5.0 (compatible; SemrushBot/7~bl; +http://www.semrush.com/bot.html)
18395 useragent:Mozilla/5.0 (compatible; MJ12bot/v1.4.8; http://mj12bot.com/)
17942 useragent:Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)
bingbot からのアクセスの方が Hatena::Russia::Crawler からのアクセスの 2 倍近くあった。ただし bingbot は検索エンジンのクローラーらしく、サイト全体をまんべんなくクローリングするような挙動で、特定の URL に一ヶ月間で数千回アクセスするような感じではない。
zcat -f log/access.log* | grep 'useragent:Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm)' | cut -f5 | sort | uniq -c | sort -nr | head -25
571 request_uri:/robots.txt
352 request_uri:/
205 request_uri:/category/misc
160 request_uri:/2007/01/13/732
156 request_uri:/2005/10/28/129
150 request_uri:/2009/03/23/1010
148 request_uri:/category/music
146 request_uri:/archives
144 request_uri:/category/www
143 request_uri:/2016/07/
143 request_uri:/2009/08/31/1074
139 request_uri:/2010/07/05/1140
138 request_uri:/category/photo
138 request_uri:/2009/02/
137 request_uri:/2006/09/09/658
136 request_uri:/tags/netatmo
136 request_uri:/2010/07/17/1145
136 request_uri:/2006/07/23/611
135 request_uri:/2014/03/
134 request_uri:/?page=32
134 request_uri:/2007/02/09/747
133 request_uri:/category/shopping
133 request_uri:/2021/07/26/how-to-get-to-kamikochi-from-fukuoka
133 request_uri:/2011/11/03/finally-got-hhkpro2
132 request_uri:/2006/01/
Hatena::Russia::Crawler は同一 URL に数千回もアクセスして何をしているのだろう? 謎は深まるばかりだ。
最初にブログを作ったときからウェブサイトのタイトル(やロゴ画像)が h1 で、記事タイトルが h2 という見出しレベルで HTML を書いていた。しかし最近では、記事パーマリンクのページではサイトのタイトルなどには見出しレベルを設定せず、記事タイトルに h1 を当てている場合が多いようだ。なのでこのサイトでも記事タイトルを h1 とするように変えた。本文中の見出しレベルも h3 スタートだったのを h2 スタートに変えた。
伝統的なブログはインデックスページと記事パーマリンクページで HTML テンプレートを共通化している。なのでインデックスページに記事一覧を表示して h1 タグが並ぶとまずいということで記事タイトルは h2 から、という作りになってるような気がする。このサイトはインデックスページとパーマリンクページでのテンプレート共有化をほぼほぼやめたので、インデックスページとパーマリンクページで記事タイトルの見出しレベルを柔軟に変更している。
サイトの作り手からするとウェブサイトのタイトルこそが最も重要な要素でタイトルロゴなどを h1 でマークアップしたくなるのだが、読み手は Twitter やはてブから飛んできて刹那的に記事を消費し、インデックスページなんかには見向きもせずに去って行くだけだ。個別記事のタイトルこそ重要なのだ。
r7kamura さんからこういうコメントをもらってこういう風に返信した。
あー、なるほど。文章の構造化と HTML の構造化は分けて考えるべき、ってのが HTML 5 の背景にありそうですね。僕はこの辺ごっちゃになってました。 article 内できちんと見出しが配置されてれば問題なさそうですね。
— morygonzalez (@morygonzalez) June 23, 2022
HTML5 が出てきたとき、個人的には何かめんどくさいなぁとしか思ってなかったし、世間は Flash を置き換える近未来技術みたいな評価をしていたと思う。しかし、 <header>
タグや <article>
タグによって、 HTML の構造化と文書の構造化を分離できるようになったのがセマンティックWeb的なメリットだということに気がついた。つまり <h1>
などの見出しルールは <article>
タグの中で守られていればよいのだ。
ということに HTML5 が死んでから気がついた。
はてなブックマークがユーザーインタビューをするということで、はてブに対する思いをネットに発露している人達が散見された。
自分はコロナ禍になって気がつくとはてなブックマークばかり見ていてヘビーユーザーになっていた(ブックマークはあまりしてなくて見る専)。会社の人との雑談がなくなり、息抜きしたいときにははてブを見る暮らしをしている。
なのでインタビューに応募してみたのだが、どうも落選してしまったみたいなので、はてブについての考えを書いてみることにする。
まずはじめに、はてブとは何なのか、どんなメリットがあって使っているのかを整理したい。はてブには以下の三つのバリュープロポジション(価値訴求)があると思う。
そこを訪れればいま何がインターネットで話題になっているかがわかる。ニュースサイトに張り付いてくまなく記事を読まなくても、はてブを訪れれば話題になっている情報だけを効率的に摂取することができる。
SNS ・掲示板サービス的な側面であり、ほかのユーザーと交流することができる。また、ほかの人のコメントによって大まかなコンテンツの概要を把握することもでき、コンテンツの要約機能も提供している。
そのまんまブックマークサービス的側面のことだ。当初オンラインブックマークサービスはこの側面をウリにして始まったと思うが、今日、この部分よりも何が話題になっているかの確認や、他の人のコメントを読みたくて利用している人がほとんどだと思う。
はてブの中の人もその辺は認識済みのようで、はてブのウェブサイトを未ログインで訪れるとサインアップを促すダイアログが表示され、「同じページを読んだ人の感想が集まります」とメッセージが記されている。「ブックマークしておいてあとから確認できます」とか「異なるパソコン間でブックマークを共有できます」みたいなことは言ってない。正しいと思う。
プラットフォームとしてはてブをとらえたとき、ユーザーはコンテンツ(ブックマークコメント)の生産者と消費者に二分される。コンテンツの最初のブックマーカーになること、面白いコメントを書いてスターを獲得することをモチベーションとし、公開でブックマークするのが生産者で、消費者は生産者がブックマークしたコンテンツや、生産者によるブックマークコメントを読むことを目的にはてブを訪れる。ブックマークコメントが面白ければはてなスターを送る。はてブのような CGM では生産者と消費者はスパッと二分できなくて、あるときには生産者でありあるときには消費者であるというのが特徴だ。書籍『プラットフォーム革命』ではこの生産者と消費者の価値交換のことを「コア取引」と定義している。
はてブというプラットフォームを成長させるためには、プラットフォーム内で価値交換の回数を増やすことが超重要だ。
なお、はてブの外にインターネットを置いてみると、はてブというのはコンテンツ消費プラットフォームという側面が見えてくる。はてブ内の生産者も消費者も、インターネット上に存在する様々なコンテンツを閲覧する立場には変わりがない。
はてブに集まっている人は、コメントする人もしない人も、インターネット上の情報をみんなで消費しているのだ。
少し前、インターネット利用者の行動がだんだん見えなくなってきているということについても記事を書いた。
あとの方になってからインターネットを使い始めた人々にとっては、インターネットとは自分から情報を差し出す場ではなく、情報を摂取する場なのだ。買い物をしたり、動画を見たり、音楽を聞いたりしているだけだ。自分でウェブサイトを持ってブログを作ったりしている我々は、今日のインターネットにおいて決してマジョリティではない。
受動的にインターネットを使うだけの人に、 1990 年代の終わりに我々インターネット老人が感じたのと同じような興奮や感動を与えられるのだろうか。多分、発想を転換しないと難しいだろう。我々が面白がったインターネットと彼らが欲しているインターネットは別のものなのだ。ただ受動的に使っているだけでより便利になり、快適になっていくインターネットをどうやって作っていくかが見えないインターネットの時代のテーマになると思う。
スマートフォン全盛時代になってインターネットを使い始めたユーザーは生産者側に回ることが少なく、ひたすらコンテンツを消費しているだけという話だ。
一方ではてブを見ると、ブックマークにコメントが付いている割合(生産者率)が高い。 2022年6月11日のホットエントリーの記事執筆時点でのコメント率を調べてみると以下のような感じだった。
中央値 | 平均 | 最大 | 最小 |
---|---|---|---|
38.1% | 38.4% | 76.8% | 2.5% |
この日のホットエントリーの 1/4 以上が 50% 以上のコメント率となっている。この生産者率は CGM サービスとしては高い方だと思う。
生産者率が高いのは以下の背景があると考える。
コメントをしやすいことと、反論されにくいこと、承認欲求を満たしやすい特性から、ときにはネガティブなコメントが集まる力学が働いてしまっていると考えられる。
はてブにブックマークされるコンテンツにはここ数年変化があったのではないかと思っている。昔は Photoshop や CSS テクニック、 jQuery プラグインの話のほか、 PHP やセキュリティの話題、シリコンバレーのテック界隈事情、ポール・グレアムやアーロン・シュワルツの翻訳などを見かけることが多かったが、ウェブ開発系の話題は減り、増田とニュースサイトの記事、そして Togetter が目立つようになった。
実際のところどうだろうと思って、 5/13 ~ 6/11 の 30 日間の人気エントリーページに掲載されているコンテンツのドメイン別のブックマーク数を、 2022 年から 2007 年まで遡って調べてみた。
2010 年頃までは個人のブログやウェブサイトでもランキング上位に入れていたが、 2011 年頃からまとめサイト系が勢力を伸ばしてきている様子がうかがえる。ただしまとめサイト系も転載問題や2ちゃんねるの規制強化で情報転載元がなくなりすぐに失速している。
2012 年から 2010 年と 2011 年に勢いがあった Photoshop VIP のサイトが下落し始める。 CSS や Photoshop 、 jQuery プラグイン的なアレだ。 2010 年代前半までは本当によく目にしていた。 2014 年に Photoshop VIP はランク外となる。
2010 年代中盤以降は今日と同じような顔ぶれに変わる。 ITmedia や CNET など老舗のネットニュースメディアや Lifehacker 、 GIGAZINE などの翻訳転載系・暇つぶし系ネットメディアは上位に入りづらくなった。かわりに NHK や新聞社が目立つようになる。かつて新聞社はインターネットにちゃんと取り組んでなくて、サイトにニュースはほとんどなく、ニュースはポータルサイトで読むみたいな時代が続いていた。スマートフォン全盛時代を迎えて一般ユーザーがインターネットに増えてきたので、それにあわせてマスコミも考えを変えてきたのだと思う。
なお一位と二位はここ数年はてな匿名ダイアリーと Togetter が確保している。この点については後ほど詳しく述べる。
総ブックマーク数と総コンテンツ数を見るとこうなっていた。
両者とも右肩上がりで好ましいように見える。 2022 年の総ブックマークが下がっているが、これはタイムラグが存在するためで、この集計後もブックマーク数はじわじわ伸びると思われる。
30 日間でブックマークされるホスト(ドメイン)の数を集計してみるとこうだった。
2014 年頃に 400 ホスト超あったのが 2018 年に 167 ホストまで大きく落ち込み、その後少し回復したが 2017 以前の水準には戻っていない。
なお、 2018 年に総コンテンツ数とホスト数が減っているが、この年の 5 ~ 6 月にはてブはシステムリニューアルをしていたようだ。総コンテンツ数とホスト数が減っているのはその影響だろう。
ブックマーク数が多い上位 10 ホストへのブックマーク数、ブックマークコンテンツ数の集中度合いを調べたものが以下だ。
ブックマーク数もコンテンツ数も年々集中度合いが高まってきている。 2018 年頃に 50% を超えて、いまでは 6 割近くが上位 10 ホストのコンテンツで埋め尽くされている。いつはてブを開いても同じようなサイトの記事ばかり並んでいるなぁと思っていたが、それが印象ではなくデータとして裏付けられた。
また昔の話に戻るが、ホームページを作る人のネタ帳というブログがある。 CSS ネタなどの合間に話題となるような世俗的な記事を挟み、かつては 1000 ブックマーク以上つくような記事を量産していた。最近、ホットエントリーに入っていないなと思ってる方も多いのじゃないかと思う。もうなくなったのかなと思ってサイトを見に行ってみたところまだ存在していて、かつてほどではないにせよいまも記事が投稿されていた。しかしこのサイトの最近のブックマーク数は 100 にも到達していない。一桁のものも目立つ。とはいえ 1000 ブックマーク付いていた頃と比べて内容が変わったようには思えない。
はてブのユーザー層が変わったから? それだけではないと思う。ブックマークされるコンテンツの集中度合いが高まることによる影響だと考える。
はてブではホットエントリーに入ることでブーストされてさらにブックマーク数が伸びるという現象がある。昔は個人サイト・ブログでもホットエントリー入りが容易だったが、今日ではマスコミのニュース記事がブックマークされるコンテンツとして大勢を占めるようなり、個人サイトがホットエントリー入りしづらくなってきている。ホットエントリー入りしなければ以前と同じようなコンテンツでもブックマーク数が伸びづらくなってくる。
伝統的な経済学は有限な資源をどう配分するかを問題としてきた。資源とは天然資源のことだけではなく、商品一般とかお金のことを指すこともある。しかしインターネットの世界では限界費用がゼロなので、コンテンツ自体は無限に複製できる。有限なのは人間の時間の方だ。なのでユーザーの時間をどのように効率的に配分していくかが重要になってくる。その貴重なユーザーの時間の争奪戦に個人サイトが参入しづらくなってきている。
ブックマークされるコンテンツが変わったということは、ユーザー層も変わってきているのではないかと考えられる。
上述の通りホットエントリーの総合でウェブデザインや HTML 系の話題を見かけることはなくなった。かつて目立っていたソフトウェアエンジニアやデザイナーの割合は減ってきていると思われる。かわりにオフィス勤務の事務職やフリーランスの非 IT 技術者が増えている印象がある。妄想ユーザー像は以下だ。
高学歴理系男性で IT リテラシーが高く、パソコンを使う仕事をしていて仕事中に自由にインターネットを使える人が多そうだ。
思想的な特徴はリベラル寄り(立憲民主党支持)だ。ただ、ロシアのウクライナ侵攻や立憲民主党の党首交代でちょっと雰囲気が変わった気もする。
資産運用やマンション購入などの記事が定期的に話題になるのでそこそこ経済的にゆとりがある人が多そうだ。ただしめちゃくちゃリッチな人は少ない印象。関東や東海、近畿の大都市で中の上くらいの暮らしをしていて実家は朝日新聞を購読してる、みたいな感じの人が多そうだ。
2021年どこのサイトが最もはてブのホットエントリに入ったかという記事があって、ここ 3 年のブックマークされたコンテンツ数をドメインごとに集計すると、一位がはてな匿名ダイアリー(増田)で二位が Togetter のようだ。段々増田と Togetter の差が縮まり、2021年は肉薄している。
年 | 増田 | Togetter |
---|---|---|
2019 | 14.2% | 13.3% |
2020 | 13.3% | 11.3% |
2021 | 12.4% | 12.1% |
先ほどの表でもここ数年、一位と二位は増田と Togetter だったが、今年は Togetter に逆転されて匿名ダイアリーが二位になってしまった。
Togetter ははてなのエコシステムにとって脅威だ。折角はてブが集めたアテンションを奪っている。個人的に最も問題だと感じるのが Togetter に表示されるエログロマンガや豊胸、手のシミ除去、精力剤、毛生え薬、歯の黄ばみ除去、鼻の毛穴につまった脂除去などのグロテスクで低俗な広告で、はてブを見ていると必然的に Togetter も見ることになり、 Togetter の悪趣味な広告がはてブの UX も悪化させている。一時に比べれば減ったが、5ちゃんねる系のまとめサイトや Twitter まとめブログのようなものは今日も生き残っていて、はてブ経由で獲得したユーザーに対して低俗な広告を表示している。 Togetter とあわせてはてブに寄生する厄介な寄生虫のようなものだと思う。
はてブからまとめサイトなどを除外したホットエントリー一覧ページを作って公開しているサイトなんてのもある。自分のブログへのリファラーとして残っているだけでも以下だ。俗悪コンテンツを削除した上で独自の広告を入れているものもある。
Togetter やこれらのはてブのデータを加工したサイトは、はてブから獲得したアテンションやはてブのコンテンツを無料で利用し、お金(広告収益)に換えている。
はてブの価値訴求が「インターネットで何が話題になっているかがわかる」と、「ほかの人がコンテンツにどのような評価をしているか確認できる」、「見かけた情報をあとで参照するために保存しておける」であることは最初に述べた。競合に関してはそれぞれの価値ごとにリストアップできる。
Twitter の Explorer ははてブにとって驚異だと思う。まだいまはローカライズやパーソナライズが甘い(話題が広すぎる)気がするが、もっとニッチな情報や属性に応じた情報の出し分けが進めばいまはてブを見る専で使っている層にも響くかもしれない。現実問題、一般のインターネットユーザーやテレビ局の人達は Twitter の Explorer 経由でインターネットの動きを把握してそうだ。
ニュース記事に他の人がどんな評価をしているか、ニュースの背景に何があるのかを知りたくてはてブを見ることが多い。はてなユーザーのなかにはその分野の識者のような人がいて、ニュースの背景にある事実を解説してくれてたりする。
その識者のコメントを読める部分を強化しているのが NewsPicks だと思う。ちょいと前に以下のような記事を書いた。
人間は見たものをどう評価・解釈するかを他の人と共有したい欲求がありそうだ。また、他の人がどう思っているかを知りたい、それを見てからコンテンツを消費するか決めたいというコンテンツ消費の二軍みたいな人たちもいる。コンテンツが無数に溢れているから、あまり面白くないコンテンツで時間を無駄にしたくないという心理が働くのだろう。
人々は情報を摂取するときに、みんなで情報を咀嚼したいという欲求があるように思う。ラピュタの放送があるときに Twitter で「バルス」と言ったり。みんなでコンテンツを消費する方が楽しいのだ。
また数多くあるコンテンツの中からどれを消費すれば良いかわからない、というのもある。自分が信頼するあの人(はてブのお気に入りユーザー、 NewsPicks の著名人)がコメントしているものを読みたい、という欲求もあるだろう。
はてブはこのような仕組みを作ったパイオニアだとは思うが、 NewsPicks はもっと洗練したやり方でこの手法をコピーしていると思う。
はてブにはかつてははてなダイアリー、いまははてなブログや匿名ダイアリーなどがあってブックマークしたくなるコンテンツがあり、そこにブックマークコメントが集まってみんなでコンテンツを消費する循環ができていた。
NewsPicks がその仕組みを真似たのかどうかは知らないが、一般のニュースや識者によるコンテンツと企業経営者などを集めてきてコメントしてもらい、一般のユーザーを集めている。
最近はブラウザーにリーディングリスト機能が実装され、クロスデバイスでブックマークを同期するようになってきているのでオンラインブックマークの役割は薄れつつある。またブラウザーのブックマークと違い、オンラインブックマークを繰り返し見ることはないはず。ショートカット的な利用はブラウザー内のブックマークの方が便利だ。
はてブはニュースサービス、コメントサービス(ほかの人の感想・要約確認サービス)としての側面を強化していくのが良いと思う。ブックマーク機能ではブラウザーのネイティブブックマークに勝てないと思う。
はてブの課題は、折角集めたアテンションを Togetter などの寄生するサービスに奪われてマネタイズの機会を逃していることだ思う。ユーザーは俗悪・低劣な低俗広告を見せられ、儲かるのは寄生サービスだけだ。はてなもユーザーも損をしている。折角はてブで獲得したアテンションを外部の人達にマネタイズされないようにしないともったいない。
UA で外部サイトからブロックされてしまう危険も伴うが、有料プランを作って有料プラン加入者には AdBlock サービスを提供したり、 Reader モードでの閲覧を可能にすると良いだろう1。 Twitter Blue のようなサービスだ。 Togetter などに表示される手のシミ、インプラント、増毛、豊胸、エログロマンガなどの低俗広告を見なくて済むようになるのであれば自分は加入したい。
はてブの中でもっとも価値があると思われるホットエントリーの情報をぶっこ抜いて自サイトの広告に置き換えて流用するサイト、サービスも問題だ。 Twitter が外部クライアントの API 利用を制限してきたことは問題視されてきた。一インターネットユーザーとしては Tweetbot など好きな Twitter クライアントで Twitter を利用したいが、 Twitter 自体のマネタイズを考慮すると、(広告を入れるために)あのような API 利用制限は仕方がなかったと思う。はてブでも何らかの近しいことをして、ホットエントリーなどの貴重な情報を簡単に他者が利用できるような状況は是正しなければならないと思う。もし使いたい第三者がいるならば、登録制にしてきちんと対価を得るべきだ。
いまはもうなくなってしまったはてブの有料プラン、はてなブックマークプラスの機能を見ると、想定するターゲットユーザーがはてブのアクティブなユーザー(プラットフォームの生産者的な側面が強い人達)を対象にしていたように思う。例えばタグの一括編集とか。そんなのにお金を払いたい人は多くはないだろう。
Autify CEO の近澤さんのブログに書かれているみたいに、顧客の Burning needs をつかみに行くことが大切だ。
はてブの大多数の物静かなユーザーは何を求めているのだろうか。
この記事を書いていてはてブを作った伊藤直也さんのブログ(元ははてなダイアリー)を読んだ。
直也さんは HBFav を作ったときの記事(「はてブよりソーシャルゲームじゃなかったのかセニョール」)で、今後人々は知っている人経由でニュースを読むようになるというマーク・ザッカーバーグの発言を引用している。
また以下の記事で、他人との関係性がコンテンツ価値に影響を与える( t_wada さんの食に関するツイートは無価値的な話)とも書いている。
これまでは確かにそうだったかもしれないが、今後は違うのではないかと思っている。上の方で述べたブックマークされるコンテンツの集中度合いが高まってきていることからも明らかだが、より普通の人がインターネットに増えてきていることが関係している。普通の人は SNS で気が合いそうな人を見つけてフォローしたりしない。 Instagram で誰かフォローするにしてもセレブや有名人ばかりという人は多いんじゃないだろうか。
ソーシャルなつながりによって閲覧するコンテンツを探したいと思っているのは我々インターネット老人だけなのではないかと思う。デジタルの世の中では時間が最も希少価値が高いものだと書いた。そういう時代にあって人々が求めるのは外さないコンテンツだろうと思う。ど定番の巨人・大鵬・卵焼き的なコンテンツか、その人の趣味嗜好を反映し高度にパーソナライズされたコンテンツだろう。
その上で、これからのはてブが提供できる価値は他者と共同でコンテンツを消費する部分にあるのではないかと思っている。
最後に、今回のユーザーインタビューの募り方に関しては疑問がある。公式ブログでインタビュー候補者を募るとはてブ愛が強い層が応募してきてインタビュー結果に偏りが出ると思う。
日頃のはてなブックマーク開発ブログの文面からも、はてブ開発チームの皆さんが既存ユーザーを大切にしていることが伝わってくる。もちろん既存ユーザーを大切にすることは大事なのだが、はてブはインターネットが大好きなインターネットおじさんをターゲットにしているだけでは伸び代が限られると思う。
スマートフォンが普及してからインターネットを使うようになった層ははてブを通り越して NewsPicks やスマートニュースなんかを使っていそうだ。そういうライトユーザーをどう引き寄せるかがはてブの今後の成長の鍵になると思う。インターネット老人はいずれ死ぬし数も限られている。
難しいかもしれないが、はてブに登録してすぐ使わなくなった離脱ユーザーとか、そういうおとなしいユーザーを見つけてきてインタビューする方が有益なインサイトが得られると思う。少なくともインタビュー相手は応募してくるのを待つのではなく、利用状況を分析してはてブ側が話を聞きたい相手をリクルーティングしていくやり方の方がよいと思う(もし見えないところでそういうことをされてたらすみません 🙇🏻♂️ )。
インターネットはこのまま放っておくと我々インターネット老人がインターネットを始めた 1990 年代末期とは異なる世界になっていくと思う。自分には進化しているようで退化しているように感じられる。そのうち別に記事を書こうと思っているが、 RSS が使われなくなったかわりにメールマガジン(ニュースレター)が流行るとか、トラックバックがなくなって、誰かのブログに言及してブログを書いたときには SNS で知らせる必要があるとか、文章で読めば 1, 2 分で済む内容がわざわざ動画化されていて 10 分強じっと動画を見なければならないとか、昔のインターネットの方が進んでいた、というような状況はいくつかある。我々が失ったウェブ的な話だ。
はてブとはてなにはインターネットの先進性をキープしつつも、 2020 年代の人々のニーズにマッチする機能を提供していって欲しい
ただしはてな自体が広告モデルのビジネスをやっているので蛸が自分の足を食べるみたいな状況になってしまう懸念はある ↩