自分たちのブログは自分たちで作るしかないのでハッカソンやった

株式会社ベーシック CTO @zaru です。こんにちは。

先週末、自分たちのブログは自分たちで作るしかないという気持ちが高まったのでハッカソンを開催しました。参加人数10名。この人数、役割分担しながらとはいえ、同時進行でまともな開発ができるのか…とぼんやりとした不安があったけど、結果とても楽しく充実したハッカソンを過ごせました。というわけで、その様子をお伝えします。

まず僕はハッカソンに欠かせないであろう「けん玉」を持参。ハッカソン参加者ならわかると思うけど、あの逃げ場のない空間の中、技術的な壁に阻まれ、時間に追われた状況に長時間いると、間違いなく発狂する。その発狂する心を、少しでもけん玉の「玉」に逃すことで気持ちよくハッカソンができる。きっと、そう。

社内エンジニアブログの存在理由って?

まずハッカソン開催に至った理由から。

弊社では数年前からエンジニアブログを運営している。当初は僕が技術記事をとにかく書いていくためだけの場所が欲しくて作り、色んなメンバーからの投稿もあったのだけど、昨今では技術系のアウトプットはQiitaに移行してしまったため、エンジニアブログには何を書けば…的な感じで停滞してしまっていた。

運用が停滞したエンジニアブログに書かれているのは、定期開催されるTGIFなどのLTイベントレポートと、弊社マネージャー @ykyk1218 のちょっと良い話くらい。あ、本当にちょっと良い話けっこう書いているので是非読んでみてください。

アウトプットは面倒だが役に立つ
普段の仕事でなかなか成長を実感できなくてもやもやしている人へ
技術的負債に立ち向かうための心構え

TGIFのイベント記事は書きたくて書いているというよりは、イベントレポだから書かないとなーという惰性の面があり、メンバーからも「うんこうんこうんこー。(検閲システムにより置き換えられました)」というような意見も上がった。

採用目的というのは理解できても、採用にちゃんと貢献できているのかが実感できないジレンマがあったという感じ。そこで皆とブログの存在意義について話し合った結果、改めて以下のような目的を持たせることにした。

採用目的:少しでもベーシック開発部に興味を持ってもらう人を増やすために自分たちで工夫する

技術的に遊ぶ:メイン業務とは離れて、技術的にお遊びコンテンツを組み込めるようにする

OSS活動:ブログCMSそのものをOSSとして公開して継続的に開発したい

まず一番の目的はエンジニアの採用。実際に弊社に入社を決めた人の話を聞くとエンジニアブログを見たとかQiitaの記事を見たとかといった接触があったので、決め手にはならずとも判断材料/知ってもらう機会を増やすという意味で、やはり有用だと判断。

とはいえ当初の課題である「採用にちゃんと貢献できているのかが実感できない」を解決するために、自分で考え自分で検証できる場にしていこうということにした。いわゆる目標数値持ってPDCA回す的な。Webマーケティングの会社ですので。ベーシックは。

また、ブログ運営自体にモチベーションを持たせるために、エンジニアが面白い|作りたいと思った機能やコンテンツなどを好き勝手に実装できる場にすることにした。そうなるとWordPressやjekyllのような既成CMSではなく、フルスクラッチで作っていった方が楽しいし工夫の余地が大きいよねーという感じで決めた。

そもそも既存のブログシステム(jekyll)がぶっ壊れててまともに改善できないという問題があった。

そしてその結果として、ブログCMSをOSSとして公開し継続的に開発ができるようになったら良いなーと考えている。が、まだCMSの方向性が固まっていないので、ひとまず置いておきます。尖っていて誰かの問題解決になるCMSになれば公開したい気持ち。

さて、どうやって作ろう?

普段やったことない技術にふれたい!とはいえ、あまりに離れすぎていると開発スピードが遅すぎて完成する前にプロジェクトが死ぬ可能性があったので、メインは普段からさわってるRailsをチョイス。ただ細かいところでは各メンバーが未経験で、且つやりたい技術を含めることにした。

