かまたま日記3

プログラミングメイン、たまに日常

EmbulkのプラグインをKotlinで書く

embulk-input-remoteをKotlinで書き直したv0.3.0をリリースしました。

Kotlinは4年ほど前に会社のレポートでちょっと調べたままで知識が止まってましたが、最近はAndroidやサーバサイドの事例も多く出てきたので勉強がてらやってみるかなと思い試してみました。

結果

Kotlin、イイね 👍

積極的に使って行きたくなりました。

良かったところ

Javaとの相互運用性高い

  • KotlinからJavaライブラリ、JavaからKotlinライブラリどちらも透過的に呼べるので、混在させやすい(移行がしやすい)

導入が簡単

Javaで不便なところが解消されてて簡潔に書ける

  • embulk-input-remoteでは行数が 33% 減りました*2
  • アクセサ, equals, hashCodeなどのboilerplateが省略可能
  • (比較的) Null安全
  • 型推論があるので、型を明示する機会が減る
  • Function as first class object
    • Embulkプラグインは匿名クラスの利用が多いので助かった
  • コレクションの便利メソッド*3

不明点

パフォーマンス (vs Java)

実際測ってないので、断言はできませんが、 以下のリンク*4を見る感じそんなにオーバーヘッド的なのは無いのでは、という期待を持ってます...w ttps://www.reddit.com/r/Kotlin/comments/3ddj8w/what_is_the_performance_of_kotlin

*1:たまにエラーになることもあるけどちょっと修正すればたいてい大丈夫

*2:約430行から290行

*3:map, filterなど

*4:h抜きなのはなぜかフルのURLを貼ると投稿に失敗するので

Kubernetes Meetup #3 に参加してきた

k8sjp.connpass.com

前回の参加メモを見る感じ、前回は結構初歩的というか入門編的な発表が多かったですが、半年経って結構実践的な知見が増えてきた感じです、自分自身はこの半年ほとんど追えてなかったのでもっと追っていかねば。。

資料はこちら


コンテナ化したCloud FoundryのKubernetes上での実装

(@jyoshiseさん)

大規模分散システムをKubernetesとCloud Foundry(CF)で実装したHPE Helion StackatoというPaaSのお話。今はHPEが作ってるプロプライエタリな製品だけど、SUSEに移管されてOSS化される可能性が高いとのこと。Kubernetesとは関係ないですがCFってHeorkuのbuildpackに対応しているのを初めて知りました。

ThirdPartyResource を使った Kubernetes as a Service の実装

(村田さん、@ina_aniさん)

Kubernetesクラスターを管理するしくみ(Kubernates as a Service)をKubernetesの機能を使って構築するというメタなお話し。ThirdPartyReource, InformerFramework, RateLimitingQueueを利用する。デモで使ってたクラスタのステータスがビジュアライズされてるダッシュボードが凄かった。

Highly available and scalable Kubernetes on AWS

(@mumoshuさん)

AWS上にKubernetesを構築、運用するにあたっての知見について。kube-dnsとlogrotateは要注意。加えて、kube-awsというKubernetesクラスタAWSに構築するためのツールの紹介。minikubeというローカルのVirtualBox上にKubernetes環境を作れるツールで本番と開発環境との差異をなくしているというのはGoodだなと思いました。

LT 大会

KubeCon 2016 @ Seattle の参加報告

(tkusumiさん)

昨年は1000人規模、今年3月にヨーロッパで1500人規模、年末のKubeConは3000人規模で開催される予定とのこと。勢いを感じますね。

nghttpx Ingress controller

(tatsuhiro_tさん)

知識不足で正直良く分かりませんでした..

New features in Kubernetes v1.5

(superbrothersさん)

権限管理が追加されたのが大きそう。最初のLTの方の資料ですが、この辺も参考になりそう。 Kubernetesの主な機能一覧 (v1.5時点) - Qiita

kubernetes & OpenTracing

(Ladicleさん)

OpenTracingというマイクロサービスのトレーシング標準についてのお話し。

docomoビックデータ分析基盤でのk8sの活用

(hiroyuki_devさん)

DocomoのビックデータをRedshiftに入れるためのETLをKubernetesを使って作ったという話。毎日数十TBのデータはすごい..!

Little Glee Monster の武道館ライブに行ってきた

自分もリトグリ自身もずっと待ち望んでいたこのライブ、とにかく最高の一日でした!このライブの前にリトグリのファンになってて、参加できてよかったと心底思ったライブでした...2月と4月に行く予定のライブもとても楽しみです!

