社内アドベントカレンダーradventについて

社内用アドベントカレンダーradventを作ってから色んなことが起きたのでまとめておきます。

tl;dr

  • きっかけは社内SNSから
  • 実際に作って運営してみてわかったこと
  • 軽く発表した
  • 紹介された

radventとは

f:id:koyamay:20150116100819j:plain

nanonanomachine/radvent · GitHub

Qiita様のアドベントカレンダーを社内のイントラネットでできるようにしたRuby on Rails製のアプリです。markdown形式で記事を投稿することができ、リアルタイムプレビューや画像アップロード機能などがあります。Qiita様と違い、日付が過ぎると登録記事が自動公開されます。

きっかけは社内SNSから

弊社にはMixiスタイルの社内SNSがあります。利用者に技術者が多いことから普段から技術系の話が盛んでした。そんな中、2014年の11月6日に先輩のPailMakerさんがQiita様のAdvent Calendarを紹介する日記を投稿されました。

社内でもこういうイベントをやってみるとどうだろうかな。

この一言でみんな盛り上がってどうやってやろうかという話に。社内SNSは長文が読み難い&シンタックスハイライトもなく、ちょっと書きづらいという問題がありました。「パブリックなブログでやろうぜ」みたいな話もありましたが、記事を公開するのに億劫な人もちらほら。そんな中Ruby on Railsの勉強をしていた自分が作りたいと申し出ました。

11月の序盤である程度時間があったこともあり、とりあえず作ってみたら?という流れに。「2時間でできるよねー?」というプレッシャーもRubyistの先輩であるkyowさんからかけられつつも週末やってみました。

仕様検討

その日にアプリの構成を紙に書いたりして翌日に社内SNSに案を投稿。汎用的にしようとする自分の悪い癖がでて、ユーザ管理やパスワードによる保護などで悩んでいました。「とりあえず最小限の構成でやってみたら」という先輩のコメントでふっきれて最速で作ることを意識しました。

実装

その週の週末に実装を進めました。週末で形にしないと勢いがなくなりそうで、勝手にプレッシャー感じながら作っていました。

radventは技術者が使い慣れているであろうmarkdownを投稿できるようにしました。表示の方は愛用していたgitbucketのmarkdownパーサー、シンタックスハイライトを参考にしようと思いましたが、最終的にはmarkedhighlight.jsがことのほか楽だったので採用しました。OSS最高!

デザインはQiita様のインスパイアしすぎてます。ごめんなさい...許してください...

なんとか週明けの月曜日に社内のサーバにアプリを建てて稼働することができました。

運用

そんなこんなでアプリを公開したところ、結構ウケがよくてアドベントカレンダーのアプリとして採用されました。よかったー... それからアドベントカレンダーが始まるまでバグを直したり、同期の人などに声をかけて登録人数を増やしたりしていました。

社内アドベントカレンダーだとどうしても営業日以外の土日が埋まり難いということがありました。社内の為休日に記事を公開するのが難しいです。Qiita様のアドベントカレンダーだと週末の方が投稿しやすいような気がします。ここら辺の違いが少しおもしろかったです。

下記画像は実際の社内アドベントカレンダーの画面です。KoyamaYは僕です。

f:id:koyamay:20150116013812j:plain

仕事が忙しく、登録しても記事を書けない方もいらっしゃいました。その為記事を埋めたりしていました。文章書くの好きなので楽しかったです!

自分はWeb屋なのですが、恥ずかしながらユーザとこんなに近いアプリケーションを開発・運用をしたのは初めてです。実際に運用して、ダウンタイムをできるだけ少なくすることや、ユーザの声にいい具合に耳を傾けることなど多くのことが学べました。

アプリケーションを公開してからも色々な人の意見を元に、コメント機能や画像投稿機能などを追加しつつ運用していきました。Piwikも導入し、記事別のPV数ランキングを公開するなどして盛り上げる努力とかもしていました。

当初予想していた価値仮説の差

アプリケーションを作る上で、なんとなく価値仮説として以下を設定していました。

前述の通り、社内SNSには技術系の記事を書くのに難があり、ソースコードを乗せて記事を書けるのも一つの価値だと思っていました。

上記アドベントカレンダー画像の記事タイトル群を見ると分かるかもしれませんが、実際に公開された記事は社内情報と関係なかったです。やったことのない言語に挑戦してみた、OSSをさわってみた、エモい記事など...OpenCViOS関連の記事が多い印象でした。

そんなこんなでどうやらradventは、

  • 社内の技術者は、
  • アドベントカレンダーを楽しんでみたいが、
  • 普段ブログを書いたりしないし、モヒカンからの攻撃が怖いので
  • マサカリが飛んでこない社内で技術記事を書いてみたり、Qiita様のアドベントカレンダーみたいなことを試しに楽しんでみて、技術コミュニティの文化に触れることのできるシステムに価値がある

みたいだったというのが面白かったです。ただ社内アドベントカレンダーをきっかけに色んな技術に興味を示すようになったり、パブリックなブログを書き始めた人がでてきてとても嬉しかったです。

その後1:kawasaki.rbで発表してきた

自分はkawasaki.rbに2014年の後半から定期的に出席させて頂いていましたが、ひょんな流れから軽く発表をさせて頂けました。

kawasaki.rb #019を開催しました #kwskrb

社外の色々な方の意見を聞くことができたのも有益で貴重な経験でした。本当にありがとうございました。「Redmineプラグインにしたら良い」という意見などもあって目から鱗でした。

あまり勉強会の経験値は高くない自分ですが、kawasaki.rbはある程度傾向はあれども色々な方がいらして、ミックスカルチャーな感じで楽しいです。川崎周辺の方でRubyに興味がある方は是非是非!

その後2:MOONGIFTで紹介された

ある日出社してFeedlyをみていたら見慣れた画面が...

!?!?!?ナンデ!?見た日はかなりパニクりました。

まさか紹介されるとは思っていませんでした。ありがとうございます。まだまだ修正する部分がありますが、モチベーションとてもあがりました。

まとめ

そんなこんなで12月もあっという間にすぎ、もはや2015年です。2014年の年末はとても楽しかったです。弊社の色々な事業所の人が色々な技術記事を書いてくれて、12月は毎日「明日はどんな記事だろうなー」ってわくわくしながら過ごせました。以外と身近な人がどんなことに興味をもっているのかわからないものですね。

また自分事ですがユーザと近いアプリケーションを作って、運用できいい経験になりました。ポジティブな意見もネガティブな意見も「使ってくれている」って実感がすごい湧いてメチャクチャ楽しかったです。ユーザと近いの楽しいので仕事でももっとやっていきたいです。

radvent自体はPailMakerさんがきっかけになってくれて、kyowさんが設計のアドバイスやPR送ってくれて、自分は実装しただけです。他にも社内の色々な方に助けて頂いてできたものなので、あんまり自分が作ったという感じはしていません。皆で作った感じがすごいよかったです。小さな活動かもしれませんが楽しかったです。ありがとうございました!