give IT a try

プログラミング、リモートワーク、田舎暮らし、音楽、etc.

僕がブログや動画に広告を載せない理由、またはブログとお金に関する考え方について

はじめに

僕は最近YouTubeにプログラミング関連の動画をアップしています。
たとえばこんなのとか、


プログラミング初心者歓迎!「エラーが出ました。どうすればいいですか?」から卒業するための基本と極意

こんなのとかね。


これでもう怖くない!?Rails 4.1からRails 5.0にアップグレードする手順を動画付きで解説します

すると、同僚のM氏から「動画に広告は載せないんですか?」という質問を受けました。
(動画を開いてもらうとわかると思いますが、僕の動画では再生前にCMが流れたり、再生中に広告のバナーが表示されたりしません)

はい、広告は載せないです。
僕が動画を作ったのは、別に「YouTuberになって大儲け!!」・・・したいからではなく、あくまで「文章で書くより、画面と口で説明した方が速いから」という理由です。

とはいえ、みなさんの中には「えー、それでもとりあえず広告は貼っておけば?いくらかお金になるかもしれないし」って思う人がいるかもしません。
しかし僕は今のところ動画に広告を貼る予定はないです。
また、動画だけでなく、このブログにもGoogleアドセンスのような広告(「スポンサーリンク」と書かれているリンク画像)を入れる予定もないです。

これはいったいなぜなのか?
このエントリではその理由を書いていこうと思います。

広告を入れない理由は、読者や視聴者にとって邪魔でしかないから

動画やブログに広告を入れない理由はズバリ、読者・視聴者の視点に立つと邪魔でしかないからです。

YouTubeだと、見たい動画を開いたときに5秒とか30秒とか待たされるのはイヤじゃないですか。
5秒待ってから「広告をスキップ」をクリックするのも面倒じゃないですか。
「広告のバナーが動画のいいところを隠すから消したい!」って思ったときに、間違って広告の本体をクリックしないように気を付けながら、右端の「x」マークにマウスカーソルを当てるのって、変に神経使うじゃないですか。

f:id:JunichiIto:20160712052545p:plain

ブログだとスマホで見たときのGoogleアドセンス広告って、画面の半分近くを占めるじゃないですか。
画面をスクロールさせるときに間違って広告をタップしないように気を遣うじゃないですか。

f:id:JunichiIto:20160712063247p:plain

しかも、広告が入ると本文が分断されて続けて読めなくなるし、広告が入るタイミングによっては「あれっ、この記事はここで終わり?」って一瞬勘違いすることもあるじゃないですか。

そして何よりも、表示されてる広告を見て「おっ、これいいやん」と思ってクリックすることって滅多にないじゃないですか。
(僕はHaskellで転職する予定はないし、ファブリーズだって別にいらない!)

いや、クリックする人がいるからこそ広告が成り立つんでしょうけど、「この広告が出てきて嬉しい」って思う人と「この広告、邪魔やわー」って思う人を比べたら、たぶん邪魔って思う人の方が多いんじゃないでしょうか?

まあ、僕は広告屋さんじゃないので実際の割合はわかりませんが、少なくとも僕は広告(特にメインコンテンツに堂々と入り込んでくるタイプ)が邪魔だと感じています。
なので、読者や視聴者のみなさんにもイヤな思いをしてほしくないので、広告は入れないでおこうと考えています。

「じゃあ、お金は欲しくないの?」

いや、お金は欲しいです(笑)。
ブログを書いてお金がもらえるなら、もらえるに越したことはないです。

ただ、僕がブログを書く第一の目的はお金ではありません。
僕がブログを書く第一の目的は、読んでくれた人に「役に立った。ありがとう!」と思ってもらうことです。

インターネットを検索すると、役立つ情報がたくさん見つかる。
でも、その情報はどこからともなく自然と湧きあがってくるものではなく、誰かが発信しているからこそ、その情報がネットで見つかる。
じゃあ、自分も情報をもらうだけでなく、発信する側に回ってみよう。
ギブアンドテイクの精神で、「与える側」にも立ってみよう。

・・・これが僕がブログを書き始めた動機です。
そして、この考えは今でも変わっていません。

