2016年注目していきたかった技術の振り返りと個人的振り返り
κeenです。年始に2016年注目していきたい技術 | κeenのHappy Hacκing Blogってのを書いたので雑に振り返ります。あと個人的な一年の総括を。
※個人メモなので雑多な記述が多いです。
Apache Drill
ちょっとづつ進化してるようだけどそこまで広まってる気配なし。因みに自分はチーム移動で使う用事がなくなったのであんまり使ってない
Rust
めっちゃ使った。大分進化してる。ハンズオンのチュータやったりLT会の玄人枠で発表したりもした。あと年明けにハンズオン第2回のチュータやる。
Apache Kafka
めっちゃ使った。便利。道具箱の中身が増えた。便利。
Floki
5月で開発停止したっぽい。残念。
RobotS
開発は続いてるようだけど流行ってはない。うーん、アクターいけると思ったんだけどなぁ。
Redox
開発は継続中。ISOのリリースとかもあったしそれなりに進歩はしてる。多分もうちょっとウォッチ期間が必要。
ATS2
使ってない。一回コンパイラのバグ踏んじゃって萎えてその後はRustばっか使ってる。面白いんだけどなぁ…
R
チーム移動で用事がなくなったのであまり使ってない。 一応それなりには使ったけどあんまりRのこと覚えきれてない。例えるならEmacs初心者がEmacs Lispのスニペットをコピペでどうにか使ってるくらい。
異常検知
チーム移動で(ry
Coq
それなりにやった。ソフトウェアの基礎のサブタイプまでやった。ProofGeneralのバグはGitHubにある方のProofGeneralを使ったら解決した。あと#readcoqartにも何度か参加した。
Isabelle
一応チュートリアルを少しやった。あと社内勉強会で発表もした。Isabelle 2014までしかProofGeneralで使えないのでちょっと厳しくなってやらなくなった。つらい。
いい加減Emacs以外のプラットフォームも使えるようにならないとなー。
Fortran
やってない。1ミリも触ってない。本当はある程度入門したらFortranコンパイラでも作るかって気分だったけどつらいらしいのでやらなくてよかった
じゃ、個人的総括。まず、個人ブログはこのエントリ含めて48。週1ペース守れなかった。
- 2016年注目していきたい技術
- ATS2の観が整理出来た
- Rustといえどリソースの解放は注意
- SML#のpthreadバインディング作った
- Isabelleに入門した
- 独学でプログラミングをやってきた中で良かった技術書50選
- プログラミングを独学する時こそインプットを増やした方がいい
- Lisp Meetup3周年に寄せて
- Rustのパッケージをcrates.ioに登録する
- Common Lispで高速行列演算
- Nexus 5にUbuntu Touchのインストール
- 分散VCSのモデル、あるいはPijulについて
- readlineの作り方
- Bind Addressの意味がようやく分かった
- druidというリアルタイムデータ分析ツールを知った
- RustのHigher-Kinded type Trait
- Rustのゼロコスト抽象化
- テストについて考えてみた
- リージョンとRustの返り値
- Mirah関連ツールまとめ
- LXDがリリースされたらしい
- RustでベアメタルRaspberry PiのLチカ
- cargo-profilerを試す
- multirustが非推奨になったようなのでrustupに移行する
- Rustの所有権/ミュータビリティの分割
- Container Desgin Patterns
- シェル芸十八般
- 私がコードを書くときテストは書かない
- mirah 0.2がリリースされました。
- Rustでシェル作った
- Pijulのインストールが難易度高いので解説する
- Rustのクロージャ3種を作って理解する
- SMLでモナド
- VMwareのUbuntuを16.10にしたら起動しなくなった
- Rustの型レベルLispっぽいの作った
- Rustの関連型の使いどころ
- SML#をUbuntu 16.10で動かす
- サイバーエージェントを退職しました
- 4年間続いたShibuya.lispのLispMeetUp
- Rustでバイト列を扱う時のtips
- マクロやコンパイラプラグインの実装方法色々
- Rustのプロセス
- 新しいコンパイラバックエンドcretonne
- Rustのstructとtraitって似てるよね
- Rustの所有権、ライフタイム、参照、型、しがらみ
- Rustのライフタイムを使ったスコープ解析
- 気付いたらRustの環境構築がかなり楽になってた
- 2016年注目していきたかった技術の振り返りと個人的振り返り
スライドは15。月1以上のペースだった。意外。ほとんど社内のScala勉強会で発表してるっぽい。
- HAMT ~ イミュータブルで高速なハッシュマップ ~
- ClojureでSSPを作った話
- Rustとは何か。どんな言語か。
- ビッグデータしないDrill、ローカルで快適に使うために
- SMLで函数型的正規表現マッチ
- テストについて、Scalaと。
- 高速な継続ライブラリに向けて
- DOT/dottyについて調べてみた
- Socket on SML#
- 型クラスを越えて
- 正しいScalaのコードが欲しい
- Scala 2.12.0変更点
- Rustの話とリソースの話
- Rustで非同期Thriftしたい
- SchemeでClassとProtocol
その他外部に投稿したものは13。これも併わせたらブログはギリギリ週1ペースかな。仕事関連だったり仕事中に思い付いてブログにアクセス出来ないのでQiitaに投げたものが多い。
- Rustのドキュメントの翻訳プロジェクトを開始します。 - Qiita
- 正規表現の先読み/後読みを「絞り込み」と理解してみる - Qiita
- 一瞬でシェルスクリプト作れるシェル関数作った - Qiita
- sedの-iオプションの非互換 - Qiita
- Rustでサイコロで同じ目が100回連続で実際に出るか - Qiita
- POSIXシェルで変数がセットされているか検査するイディオム - Qiita
- ICFP及び関連イベント参加レポート – Haskell Day – | Tech Blog
- ICFP及び関連イベント参加レポート – ICFP併設ワークショップ – | Tech Blog
- ICFP及び関連イベント参加レポート – ICFP 1日目 – | Tech Blog
- ICFP及び関連イベント参加レポート – ICFP 2日目 – | Tech Blog
- ICFP及び関連イベント参加レポート – ICFP 3日目 – | Tech Blog
- ICFP及び関連イベント参加レポート – 併設ワークショップ2日目 – | Tech Blog
- ICFP及び関連イベント参加レポート – 併設ワークショップ3日目 – | Tech Blog
さて、OSSだと雑なスニペットとかもGitHubに上げてるのでカウントが難しいけど、主だったものだと
- airflowのSSH Execute Operatorを書いた
- Apache DrillのEmacs Mode作った(リリースしてない)
- Rustのfile_logger作った
- file_loggerと一緒に使うためにrotate_file作った(リリースしてない)
- インターン向けに作ったSSPを公開した。
- SML#のpthreadバインディング作った。多分64bitで動かない。
- SML#のsocketサポー作った。まだメモリ管理回りで処理系とのやりとりに上手くいってないので完成してない。
- Rustでシェル作った。雑に動く。
- TokioのThrift対応フレームワーク作成中。Tokio側がリリースされたらこちらもリリース出来るくらいの進捗でやっていきたい。
- Rust公式ドキュメントの翻訳一応1.6は完了。今1.14まで来てるので更新せねば…。
- なんか適当なML風言語のコンパイラ作り始めた。年内にコード吐くまでやりたかったけど最後の数日サボってしまったので間に合わない。
- コンパイラのためにWebAssemblyをインメモリで吐くライブラリ作った。ブラウザでコンパイラ動かしたい時に使う。
かな。限定継続ライブラリみたいに途中で放置してるやつとかチュートリアル読んでOS作ってるやつとかは入れてないので「活動」って意味だともう少し広いけど社会貢献はしてない。
仕事も含めたGitHubの草はこんなもん。
— κeen (@blackenedgold) 2016年12月29日
引越しだとかICFPとかの週はほとんどコミット出来てないのでもうちょっと頑張りたい。あと顕著に土日にサボってるのもどうにかしたい。
割と飽きっぽいというか他のものに浮気しがちというか適当に手を付けては壁に当たった/第一目標達成したあたりで次にいっちゃうので継続性がない。継続した方が社会貢献になるんだよなー。
読書は正確にいつ買ったか覚えてないので正確じゃないけど、流し読みしたものも含めれば
- 線型論理入門
- 圏論の基礎
- 圏論の歩き方
- Compiling with Continuations
- 最新コンパイラ構成技法
- ガベージコレクション 自動的メモリ管理を構成する理論と実装
- 独自CPU開発で学ぶコンピュータのしくみ
- 暗号技術入門 第3版 秘密の国のアリス
- その数式、プログラムできますか?
- 戦略的データサイエンス入門 ―ビジネスに活かすコンセプトとテクニック
- ノンパラメトリックベイズ 点過程と統計的機械学習の数理 (機械学習プロフェッショナルシリーズ)
- 劣モジュラ最適化と機械学習 (機械学習プロフェッショナルシリーズ)
- 深層学習 (機械学習プロフェッショナルシリーズ)
- 異常検知と変化検知 (機械学習プロフェッショナルシリーズ)
- 実践ドメイン駆動設計 (Object Oriented SELECTION)
- The Art of Multiprocessor Programming 並行プログラミングの原理から実践まで
多分こんなもん。機械学習プロフェッショナルシリーズは去年読んだのも含んでるかもしれない。あんまり覚えてない。論文も挙げようと思ったけど面倒になったからいいや。十数綴から二十綴くらいじゃないかな。
社会的には1回社内でチーム移動になって1回退職した。Shibuya.lispの運営から引退を発表して、rust-lang-ja(有志の翻訳コミュニティ?)の中の人になった。
まだ社会人になって2年も経ってなくて情報科学/工学の基礎もないので基礎を付けるために勉強してるフェーズかなぁといったところ。 来年は専門性の高い仕事になるので今年以上に勉強が必要になりそう。多分本より論文に比重が傾く。
年明けにまた注目していきたい技術書く。毎年書いていったら面白いかもしれない。