ytake Hatena

Web Application Developer

2015年ytakeまとめ

本年は特にたくさんの方とご一緒する機会が多く、
周りの環境も多く変わる一年となりました。

今年作ったもの

今年はLaravel関連のパッケージを作ることが多かった一年でした。
後悔しているパッケージの他にも自作フレームワーク作りを行い、
何度も作っては削除、作っては削除・・の繰り返しですが、
作ることで学べることがたくさんありますので、来年度も引き続き何かしら作っていこうと思っています。

Laravel.Smarty

LaravelでBladeと併用してSmartyを使用可能にするパッケージです。
海外の開発者が作った同種のパッケージは、テストコードもなく、
パッケージにSmarty自体が内包されていたり、ほとんど拡張性がないものであったりと、
実際に使う上で頭を悩ますことも多く、当時自分で利用していたものをパッケージとして切り出したのが始まりです。

このパッケージ自体は去年作ったものですが、
Smartyを根強く使い続けている海外の方からの問い合わせも多く、
テンプレートのキャッシュをファイル以外にmemcachedやredisなどにも対応させて、
色々改良を加えました。

github.com

Laravel-Aspect

これはLaravelでAOPを利用可能にするパッケージで、
文字通りMVC(Model, View, Controller)としてフレームワークを利用している方にはあまり利用する機会がないかもしれませんが、
PHPにおいてもコンポーネント指向や、設計パターンなどに注力される方も増え、
特にドメイン駆動などで利用できるアスペクトによる関心の分離などをLaravelでサポートするものです。

ドメイン駆動開発ではアスペクトは必須ではありませんが、
多くのヒントや、実際に適所に使うとさらに考え方を広めてくれると思います。
これは後述するアスペクト指向の書籍で色々考えさせられることが多かったため、
実際の開発でも利用することが多くなり、来年度も引き続き利用していこうと思っています。
個人的には自分で作ったライブラリの中で一番使っているものかもしれません。
改良点はまだ多くありますので、引き続きバージョンアップを行う予定です。

github.com

Laravel-FluentLogger

LaravelのログをFluentdと連携するためのパッケージです。
大規模開発や、ログ解析などを行うことも多くなり、
Laravel向けのパッケージもなかったのでパッケージとして切り出したものです。

LogのデフォルトをFluentdに変更することや、pushHandlerで追加なども簡単にできるようになっています。
実際の開発でも使っています。

github.com

上記のパッケージのうち、Laravel-FluentLoggerとLaravel.SmartyはともにLumenでも利用できるようになっており、
どのパッケージも最新のLaravel5.2でも利用できるようになっています。

Laravel-Couchbase

データベースのドライバ拡張と、SessionやCacheでCouchbaseを利用するパッケージです。
このデータベースがサポートしているN1QLにも対応したもので、
Laravelのクエリービルダで利用できるようにしました。

<?php 

$this->app['db']->connection('couchbase')
    ->table('testing')->key($key)
    ->returning(['*'])
    ->where('click', 'to edit')->update(
        ['click' => 'testing edit']
    );

github.com

書籍

今年は2冊執筆させていただく機会がありました。
初めての執筆でいろんなアドバイスを頂いたり、うまく進まず迷惑をかけたりなどもあり、
反省するとともに貴重な経験となり、今後の糧としていきたいと思います。

Laravelリファレンス

www.amazon.co.jp

Laravelエキスパート養成読本

www.amazon.co.jp

嬉しいことに来年も引き続き執筆させていただける機会をいただいており、
嬉しい悲鳴が続きそうです。
Laravelリファレンス執筆時に掲載から漏れたスピンオフ電子版書籍は近いうちに詳細をお伝えできるかもしれません。

発表

今年はPHP勉強会をはじめ、PHPカンファレンス福岡、PHPカンファレンスなどで発表させていただきました。
いろんな方との交流も増え、参加して学ぶことも多くあり大変有意義に過ごしました。

php開発で使うタスクランナー gulp

今のバージョンでは動かないと思いますが、一応・・

www.slideshare.net

Laravel / Lumen 次の一歩

中級者へのヒントとなるような内容を発表しました

www.slideshare.net

Laravel5.1 Release

Laravel5.1発表直前に発表したものです。

www.slideshare.net

phpspecで始めるBDD

www.slideshare.net

LaravelとMVCの先へ

www.slideshare.net

PHPデプロイツールの世界

www.slideshare.net

zend-expressiveを触ってみよう

今年の後半に発表されたzend expressiveを実際の開発に利用した時の話をまとめたものです

www.slideshare.net

後半になるにつれてLaravel以外のもに変わっていってるのも面白いところです。
執筆時期と重なっていたため、あまりLaravel関連のことを発表しませんでした。

今年できなかったもの

LaravelJp Recipe

Laravelレシピサイトの5.1、もしくは5系以降のサポートサイトが途中まで進めたにもかかわらず、
書籍執筆に注力していたため、あまり進捗がない状態となってしまいました。

recipes.laravel.jp

来年は、このレシピサイトを5系以降にも対応させるか、
Laravel学習サイトとして、初心者から中上級者向けのサイトへと変更するかを検討しているところです。
さすがに古くなってきたので何かしないと・・・

仕事、その他

今年は転職したこともあり(去年もしたではないか!)、
身の回りも大きく変わり、いろんなチャレンジができる良い環境となりました。 また、今年はPHPに加えてgolangも取り入れることになり、幾つかに導入したりしていました。

家も建ち、ローンを返済する身となりました。

まとめ

今年はいろんな方に声をかけてもらうことが多く、
なかなか応えられないこともありましたが、大変貴重な体験を多くさせていただきありがとうございました。
2016年はさらに加速させて、いろんな物事にチャレンジしていこうと思います。

2015年ありがとうございました。