個人ブログを運営する環境について考えてみる

個人ブログを運営する環境について考えてみる

はじめに

今回は個人ブログを運営する時にどのような環境でやるのがベストなのか考えてみたいと思います。

こちらのサイトはGitHubのGitHub PagesとPython製の静的サイトジェネレーターであるmkdocsを使っています。

色々調べてこの構成に落ち着いたという形です。今回はその調べたところについて、どのような人であれば、どのような形で進めるのが良いかという点について書きたいと思います。

パターン1 - ブログをはじめて書いてみたい人

プログラマをやっていると何か情報を発信したいと思うタイミングがあると思います。

色々なサイトで「プログラマはアウトプットが必要だ!」「アウトプットは絶対にした方が良い!」「アウトプットしておくと転職に有利!」 のような書き込みを見かけます。

僕自身もこれには概ね同意します。やはりアウトプットはしておいた方が良いことが多いですし、アウトプットすることでさらに理解が深まることは多いと感じています。

では、最初からレンタルサーバーを借りて、独自ドメインをとって運用するのが良いでしょうか?

これには賛否両論あると思いますが、僕としては、最初は情報発信サービスを使うのが良いと思います。

国内ですと、QiitaZenn 海外系のサービスですと、Dev CommunityMedium あたりがユーザー数が多い印象です。

僕も以前はQiitaやMedium(英語)で情報発信サービスをしていたことがありました。

では、なぜ情報発信サービスを使うのが良いかということについて考えを書きたいと思います。

まずは、その気軽さです。

情報発信サービスを使うために必要なことはアカウントの作成のみです。 ドメインの取得もサーバーのレンタルなども必要ありません。

そのため、技術的なスキルが足りなかったとしてもすぐにブログをはじめることができます。 また、運用コストも記事を公開するだけでは基本的にはかからないことがほとんどです。

ブログの難しいところは継続するところだと思っていますが、更新が止まってしまうと運用コストというのは大きな負担になってきてしまい、クローズせざるを得なくなってしまいます。 そのため気軽に低コストでまず書いてみるということができる情報発信サービスを使うことが良いと思います。

また、先に挙げたサービスはユーザー数が多く、多くの人が見ているサイトでもあります。 開発の現場でもQiitaやZennの記事を見て作業をするというケースも多いのではないかと思います。

ユーザー数が多いということはそれだけモチベーションの維持につながると思っていて、例えば自分が書いた記事が評価(いいね)されたりコメントされるとモチベーションに繋がってきます。

また、情報発信サービスを利用するとSEOについて考えなくても一定の確率で記事を見てもらえる可能性があります。 基本的に独自でブログサイトを公開するとSEOについて考えなくてはいけません。 最初の段階では誰にも見てもらえないということも実際多いです。

以上のような理由よりブログをはじめて書いてみたい方や、インフラ周りの知識やSEOの知識が足りてないと思う方は情報発信サービスを利用することが良いと考えています。

パターン2 - 収益化したい場合、勉強も兼ねて独自で環境を作りたい場合

今回のテーマはここからが本題です。

まず、情報発信サービスで収益化することは最近のトレンドだとできるようになってきていると感じています。

例えばZennやnote(個人的にnoteはあまりテック系の記事多くない印象です)、Mediumでは有料で記事を書くこともできます。

そのため収益化という目的であれば、これらのサービスを使うことも検討できると思います。

しかしアフィリエイトやGoogle広告をつけたいとなると情報発信サービスではできないことが多いです。(はてなブログではアフィリエイトはできますが、一般的にこれらのサービスでアフィリエイトはできないことが多い印象です。Google広告は多分どれもNGですね。。)

そのため、収益化のためにブログを始めたい場合は情報発信サービスではなく、独自でブログを構築していく方が良いと考えています。

また、独自でサイトを構築していくことは非常に大きな勉強となります。これ目的でブログをはじめて見るのも良いと思います。

では、こちらの独自でブログ環境を作る場合のパターン3つを考えてみたいと思います。

1つ目 GitHub Pages + 静的サイトジェネレーター

最初に述べた通り、こちらのサイトはGitHub Pagesを使っています。

また、デザイン周りではPython製のmkdocsというライブラリを使って作成しています。

GitHub Pagesは無料で静的なコンテンツを公開できるサービスです。 無料で利用するにはGitHubのリポジトリを公開設定にする必要がありますが、ブログは基本的に公開しているものなので、特に問題がなけばこの運用でも問題は無いと思います。

また、GitHub Pagesでは独自ドメインを設定することができます。 デフォルトではGitHubのドメインを利用することになりますが、独自ドメインを設定しておくことで、Google広告の設定もできるようになるので本格的にブログで収益を挙げたい!頑張って自分のサイトを作りたい!という場合には早めに独自ドメインを設定しておくと良いと思います。

GoogleAnalyticsの設定も可能です。

静的サイトジェネレーターを使うことで簡単にデザインをセットアップすることができるようになります。 0からデザインを考えて、HTMLを書いて、JSで動きをつけてというのも面白さの醍醐味では有りますが、どうしても時間がかかってしまいます。 その点静的サイトジェネレーターではマークダウン方式で綺麗にデザインを作ってくれるというものも多くありますので、検討する価値はあると思います。

コスト面では、GitHub Pagesは公開リポジトリを使う限りは無料、静的サイトジェネレーターはOSSのため無料で利用することができます。 そのため、かかる費用は独自ドメインを使ってもその費用だけで運用することができます。

一方で、ある程度のコンテンツ量と正しいSEO対策ができていないと誰からも見てもらえないということになってしまいますので、最初は結果がでなくとも、続けていく根気が必要になります。(これは他の方法でも同様です。)

2つ目 レンタルサーバー + Wordpress

レンタルサーバーにはWordpressを使えるものが多く存在しています。

Wordpressを使った経験のある方はWordpressでサイトを公開したいと考える方も多いと思います。

またWordpressには豊富なプラグインがあり、プラグインを上手く活用することでリッチなサイトを作ることも可能です。

コスト面ではレンタルサーバーの費用がかかります。

ランニングコストがかかってしまうため、本格的にブログをやる場合にオススメできますが、やってみたい!という段階ではランニングコストがかからない方法を取るというのが個人的にはオススメです。

3つ目 完全独自実装

完全に独自で実装することも可能ですが、ブログをはじめるまでにとても時間がかかってしまいます。

例えば、静的なサイトを公開するだけであれば、HTMLとCSS, ちょっとしたJSだけでGitHub PagesやNetlifyのような静的サイトホスティングサービスを利用することで費用を抑えて運用することも可能です。

DBを使ってブログのコンテンツを管理したいとなった場合には、HerokuのようなWebサービスを無料で動かすことができるサービスもありますが、私が使った経験上容量がかなり少ないので、無料で使い続けることは困難だと思います。 その場合は、有料プランにするorサーバーを借りるということが必要になってきますので少なくとも1,000-1,500円くらい月のランニングコストが発生します。(その分自由度が高くなりますが。)

個人的にはブログを書き始めたい場合には、完全独自実装はオススメできません。 一方で、勉強的なニュアンスで独自でサービスを作って運用したい!という場合には良い経験になるとは思います。

最後にまとめ

今回は、ブログをはじめる上で様々な方法について書いてみました。

簡単にまとめると、↓のような感じですね。

どのような形式でもブログは継続が大切になってくると思います。 (僕自身も継続できてないなと思って書いたり書かなかったりしているのですが、)

気長に続けていきたいと思います!