2年目プログラマがQiitaに週一投稿して1年が過ぎました

~~オオアリクイに主人を殺されてからはいったい…~~

一年間の活動を振り返る良いタイミングなので、記録的なものを残します。

# <i class="fa fa-graduation-cap" aria-hidden="true"></i> まとめ

* 被ストック数は身分(技術)相応。背伸びはできない。
* 記事を書くのは大変だけどメモでもいいんだよ
* 技術を追いかける姿勢が大事
* 楽しいからみんな書こう！

# <i class="fa fa-pencil" aria-hidden="true"></i> (約)一年間投稿してきました

予定[^1]ではこの記事が70個目の投稿になります。


証拠、というか紹介的な意味も込めて
[Qiitaの投稿アクティビティをGitHubのように表示するヤツ - Qiita]
で投稿を見てみます。

過去一年間かつ100件までしか見れませんが、一年間の結果を見せる用途ではちょうどいいですね。

![shiiba.JPG](https://qiita-image-store.s3.amazonaws.com/0/62354/91a64269-4d1f-2e1e-97d7-55262570bdcb.jpeg)
(2016/05/30 キャプチャ)

自分は職業プログラマ[^2]、あるいは平日プログラマなので、Qiitaの記事も会社で書いています。
年末年始は一週間のお休みがいただけたので、そこだけ週一投稿ができませんでした。

これより以前は数本、連続や大きなブランクありで投稿していました。

## <i class="fa fa-question" aria-hidden="true"></i> なぜ週一投稿してきたのか

## :one: 動機その1 なぜ週一

Githubで芝の育成に励んでいる方々の記事はたまにブログで読んでいましたが、自分ではムリだとわかっていました。

しかし、[Qiitaに毎週１件アップを半年続けてみた感想 – kwLog]を見つけて、
その時たまたま書きたいことが数本あったため、これをして見ようと思いました。
結果的には記事の良い点である、

* それなりのモノを書こうとする
* 新技術に関心を持つ
* 憶測を排除する

はあまり達成できずに、
尊敬しウォッチしてるユーザーさんが昔プロフィールに書いていた
「低品質の記事の量産を自省する」(意訳)
こともなく、とにかくくだらないことでも投稿して来ました。

## :two: 動機その2 こんなプログラマも居るんだよ

Qiitaって自分の中では社会人になってから見だしたようで、
大学生の頃は今ほど見ることはなかったと記憶してます。
当時は[teratail【テラテイル】｜思考するエンジニアのためのQAプラットフォーム]も[スタック・オーバーフロー(日本語版)]もなくて、
わからないことがあると個人ブログや知恵袋サイトを回っていました。[^3]
知恵袋は本当に、質問者も回答者も玉石混淆[^4]。
あまり調べ物には向かない。
なので個人ブログをメインで探していましたが、デキる人のブログが多かったです。

社会人一年目でQiitaをよく見るようになり、登録してフィードをみるようになりました。
(そのときにGithubアカウントもとりましたが使ってないです…)
そしてそこで流れる記事も、自分にとっては凄い・分からない内容ばかりに見え、
自分のように、プログラマだけど全然凄くない人は居ないのか、と軽く絶望しました。
知恵袋のように本当に初心者か片手間の人と、
ブログやQiitaで大活躍して「OSS活動なんてあたりまえだゼ！」
なんて人にしか分類できませんでした。視野が狭いですね。

そのとき会社ではちょうど前任者が抜け、社内で質問できない状態のものを自分一人で触っていました。
そこで、外部に助けを求めつつ、
「こんなレベルだけどプログラマしてるんだぜ」
とまだ見ぬご同類を励まそうと、自分でもくだらないとわかっている記事を投稿し始めたのでした。

### 具体的にどんなレベルさ

一年で劇的に変わったわけではないのですが、当時から

* MVC(フレームワーク)しっかりわかっていない
* テストコード書けない(環境ない)
* CIしてない
* LAMP環境自作出来ない
* Vim使えない
* JavaScriptは`<script>`内にjQueryで書くもの
* Git使えない
* OSS活動してない

こんなレベルでもおかげ様で社会人3年目です。
今のところ生きてはいけてます。


# <i class="fa fa-bar-chart" aria-hidden="true"></i> ストック(Contribute)はどうだったのか

[厳密には=ストック数ではなくなりましたが]
2016/5/30現在のストック数は270です。
最近、Qiitaにストック数の推移が表示されるようになってしまって、
「こいつこんなに投稿してんのに全然ストックされねえw」
状態が可視化されるようになってしまいました。

![cont.JPG](https://qiita-image-store.s3.amazonaws.com/0/62354/481a2cae-50fa-514b-023e-141a08160d49.jpeg)

## ストック数上位5件紹介

![pop.JPG](https://qiita-image-store.s3.amazonaws.com/0/62354/1a290cf5-5c62-8307-394b-08e39bda6345.jpeg)

分母が大きいためか、Qiitaの記事はよくストックされます。
以前はQiita一色でしたが、はやり？のElectronにも少し手を出した結果が反映されています。

* [Qiitaのコードにコピーボタンを追加するユーザースクリプト]

冗談めかした冒頭がトップなのが恥ずかしいですが、やはりQiitaなのが伸びました。
JSがChromeでは実装済みで、Firefoxでもできるようになったので…という記事なので、JS全体としては新鮮ではありませんでした。
ただ、傾向としてどこかの新機能といった物はストックされやすいので、それ+Qiitaという意味でのトップだと思います。

内容に関しては、作ったは良いが、あまり使わない機能ですね…
ネタ元の運用を自分がしてないせいで、全体をコピーしたいという要望はあまりでませんでした。
しかし、任意のサイトにコピーボタンを追加するというアイデアは、
他のサイトのユーザースクリプトでよく使っていますし、このコードをボタンでコピーすることもありました。

* [Electronが作成・保存するlocalStorageなどのキャッシュディレクトリ]

ネットで調べても全然でなくて(でもドキュメントにしっかり書いてあって)、困って自分で調べたよ。という記事でした。

* [Qiitaのコードの左側に選択不可能な行番号を追加するユーザースクリプト - Qiita]

Qiita記事です。
こちらも他人とQiitaを見ることがないので行数を共有することは個人的に無いのですが…楽しかった。

* [do-while(false) を見つけたときの雑感 - Qiita]  

本当に想定外に伸びた記事。
メモ書き気分でしたが、自分が知らなかったことは他にも知らない人が居るということを再確認できました。

* [Electron0.37でCSS Variables(CSSの変数)が利用可能になりました - Qiita]

Electron(Chrome)の新機能の紹介記事です。
週一投稿のお茶濁し的記事で、よその情報の寄せ集めがトップ入りしてしまったのは少しさびしかったです。

***

以上がストック上位5件です。
20ストック超えが一本という悲しい結果ですが、
Qiita系記事は本当にストック乞食気分だったので、
まあ、特別なことをしないプログラマにしてはQiitaとElectronで上手く稼ぎおったな、といった感じですね。

## 平均ストック

少し集計時期が古いですが、こんな記事があります。

[「平均被ストック数は9」「被ストック数100以上の記事は1%」…QiitaAPIv2で1万件の投稿を分析して分かったこと - Qiita]

>平均ストック数は「9.3」でした。ただし、中央値は「4」でしたので、記事を投稿した際、最も可能性の高い被ストック数という意味では「4」になるかもしれません。

自分はこの記事を含めて70投稿なので、ひとつの投稿につき

`270 / 70 = 3.85`

平凡プログラマらしく平均なのではないでしょうか。
70本投稿した人として見るとあれですが…

なお、上位5件のストック数の合計は83。これは全体の30%を占めており、トップを除いた記事の平均ストックは

`(270 - 83) / (70 - 5) = 2.87`

と平均を下回ります。
投稿し始めた時の目標は「一記事2ストック」なので、なんとか目標は達成できています。


# <i class="fa fa-book" aria-hidden="true"></i> 記事に関して

投稿したもの、眺めたものに関して。

Qiita系、新機能系が伸びることはストックでも言及しました。

## 記事の賞味期限は2~3日間

つまり新着フィードに乗って確認されている間です。
格段に優れた、後から検索されるような記事でなければ、それ以降ストックが増えることは稀です。

## 記事を書くのは大変

文章を書くのが苦手なので、一つの記事に半日から最長2日ぐらいかかります。
ネタ・アイデアを仕入れて、
作って、
文章を書いて、
コードを貼って、
スクリーンショットとって、
たまにgif作って、
見出しにアイコン貼って、
リンク貼って、
ぼーっと推敲して…

と、もろもろあって、一年経った今もちっとも作成スピードは上がりません。
業務時間に(内緒で)書いてるので、普段は暇故にのんびり書けるのですが、
本業が忙しいときは本業をパパッと片付けて投稿のための時間を確保しなければなりません。

## 頑張れば報われる

ストックのために記事を書くのではないのですが、ストックされないと凹むものです。
しかし！記事をちゃんと、しっかりとまとめると、ストックは付きます！
特に内容(記事をちゃんと書いてるか)とユーザーの興味の範囲が合致すれば、ストックしてもらえる可能性は高いです。
(通知が飛ぶので気がひけるのですが)
本意は知らずともそういった方として自分が個人的に認識しているのは
@Noboruhi と @morika-t のお二人で、
低レベルだけど頑張って書いた記事が0ストック回避したりと、ストックを気にしていた時期のモチベーションを保てました(今も気にしてるんですけど)。
逆に言うとそれ以上のストックを得られる記事を書くべきだ、と内心0ストック扱い(最低だ)していた時期もあります…

ただ、ストックの使い方は人それぞれで

* 役に立った
* 役に立ちそう
* 興味はある
* 後で読む
* 応援
* お礼(参照・回答記事とか)
* フォロワーに教えたい

などがパッと浮かぶ使い方で、ストックが必ずしも評価の行動ではないと思うのですが、逆にストックしか評価を見れないんですよね。
気にしすぎはいけないのですが、
そうも行かないのが性ですね。

[ストックしてくれる人は偉大という話 - Qiita]

最近では別のアプローチから記事を評価するなんて面白いサービスも出ているので、量ではなく質を目指す、というのもアリですよね。
[絶対に見逃せない投稿が、そこにはある - Qiita]

## メモと書くのはもったいない

メモでもストックは付きますが、見る側としてはメモとタイトルにあるとさらっと流してしまいます。
メモと付けたい気持ちは十分わかりますが、しっかりまとめられているのにメモとついていると、
他人事ながらもったいないなと思います。

## 何番煎じでもいい

これもかなり個人的ですが。
長く同じ場所に居ると話題がループしてる感覚ってありますけど、
目新しいことでなくても発信することが大事だと思います。
Linuxコマンドやフレームワークの基本的な使い方
言語の新機能
公式マニュアルからのコピペ
誰もが知ってるであろうことでも、自分で考えしっかりまとめているものには価値があると思いますし、評価されます。
少なくとも自分は
「前に同じ記事あったし。ggrksそして消せ」
とか思いませんし。
自分はストックもあまり見返さないので、新着で再度流れる方がいいこともありますね。

ただ、過去の良記事を踏まえたうえで(リンクを置きつつ)書けるとなお良いですよね。

## 役立つ記事

* [Markdown記法 チートシート - Qiita]  
基本の書き方
* [Qiita の記事の見出しに Font-Awesome を利用して見栄えを良くする #qiita - Qiita]  
  & [Qiitaで使えるアイコン一覧（あるいはFont Awesome 4.5.0 チートシート） - Qiita]  
  見出しを装飾すると記事がいいものに見えてきます。単純に便利。
* [ブラウザで開いているページのタイトルを楽にコピーする方法 - Qiita]  
  とりあえずリンクタイトルを取得するときに。これを知ってからリンク作成が楽になりました。
* [Qiita などの技術系の記事で残念に思うポイント - Qiita]  
  気にしすぎもダメなんですけど、考えに触れるだけでも
* [Excelの表をMarkdown形式に変換 - Qiita]  
  Markdownで表を書くのは大変なので、エクセルから変換すると楽です。  
  Webツールなのがgood

# <i class="fa fa-smile-o" aria-hidden="true"></i> 記事を書いてきて良かったこと

## Markdown脳になった

MarkdownはQiitaで初体験だったのですが、もう便利で、
今ではただのテキストファイルもこの形式で書いています。
最初はオレオレルールでメモをとっていたのですが、同じテキストでもこちらの方が共有しやすいと思います。
慣れれば脳内プレビューされるのでテキストでも十分です。

## コピペが増えた

最近、JavaScriptを書く時に感じるのですが、
前に書いたことがあるコードが増え、Qiitaからコードをコピペして少し改変するだけで使えることが増えました。
投稿記事の検索がしやすいので、書いたコードが死ににくいと思います。
頑張って記事にしたので書いたことを忘れにくいとも思います。

## 周りを便利にしようとした

記事のネタとして、ユーザースクリプトやHubotを使うことで、日々のPC環境が改善されてきました。
最近はネタ切れなので、今更ながらVBAでエクセルのマクロを勉強しようと思っています。
ネタ探しをしなければ、ただあるものを使うだけで、改善活動などしてこなかったと思います。

## 他の技術に興味が出てきた

実際にさわることはまだまだ少ないのですが、でも気になることはたくさんあります。
今の会社で働いてる間は使わないでしょうが、Rubyなどの他言語や機械学習などは気になります。
少なくとも、今触っている技術だけでいいという停滞感は薄まり、やや(心地良い)焦燥感が生まれます。

## 日曜プログラマにな…りそう

これは自分が悪い方に頑固なだけなのですが、多分3ヶ月も続ければ家でもプログラミングがしたくなると思います。
自分がやりたいことを気の赴くままに調べてコードを書くということは、
順調に行ってる内は楽しいものです。
詰まってるときもまぁ…それなりに楽しいです。

自分もそろそろ欲求に負けそうです。Mac欲しい。

## 会社のプログラマ以外のプログラマとしての自分

プログラマとして雇われている以上、会社に求められていることがあります。
今ならPHPが書けてJavaScriptが書けて、HTML,CSSもちょこっとできてWebアプリケーションが作れたらいいのです。
社内ではそれが求められて、それがうまくいくと評価されます。
けど、それだけでいいのかな？とも思います。
テストコードが書けなくても今の社内では問題無しですが、
たとえば(ネットの)みんな使ってるPHPUnit、自分は使えなくていいの？と。
でも、一人でPHPUnit使ってみても、社内で知ってる人は少ないですし、発表の場も(作ろうとはしてますが)ありません。
業務で使うことも当分ないでしょう。
じゃあやらないでいいか！っというときに、Qiitaでは記事をネットに公開することができます。
成果を発表する場があります。
評価(ストック)もわずかながらあります。
社内で求められるプログラマ像があると同時に、ネットを見てると、ある程度スタンダードなプログラマ像[^5]が浮かびます。
社内に最適化したプログラマを目指すなら[^6]問題ないのですが、
一度会社専属という考えを外し、ただのプログラマとしての自分はどうなのか？
というのは入った会社によっては一度考えてみてもいいかもしれません。
そういった感覚を、Qiitaでの読み書きや勉強会への出席は教えてくれました。
そして良いプログラマを目指す小さな一歩が記事投稿だと思っています。

# <i class="fa fa-user" aria-hidden="true"></i> Qiitaに書いたことがない人がいたら

書きましょう。
今の時代、
[teratail【テラテイル】｜思考するエンジニアのためのQAプラットフォーム]
も
[スタック・オーバーフロー(日本語版)]
もあって、疑問を人力検索で解決するだけなら良い時代です。
でも直接質問をぶつけるのが恥ずかしいシャイボーイはQiitaに書きましよう。
Qiita(のユーザー)はいい意味でおせっかいで、いい意味で無関心だと思います。
質問サイトではないので、「\~\~してみました。(でも\~\~できるはず)」とTIPS形式で書く必要がありますが、
低レベルだとか悪口が書かれることはないです。
運が良いとふらっと誰かがコメントを残してくれることもあるでしょう。
技術メモ・作業途中のメモの顔をしてしれっと投稿すればいいのです。
駄目なら質問サイトへ行きましょう。

ローカルのメモ帳に書いてることも公開しちゃいましょう。
限定公開するぐらいなら完全に公開しましょう。

メモを投稿することは許されています。
どんな駄目プログラマでも、です。

くだらない内容でも一年続ければ達成感は得られます。
確実に+αしました。
じわじわ右肩上がるグラフを見るのは楽しいです。
typo修正でも編集リクエストが採用されると嬉しいです。

# ごめんなさい

Qiitaでの質問記事や、あまり技術に関係ない記事にはコメントでやんわりと指摘がつくことがあります。
今回も[Qiitaとは - Qiita]にあまり沿わない内容だとは思います。
ただ、新人プログラマ応援タグが出来ましたので、これを免罪符に何卒見逃していただければと思います。

[Qiitaで春の新生活を応援しましょう！ - Qiita Blog]

>* 新人プログラマ応援
>
>  *  言語やフレームワークの学び方
   * ツールの使い方（GitやGitHub、エディタなど）
   * 先輩（ベテランから2年目社員、上級生）からのアドバイス
   * 2年目社員が1年間たって思うことの共有、たとえば、こんなことが役だったとかこんなことをやっておけば良かったなど。

最後のものだと思っていただければ幸いです。

[^1]: 一週間で書き上げることができたならば
[^2]: ここでは趣味でプログラミングはせず、お金のため**だけ**に会社でのみプログラミングをする人の意
[^3]: 本家stackoverflowなど論外。英語即ブラウザバックでした。
[^4]: 対象がPHPであることも原因だったかもしれません。手軽故に。
[^5]: 輝かしい上澄みで構成されてしまうのですが
[^6]: そして素晴らしい会社であるなら

[Qiitaの投稿アクティビティをGitHubのように表示するヤツ - Qiita]:http://qiita.com/snaka/items/7f4e5653496689077ce5
[Qiitaのコードにコピーボタンを追加するユーザースクリプト]:http://qiita.com/khsk/items/27a80755d883521ecd73
[Electronが作成・保存するlocalStorageなどのキャッシュディレクトリ]:http://qiita.com/khsk/items/90486b2359aa6f9d4b94
[Qiitaのコードの左側に選択不可能な行番号を追加するユーザースクリプト - Qiita]:http://qiita.com/khsk/items/89fc40321f1387829135
[do-while(false) を見つけたときの雑感 - Qiita]:http://qiita.com/khsk/items/a2e06cd5de60b918dcfb
[Electron0.37でCSS Variables(CSSの変数)が利用可能になりました - Qiita]:http://qiita.com/khsk/items/e2d0fe73548e13be8698
[「平均被ストック数は9」「被ストック数100以上の記事は1%」…QiitaAPIv2で1万件の投稿を分析して分かったこと - Qiita]:http://qiita.com/kure/items/0895983c3e05bfdf8377
[Qiitaに毎週１件アップを半年続けてみた感想 – kwLog]:http://blog.makotokw.com/2013/09/17/qiita%E3%81%AB%E6%AF%8E%E9%80%B1%EF%BC%91%E4%BB%B6%E3%82%A2%E3%83%83%E3%83%97%E3%82%92%E5%8D%8A%E5%B9%B4%E7%B6%9A%E3%81%91%E3%81%A6%E3%81%BF%E3%81%9F%E6%84%9F%E6%83%B3/
[teratail【テラテイル】｜思考するエンジニアのためのQAプラットフォーム]:https://teratail.com/
[スタック・オーバーフロー(日本語版)]:http://ja.stackoverflow.com/
[厳密には=ストック数ではなくなりましたが]:http://blog.qiita.com/post/142996418764/updatedcontribution
[Qiitaとは - Qiita]:http://qiita.com/about
[Qiitaで春の新生活を応援しましょう！ - Qiita Blog]:http://blog.qiita.com/post/141132737319/4yournewlife
[ストックしてくれる人は偉大という話 - Qiita]:http://qiita.com/syui/items/e1ef57d90c632537eefc
[Markdown記法 チートシート - Qiita]:http://qiita.com/Qiita/items/c686397e4a0f4f11683d
[Qiita の記事の見出しに Font-Awesome を利用して見栄えを良くする #qiita - Qiita]:http://qiita.com/tbpgr/items/361d8aaa38fb57d75216
[Qiitaで使えるアイコン一覧（あるいはFont Awesome 4.5.0 チートシート） - Qiita]:http://qiita.com/noriaki/items/f11cd960988dc2560cca#faq%E7%9A%84%E3%81%AA%E3%82%82%E3%81%AE
[ブラウザで開いているページのタイトルを楽にコピーする方法 - Qiita]:http://qiita.com/guimihanui/items/cb7c01e6a3f00f8d96f7
[Qiita などの技術系の記事で残念に思うポイント - Qiita]:http://qiita.com/scivola/items/f02589968a4ca27bc52b
[Excelの表をMarkdown形式に変換 - Qiita]:http://qiita.com/QUENCH/items/d77d0983d4a6d9d7de8e
[絶対に見逃せない投稿が、そこにはある - Qiita]:http://qiita.com/koher/items/b5c7c949aa62c60d5457