Presto Conference Tokyo 2020でトレジャーデータにおけるPrestoサービスのテスト戦略について発表させていただきました

今年はリモート開催となったPresto Conference Tokyo 2020で、トレジャーデータのPrestoサービスのテスト戦略について発表させていただきました。 スライドはこちらです。 Testing Distributed Query Engine as a Service from takezoe www2.slideshare.net …

mockito-scalaについて調べてみた

ScalaTestでは以前からMockitoSugarというトレイトが提供されており、ScalaからMockitoをちょっとだけ便利に使用することができるようになっていたのですが、元々それほど大した機能もなかった上に現在は別ライブラリに切り出されてしまったこともあり、使う…

sbt-native-imageプラグインによるScalaアプリケーションのネイティブイメージの生成

これまでScalaでGraalVMのネイティブイメージ生成機能を使う場合はsbt-native-packagerプラグインを使用していたのですが、最近新たにsbt-native-imageというプラグインがリリースされたとのことで実際に試してみました。 Released the first version of sbt…

Learning Spark: Lightning-Fast Data Analytics 2nd Edition

Spark 3.0に対応したLearning Sparkの2nd Edition、しばらく前にDatabricks社のWebサイトから無料でダウンロードできるものを入手していたのですが、最近ようやく一通り目を通すことができました。 Learning Spark: Lightning-Fast Data Analytics作者:Damji…

GitBucket 4.34.0をリリースしました

Scalaで実装されたオープンソースのGitサーバ、GitBucket 4.34.0をリリースしました。 https://github.com/takezoe/gitbucket/releases/tag/4.34.0 2020年初、7ヶ月ぶりのリリースとなります。色々変更が溜まっていたり、プラグインのアップデートも必要だっ…

ThinkPadキーボードをMacで使うためのKalabiner Elementsの設定 最新版

Mac

過去にも同じ記事を書いたのですが、ThinkPadキーボードのモデルチェンジやKarabinar Elementsのバージョンアップで微妙に変わっている部分もあるのでThinkPad TrackPoint Keyboard IIで行った設定を自分の備忘録を兼ねてメモしておきます。 スペースキー周…

ThinkPad TrackPoint Keyboard IIを買った

ここ数年メインの作業環境がThinkPadではなくなってしまったため、外付けのThinkPadキーボードを買い替えながら使い続けており、現在使っているBluetooth版のものもまだまだ全然使えるので迷ったのですが、7年ぶりのバージョンアップということでやはり購入…

GitHub Actions 実践入門

最近GitBucketのCIをTravisからGitHub Actionsに移行したりしていたのですが、達人出版会さんのセールでこの本が半額になっていたので購入してみました。 tatsu-zine.com 内容的にはGitHub Actionsの基本的な使い方から様々な機能、アクションの作り方まで一…

GraalVMでネイティブイメージを生成可能なScalaベースのCLIアプリケーションのためのgiter8テンプレートを作ってみた

以前PicocliとGraalVMを使ってScalaでネイティブCLIアプリケーションを作成する方法を試してみたのですが、その後細々とスタンドアロンのネイティブイメージを作成するのに適したScalaライブラリの組み合わせを試したりしていたので、これらをまとめてgiter8…

MetalsプロジェクトでBloopのCLIを活用する

以前Metalsユーザ向けのBloopの紹介記事を見かけたのですが、確かにVS CodeなどでMetalsを使っている場合、BloopやMetalsサーバが常にVS Codeの背後で起動しているのでターミナルでのコンパイルやテストの実行にもBloopのCLIを活用するには理に適っているか…

ScalaのLanguage Server「Metals」にコントリビュートしてみた

Metalsも最近は随分出来が良くなってきて割とVSCodeでも割と不自由せずにScalaの開発ができるようになってきました。Emacsやvimユーザの方もMetalsを導入することで実用的なScala開発環境を構築できるのではないかと思います。 ひとつ気になっていたのが、業…

Presto: The Definitive Guide: SQL at Any Scale, on Any Storage, in Any Environment

昨年から執筆中という話だったオライリーのPresto本がこの4月に発売になったとのことでゴールデンウィーク中に読んでみました。 Presto: The Definitive Guide: SQL at Any Scale, on Any Storage, in Any Environment (English Edition)作者:Fuller, Matt,M…

Scala Love Conferenceをライブストリーミングで視聴していました

今年はコロナウィルスの影響でScala Daysが延期されてしまったのですが、Scala Loveポッドキャストを配信しているOliさんの主催で先週末にScala Love Conferenceというオンラインカンファレンスが開催されました。 初開催にも関わらず、2トラック構成で休憩…

jenvで複数バージョンのJDKを切り替える

仕事でJava 8とJava 11を行ったり来たりしたり、Javaの特定のマイナーバージョンでのみ発生する問題の調査などをしないといけないケースが出てきて、最初は都度環境変数で切り替えていたのですが、切り替え忘れてうっかり別のバージョンでコンパイルしてしま…

Modern Systems Programming with Scala Native: Write Lean, High-Performance Code without the JVM

いまだScala 2.11までのサポートしか提供されていないなど開発が停滞気味のScala Nativeですが、最近書籍が出たということで読んでみました。 Modern Systems Programming with Scala Native: Write Lean, High-Performance Code without the JVM作者:Whalin…

