2016年の仕事・作ったプロダクトなどのふりかえり

宮内さんの「2016年のまとめ。2,453コミット!」、とろゆにさんの「2016年の振り返り。」をみて素敵!と思ったので僕も2016年のふりかえりを書いてみることにしました。

プロダクト

Basis

Basis は Stylus/CSS フレームワークです。Sass 版を2015年の後半から開発していましたが、2016年に Sass 版のメンテナンスをやめて Stylus 版に移行したことをきっかけに、設計など大幅に見直してかなりパワーアップしました。Sass 版よりパワーアップしているのに Stylus 版はスターがだいぶ少ないので言語選択に失敗したか疑惑があるのですが開発は Stylus 版のほうがやりやすいので来年もめげずに頑張りたいと思います。

Basis テーマ

Integrity という名前で Basis のデモページを作っていたのですが、これも一からやり直し、デモページではなくて Basis のテーマという形にしました。Basis 自体は薄くてなるべく構造だけを定義するというコンセプトがあるので、一般的な CSS フレームワークのようにそのままでも見栄えするということはありません。そこで Integrity で一般的な CSS フレームワークのような装飾を適用して、そのままでもそこそこ見栄えするようにしてしまう、というそんな感じです。

これ、ソースファイルのみを GitHub で公開して、ビルド済みのファイルも含めたものをオンラインショップで売る、ということをしてみています。正直本気で売ろうとしているわけではなくて試しにやってみている感じなのですが、既に購入してくださっている方もいるので、もう少し整理して来年はちゃんとした形で販売できるようになれば良いなと考えています。

Mimizuku

mimizuku
昨年は Habakiri という Bootstrap ベースのテーマを作って「Habakiri はいいぞ」と言ってまわっていたのですが、いろいろと思うところがあって Basis をベースとした Mimizuku というテーマを作りました。Mimizuku は WordPress でテーマを作るのをいかに効率化するかというのがコンセプトで、WordCamp とかでも「Mimizuku はいいぞ」と言ってまわりましたが「あ、はぁ」みたいなリアクションが多くて心が折れそうになったりしました。昨年は Habakiri Adevent Calendar なるものをやって、複数名の方にも参加していただいたりしたので、今年は Mimizuku Advent Calendar をやって挽回するぞ!と思ったのですがついに1人で完走しました。でもプルリクいただいたり少しずつスターも増えてきたりしているので、こちらもめげずに頑張りたいと思っています。

まだ1つですが Basis のテーマを作ったということで、それをベースに Mimizuku の子テーマをつくって販売できるような形にしようと考えています。Habakiri のときもプラグインでスキン的なものを売っていましたが、そんなに売れなかったり自由度を高くしようとする余りメンテナンスがめんどくさくなってダメみたいなことがあったので、 トップページは Integrity のトップページみたいな感じでもうレイアウトは固定しちゃって、管理画面から文字と写真差し替えればデモサイト通りの見栄えするサイトができますよ!的な感じでやってみたいなと考えています。

Markdown Importer

WordPress の書籍などで著名な mgn さんから「マークダウンファイルをインポートして記事投稿できるプラグインを作って欲しい」というご依頼がありまして、uploads ディレクトリに FTP か何かでマークダウンファイルと画像ファイルをアップして管理画面でインポートボタン押せば記事ができあがるというプラグインを作りました。で、なんとこれは「オープンソースとして公開して良いよ」ということで、WordPress の公式プラグインディレクトリで公開してメンテナンス等行っています。本当は管理画面から zip でアップロードしてやれれば良いのですが、多分文字コード的な問題とかがあってうまく zip を展開できずにこのような方法となっています。良いアイデアをご存知の方がいらっしゃいましたが、GitHub でも公開しているのでぜひアドバイスを頂きたく…。

