Job
昨年の暮れから HTML5 アプリのアーキテクチャ推敲。直前に Meteor さわったりドットインストールで勉強したりMosaic.fm で耳学問したりしてたのが役立ちました。IE サポートが必須で Polyfill 使えるライブラリの選定に腐心。変化の激しい Angular や React はスルーして jQuery UI をベースに Grid / Chart ライブラリのデータバインディング機能を活用してシンプルに構成。Underscore と jQuery.Defferd でロジックを簡潔に書けるようにしました。テスティングは Mocha。gulp と Jenkins で開発環境 / CI 環境構築を構築。サーバーサイドは Java。Spring でビジネスロジックをコンポーネント化し Jersey + Jackson で REST API 開発。
ついで PhoneGap / Cordova を使った iOS / Android のハイブリッドアプリ開発。jQuery Mobile や Sass で HTML / JS / CSS の Asset を作成し、Cordova の CLI 叩いてネイティブブリッジとくっつける。Codrova プラグインでデバイスのセンサー機能やファイルシステムの API を使えるので、エミュレータや実機で確認。JS で UI 作るのは Electron とか流行ってます。3年後ぐらいどうなってるでしょうか。
ということで上期はこれまであまり触る機会がなかった gulp とか Android Studio に馴染んでフロント系の経験値を貯めることができました。
下期からはいつものように業務アプリフレームワークをひたすら開発してます。1年ぶりの .NET 案件。Visual Studio 2013 で C# 5.0。前回は Visual Studio 2010 で C# 4.0 だったので言語も進化してます。CallContext が便利でした。C# はやっぱコード書きやすいです。.NET Core が OSS になったことで今後採用が増えていくことを期待しています。
Gadgets
Nexus 7
Nexus 7 は主に寝室で使ってます。iPad Air は漫画メインになりました。
MacBook Pro 13 Retina Early 2015
MacBook Pro は書斎に据え置きでデスクトップマシンとして使ってます。
Magic Keyboard はストロークがかなり浅く*1、強めに打ってると指先痛めそうな感じなのでソフトタイピングを心がけるようにしています。仕事では HHK とか Realforce でカタカタと打ってますが、自宅で Mac 使うときは Magic Keyboard でパタパタ軽くタイプです。
MacBook Air を Windows 10 専用マシンにしましたが、利用頻度が低いし、ディスプレイやキーボードの繋ぎ変えが面倒なのでやっぱ VMware Fusion の仮想マシンでいいかなと揺り戻しが。。。
https://blog.kondoumh.om/entry/2015/08/02/233359blog.kondoumh.om
そういえば Microsoft のエルゴノミクスマウスも買ってましたが、Apple Magic Mouse に回帰して使わなくなってしまいました。
Nexus 6P
Nexus 6P は満足度高い端末です。Kindle Voyage を持ち歩くことがなくなりました。通勤時もリビングにいるときも使ってます。画面が大きくて綺麗なので室内で使う端末としては最高です。
iPhone 5s はまだ手放せてません。ちょっと近所に出るときや Ingress 活動は片手操作できる 5s が便利だし。au の契約をスーパーカケホ/データ通信3GBに変更して料金をちょっと圧縮しました。Nexus 6P は IIJ mio のデータ通信専用ミニマムプラン(¥780) でこちらも 3GB。普通に使ってると 2台で 3GB もいかない感じです。
iPhone はモーションアクティビティセンサーで FitBit の活動量計になってくれるのもいいところです。何度か活動量計にもなるスマートウォッチ的なものも物色しましたが、電池が持たなくて充電で消耗しそうなのと、結構お高いので見送りました*2。
BackBeat Go2
Bluetooth ヘッドセット。通勤時に活躍しています。ちょっとイヤホンがデカいです。
Dev
ここ数年仕事で書くコードの量が増えてますが、今年は特に増えました。反比例して個人開発は捗りませんでした。
新規もの
ガジェットやツールについてのサイトを Tumblr に引っ越した時に、D3.js で Tumblr のタグクラウドを試作したりしましたね。
スクレイピングネタは、DegitalOcean とかにデプロイして、定期的にメール配信する父親向けサービスとしてローンチしようかなあと思ったりしてます。
Electron と three.js で デスクトップ版 3D プロッターを作成中。 pic.twitter.com/nuNgvnka99
— MH (@kondoumh) 2015年8月31日
Electron のお勉強で WebGL アプリを試作したりもしてました。
ちょこっとやったのは、全部 JS でした。個人開発では今後 TypeScript 使っていこうと思っています。ネイティブ系も LLVM ファミリと言える Go / Rust / Swift そして WebAssembly が盛り上がってるので目が離せません。
iEdit
年明けに1回バグフィクスのリリースしただけで終わりました。Hi-DPI 対応に取り組んでいたのですが頓挫してます。Hi-DPI 環境だとツールバーが非常に小さくなる問題もあって、モダン MFC に移行する必要があるのですが、その作業も夏頃で止まっています。レンダリングを Direct2D 化するというのも数年前ちょっとやって放置してるし。
「ついトピ」でエゴサーチしてる感じだと TRPG 界隈でキャラ設定とかシナリオ作成とかに使われているケースがたまにあるようです。
iEdit を作った当時はグラフ構造で視覚的に発想するのが自分的に好みだったんだと思います。たまたまそれがシナリオ作成とかに使えたということなんでしょう*3。
ここ2年ぐらいは、ドキュメントのアウトラインを考えたり、タスクを整理したりするのは全て Emacs + org-mode でやるようになって Windows で作業してても iEdit 起動することはなくなりました。
グラフィカルな発想ツールとして世に出していくなら、MFC アプリのメンテは個人的に得るものも少なく厳しいので、Windows の Universal App もありかなー(流行るなら)、いやいっそ JS で作った方が Windows 限定じゃなくてよいんじゃないの(でも JS で作るのはイバラな感じ)。などと悩み中。
Windows Universal App のプロジェクトに昔の Win 8 ストアアプリのコードを持っていったら、コードを変更することなく動作した。 pic.twitter.com/lGoIz9Wddu
— MH (@kondoumh) 2015年8月29日
Universal App は メトロスタイルと呼ばれていたものから3世代目ぐらい? サードパーティから数機種 10 Mobile 搭載スマホも出てるから今度こそブレークするでしょうか?
Writing
Software Design に2回記事を書かせていただきました。
明日発売の Software Design に記事書かせていただきました。僕のは極意じゃないですが… pic.twitter.com/q26ECOvEe2
— MH (@kondoumh) 2015年3月17日
寄稿させていただきました。- Software Design 2015年7月号|技術評論社 http://t.co/mFBGX6JAXM
— MH (@kondoumh) 2015年6月21日
ブログは19本(本記事含む)で月1以上の更新ペースだったので、「意外と更新されてるブログ」だったかも。
Software
Visual Studio Code
Microsoft の Build 2015 で発表されてベータ版が配布され、最近 OSS になりました。性能と安定性で ATOM をぶっちぎりました。Web 開発は Emacs web-mode よりも Code を使うようになりました。ATOM とはお別れしました。
MetaMoji Note
記事の挿絵案を作成するのに使った後も時々使ってます。Su-Pen も新しいの買いました。
Windows 10
Technical Preview に申し込んで、タワー PC にインストールして使ってました(そういえばこのマシン壊れた)。リリースされ、Mobile 版も出ている今現在の完成度を見ると隔世の感があります。UI も洗練されましたが、なんといっても軽い OS に仕上がっています。
Visual Studio 2015
今年は Microsoft の当たり年でした。Community 版でも MFC も使えるようになり、Professional なくても iEdit のリリースできるようになりました(してないけど)。Android や iOS 向けのコードがビルドできたりとか意味がわかりませんが、なんか必死感が伝わってきます。
IntelliJ IDEA
とうとう IntelliJ Ultimate Personal 買う。今の為替レートだと ¥24.541 JPY
— MH (@kondoumh) 2015年4月26日
IntelliJ 買ったけどたまに起動してバージョンアップばかりしてる。
— MH (@kondoumh) 2015年12月10日
ダメパターンでした。
Games
Ingress
今年初めに Level 8 に到達しました。AP をガツガツ稼ぐのはやめてミッションこなしたり、近所のポータルメンテナンスを細々と続けてます。年明けにも Level 10 になりそうです。ボッチ活動です。
ねこあつめ
結構はまりました。Nexus 7 から Nexus 6P にデータを移行したいです。Hit-Point さんよろしくお願いいたします。
Steins;Gate
iPad 用アプリを購入したのは1年ぐらい前で序盤で放り出してましたが、Rebuild.fm や Backspace.fm で話題になっているので世界線越えたくて年末から再開しました。
Services
Apple Music
サインアップして試用期間切れる前に Nexus にスイッチしたので、そのまま退会。
Google Play Music
Nexus にしたので、サインアップ。邦楽は Apple Music より少ない感じですが、アーティストごとにラジオがあったり、ベッドタイムとかエクササイズ用のセレクトがあったり、垂れ流しに最適です。UI もマテリアルデザインで使いやすい感じ。まだ試用期間ですがしばらく使ってみます。
Qiita
今年は3件ぐらい投稿。
Stackoverflow(JP)
今年は1件回答したっきり。ぐぐった時も JP 版ヒットしたことないので、まだまだこれからという感じでしょうか。Qiita が強すぎるのか。
飯テロが多くてあまり見なくなりました。
SnapChat
Backspace.fm で宣伝してたのでサインアップしてみました。おトモダチいません。
Pushbullet
これは便利! と喜び勇んでいろんな端末にインストール。結局端末間で情報をやり取りしたのは20回ぐらい。現在は Rebuild.fm からの Push を受け取るとあちこちの端末が鳴るという状態です。
Podcast
Rebuild.fm
安定の配信でアーカイブリスニングしてます。時々ライブストリーミングも。歳末キャンペーン? でサポーター登録しました。hak さんの登場回が好きですね。
Backspace.fm
ここ最近、チャネルが増えて配信頻度が上がり、1回が長いのもあって中々消化が追いつきませんが、通勤時の癒し放送として愛聴しています。
Mosaic.fm
思い出したように配信されます。Web 技術のコアなお話が興味深く聴けます。
Wada.fm
「ボケて」を開発しているオモロキの yusukebe さんの一人語り Podcast。サクッと聴けます。同じく yusukebe さんがレギュラーの「だんごユッケの平和な話」も時々聴くようになりました。
CodeLunch.fm
若手エンジニアの人の配信。OSS コミッターの人をゲストに話してることが多いようです。t_wada さんの power-assert 回がとても良かったです。
ESL Pod
20分ぐらいのレギュラースクリプト回はわりと真面目に聴いて、週1の長めの Cafe は聞き流ししてます。
changelog
OSS のメインコミッターがゲストで喋りまくります。OSS によっては真面目に聴きます。
Software Engineering Radio
changelog に近い内容の回も多いですが、Eric Evans が DDD の今について語ったり、Gang of Four から 20年 - みたいなエピソードがあったり、Microservices のエピソードが多かったりと、文字どおりソフトウェア工学にフォーカスしている感じです。
最後に
来年は申年、年男です。あいかわらずテクノロジーの進展に翻弄されながら過ごしてくと思います。