ながや開発日誌

なぜ128kbpsで読めるサイトを作るのか(画像なし)

通勤中にニュースサイトを見ようとした話

通勤中、日課のニュースサイトを開こうとしたら、いつまで経っても表示されない。
仕方ないので別のサイトを見ようと検索をかけたら、今度は検索結果がなかなか出てこない。

理由は格安SIMの通信制限でした。月末にはよくあることです。

そこで私は思いました。
どうして時間がかかるサイトばかりなのだろうと。

どうして最近のサイトは重いんだろう

自分なりに理由を考えてみました。

回線が安定していることに胡座をかいて、気づかないうちに重くなっているんじゃないか、と思ったわけです。

文字だけなら、実はほとんど重くありません。
この記事も圧縮すれば数KBです。
重いのは文字そのものではなく、その周りに付いているものです。

見た目を整えるCSS、動きをつけるJavaScript、きれいな書体のWebフォント。
これらは全部、スマホのブラウザが受信し終わらないと表示が始まりません。
しかも厄介なのは、容量だけの問題ではないところです。

外部ファイルが1つ増えるだけで、それを取りに行く往復が発生します。128kbpsだと、これだけで0.5秒前後。
中身が1KBでも関係ありません。
だから「軽くする」は「容量を減らす」だけではなく、「取りに行く回数を減らす」でもあるんです。

そこで、、、

『ながや』は、ページをできるだけ軽く作ります。
目安は、128kbpsの回線で本文が2秒以内に届く重さ。
それを超えないように作っています。

ただ、正直に言うと「2秒で読めます」とは約束できません。
電波が弱ければ遅くなりますし、初めての接続ではつなぐだけで数秒かかることもあります。
実際、この仕組みを測っているときに5秒かかった回がありました。

こちらが約束できるのは、無駄に重くしないことだけです。

その代わり、数字は隠しません。

このページの一番下を見てください。 あなたの回線で、このページが実際に何秒で届いたかが出ています。
表示しているだけで、どこにも送っていません。

上に出ている「本文 ◯秒」のほうは、記事を保存したときに、出来上がったHTMLを実際に圧縮してバイト数を数えて計算した値です。

推測ではありません。

もし実測のほうが大きく遅いなら、回線の問題か、私の作り方の問題か、どちらかです。
前者は直せませんが、後者なら直します。

速くするために諦めたもの

広告
広告はあるだけでも鬱陶しいのに、通信が遅いときはさらに足枷になります。
速くしたい一心で省きました!

Webフォントと外部CSS
おしゃれな書体、かっこいいですよね。
でもそれを取りに行く往復が、読む人を待たせます。
だから端末に最初から入っている書体を使います。
文字の大きさ、行間、1行の長さは、その制約の中で作り込みました。

画像のきれいさ
画像そのものは使えます。禁止はしません。
ただし1枚80KBまで、長辺800pxまでに自動で縮めます。
80KBでも128kbpsでは約6秒かかるので、これ以上は載せられないんです。
写真を飾るサイトには向きませんが、文章に添えるくらいなら十分だと思っています。

公開される数字
PVもいいねもランキングも出しません。
人と比べる数字は、ゆるく書きたい人の邪魔になると思っています。

現状

今は、まだ登録も編集画面も何もありません。

ドメインを取って、書いた文章をHTMLにして置いておく仕組みだけ作りました。
読むときは、その置いてあるファイルを返すだけです。
だから速いですし、裏側が止まっていても記事は読めます。

この記事も、その仕組みで表示されています。

これからの『ながや』

まずは皆様にも触っていただけるように、認証と編集画面を整えていきます。
もちろん書く人も128kbpsでできるようにするつもりです。
月末に速度制限がかかっていても、書けて、投稿できる。そこまでやらないと意味がないと思っています。

ゆるくブログをやりたい方に、ぜひ使っていただきたい。

まだ、大家の一間しか部屋が埋まっていません。
みんなで『ながや』を世界最長の長屋にしていければと思います!