My External Storage

Dec 15, 2018 - 6 minute read - Comments - poem

2018年振り返り(GitHub編)

この記事は、write-blog-every-week Advent Calendar 2018の15日目の記事。
「毎週ブログを書く」では無いが「毎日GitHubにコミットする」ということを続けている。今年も1年の振り返りを行なうにあたり、GitHubの活動を振り返ってみた。

コントリビュート

作ったPRはこんな感じだった。 相変わらずタイポ警察しているだけなのは良くない。ただ、ちょっと機能追加やバグフィックスのPRも作ったので去年よりは少し成長できた。

ここまでだいたいREADMEなどのタイポを直しているだけ。

OSS

OSSとして作ったリポジトリは以下。今年は2つくらいしかできてない。

lsas

私のチームは月イチでOSS Fridayというイベントを行なっている。その中で作ったGoのCLIツール。 Auto Scaling GroupをWebのAWS Console画面のようにCLIから閲覧・検索できる。これはだいぶ社内で使っていてもらって、同僚からPRももらえた。 PRもらうと「ちゃんとしたOSS」って感じで嬉しい。勢いで作ったのと、@RealGophersShipにリリースインフォ流してもらえないかいろいろいじったせいで内部構造がぐちゃぐちゃになっている。もう少しリファクタリングしたら紹介記事を書く予定。 このリポジトリはbrew用の設定もしているので、そちらの勉強もできた。

godecov

CodeCovのAPIラッパーがないのでこれは作るしかないでしょ!と思って作り始めたリポジトリ。 JSONに対応するstruct定義してちょっとGETメソッド作るだけでしょーと思って始めたもの、結構辛いことになっていてあまり捗っていない。

Dotfile

https://github.com/budougumi0617/dotfiles

.vimrcにReact+Redux関係の設定を増やした。今年はVimを触っている時間がかなり多かったので、だいぶこなれてきている気がする。 (と言いつつこの間やっとeasymotionを入れた)

その他今年作ったリポジトリ

created:>=2018-01-01 is:publicで絞った結果

sandbox-aws-lambda-go

https://github.com/budougumi0617/sandbox-aws-lambda-go

AWS LambdaにGoが来た!ということで触ってみたリポジトリ。

sandbox-grpc

https://github.com/budougumi0617/sandbox-grpc

去年の冬からgRPCを触り始めたのでそのときの勉強用リポジトリ。

simple-json-api-by-chi

https://github.com/budougumi0617/simple-json-api-by-chi

業務でGoのWebサーバーを書くことになったのでまずchiを触ってみていた。

udemy_react

https://github.com/budougumi0617/udemy_react

React勉強してみよう!ということでUdemyの写経をしていた。

react-golang

https://github.com/budougumi0617/react-golang

フロントエンドをReactで、バックエンドをGoで書いてみる挑戦をしていたリポジトリ。いちおうそれぞれを個別のDockerで動かして疎通するところまではやった。 初夏のリポジトリなので、フロントエンドサーバの設定はイチからやりなおしたほうが良さそう…

real-world-http

https://github.com/budougumi0617/real-world-http

Real World HTTPの写経。一通りHTTPを叩けたので良かった。

go-testing

https://github.com/budougumi0617/go-testing

golang.tokyoの登壇資料リポジトリ。この発表を通してだいぶtesting pkgの理解が深まった。

sandbox-go-cloud

https://github.com/budougumi0617/sandbox-go-cloud

go-cloudと名前がついているが実際はWireをちょっと試した感じのリポジトリ。

tdt-react-jest-enzyme

https://github.com/budougumi0617/tdt-react-jest-enzyme

Jestを使ってTDDするぞ!なリポジトリ。この頃になってくるとだいぶJS触るのも楽しくなっていた。VimとLSP、ALEのおかげだ。

RustTraining

https://github.com/budougumi0617/RustTraining

オンライン読書会AOSNでプログラミングRustの読書会が始まったので。 最近引っ越しなどで参加できていないので書けていない…

waiig

https://github.com/budougumi0617/waiig

Go言語でつくるインタプリタの写経。途中までしかできていないが、この本はTDD+インクリメンタル開発で進むのでだいぶ楽しく写経ができた。

wem10-react-sample

https://github.com/budougumi0617/wem10-react-sample

登壇用に作ったリポジトリ。StorybookなどJS周りのツールを一通り触った。次はTypeScriptでやりたい。

caww

https://github.com/budougumi0617/caww

Wireを使ってGoのクリーンアーキテクチャを自分で設計してみようとしたリポジトリ。 アドベントカレンダー用に用意しようとしたのだが、諸事情で頓挫した。これは他の人にも見つかってしまったリポジトリなので年明け早々にリベンジとしてちゃんと作り込みたい。

Activity

2018年のコミット履歴。

https://github.com/budougumi0617/

Publicなコミット = 1,286コミット

Public only 昨年が1,051コミットだったので少し増えてきた。ログを改ざんしたり、ただブログのMarkdownをコミットしているだけの日もあったが毎日コミットすることもできた。 去年と同じ通り、写経やブログのコミットが多いのは反省点だ。

Public + Privateなコミット = 2,192コミット

Public and Private

昨年は1,801コミットだったので少し増えた。今年は業務でもReactを書いたり、Goを書いてコミットすることができたので、コミット内容としてはだいぶ成長できた。 来年は質も量も上げていきたい。


まとめ(KPT)

KPTを書く前に去年のKPTのTryは以下だった。

去年のTry

  • もっとコードでOSSに貢献する
  • 自分のOSSももっと作って公開する
  • 継続的なコミットは続ける
  • GoとGCPでWebアプリを作る
  • Kubernetesの理解を深める

k8sは少し触っていたのだが、結局公私で触れていないので全然できていない。GCPについてはSpinnakerを立ち上げたりはしていたのだがやはりちゃんと触り続けていることができなかった。

Keep

  • 継続的にコミットできた
  • 他人に使ってもらえる自作OSSが公開できた
  • 他人にPRしてもらえるOSSが公開できた
  • 少しだが、機能変更のPRを出すこともできた
  • 登壇前にサンプルリポジトリを作ることができた

Problem

  • コードでコントリビュートまだまだ足りていない
  • 写経のコミットやチュートリアルやっただけのコードが多い
  • 去年のTryがちゃんと拾えていなかった

Try

  • もっとコードでOSSに貢献する
  • 自分のOSSを2ヶ月にひとつ公開する
  • 継続的なコミットを続ける
  • 3月までにGo1.11 laterとGAEでWebアプリを作る
  • 8月までにKubernetesを使ってアプリを公開してみる
  • 4月までにRustでCLIツールを一つ作ってみる

ちゃんと期限を切らないと目標にならないらしいので、今年はこんな感じのTryにしてみる。 来年はもっと質・量的にも濃いコミットログを作っていきたい。

関連

関連記事