仕事でプラグインとか作ったとして、わざわざ「これ公開して良いですか?」と聞くことは無いのですが、基本的に嫌がる方が多いのではないかと思うんですよね。「俺がお金出したのになんでオープンソースで公開するねん!」みたいな。でもオープンソースとして公開することはそれなりにメリットがあると思っていて、結局オープンにするから別なユーザーな方から何らかのフィードバックがあったりするし、僕もメンテナンスを継続的にやったりするので、業務の根幹に関わるものは当然公開することはできませんが汎用化して外に出せる状態にできるものであれば mgn さんのように「オープンソースとして公開して良いよ」と言ってしまうのは結構オススメなのではと思いました。

MW Share Buttons

Habakiri 専用のアドオンとして Habakiri Share Buttons というのを販売しているのですが、このサイトを Habakiri から Mimizuku に変えたときに「Habakiri 専用だと Mimizuku で使えんやん…」という事態に陥りまして、一般的に使える MW Share Buttons というプラグインを作りました。でも普通にやっちゃうと Habakiri Share Buttons を購入して頂いている方に悪いし、さらに今後売れなくなってしまうので、公式ディレクトリでは公開せずにソースファイルのみ GitHub・Packagist で公開するようにしています。

オープンソース活動

今年は自分のプロダクト以外にもプルリクを送ったりしました。

vanilla

とろゆにさんの WordPress テーマ vanilla超しょぼいプルリクを送りましたw マージありがとうございますw とろゆにさんがどう思ったのかはわかりませんが、僕はこの程度でも全然嬉しいので、プルリクしたことがないという方でもプルリクの練習にどんどん送ってもらえれば良いなーとか思ったりしています。

Amethyst

羽野さんの WordPress テーマ Amethyst にもプルリクしました。羽野さんは Web デザイナーさんですが、Amethyst は CI をバリバリやっていて、はじめて見たときは本当にびっくりしました。Web デザイナーでデザインもできるのに、こんなこともやっているなんて僕は何だと。それで Amethyst に影響されて Mimizuku にもいろいろテストとかを組み込んだりした経緯があります。羽野さんは WordCamp Kansai 2016 でも Amethyst でやっていることに関するセッションをされていて、動画も公開されているので WordPress を使われている Web デザイナーさんはもちろん、テーマを作ってみたいと思われている方はぜひ見てほしいと思います。

dlex

コンチさんの CSS フレームワーク dlex にもプルリクしました。これはただの typo で、ソースをざっくり見ているときに偶然見つけたので送ったのですが、結構こういう棚ぼた的な発見ってあるなーと思った年だったので、コード量が少ないものであればざっと見てみるのは面白いかもしれませんね。

登壇・イベント運営など

WordBash Kyoto

1月に京都で開催された WordBash Kyoto でイベントページのコーディングとセッションをやらせてもらいました。詳しくは「WordBash Kyotoで8時間ぶっ通しで呑んで喋ってきました。」。イベント自体も楽しかったのですが、イベント後も何度かオンラインで動画配信したりもして楽しかったです。

FRONTEND CONFERENCE 2016

FRONTEND CONFERENCE 2016 の懇親会でみにょんさんLT をされたのですが、これが僕との出来事のことだったので、飛び込みで僕も対抗 LT しました。電池がほとんどなくて岡本さんに Macbook を借りてスライド作ったりしました。どうもすみません…。

そして、なんと!来年3月に開催される FRONTEND CONFERENCE 2017 に登壇させて頂けることになりました!スピーカー募集がでて、ずっと何か話したいなとは思っていたのですがなかなか良いネタが思い浮かばず、結構締め切りぎりぎりに苦し紛れで応募しました。思い浮かばずに応募したのでネタ的には微妙で、僕はフロントエンド界隈では無名だから落ちてもしょうがないと思っていたので、嬉しい半面、ネタ作りどうしようと不安ですw 新人応援枠的なアレで当選したのかなぁとか思っているので、怖い人達にからまれないような内容を考えていきたい所存です。

WordCamp Kansai 2016

実行委員としてセッション班での活動と、ハンズオンの世話役、GitHub Patchwork のメンターをやりました。詳しくは「長崎からWordCamp Kansai 2016に参加した話

WordCamp Tokyo 2016

