2018年のふりかえりとか

恒例のふりかえり。 昨年までのは以下にあります。

ブログ

今年は四半期ごとに振り返りしようと思って1Q、2Qまでは振り返りしたんだけど続かなかったですね。 まぁ1年に一回でいいかな。

体調

5月くらいから腹痛が続いて6月末に悪化して手術して入院してました。虫垂炎。 人生初めての手術で入院。家族やまわりの方に心配をかけてしまって申し訳なかったです。

来年はでかい病気しないようにしたいです。

というようなこともあり、体調が回復してきた10月くらいから筋トレをしています。 ジムとかは行ってないんですが、去年も右肩痛めたので生活していく中で必要な最低限の筋力はつけとかないとなぁ、というところで。 ダンベルでも割とイケるぞって感じで地道にやっていこうかと。

仕事

4月に仮想通貨取引所を運営してる会社に転職しました。 割と自由になんでもやらせてもらえる環境で、機能追加に加えてパフォーマンスチューニング、テストの整備、CIなどを中心におこなっていました。 既存のコードベースをひたすら読んで、気付いたところのバグフィックスや プルリクエストは可能な限りチェックしてクリティカルなバグを事前に潰したりとか、 とにかくなんとか品質あげれるように動いていた感じです。

ブロックチェーンなところにも関わりたいなと考えて、周辺の知識を得たり、gethparity の実装追ったり、 ENS の仕様調べてRust向けのクレート書いたりしました。

9〜11月に色々あって会社を移りまして、今に至るという感じ。 有休消化期間に入ってまして、来年からは別の会社でスタートです。 そのうちLinkedinのプロフィールも変更すると思うので気になる方はそこから見てください。

10月の終わり頃から農業+ITな会社のお手伝いをさせていただいてまして、 IoTやAI周りのR&Dをおこなったりサービスのアーキテクチャを見たりとかしています。 農業という領域は知らないことだらけで新鮮なのと、技術的な部分でもあまり触ったことがなかったところなので単純に楽しいです。

体壊さない程度に仕事していきたいところです。

OSS

立ち上げたりパッチ送ったりしたもののリストです。

Python

他にはGoとかPHPとかをちょろっと触ったくらいでしょうか。 PythonとRustな年でした。

PyCon JP

5月に開催された PyCon mini Osaka 2018 に登壇予定だったのですが、前述の体調不良で急遽欠席してしまいまして、 ご迷惑をかけてしまいました🙇

9月に開催された PyCon JP 2018 には業務で参加させていただきました。 個人では繰り上がりでトークを採択していただいて、「RustとPython」というタイトルで30分の発表をさせていただきました。 Python拡張モジュールをRustで書くという発表でした。久しぶりに沢山の人の前での発表で緊張してましたね。 発表後やブース近くでも質問していただいたりと、おもしろがっていただけたようで良かったです。

ほぼ週刊 今週のRust

インプット増やそうと思って「ほぼ週刊 今週のRust」っていう最近のRustまわりの動きをまとめる サイトみたいなのを始めてみました。

9月から始めて2週間に1回くらいのペースでやってます。12月はお休み中。

Scrapbox どんなものかなと思い使い始めてみたけどなかなか良い感じ。 ほんとは共有用のツールなので書きかけの記事とかもそのまま上げていく感じなのかと思いつつ、 ほぼ週刊Rustは手元で1回分の記事を仕上げてしまって、それをコピペして仕上げるみたいな感じにしてます。 手元で編集するときにライブプレビューしながら編集したかったので、 GoでScrapboxの記法をパースしてHTMLに変換するパッケージ( hhatto/go-scrapbox-parser )を作って、 ftcat と組み合わせて使ってたりしました。

2019年も続けられるといいなぁ、という感じ。趣味プロジェクトなので無理せずゆるくやりたい。

技術的なポートフォリオ

キーワード的にはこんな感じでしょうか。雑多ですなぁ。

  • Python/Go/Rust
  • CNCF/コンテナまわり/Kubernetes
  • 機械学習
  • IoT/センサーまわり/エッジデバイス

まとめ

ここ最近で一番色々起こった年でした。 その分濃い1年でしんどかったこともありつつ楽しかったです。

ブログはあんまり書かなくなりましたね。。。

そのうちこのブログはふりかえりしか書かなくなりそうだな😅

autopep8 version 2.0を目指して

