Gomi v0.2.5をリリースしましたー
TL;DR
- マージ済みブランチ削除ツールGomiのv0.2.5をリリースしました
- mainブランチへ対応しただけです
- Goreleaserのバージョンアップで躓いた
Gomiのv0.2.5がリリースされました
自分が趣味で作っているOSSツールGomiのv0.2.5がリリースされましたー🎉
実は、約半年ぶりのリリースだったりします。
(別にさぼってたわけじゃないです)
特に、使命感を持ってやらねば、と思ったわけではなく、
そういやGitHubのデフォルトブランチ、masterからmainになってたなー、
変えとくか
くらいの感じでやりました。
主な変更
- mainブランチを考慮
ただこれだけです。
デフォルトブランチって消せない気がするので無意味だった気もしなくもない...
すごい小さな変更なのに山程コミットがある理由
中がとんでもないコードで回収コストが大きかった、とかではなく、
単にGoreleaserが知らぬ間に仕様変更していて、リリースがうまく行かなかったからです。
多分1時間くらい溶けてる気がします。
下の記事のおかげでなんとか解決しました。。。
さいごに
多分Gomiにブランチ削除以外の機能ってのっかることないかなーと思っているので半年に1回のリリースになっていくと思います。もし何かあったらGitHubのIssueにでも書いてください。
Go言語でつくるインタプリタを読んだ
タイトル通り、O'Reilly Japanから出ているGo言語でつくるインタプリタを読み切りました。
どんな本なの?
タイトル通り
と書いてしまえば終わりなのですが、もうちょっと詳しく説明すると
Go言語を使って本に出てくるMonkey言語のインタプリタを実装してみよう!
という内容です。
という、プログラミング言語のインタプリタが実際に処理を行う順で書かれています。
なぜ読もうとした?
今は都内でエンジニアとして働いていますが、実はコンピュータサイエンスをしっかり学んできていない、というコンプレックスがあったからです。
というのも、
- 学部: 情報学科数理工学コース (数学ばっかやるところ)
- 大学院: 情報学研究科(やっていたことはHPC)
という経歴で、学部時代にコンピュータサイエンスをしっかり学んでいません。。。
一応、情報学をやったことになっているのですが、インタプリタがどう動いている、とか正直勉強していないのでCS出身者としては結構そこにコンプレックスがあります。
読み終えての感想
本に出ているのはMonkey言語は、
- 数値型、文字列型、配列、ハッシュ等のデータをサポート
- 第一級関数をサポート
- 組み込み関数もある
と、最低限の機能(第一級関数が最低限かは怪しいが)を有する言語です。
それを実際にコードからトークンに、そしてASTにして評価するところまでを実装しました。(付録でマクロとかありますがまだできてない)
実際に勉強したことのない身としては、どのようにインタプリタが解釈して、それを評価するか、までがステップを踏みながら経験でき、なおかつ、各項目の内容に関しても実際に手を動かすので、理解を助けてくれました。
これ読んだからエンジニアとして収入が増える、というものではないですが、CSに対してコンプレックスがあったりする方には、おすすめです。
2021になったが2020を振り返る
みなさん、あけましておめでとうございます
2021年になってしまいましたが、このタイミングで去年の振り返りをしようかと思います。
1-3月まで
修論提出編
この時期が精神的にもきつく、大変でした。というのも
とやらなければいけなかったです。(去年の今頃は大変でした)
本気で中退して中途?として就活しようとまで思ったほどです。。。
なんとか提出して研究室からおさらばすることができましたが、そのおかげか今の仕事がぜんぜん苦じゃないです。
登壇
そして修論を乗り切ったあとに、関西で最後となるイベント登壇をしました。
結局登壇したのはこの1件だけでしたが、関西Node学園の皆様に見送ってもらいました。。。(v-kansaiは時期の都合上できなくなった)
インターン先の卒業
M1の夏からお世話になっていた某社でのインターンも3月の頭に卒業しました。
最初はバックエンドっぽいエンジニア的な感じでジョインしていたのが、いつの間にか触ったことのないVue.jsで設計レベルから任せてもらえました。登壇に関しても上長が後押しをしてくださり、このインターンがあったからこそ成長できたな、とも思いました。
卒業する前、辞めたくなさすぎて泣くぐらい思い入れがあったし、最終出社日にお世話になった方がわざわざ出社してくださったのが印象的です。
4月以降
おしごと
就職して東京でエンジニアをやってます。
就活時代散々、バックエンド主体のWebエンジニア、というよくわからないことを言ってましたが、インターンの経験を経てフロントエンドエンジニアをやってます。
インターン先同様、結構新卒にしては色々任せてもらっていて、天職についたな、という感じです。
プライベート
どーでもいいですが、npmパッケージを夏にリリースしました。
端的に言うとMarkdownパーサ(htmlにするやつ)です。
普通のmarkdownパーサをnextとかで使うと、どうしてもmarkdownの要素だけにcssを適用するのが難しいので、独自のクラスを付与したhtmlを生成するようなライブラリがほしい、というのがつくるきっかけです。
あと、ギターを買ってしまいました。(ただ、買った時点で自分しか持ち主がいないらしく、個人特定されるので画像は割愛します)
2021年どうしたいの?
1月1日になったばかりでなんですが、仕事にもなれてきているので、エンジニアとして更に成長していきたいな、と思ってます。そのためにも
- 社外での登壇を行う
- OSSちょっと関わってみる
とかは、自分の成長にもつながるし、市場価値もあがるのでやってみようと思います。
最後に
この1年間で結構フロントエンドエンジニアとして自信がついてきたので、この調子で頑張っていきますー。
今年のjiko21もよろしくおねがいします。
安定を求めるか、最新を求めるか
どもども。コジエモンです!!
今日は少しポエム書きます。
そもそもなんの話か
簡単に言うと、プログラムとか、ツールとか、コンパイラとか、そういったコンピュータ関係のバージョンの話です。こういう事を書くと、たまに論争になったりします。
というのも、バージョンによって動作が変わる可能性があるからなんです...
安定を求める人達
これは結構ビジネスやってる人に多いんじゃないかな、って思います。
っていうのも、安定的に稼働していないと困るし...
あと、長く使うと、新しくすることに対してリスクがたかまるんですよね...
これはどうかわからないけど、学術分野の人とかもあんま最新のバージョンにすぐにはしないイメージです。
最新を求める人
これは新進気鋭のディベロッパーさんたちでしょう。特に、Web業界だとこの傾向が強いです。JavaScript界隈は変遷が早すぎます!!
ただ、それはそれで好きな自分もいるんですが...
こういう業界だとよく、後方互換性が切られちゃいます。AngularJSとAngularが別物なのは当にいい例です!!
ちなみに僕は...
わりかしなんでも最新のものにしてしまいますね...
gccのバージョンは8.1.0とめちゃ新しめです!!
まぁ、これに関してはやりすぎかも...