なので、お金が入ることよりも、ブログを読んでくれた人の「ありがとう」という声が聞こえてくる方が僕にとっては嬉しいです。

邪魔にならない商品リンク・宣伝ならOK

とはいえ、ブログでお金が入る手段を完全に放棄しているわけではありません。
「邪魔になる、役に立たない広告はNG」ですが、「邪魔にならない、役に立つ商品リンクや宣伝はOK」というのが僕のポリシーです。

具体例でいうと、「こんな本を読みました。すごくいい本だったので、みなさんにもオススメです」という流れで、Amazonの商品リンクを載せるのはOKです。
なぜなら、それは本文の一部として必要な情報だからです。
(読者はリンク先に飛んで商品を購入したり、レビューを確認したりできます)

f:id:JunichiIto:20160712080311p:plain

また、僕は「Everyday Rails - RSpecによるRailsテスト入門」という電子書籍を販売しています。
この電子書籍を購入してもらうために「みなさん、Everyday Railsを読んでテストコードの書き方を勉強しましょう!」という宣伝も積極的に入れています。
なぜなら、翻訳者の一人として書籍の内容に自信と責任をもっているからです。

f:id:JunichiIto:20160712080305p:plain

こういうケースであれば、読者の邪魔にならない(むしろ役に立つ)と思っていますし、リンク先に飛んで商品を購入してもらえば僕にもいくらか報酬が入ってきます。

「ブログでお金を稼ぐ」という点だけ見ると、Googleアドセンスの広告と変わらないかもしれませんが、読者の立場に立つと見え方は全然違うと僕は考えています。

お金よりもレピュテーション(評価や信頼)を集めたい

僕の職業はプログラマです。
そして、メインの収入源もプログラマとしての仕事です。
ブログで稼いだお金をメインの収入源にする予定はありません。

なので、僕にとってブログは「直接お金を稼ぐ手段」ではなく、「プログラマとして長期的に安定して収入を得るためのサポートツール」であってほしいと考えています。

先ほど「ブログを書く第一の目的は、読んでくれた人に『役に立った。ありがとう!』と思ってもらうことだ」と書きました。
これを続けていると巡り巡って僕自身のレピュテーション(reputation、評価や信頼の意味)につながっていきます。

業界でそれなりに名が知られ、レピュテーションが高い状態を維持できれば、最悪、今働いている会社がなくなっても(縁起でもないけど)、次の会社で職が見つけやすくなるはずです。
(実際はどうなるかはわからないけど、少なくともそうなってほしい)

似たようなエピソードとして、先日、トレタの増井さん(@masuidrive)がインタビュー記事で次のようなことを話されていました。

僕の個人的な目標は、「今僕が持っているものを全てなくしても、明日から普通に暮らせること」です。今日トレタが潰れ、帰ってみたら僕の家が火事になっていて、預金も全部なくなっていた、ということになっても、普通に暮らせる状態ですね。今の僕だったら、他の会社にもいけるだろうし、家もまぁ誰か友達が泊めてくれ、PCも貸してくれるだろうと思います。
 

トレタ増井氏×桂対談 - エンジニアが年収700万円台の壁を越えるためには何が必要?(前編)|転職ドラフトReport

増井さんに比べたら僕なんてまだまだですが、「個人的な目標」として考えていることはほぼ同じです。

雑誌記事の執筆や講演の依頼など、間接的な副収入が入ることもある

ブログで直接お金を稼がなくても、ブログ記事がきっかけでたまに雑誌記事の執筆や講演の依頼が入ってきたりすることもあります。
たとえば、僕は過去に何度かSoftware Design誌に記事が載りましたが、執筆の依頼を受けたのは僕が書いたブログを編集者さんが読んだことがきっかけです。

商業誌に記事を書くと当然、原稿料をいただくことができます。
また「雑誌に載ったよ!」という自分の実績も増えます。

こういう面でもブログは僕にとって「間接的にお金を稼いでくれるツール」になっています。

まとめ

