💡

Zennで記事を書くようになって今思うこと

commits5 min read

はじめに

私がZennに記事を投稿するようになり、しばらく経ちました。

このようなテーマで記事を書こうと思ったのはYouTubeに先日投稿された以下の動画を見たことがきっかけです。

https://www.youtube.com/watch?v=DTpGfpLybr0&t=405s

これはZennの開発者であるcatnoseさんがデブサミ(devsumi 2021)に登壇したときのアーカイブとなります。私自身、リアルタイムで発表を見ることができなかったため、YouTubeにてアーカイブを公開してくれたことに感謝しています。

この発表内でZennを開発した目的や工夫した点について熱く述べられており、私の記事を書くという目的や動機について再度見つめ直し、振り返ってみようと思い立ったのがこの記事を書こうとしたきっかけです。

もともとNotionと呼ばれるメモアプリにプログラミングノートとし備忘録をまとめていたことから始まり、記事に再構築して投稿を繰り返して、今に至ります。そこで今回はZennで記事を書くようになって感じることや、考えたことを書いていきます。

記事の公開に至るまで感じていたこと

私はもともと、Qiitaやnoteといったサービスで人の投稿を見るのがかなり好きで1日のトレンドや自分の興味ある分野の記事をPocketやEvernoteにまとめるのが日課でした。トレンドに上がってる情報はとても内容、文章ともにわかりやすいものが多く個人でここまで発信している人がいることに驚きました。

今はブログやYouTubeなど、個人が主体となって情報を発信していくというスタイルが確立され、世間一般的に認知されてきています。とくにITエンジニア界隈では情報共有コミュニティサイトの存在が大きく情報交換の場として多くの人に利用されています。

私はプログラミングを学習している中で、わからないことがあったとき、検索をすると上位にQiitaやエンジニアの個人ブログがヒットしその情報に何度も助けられたという経験があります。プログラミングは問題を抱えて解決するまでに要する時間はそれぞれですが、同じような問題を解決した方法について発信してくれていることの安心感はとても大きいことに気づきました

記事としてまとめることの難しさ

今まで多くの記事を見てきましたが、実際に自分の手で記事を書く中で感じたことが多くあります。まず、誰かにわかりやすくまとめる難しさです

プログラミングを学ぶうえで学ぶことは多くあります。よく言われる話ですが、Aという技術があり、Aを身につけるためにはBの知識が必要。そのBを理解するためにCの基礎を理解している必要があるなど、必要な知識が連鎖的に増えていきます。そのため深堀りしていくと勉強することがとても多いことを目の当たりにし圧倒されることも少なくありません。それぞれの技術を学習する上で、私は何度か挫折した経験があります、そのときの反省点としてインプット中心の学習、受け身の学習の割合が多かったというのがあります。

学習する上でアウトプットが重要であるということは有名です。前から、アウトプットの重要性についてはいろんなところで聞いており、実際にコーディングを通して手を動かしたほうが身についているといった実感を得ることが多くありました。その中で、学んだことを人に教えられるぐらいまで追求してみる、勉強したことを継ぎ接ぎでもいいからまとめてみるなどしたほうが後で見返したりするときに役立つということをよく耳にしました。勉強したことや考えたことについて記事を書こうとしたことは何度もあります。しかし、文章におこしてみると自分に納得がいかず、下書きを買いては消してを何度も繰り返していました。サイトのトレンドに上がってくる記事は専門的な内容であったり、内容も作り込まれているものが多く、それらに圧倒され、自信を失っていた時期もありました。そこで毎回、人にうまく伝えるためにはどんな文章を書くべきなのか、どんな構成でまとめると見やすくなるのかなどを考えることが多かったです。記事を買いて自分も発信をしてみたいという反面、自信がなくこんな不十分な知識じゃ人に何かを伝えてもなんの意味があるのかなどを考えてしまい自暴自棄になることもありました。

いま思えば、完璧主義に囚われすぎていたのだと感じます。完璧に内容を理解していなくても発信するなかで試行錯誤し改善いくという選択肢があるというのを忘れていました。

書く目的や動機を明確にする大切さ

インターネット上には数多くの情報共有コミュニティサイトやブログ、SNSが乱立し、毎日数多くの記事がユーザーの手により作成され公開されています。しかし、私達はなぜ記事として公開するのでしょうか。承認欲求を満たすため、達成感を得たい、有名になりたいなどその目的はユーザーの数分存在すると感じています。内容を考え、思考したことを言語化して他の人が見える形で共有する、そのプロセスの中で視点私が記事として考えたことをまとめるのは未来の自分のためであることに気づきました。そのように感じたのには私のプログラミング学習の中で感じたことが強く影響しています。人間は常に、いろんなものにふれインプットを繰り返しています。インプットしたことを全て鮮明に記憶できるのが理想ですが、残念なことに「人間は忘れる生き物」です。いま私がプログラミング学習を始めたての頃に書いたコードを見直したとして、そのコードを書いた時の情景を鮮明に記憶しているかと聞かれると自信をもってYESとは言えません。変数の命名がなっていなかったり、コメントの肝心な部分が抜けていたりと、過去の自分がプログラミング学習段階でどのように考えていたのかまでを思い出すのは誰でも時間がかかるように感じます。あのとき、気をつけていればと思っても過去の自分を変えることは難しいです。