今年は Kansai と Tokyo の開催時期が近く、また子供が生まれたというのもあって Tokyo への参加は見送るつもりでしたが、何とか都合がついて初日だけ参加しました。座談会の進行役と LT をすることになっていたのでほとんどセッションは聞けなかったのですが、少人数でいろいろと話をするというのはなかなか楽しかったです。LT はめずらしく何回も練習したり原稿もしっかり準備していったのですが、普通に全然間に合いませんでした。詳しくは「WordCamp Tokyo 2016 で「本当に使えるテーマとはどのようなものかを考え続けた結果」というLTをやったけど全然間に合わなかったので補足記事を書きました

あんまりしっかりした原稿は用意せずに、ポイントだけメモしておいてその場で喋っていくスタイルのほうがあっているなーというのを学びました…。

WordBench 山口

第3回 WordBench 山口 で、Camp Tokyo でやった LT をやらせて頂きました。Tokyo で失敗した反省で原稿は見ずにその場で喋るスタイルでやりましたが、多少ましにはなったもののこちらでもあえなく時間切れ…。そもそもネタが LT ではきついのか…。

山口では2次会まで連れて行ってもらって、いろいろたくさん話ができてとても充実度が高かったです。Camp のような大勢の参加者がいるところはスーパーヒーローみたいな人達も集まりますしそれはそれで楽しいのですが、地方の Bench のような小さな場所は少人数で濃い話ができて充実度が高いので、来年は都合がつけばこのような地方遠征の機会も増やしたいなーと思いました。

SaCSS Special08 : WordPress + フロントエンド 鍋パーティー スピーカー

スピーカー依頼を頂いて、札幌で自分の働き方とかオープンソースへの関わりなどについてお話させていただきました。詳しくは「「SaCSS Special08 : WordPress + フロントエンド 鍋パーティー」でフリーランスとしての僕の考え方とオープンソースの楽しさについてお話しました

この機会を頂いたことで自分の働き方や考えを見直すきっかけになりまして、そういうことを考えながら自分のサイトを見るとあまりそういう部分がでていないなーみたいな気持ちになってきたので、来年はこのサイトもリニューアルしたいなぁと。

仕事

お仕事もいろいろ頂いてありがたい限りだったのですが、やったことを公開して良いよと言っていただけたものについてちょっと書きたいと思います。

creativeman

mgn さんからのご依頼で、サマーソニックなどをされている creativeman さんのサイト制作に関わらせて頂きました。僕が担当したのは主にカレンダーまわりの WordPress プラグインの開発でした。これも Markdown Importer のように「公式ディレクトリで公開して良いよ」と言われていたのですが、汎用化するのが結構難しくてそこまでは至っていません…。また今後カレンダー的な案件があったときに、このときに作ったものとの差分をとって汎用化できる部分があれば公開できるようにしたいなと思います!

不登校ひきこもり情報たーみなる in ながさき

制作会社時代お客さんだった方からのご紹介で、地元長崎の仕事をさせて頂きました。「不登校ひきこもり情報たーみなる in ながさき」という県内のひきこもり支援の団体・イベント情報をまとめたサイトです。僕は直請け案件は基本的にやりたくないので、直請けでしかもディレクションから何からというのはかなり久しぶりな感じでした。僕が全部作ってしまうタイプの仕事ではなく、僕は基本レクチャーで依頼主のみなさんが作り上げていくという形で、Habakiri を使って作りました。こういった支援団体やイベントがたくさんあるというのも知らなかったですし、僕自身とても勉強になった案件で、サイトとしても皆さんで話し合われてカスタマイザーや CSS を追記できるプラグインを使ってデザインを整え、自らプラグインを探して設定してということもされていて、こういう形であれば直案件も悪くないなーと思ったのでした。

その他

自サイトの HTTP/2 化