・Dockerで開発環境からステージング/プロダクションまでやる

・Rails5.1.0 beta + WebPackerの構成にする

・Vue.jsでMarkdownエディタや管理画面を作る

・WebSocket使ってリアルタイム的なコンテンツ組み込む

それぞれ今の業務ではメインではないけれど、1年後くらいにはメインになってそうな技術領域なので、無駄にもならない。将来的にはサーバサイドはGoにしたいなぁという気持ちがある。あとMarkdownエディタアプリをElectronで作りたい。

ちなみに、Rails5.1.0 betaでSlimを使うとScaffoldがこけるというバグを見事に踏んで、そのコミットを持ってこないと作業が全くできないという面白事態もあった。

僕は何を作ったのか

僕の担当はデザインだったけど、面白コンテンツも作りたかったので「閲覧者のマウスの動きを全員で共有する」機能をActionCable使って開発した。はっきりいって無駄コンテンツ以外の何物でもないが、WebSocketで遊べたので良かった。今後も、面白コンテンツを積極的に開発していきたい。

予定としては「ブログを通して、来訪者とベーシック開発部がリアルタイムで会話できるチャット」「誰かが気になった文章を選択してマーカー付けると共有できる機能」などを考えている。

ハッカソンハッカソンハッカソン

というわけでハッカソンの様子(写真撮り忘れて全然ない…)。

朝決めたスケジュールだと18時30分で終了だったのに、みんなまだコード書きたい!というわがままなこと言うので、結局20時位までコード書いてた。終盤、@Ciger@drivehi46が「動いたー!!!!」と歓声の声を上げてたのが印象的。

フロントチームがVue.jsを使ってどんなことをやるのか話してる様子。フロントチームは何故か5名という大人気ぶり。参加者10名なのに。

日本酒部部長オススメの日本酒。非常に美味しい。

打ち上げの様子。

満足したので僕は家に帰って一人打ち上げをした。

ハッカソンで同じものをつくるのは、短時間で濃密なコミュニケーションがされるので、普段の開発とは違う楽しさがあった。「声がけしてこ!💪 」という感じでリアルタイムコーディングを感じた。

完成までまだまだなので定期的にハッカソンを開催して行きたい気持ち。

募集してます。プログラマ。

Ruby | PHPエンジニア
めっちゃ売れてるオリジナルグッズ作成ECをもっと魅力的にするエンジニア募集
スマホケースの専門サイト「phocase ( https://phocase.jp/ ) 」は、女性をターゲットに、おしゃれなデザインケースを展開しています。Androidのおしゃれなケースがない、という問題解決から、2013年にスタート。多くの女性のお客様に支えられ、今年で5年目に入ります。 オリジナルグッズを1個から安価に作れる「Canvath ( https://canvath.jp/ ) 」は、minneやCreemaなどの、誰でも簡単にネットショップが作れるサービスでオリジナルグッズを販売するネットショップオーナーさま向けのサービスです。2015年から正式にスタートし、ベーシックのなかでも驚異的な成長率を誇るサービスです。
株式会社ベーシック


こんな感じの人が働いています




株式会社ベーシック's job postings
Anonymous
10952288 1529701700646147 8393375676188266012 n
A236ca4a 89c2 4f44 b223 e8f748de661f
8b7c0642 b272 40eb b5ff daf2888da0a0?1504184836
Cfcc7149 10bb 44a5 abd5 4218ad71f8e3
Picture?height=40&width=40
13 Likes
Anonymous
10952288 1529701700646147 8393375676188266012 n
A236ca4a 89c2 4f44 b223 e8f748de661f
8b7c0642 b272 40eb b5ff daf2888da0a0?1504184836
Cfcc7149 10bb 44a5 abd5 4218ad71f8e3
Picture?height=40&width=40
13 Likes

Weekly ranking

Show other rankings

Page top icon