みんなのJava OpenJDKから始まる大変革期!

Java 14もリリースされるとのことですが、最近の動向をちゃんと追えていないので学習のためと、最近ずっと自宅から仕事をしているので気分転換の読書も兼ねて最近発売された「みんなのJava」を読んできました。 みんなのJava OpenJDKから始まる大変革期!作者…

Scala、Picocli、GraalVMによるネイティブCLIツールの作成

以前、Scalaを使ってCLIツールを作るという記事を書いたのですが、やはりJVMベースのアプリケーションには起動時間のオーバーヘッドが付き物なのでちょっとしたCLIツールをScalaで書こうという感じにはなかなかなりません。そこで今回はPicocliというJava向…

Scalatra 2.7.0をリリースしました

Scala用のSinatraライクなWebフレームワークScalatraの最新バージョン2.7.0をリリースしました。 github.com 今回は2年以上ぶりのメジャーバージョンアップですが、今回はScala 2.13への対応、メンテナンス性向上のためにあまり使われていないモジュールやSc…

HHKB Professional2用の吸振マットを買ってみた

PC

ThinkPadキーボードのトラックポイントが実は肩コリの原因なのではという疑惑により最近は再びHHKBと普通のマウスを使う生活をしています。最初はHHKBのキーストローク辛いなぁと思っていたのですが、すっかり慣れてしまいました。肩コリは多少改善したよう…

Amazon Builder's Libraryを読んでみた

昨年のre:Invent 2019で発表されたAmazon Builder's Libraryを一通り読んでみました。通勤電車で読んでいたのですが、途中で冬休みに突入してしまい少し時間がかかってしまいました。途中で日本語にも対応していることに気付いたのですが、折角なので全て英…

100均のコルクシートでキーボードマットを作ってみた

PC

HHKBを自宅のデスクで使っていると結構タイプ音が響くし底打ちした時の反動も感じるなぁと思っていたのですが、どうやらHHKBの裏に貼り付けられる吸振マットなるものが存在するらしいということを知り、クリックしようと思ったところすでにHHKB Pro2用のもの…

GitBucket 4.33.0をリリースしました

Scalaで実装されたオープンソースのGitサーバ、GitBucket 4.33.0をリリースしました。 https://github.com/takezoe/gitbucket/releases/tag/4.33.0 CLIオプションを環境変数で設定可能に GitBucketはDockerなどでの利用時を想定し、通常設定ファイルで行う設…

2019年の振り返り

今年もようやく仕事納めということで一年の振り返りを書いてみようと思います。 仕事関係 前職、前々職ではOSS活動や執筆活動に割く時間があったのですが、トレジャーデータに転職してからは基本的に仕事に専念しています。年齢による体力的な衰えも実感する…

入門 監視 ―モダンなモニタリングのためのデザインパターン

今更ですが、最近監視って難しいなぁと思うことが多いのでこの本を読んでみました。 入門 監視 ―モダンなモニタリングのためのデザインパターン作者:Mike Julian出版社/メーカー: オライリージャパン発売日: 2019/01/17メディア: 単行本(ソフトカバー) 目…

airframe-launcherとsbt-packでScalaでCLIツールを作る

私は普段主にScalaを使っているので、ちょっと手の込んだ処理が必要だったりJava/Scalaライブラリを使ったツールが必要な場合にScalaで書けると便利だなと思うことがあります。 AirframeはScala用のDIコンテナを中心とした様々な機能を提供するライブラリ群…

Skills Matter社の破産とロンドンで登壇予定だったScalaミートアップのキャンセルについて

ロンドンで技術系イベントを多数開催していたSkills Matter社が10月末に破産してしまったそうです。 www.cbronline.com Skills Matter社はScalaDaysを除けばヨーロッパで最大のScalaカンファレンスであるScala Exchangeを毎年開催していたりと、Scalaコミュ…

マルチペアリング可能なUS配列のBluetoothキーボード

PC

家のデスクが狭いので二台のクラムシェルモードのMacBookを一式の入力デバイスで切り替えて使いたいと思い、マルチペアリングの可能なBluetoothキーボードを探していたのですが、マルチペアリングできてUS配列のものがなかなか見つからず、結局以下のものを…

Airframe Meetup #3でLTをしました

去る10月23日(水)にトレジャーデータの東京オフィスでAirframe Meetup #3が開催されました。 airframe.connpass.com 誠に僭越ながら私もLTをさせていただきました。Java時代からのDIの変遷を振り返るという老害的なテーマだったのですが、だいぶグダグダな…

MacBookを二枚立てられるようにしてみた

Mac

以前書いたように自宅ではデスクが狭いのでまな板スタンドでMacBookを立てて使っています。 takezoe.hatenablog.com ここのところ諸事情によりもう一台のMacBookと使い分けているのですが、都度置き換えるのが面倒なので二枚立てできるスタンドを購入してみ…

データ指向アプリケーションデザイン

監訳者の@taroleoさん経由で発売前に頂いたのですが、分量が多く(約600ページ)内容もぎっしりで読むのに時間がかかってしまいました。紙媒体のものを希望してお送り頂いたのですが、あまりの厚さに持ち運びが困難なので電子版にすればよかったと若干後悔し…