この記事は、write-blog-every-week Advent Calendar 2019の14日目の記事になる。
昨日は@kdnaktさんで「2019年のブログをさっくり振り返る」だった。
2019年のコントリビュート
作ったPRはこんな感じだった。
昨年までは誤字修正のPRが多かったが、今年は少しバグフィックス的なPRを作ったりできた。業務で使っていたory/fosite
やVersent/saml2aws
のメンテPRを作れたのもよかった。
- nazonohito51/oop-study-payroll-system
- OWASP/Go-SCP
- ohke/sqs-polling
- Versent/saml2aws
- census-instrumentation/opencensus-website
- yoshitaku-jp/api-wbew
- ory/fosite
- t0w4/go_tsumamigui_book_codes
- write-blog-every-week/write-blog-every-week-remind
- GoCon/2019-Autumn
あと、はじめてGo本体のリポジトリにissueを書いた。来年はPRもつくりたい。
OSS
今年は3つOSSを作った。他のひとに使ってもらったり、自分のプロダクトに導入できているので作って良かったなと思う。 それなりにスターを貰えるOSSになったのも自信につながった。
blog-kpi-collector
- https://github.com/budougumi0617/blog-kpi-collector
clasp
コマンドを使ってKPIを取得するgoogleスプレッドシートを生成するスターターキット
- GoogleスプレットシートでWebサイトのKPIを集計するためのOSSを作った #blog #gas
layer
- https://github.com/budougumi0617/layer
- Analyzer: Checks whether there are dependencies that illegal cross-border the layer structure.
- [Go] レイヤードアーキテクチャの階層構造を守らないimportを警告するlinterを作った
dkl
- https://github.com/budougumi0617/dkl
- Shows containers(or pods), and exec(login) selected it.
- [dkl] 実行中のDocker ContainerやKubernetes Podを一覧して選択、アタッチするツールを作った
Dotfile
https://github.com/budougumi0617/dotfiles
zshの起動があまりに遅かったので、lazy loadをするようになった。 また、Vimでgoplsを使うようになった。ただ、まだvim-go経由で呼んでいるだけなので、使いこなせてはいない。
その他今年作ったリポジトリ
created:>=2019-01-01 is:publicで絞った結果
til
今更ながらTIL(Today I Learned)リポジトリを作った。
簡単な動作検証だったり、新しく覚えたり「よさそう」と思ったコード断片を雑に突っ込んでいる。 Pythonディレクトリが生えたり、自分の技術の広がりを感じられてよい。 「CI環境の作り方も覚えたい/CDの動作確認をしたい」というときは別リポジトリを作っている(存在を忘れるのでこのリポジトリにsubmoduleしている。)。
lambda-go-dynamodb-local
CircleCIでDynamoDBを操作するテストを試した。
sandbox-cloud-functions
Cloud FunctionsがGoをサポートしたので触ってみた。
mysql-sakila
SQLの練習用にDockerイメージを作った。
JOIN
などの素振りをしたいけど、複数テーブルにそこそこデータ入っているデータベースないかな?というときに使う。
go-sql-sample
技術書典6に執筆した原稿のサンプルコード。
改訂2版 みんなのGo言語が出るまでdatabase/sql
パッケージの使い方について触れた書籍がなかったので。
cig
「Go言語による並行処理」でちょっと写経をするとき用のリポジトリ。 ただ、結局TILリポジトリで書くようになったのであまりコードは入っていない。
gas-typescript
GASをGitHubで管理したいなと思っていたら、TypeScriptに対応していたのでためした。
gomodules-explore
Go 1.12 Release Partyで発表するためにGo Modulesの挙動を比較した。
claat-sample
ハンズオンを作るならばclaat
が最高だと思う。github.io
で公開するためのリポジトリ。
homebrew-tap
いままでずっとbrew tap
用のリポジトリは配布したいツールごとに毎回つくらないといけないと勘違いしていた。
実はひとつのリポジトリですべて管理できるらしいので、このリポジトリで統一することにした。
review-uploader
Re:VIEW
からPDFをCircleCIでビルドして、google driveにアップロードするためのカスタムコンテナイメージ。
pronami_php
PHPを勉強する上で「気づけばプロ並みPHP改訂版」という書籍を写経したリポジトリ。
Activity
2019年のコミット履歴。
https://github.com/budougumi0617/
Publicなコミット = 2,016コミット
ブログのコミットも多いが、今年は昨年より大幅にコミット数が増やすことができた。 増加としては以下の要因が大きいと思われる。
- ブログのサンプルコードをたくさん書いた
- 人に公開できるようなOSSをいくつか書いた
- Go Conference 2019 AutumnのWebサイトのメインメンテをしていた
昨年はややズルもしながら毎日コミットをしていたのだが、今年は海外旅行でコーディングから離れていた時期もあり、毎日コミットは辞めた。
- 2017年 1,051コミット
- 2018年 1,286コミット
Public + Privateなコミット = 2,956コミット
privateなコミットだけを見ると昨年とあまり変わらず800程度のコミットのようだ。 10月はまるまる有給消化で休んでいたので、それを考えると営業日あたりのprivateコミット数は昨年より増えていそうだ。 今年はTerraformやHelmのコミットをすることができた。また、転職してPHPやPythonも書くようになった。 来年はフロントのタスクもひろってVue.jsもすることになるので、Go以外でも事業に貢献できるようになりたい。
- 2017年 1,801
- 2018年 2,192
まだ年末まで2週間ほどあり、OSSもあと1つ作るので、3,000コミットはいけそうだ。
まとめ(KPT)
KPTを書く前に去年のKPTのTryは以下だった。
去年のTry
- もっとコードでOSSに貢献する
- 自分のOSSを2か月にひとつ公開する
- 継続的なコミットを続ける
- 3月までにGo1.11 laterとGAEでWebアプリを作る
- 8月までにKubernetesを使ってアプリを公開してみる
- 4月までにRustでCLIツールを1つ作ってみる
継続的に振り返っていなかったのでほとんど達成できていないという衝撃的な結果になってしまった。
正直この記事を書くために見返して、「あ、こんな目標たててたのか…」と衝撃を受けたレベルで忘れていたので、来年は定期的に振り返って進捗を確認する。
Keep
- 単純なコミット数を増やすことができた
- 2桁Starをもらった自作OSSが公開できた
- ブログを書くだけでなく、検証用のコードをちゃんと作ることができた
- Terrafrom、Helm、Python、PHPなどの新しい挑戦も始められた
- 普段使っているOSSにPRを出すことができた
- golang/goにissue reportができた
Problem
- feature PRをOSSに出せていない
- 去年のTryを全く達成できていなかった
- privateコミットの量がぜんぜん増えていない
Tryが全く達成できていないなかったのはどうしようもない。 また、今年もあまり機能追加のPRをOSSに対して出すことが出来なかった。
Try
- 業務で貢献してprivateコミットを増やす
- 3月までにGAEで家族用のLINE Botを作る
- 半年に1つ以上2桁StarがもらえるようなOSSを公開する
- Vue.jsとFirebaseを使ってフロントエンドを構築してみる
- 定期的にTryの進捗を確認する
- OSSに対して機能追加のPRを6個以上出す
来年のTryは毎月振り返って進捗を確認しようと思う。ひとまずSlackにリマインダを仕込んでおいた。
直近としてはLINEをインターフェースにGoogleスプレットシートなどにデータ入力をしたいので、そのためのサービスを作ろうと思う。
また、来年はフロント力を上げたいのでVue.jsも個人的に触ってみる。
終わりに
あまり成果が出ていないと思っていた1年だったが、振り返ってみるといろいろ挑戦していたのがわかってよかった。
昨年までは「全然だめだ…」という気持ちばかりだったが、今年は「自分にしてはそこそこアウトプットできているかな?」と思えた。
とはいえ他の人に比べるとまだまだなので、来年はもっと成果を出していきたい。
write-blog-every-week Advent Calendar 2019の15日目は@kz_moritaさん!