さて、だんだん話があっちこっちに飛び始めてきたので、このエントリの内容を最後にまとめます。

  • 読者や視聴者が「邪魔」と感じるような広告は貼りたくない。
  • 一方で、邪魔にならない商品リンクや宣伝をブログに含めるのは問題ない。
  • ブログでお金を稼ぐことは否定しない。ただし、自分にとっては一番の目的ではない。
  • お金を稼ぐよりも、読者の「ありがとう」という気持ちを集めて、レピュテーションを高めたい。
  • ブログで直接大金を稼がなくても、ブログはメインの収入源を安定させたり、間接的な副収入を得たりするのに役立っている。

僕のブログとお金に関する考え方をまとめるとこんな感じです。
まあ人それぞれ、いろんな考え方があると思いますが、「なるほど、こんな考え方もあるんだなあ」とみなさんがブログを書いたりする際の参考になれば幸いです。

あわせて読みたい

僕がブログを書く動機について、詳しく書いています。

Rails 5への移行手順や、Rails習得で必要な技術要素の話をQiitaに書きました

お知らせ

先日(というか1本は今日)、Qiitaに「これでもう怖くない!?Rails 4.1からRails 5.0にアップグレードする手順を動画付きで解説します」と、「あなたがマスターしたのはいくつ? Railsを習得するために必要な技術要素の一覧」という記事を投稿しました。

このエントリではこれらの記事の内容を簡単に紹介します。

「これでもう怖くない!?Rails 4.1からRails 5.0にアップグレードする手順を動画付きで解説します」について

タイトル通り、Rails 4.1からRails 5.0への移行手順を説明した記事です。
記事だけでなく、スクリーンキャストでも移行の手順を説明しています。(むしろ動画の方が詳しいです)


これでもう怖くない!?Rails 4.1からRails 5.0にアップグレードする手順を動画付きで解説します

記事で使ったサンプルアプリケーションは、Everyday Railsで使用しているサンプルアプリケーションです。

また、動画内ではRubyMineを使っているので、RubyMineの便利機能をチェックしたりすることもできます。

最近Railsを始めたばかりで今までRailsのバージョンを上げたことがない人や、Rails 5に上げたいけど、どれくらい大変かわからなくて腰が重いと感じている人は、ぜひ参考にしてみてください。

「あなたがマスターしたのはいくつ? Railsを習得するために必要な技術要素の一覧」について

こちらは「This is Why Learning Rails is Hard(Railsの習得が大変な理由はこれだ)」という海外記事に載っていたマインドマップを日本語化&リスト化したものです。

f:id:JunichiIto:20160322081032p:plain

上のマインドマップの内容をこんな感じで日本語化しています。

Ruby言語
  • オブジェクト指向プログラミング
    • クラス&モジュール
    • 属性&メソッド
    • 継承&ミックスイン
  • 関数型プログラミング
    • ブロック
    • Proc&ラムダ
  • フロー制御
    • 条件分岐
    • 繰り返し
  • REPL(対話型評価環境)&デバッグ
  • メタプログラミング

独学でRailsを勉強している人がこれから勉強がしなければならない技術要素を確認したり、チームでRailsを開発している人がメンバーのスキルチェックシートとして使ったり、いろんな活用法があると思います。
また、Railsに限らず「Webアプリケーション全般で必要な技術要素」もたくさん載っているので、JavaやPythonなど、Rails以外の言語やフレームワークを使っている方にもオススメです。
ぜひ参考にしてみてください。

まとめ

というわけで今回はQiitaに公開した技術記事を2本紹介しました。
みなさんのお役に立つと幸いです (^^)

「エラーが出ました。どうすればいいですか?」から卒業するための記事をQiitaに書きました

お知らせ

Qiitaに「プログラミング初心者歓迎!『エラーが出ました。どうすればいいですか?』から卒業するための基本と極意(解説動画付き)」という記事を書きました。

タイトルにあるとおり、今回も解説動画が付いています。
というよりむしろ、解説動画がメインで記事の本文がオマケです。


プログラミング初心者歓迎!「エラーが出ました。どうすればいいですか?」から卒業するための基本と極意

最初は動画の内容を丁寧に文章として書き起こしていこうと思ったのですが、あまりにも時間がかかりそうだったので諦め、本文は要点をまとめるだけにしました。