autopep8は初版であるバージョン0.1 をリリースしてから7年程経過していて、 2018年09月現在のバージョンは1.4 である。 Pythonのオートフォーマッタ界隈は割と戦国時代で、autopep8の他にも、 非公式だがGoogle傘下のyapf 、 ここ最近急速に人気を博してきている Black なんかがある。 GitHubスター数でいくとyapfもBlackもautopep8を遥かに凌駕している。

競合分析

yapf

初期コミットは2015年頃。 autopep8にも一時期コミットしていただいてたメンバーがいて面白い。確かグーグラーのはず。すげぇ。 autopep8の動作に嫌気が差したのかもしれない。 どちらかというとPEP8にフォーマットするというより、定義したスタイルにフォーマットするという用途の模様。 yapfのREADMEを見るとgofmtっぽいとも書いている。

Black

初期コミットは2018年。 今 著作者のGitHubページ を見てみると、 燦然と輝く Python core developer の文字。 あとはPython使ったプロジェクトが多めでPythonのスペシャリストが作ってるのだなという感想。 単純にすげぇという感想。

その他の要素

yapf、Blackともにオンラインで動作を試せるページがある。autopep8は無いぞ!!

少し前には この3つのツールを比べる記事 なんかも出ていた。 記事を書いた方は今後はBlackを使うだろう、と書いていた。なんだと!!貴重なユーザーを一人失った。

というようなところをここ最近頭の中に浮かびつつ消えていっているのだが、 Blackの爆誕によりautopep8が押されている状況も勝手にだが感じていて、 改善できるところはやりたいなぁというのを最近強く感じてきた。

思想

そもそものautopep8の設計思想は、 PEP8に従うようにフォーマットするというもので、これは開発初期から変わっていない。 もっというと pycodestyle が指摘した警告をフォーマットして 指摘されないようにするということ。

現状の動きがやや思想からブレている部分もあり、その辺りも2.0に向けて改善していきたい。

実装したい機能

以下のようなものが頭の中に浮かんでいる。

  • オプション指定による想定動作が見えにくい -a, -aa, -aaa, --experimental オプションの削除
  • デフォルト設定のフォーマット結果の驚きを少なくする
  • フォーマットオプションを追加
  • プラグイン機構を導入し独自でやりたいところはユーザー自身に開発してもらう
    • autopep8本体はPEP8のチェック部分のみをメンテナンスし、その他の部分については拡張性や自由度が上がる
    • さらには開発コミュニティ(ユーザーコミュニティ)を活性化できるかも
  • オンラインでautopep8を試せるプレイグラウンド

1, 2年かかるかなーw

終わりに

マイペースに開発を進めていきたいですね。 幸いある程度使って頂けているみたいで、GitHub Issueもちょこちょこあがってくるので、 そういうのを励みにしつつ細く長く開発を続けていけたらと。

この記事に関しては、ややおもしろおかしく書いた面もあるのであまりマジメに読まないように。 特に他のツールを批判したりという意図はありません。 色々なツールがお互いを意識しつつ少し競争がある中で開発を進めたほうが良いものができると思いますし。

autopep8の著作者としての一意見でした。

2018.Q2

だいぶQ2過ぎ去ってしまったがログ残し。

虫垂炎

一番大きかった出来事は虫垂炎で手術したこと。 2月3月頃から少し右腹下部に違和感あるなぁと思っていて、 5月くらいに夜中に腹痛で起きて病院行ったりしてたのですが、 ついに6月下旬に2度目の結構な痛みが来て病院行ったらそのまま 緊急入院して手術になってしまった。

PyCon Mini Osaka 2018 も 登壇予定だったのですが、穴を空けてしまって色々とご迷惑をかけてしまいました。

これを書いてる8月下旬現在はピンピンしてます。 ほんと健康重要ですね。

転職

4月中旬に人生2度目の転職。 ブロックチェーン、暗号通貨方面で頑張ってみようと。

Pythonメインに使っているところなので、 今までのエンジニアリング経験活かしつつ新しい知識も吸収していけるかなというところで。

Rust

主なものは pgstatprof くらいか。 公開したのは8月ですが、下調べや実際にがっつり検証コード書いてたりしていたのは 転職してすぐだったので、この期の成果という感じ。

あとは metalクレートimageクレート とで RustでMetal2を触ってみたりとか。

その他

システムトレード勉強して手を出してみたり、 本も色々読んでいた気もしますが、 4-6月は病気と転職で過ぎ去っていったなーってな感じです。

2018.Q1

2017年のふりかえりとか

pit in Rust

Older Blog Posts