KAI-YOU LabはMiddlemanで運用していきます

f:id:KAI-YOU:20190722141758j:plain

はじめまして。株式会社カイユウでエンジニアをやっていますキャベツこうべです。

この度、KAI-YOU Labという名前でカイユウの開発、運用に関することを発信していくことになりました!

今回KAI-YOU LabのシステムとしてMiddleman。そしてその拡張のMiddleman Blogを採用したのでその辺りのお話をさせていただきます!

Middlemanとは

まず簡単にMiddlemanの説明をします。

公式サイトでは"Middlemanはモダンなweb開発のショートカットやツールを採用した静的サイトジェネレータです"という説明をされています。

なんのこっちゃという感じですが、Middlemanを使うと、サイト作成に関してHTMLCSSJavaScriptではなく、Hamlや、 SCSS(Sass)CoffeeScriptというそれぞれの拡張メタ言語をつかって普段のサイトづくりのストレス等を解消することができます。

生のCSSなんて書きたくない・・・・

それらの拡張言語で作成したサイトを$ middleman buildというコマンドでコンパイルし、HTML、CSSjavascriptを生成することが出来ます。

HTMLなどが生成されるというのが重要で、そのためPHPなどがインストールされていないサーバーにも、ある程度、動的な要素をいれてサイトを構築することが出来ます!

細かいことに関しては、今回書いてしまうと本題から外れてしまうので、この辺りを参考にしてみてください。

Middleman: インストール

なぜMiddleman Blogなのか

カイユウでは基本的に、サーバーサイドの開発でPHPを用いています。そのため、PHPでのブログエンジンを利用するということも考えました。

そして、PHPでブログと言ったら、そうです。Wordpressです!!!

しかし、イケてるベンチャー企業(技術的にも!)を目指しているカイユウとしては、技術ブログにWordpressを採用することが出来ませんでした。

ちなみにPHPでつくられたStatic site generatorとしてSculpinなどがあります。

また、それ以外にも下記のような選択肢がありました。

サーバーに設置するやつ

Lokka、ghost、baser CMS etc...

Webサービスを利用するやつ

はてなブログlivedoor Blogtumblr、Medium etc...

同じようにMarkdownを利用して記事を生成するもの

Octpress (Jekyll)、Hugo、Hexo、Scriptogr.am etc

それらの選択肢もありましたが、Middlemanを選択したのは大体以下の理由です。

受託案件へのMiddlemanの利用

弊社では受託制作も行っています。(WORKS | 株式会社カイユウ - KAI-YOU inc.

最近ようやく人員も増えてチーム感が出てきた開発部ですので、それぞれのノウハウの共有という部分がまだ足りていません。(Trelloでゆるくアジャイル開発をはじめる方法

その中で受託案件にも使用できるMiddlemanを開発部全体で使っていくことで、今後の案件に関しても役に立てていきたいという狙いがあります。

Middlemanの利用の手軽さ

基本的に弊社はMacを利用しています。Rubyがあらかじめインストールされた環境では、ほとんどの場合、以下のコマンドを打つことで、Middlemanが使用可能になります。

Terminalなどを扱ったことがないデザイナーやライターでも、わりと簡単に環境を構築できます。

# middlemanのインストール
$ gem install middleman

# プロジェクトの新規作成
$ middleman init PROJECT-NAME

# 開発サーバー起動
$ middleman server # localhost:4567にアクセス

# プロジェクトのビルド
$ middleman build

普段の開発の延長上にブログ執筆をもっていく

今後、このブログでの記事執筆から校正、そして公開までのフローを、普段の開発フローと同じ手順になるように構築することで、開発フローが身に付いているエンジニア・デザイナーが記事執筆をしやすい環境を整えていくつもりです。

また、逆に、新しいメンバーが入った際にまずブログを執筆できるようにさせれば、開発チームにもスムーズに参加できるようになります。

今後のカイユウとしての技術展望

カイユウが運営しているWebメディア「KAI-YOU.net」は、リリースから2年少々が経ちました。現在、フレームワークとしてはCakePHPを使用しています。

この2年間でCakePHP、そしてPHP自体をとりまく環境が変わってきていることもあり、3周年を見据えてKAI-YOU.nerをRailsでリニューアルしたいという気持ちがあります。

そのためにも、PHP以外での開発経験、その運用経験などをどうにかしていきたいということもあり、RubyでつくられているMiddlemmanを採用しました。

それらが、数ある選択肢の中で、カイユウがMiddlemanを選んだ主な理由です。

という表向きの理由もありつつ、最終的には私のエゴでMiddleman + Middleman Blogに決定させていただきました!

シンプルに使おうとすると楽だけど、複雑なことをしようとするとツラくなる感じはありますが、オーソドックスに拡張していけるので、その辺りもいずれ書こうと思います。

カイユウではエンジニア・デザイナー募集中です!

というわけで株式会社カイユウではMiddlemanを使って特設ページめっちゃつくるマンであったり、エンジニアを募集しております!

よろしくお願いします!! \\\(۶•̀ᴗ•́)۶////