Railsの赤いエラー画面(下図)に遭遇しても右往左往しないように、エラー画面の見方やスタックトレースの読み方、デバッグするときの心構えなど、プログラミング初心者が独学ではなかなか身につけられない「エラー解決のノウハウ」を解説しています。

f:id:JunichiIto:20160626052853p:plain

動画と合わせて読むと学習効果百倍です。
ぜひ動画と合わせて読んでやってください。

この記事を書こうと思ったきっかけ

この記事を書こうと思った直接のきっかけは、Qiita記事にも書いてあるとおり、スタック・オーバーフローで次のような質問を見かけたからです。

Railsで知恵袋のようなBA機能を実装しようと奮闘していますが、アソシエーションに対しての理解ができておらずに、はまっています。


(中略)


ActiveRecord::AssociationTypeMismatch (Comment(#70182053951140) expected, got Fixnum(#15377440)):
app/controllers/best_answers_controller.rb:5:in `best'


ここで、エラーがでるのですが、どうすればいいでしょうか?

よろしくお願いします。
 

Ruby On Railsで質問に対してのBA機能 - スタック・オーバーフロー

質問者の方は自分でエラーの原因と解決策を見つけられず、「ここで、エラーがでるのですが、どうすればいいでしょうか?」で終わってしまっています。

ただ、スタック・オーバーフローの質問を見ていると、この質問に限らず、昔から「エラーが出ました。どうすればいいですか?」系の質問を非常によく見かけるんですよね。
厳しい言い方をするなら「僕のデバッグ手伝ってください」と言っているに等しい質問が結構多いです。
よっぽど難しいエラーなら話は別ですが、そういった質問の場合、エラーメッセージやスタックトレースを読めばすぐに解決しそうなエラーが大半です。

「僕のデバッグ手伝ってください」系の質問を見ると正直な話、僕は回答者として「いや、それぐらいがんばって自分で解決してよ」と思ってしまいます。
なぜなら、そういった質問は以下のような点で、回答しても自分の頑張りがムダになりやすいからです。

  • 質問の内容がそのプログラム固有の問題になりがちなので、他の人が同じ問題に遭遇する可能性が低い(つまり、質問が解決しても質問者以外の人の役に立たない)
  • その質問に回答してエラーを解決したとしても、同じ人から「今度はこんなエラーが出ました。どうしたらいいですか?」という質問が繰り返し挙がってくる(自力で問題を解決するスキルが身に付かない)

なので、自分のデバッグは自分自身で解決してもらうのが一番いいと思っています。
(身近にいる人に質問するのは全然アリですが、ネットで不特定多数の人に回答を求めるのはちょっとね、という感じです。)

とはいえ、独学でプログラミングをやっている人だと、「わっ、エラーが出た!わからん!助けて!!」になってしまう理由もわからなくはありません。
プログラミングを始めたばっかりの状態で、こんな英語と記号の羅列で画面を埋め尽くされたら、そりゃ「なんじゃこりゃあ!!」になってしまいますよね。

f:id:JunichiIto:20160626055649p:plain

しかし、「なんじゃこりゃあ!!」とずっと言い続けているようでは、いつまでたっても一人前のプログラマになれません。
そこで独学&初心者プログラマの方も、なんとかして自力でエラーを解決できるようになってもらおう、と思ってこの記事を書くことにしました。(というか、前々からこういう記事を書こうと思っていました)

ちなみに、Q&A系のサイトで質問をするのであれば、「こういうことを実現したいと思っているんですが、どうすればいいでしょうか?」という質問の方が、他の人に役立ちやすい(=同じ疑問を持っている人が多い)と思います。

まとめ

というわけで今回はQiitaに投稿した「プログラミング初心者歓迎!『エラーが出ました。どうすればいいですか?』から卒業するための基本と極意(解説動画付き)」という記事を紹介しました。

基本的にプログラミング初心者向けの記事ですが、中級者以上の方でも「へ~、知らなかった」と思うようなテクニックや考え方が載っているかもしれません。
みなさん、ぜひ動画と合わせてご覧くださいませ~。


プログラミング初心者歓迎!「エラーが出ました。どうすればいいですか?」から卒業するための基本と極意