そこで考えたのは、未来の自分に怒られないためにはどうすればよいのかといった点です。私は、昔書いていたコードをGitHubで管理しておけばよかった、変数についてもっとよく考えてから命名するべきだったなどと反省点や公開していることを数えたらきりがないです。これらの経験を踏まえ現在私は、問題を抱えたら、そのときにとった行動や考えたことを紙やNotionに書きなぐり自分の言葉で言語化してみるというのを心がけています。言語化することで脳がすっきりとして問題解決が早くできることも多くあります。

またZennはSEO面でも対策がなされ、Google検索の結果でZennの記事を見る機会がどんどん増えてきました。記事のGoogle Analyticsを見ても検索エンジンからの流入がとくに多く見受けられます。前に述べた未来の自分に向けて書くという面でもこの点はいきてくると感じています。恥ずかしい話ですが、過去に自分の書いた記事に救われたことが何度かあり、そのたびに見える形で文章化しておいてよかったと感じました。

私は、自分の言葉で言語化してNotionにまとめる、その延長線上でZennにまとめて他の人が誰でも見られるようにし未来の自分を助けるというサイクルを作りたいという思いがあり記事を執筆しています。Notionでの個人メモにとどまることなく、Zennで公開し誰にでも見える形にすることでわかりやすくまとめる力をつけながら、学習を加速させているといった感じになります。

見てもらえるというありがたさ

以上の内容を読んだとき、それは建前だろと思われる方もいらっしゃるとことも承知しております。私も人間ですので、承認欲求というのは少なからずあります。Zennで書いた記事がトレンドとしてサイトトップに載る、はてなブックマークにエントリーする、いいねがつくなど記事を書いていく中で刺激を受けることが多くその度に記事を振り返り一喜一憂することが多いです。

各種SNSや情報共有コミュニティサイトを数多く見てきて感じるのは、どれも承認欲求を刺激して、ユーザーを奮い立たせコンテンツを成熟させていくというサイクルがとても上手である点です。私自身、今日まで記事をいくつか書いてきて、投稿前の予想とは違う反応があった、コメントやTwitterのリプライやメッセージで意見をもらうことが多くありました。そのたびに記事が見られているという実感が湧き、それと同時にもっと記事の内容を良くしていかなければという思いが強くなりクオリティを上げていこう、新しい技術にも挑戦してみようなどと自分を鼓舞しています。

私自身まだまだ記事としてのクオリティであったり文章だったりと課題点が多くあります。その中で、読んでくれた方たちの声や反応により視野が広くなり、よりよい物を作りたいという気持ちが強くなる。そのサイクルを大切にしながら課題と向き合っていかなければならないと強く感じております

Zennはいいぞ

Zennはブラウザ上での執筆以外にも、他のサイトにはない独自CLIを使った執筆体験を提供してくれています。

https://github.com/zenn-dev/zenn-editor

これは簡単に言うと記事のマークダウンファイル(.md)をGitHubを使いバージョン管理しつつ直接デプロイ(公開)できるシステムです。このZenn CLIを使って自分の好きな環境でマークダウンを書ける、プレビューできるということが私のZennを選ぶ理由でもあります。Zennを使い始めるまでGitもまともに使ったことがなかった自分ですが、Zenn CLIを使うようになってGitという技術に興味が湧き、記事の執筆を通して使い方を身につけることができました。間接的に Git を学ぶ形にはなりましたが、CLI を使いながらコマンドを学ぶきっかけを作ってくれたことにとても感謝しています

またスクラップ機能でアイデアや知見を新鮮なうちにスレッド形式でつないでいけるという体験も他のサイトにはない特徴です。スクラップは手軽に書いていけるので、断片的な情報でもどんどん気軽に書いていけるという点がアウトプットする上で需要なのだと感じます。アウトプットするハードルが低いことで、記事を初めて書くときにもここから順番にステップアップしていく、記事を書く前の思考整理に活用するなど幅広く使えるシステムだと感じました

Zennのリリースから今日に至るまで、どんどんユーザーにとって求められているものが実装されていきている、ユーザーがどんどん増えて記事が増えて盛り上がっているのを日々感じています。個人開発でありながら、このクオリティでZennを作り上げてくださったcatnoseさんの技術力や斬新なアイデアには圧倒されるばかりです。それと同時に個人開発の可能性や、技術記事というジャンルのあり方についてもあらゆる面で刺激を受けました。Zennで記事を書くことでアウトプットすることが習慣になり、新しい技術を知り触ってみるなど様々な体験をこの約半年間でしてきました。

今後とも、Zennがどんな進化をしていくのかを楽しみにしております。

改めて、Zennの運営に関わる全ての方々、いつも記事を読んでくださる方々にこの場を借りて感謝を申し上げます。

おわりに

今回は久しぶりのポエム記事になりました。最後はZennのべた褒めみたいになってしまいましたが、記事にすることで知識が形になって残り、未来の自分が同じ間違いをするのを防ぐ、同じ問題を抱えている人の助けになるというのは素晴らしいと感じました。私は最初アウトプットに対してとてもハードルが高いというイメージが先行していましたが、実際に執筆体験を積み重ねることで記事を書くことに対して苦手意識が少しづつ和らいでいくのを感じました。アウトプットとして記事を書くことには、他の人のために書くという以外にも、未来の自分のために文章化して残しておくという側面もあります。投稿した記事の中で新しい気付きや知見を確立させ、今後とも成長していきたいと考えております。

私自身エンジニアとしては未熟物ですが、この記事を数年後に自分が見たときにどう映るのかを見届けたいという気持ちと、この記事を通してZennがもっと発展していくことを期待して記事の終わりとします。

ここまで長くなりましたが、最後まで読んでいただきありがとうございました。