ライブ前

渋谷のTSUTAYATower Recordsでサインボードを見たり、ライブ記念の風船が配布されてたのをもらったりしてきました。

タワレコ
f:id:kamatama_41:20170108130507j:plain:w300

TSUTAYA
f:id:kamatama_41:20170108132208j:plain:w300

その後武道館へ
f:id:kamatama_41:20170108142207j:plain:w300

物販に並ぶ、30分くらい並んでイエロー号のタオルゲット。

ライブ

  • 全24曲*1 + 最後の好きだアカペラともり沢山のセットリスト
  • 中盤のスパンコールな衣装からの大人曲の流れは今までとは違う武道館後のリトグリの方向性を感じられた。とくにCatch me if you canのかれんが最高だった。
  • バックバンドの人たちの演奏がすごく良くてリトグリの良さをさらに引き出してくれた*2
  • アカペラメドレーもGood, 武道館で楽器無しであそこまで聴かせられるアカペラもなかなか無いのではないかと思った
  • ゴスペラーズ永遠にのカバーも披露、本人もライブに来てた模様*3
  • 直近のリリイベとかAbemaTVの生放送とかでMAYUの調子があんまり良さそうではなかったので心配だったけど全然問題なかった 💪
  • メンバー全員が全力出しきって最高のライブにしようというのが分かって感動感動アンド感動
  • 武道館でもまさかの撮影OKの青春フォトグラフで締め f:id:kamatama_41:20170108193930j:plain

*1:https://mdpr.jp/music/detail/1653252

*2:が、アサヒはぶどうパンネタにはしっていた

*3:が、manakaが盛大に歌詞を間違えてた...w

2016年振り返り、2017年の抱負

仕事関係

前半は、2月にローンチしたサービスのインフラ安定化・効率化を粛々と。後半は新しいことにチャレンジしたいということで、リグレッションテストの自動化(未達)や、Reactを使った案件のフロントエンドJS開発に参加させてもらってたりして、ちょっとずつ出来ることを増やしていこうとしているところです。あと11月にフィリピンに出張に行ったのはかなりいい体験でした。

フィリピンに行ってきた - かまたま日記3

OSS活動

issue報告やプルリクも思い立ったらできるようになってきたので以前に比べるとかなり成長したかと思います。主なコントリビューションは仕事で使ってるEmbulkやTerraform関係が多かったですが、その中でも一番大きかったのは tfenv を作ったことでstar50以上もらえたのはかなりのモチベーションになりましたし、JetBrainsのOSSライセンスももらうことができました。

JetBrainsのOSSライセンス申請したら通った - かまたま日記3

英語

ReadingとWritingは仕事上のやり取りはそれなりに出来るようになりましたが、職場の特性上ListeningとSpeakingの機会はほとんど無くその辺はあまり成長していないです。前述のフィリピン出張ではかなり苦労したし、海外メンバーとの協業も増えてきたので今年はちゃんと会話できるようになるのを目標にしたいと思います。TOEICは3回受けましたが600超えることすらできず...orz

私生活

リトグリ

夏に聞き始めてからどハマりしまして、それ以降はほぼ毎日聞いてました。ライブ、イベントにも行けるときは参加し、完全なるリト充を満喫しました。

イベント参加歴

ゴルフ

リト充してたので、昨年後半は全く活動しませんでしたが、親にアイアンセットをもらったのでちょっとゴルフも再開したいところです。

北海道旅行

夏に北海道に行きました、食べ物は美味しいし、ゆったりしているしとても良いところでした。まだ全然見れてないのでまた行きたい。

北海道旅行に行ってきた - かまたま日記3

2017年の抱負

  • エンジニア定年に向けた方向性を考える
  • 英語力引き続きアップ、今年こそTOEIC700点超える
  • OSS活動でなるべく草を生やす
  • 本を12冊以上読む
    • 洋技術書を一冊以上読む
  • 大きな病気にならない
  • 引き続きリトグリ応援する
  • ゴルフで90を切る
  • プライベートのアレを頑張る

過去の振り返り

embulk-input-remote 0.1.10 リリース

今回した一番大きな対応はテスト対応です

  • Docker 使ってローカルにSSHできるLinuxコンテナ起動して
  • embulk-testを利用した単体テストを追加して
  • travis-ciを利用してテストの実行できるようにしました。

実は、Docker使ってる会社のインフラ担当の割にあまりDockerに馴染みが無かったので、頑張って調べてDockerfileとか書きました。そのかいあって何となくDockerの雰囲気はつかめた気がします。