新しいWebサイトを作りました。
以前、技術評論社よりAndroidアプリ開発の初心者本を出版したのですが、その本のAmazonレビューに「Javaのことをまったく解説していないのでこれだけではわかりません。初心者向きではない」というような指摘が多かったことから「やりましょう」とばかりに取り組んだこの企画。 実は、9月の名古屋つ部ではちらりと発表していたのですが、ようやくのお目見えとなりました。
公開が遅くなった理由?
Android Studioのアップデートに聞いて下さい!
今回もまたサイト掲載のコミックとイラストは根雪れいさんにお願いしました。 みんコミの新連載準備でお忙しい中、最高の眼鏡っ娘を生み出していただき、本当にありがとうございます!
>RT 有山さんの「はじめてのAndroidアプリ開発レッスン」に絵とマンガを描きましたよ(描くにあたってメガネ外さないでとしか要求されなかった…
— 根雪れい.ティア不参加です… (@neyuki_rei)
使っている技術
僕はAndroidアプリ開発がメインの仕事なので、Webについてはリアルタイムではフォローしてないのですが、大体1年に一回くらいはサイトとかサービスを作っていたりします。
以前は、Amazonの価格の変化をチェックするサービス有山家の買い物メモとか作りました。
たまにWebの世界に触れると、技術やトレンドが変化していて面白いんですね。 数ヶ月ぶりに見る、みのもんたの顔が全然違って見えるのと同じ現象です。
なので、今回のサイト構築にあたっても、なるべく面白そうな技術やプラットフォームを採用するようにしました。
Hugo
サイトの構築にはHugoを採用しました。 HugoはSteve Franci氏がオープンソースで開発している”Static Website Engine”です。Markdownとテーマ・テンプレートから静的なHTMLを出力します。
同じSWEとしてはJekyllやOctpassOctopressが有名ですが、HugoはGolangで開発されているので変換のスピードが高速という利点があります。
今回はコンテンツサイトということもあり、さくっとWordPressで作るかなとも思いました。しかし、最近アップデートのためだけにコントロールパネル開いてる気がするし、記事に少しでもアクセスが集中するとサーバーが死んじゃうくらい重くなるし、もうWordPressはこりごりだ!
ということでHugoにしました。 (正確には、CMSを使わない決定をしたというのが正しいでしょう)
それだとJekyllでいいんじゃない? という話になるのですが、Jekyllはgemの依存パッケージがガンガンはいりそうなので、コンパクトにまとまっているHugoを選びました。あと、使ったことがある人が少なそうだったので、楽しそうだなと思ったのも理由の一つですね。
結果的には大変苦労をしました。
その辺りのアレコレについては、また機会があれば詳しくお話しできればと思います。
Material Design Lite
「世の中はマテリアルデザインですって。奥さん」
「そうは言っても一からあんなデザインを作ろうなんて、正気の沙汰じゃないよな。AndroidだとDesign Support Libraryがあるけど、Webではなにかないの?」
「Polymer?」
「Polymer、アイツはダメだ! デザインを適用したいだけにしては重量級が過ぎる!」
「そこでMaterial Design Liteですよ!」
ということでMaterial Design Liteです。
MDL(Material Design Lite)は、Googleが開発しているデザインライブリ(こう言う言い方は大丈夫なんでしょうか)です。
MDLを使えばCSSのクラス指定をするだけでマテリアルデザインっぽい見た目と動きのサイトが結構、簡単に作れます。
サンプルも充実していて、 はじめてのAndroidアプリ開発レッスンのデザインは、ほとんどがサンプルを組み合わせて出来ています。
MDLはとても便利です。しかしMDLのクラスの命名規約として採用されているBEMは、人類が習得するにはまだ精神レベルが足りてないと思いました。
TypeSquare
TypeSquareはモリサワが提供しているWebフォント配信サービスです。 最近だとAdobeのTypekitにモリサワフォントが追加されたと話題になりましたがTypeSquareなら元から使い放題です。
ただ、たくさんのフォントが使えるのと、実際にたくさんのフォントを違和感なく組み合わせるのは別の話で、この辺りはまだ試行錯誤中です。
モリサワさんにおかれましては「フォント活用術」みたいな講習をやってもらえれば是非とも受けたいと思っているのでご検討の程よろしくお願いいたします。
Let’s Encrypt
SSL証明書はLet’s Encryptのクローズドベータプログラムで取得しました。
PCにインストールしたクライアントソフトを使って生成したトークンを、サーバー側でアクセス可能な状態にしてサーバー所有を認証します。
SSL証明書を取得できたのでnginxのSPDYを有効にしてあります。
その他
その他、オープンソースソフトウェアについては”Open Source License”をご覧ください。
おわりに
せっかくサイト作ったんだから、3回は続けたいなぁと思っています。
あと、書籍の方は絶賛改訂作業中です。
改訂版は来年の1月上旬頃発売予定なので、そちらの方もよろしくお願いいたします。