このサイトHabakiri のサイトMW WP Form のサイトを HTTP/2 化しました。HTTP/2 化するには常時 SSL 化が必須で、そうするとブクマ数などが0になっちゃうし、お金をかけずに SSL 化するのは Let’s Encrypt とかもやらないといけないのでそもそもめんどくさいというのがあってずっと躊躇していました。年末になってもうサイトとまっても大丈夫かなという気になってきたので思いってやったところ、CentOS のバージョンが古くて nginx をソースからビルドしないといけないとかトラブルはあったものの、半日くらいで Let’s Encrypt + HTTP/2 化できました。今は「さくら VPS 1G」を使っていて、収納しているサイトも増えてきたので来年はもう少しスペックが高くてしかも自分でコンフィグとかかな無くても良いサーバーにしたいなぁとか思っていたのですが、これでもう少し頑張れそうな気がするので来年はサーバーはそのまま PHP も 7 にしたいなーとか思っています。

Mimizuku Adevent Calendar

Mimizuku のところでも書きましたが、今年も Advent Calendar をやりました。今年は完全に1人 Advent Calendar で、1人で19記事書きました。Mimizuku に関する話だけで何記事も書くのは難しいだろうと思っていましたが何とかなるものですね。結構ブログって書けるものだなーと思ったので、来年はなるべくブログも書くようにしたいなと。でもブログ書くのはそんなに好きではないのでこれは達成できないかもしれません^^;

来年の抱負

今年は子供が生まれたというのもあって仕事をちょっとセーブしたりしなければいけず、それに加えて受けていた案件も納期がズレたりとかがあって昨年より売上が下がったりと経営的にはちょっと厳しい年でした。直案件でやらないとやはり自分でスケジュールをコントロールしにくい部分があるので、来年は多少スケジュールが被ってもなるべくお受けするようにできればなぁと思っています。僕は営業活動は特にやっておらずお声がけして頂けるから事業が成り立っているので、そういう意味でも条件が悪いということでなければなるべくお受けするようにしたいなというのもあります。

上でも書きましたが僕のスタンスとかできることとか費用感とか今のサイトではいろいろと不足があり、そういう面で僕に依頼をしにくいとかそういうのもあるのかなぁというのがありました。なのでそういう面を改善したり、スケジュールがどうなっているかとかもわかりやすく表示できるようにしたいなと思っています。あと屋号である「モンキーレンチ」のロゴが適当に作ったもので、あんまりそういうのにこだわりがなかったのでそうしていたのですが、今後ブランディングをしていく上でもうちょっとちゃんと考えてほうが良いのでは?と思うようになりました。なので来年はとりあえずロゴはちゃんとデザイナーさんにお願いしたりして、それをきっかけにちゃんとブランディングできる土台を固めたいなーと。

あとはプロダクトのマネタイズ。今年は Basis、Mimizuku とかなり自分のプロダクトに時間を使いましたが、直接的な利益はほとんどありませんでした。そもそもが開発者特化で、そのまま売れるようなプロダクトではないというのは認識していましたが、それにしてももうちょっとマネタイズを考えて整理をしたいなと考えています。ショップもとりあえずあるだけで売ろうという気が全然見えませんもんね…。キャプチャとか説明とか、そもそも Stores.jp で良いのかとか、全体としてブランドを統一できないかとか、まぁ時間があるときはなるべくそのあたりの整理に時間を使いたいですね。

ということで結構長くなってしまいましたが、来年もよろしくお願いいたします!良い年末をお過ごしください!ではではー

MW WP Form

MW WP Form はショートコードベースのフォームプラグインです。多くの機能を持っており、例えば、多くのバリデーションルール、問い合わせデータの保存、そしてグラフ機能集計などを使用することができます。

さらに詳しく
Habakiri

Habakiri

Bootstrap ベースのシンプルな WordPress テーマ。レスポンシブ、多くのカスタマイズ機能。圧縮された CSS・JS を使用する高速化対策。Microformats 対応。Sass、クラスベースの functions.php。

さらに詳しく
basis-stylus

Basis

軽量なレスポンシブ Stylus/CSS フレームワーク。Flexbox ベースのグリッドシステム、疎結合なコンポーネント、バーティカルリズム。

さらに詳しく