モチベーション 最近、流星のロックマン3というゲームに再燃しています。 Wi-Fiを使ってネット対戦を行うことができるのですが、任天堂公式のWi-Fiサービス終了により長らく対戦を行えない状況でした。 しかし、近年、有志の方がWi-Fiサーバをエミュレートす…
モチベーション 個人のリポジトリでdigdag-plugin-datadogを開発していますが、これを使うユースケースは主に _error のタスクでワークフローのエラーをDatadogに通知することであり、これは複数のワークフローが存在する場合、各ワークフローに書いて回る必…
追記(2020/04/28 23:55) ビルドに使うDockerのイメージを alpine → ubuntu にしたらうまくいきました FROM adoptopenjdk/openjdk8:latest RUN apt-get update && apt-get install --yes curl git openssh-client npm https://master.d24dpd4k731ni4.amplifya…
ざっくりまとめ Coursierの setup コマンドを使うとJDKとScala開発に必要なツールをまとめてインストールできるよ。 最近追加された install コマンド get-coursier.io Coursier といえば sbt v1.3.0 で取り込まれた高速でライブラリ依存を取得するためのOSS…
中止となってしまった技術書典8で頒布予定だったこの本ですが、 技術書典 応援祭 BOOTH で販売する運びとなりました。 ScalaのREPLおよびスクリプトの実行環境である、Ammoniteの使い方を解説する本となっております。 Ammoniteを使ったScalaスクリプトの開…
去年 nomadblacky.hatenablog.com 今年のテーマは「自己表現」で— blac_k_ey (@blac_k_ey) December 31, 2018 できごと インフラ/アプリケーション監視周りに色々興味を持ち始めて勉強を始めた 『入門監視』を読んだり Datadogを使い始めてみたり OSS活動に…
この記事は Scala Advent Calendar 2019 および Datadog Advent Calendar 2019 の21日目(遅刻)です。 scaladogとは? github.com scaladog は拙作のScala製 Datadog API のクライアントライブラリです。 HTTPでAPIを直接叩いているため、実行環境にDatadog Ag…
github.com ここに書いてある通り。 この記事ではTwitterを対象にAmmoniteでやります。 依存を追加 執筆時点の最新版を使います @ import $ivy.`com.github.scribejava:scribejava-apis:6.4.1` import $ivy.$ サービスクラスのインスタンスを得る Twitter, Y…
モチベーション 先日、TypeScriptとPython向けに AWS Cloud Development Kit がGAになりました。 aws.amazon.com 現在GAではないのですが、JavaもこのAWS CDKの対象言語となっています。 じゃあ、JavaでできるならScalaでもできるよね?(決まり文句) Scalaで…
coursierのCLIでbootstrapを使うとできる 以下は Ammonite をダウンロードしてスクリプト化する例 $ coursier bootstrap com.lihaoyi:ammonite_2.12.8:1.6.6 -M ammonite.Main -o amm --standalone https://repo1.maven.org/maven2/com/lihaoyi/ammonite_2.1…
Scalaコードをフォーマットするのによくscalafmtが用いられると思います。 scalameta.org 自身は仕事/個人開発でよく下記の設定を使っています。(宣伝) github.com sbtプロジェクトのディレクトリ下でちょこっとコマンドを叩くだけでscalafmtの環境が整うの…
最近以下のようなコードと出会いました。 package logging import org.slf4j.LoggerFactory object Logger { private val logger = LoggerFactory.getLogger("LOGGER") def debug(message: String): Unit = { logger.debug(message) } def info(message: Str…
できごと 転職した 趣味でScalaを書き始めてからScalaの楽しさに気づいていき、Scalaで仕事をできればいいなと思い始めるようになりました。 前職での仕事で自分とのキャリア感とのギャップを感じて、ある日思い切ってTwitterに「転職したい」とつぶやきまし…
github.com sentry-config ってなにそれ sentry-javaの設定をtypesafe-configでできるようにするライブラリです。 前回リリースしたv0.3.0の記事 変更点 一通りの設定項目をサポート 公式ドキュメントに記載のない設定項目を含め、sentry-javaが提供する一通…
仕事でたまたま、整形の難しいアプリケーションログを追うことになった。 テキストをいじくるとき、自分はAmmoniteをよく利用するのだが、 (これってもしかして、JupyterNotebookが使えるのでは…?) とふと思い立った。 色々調べたところ、almondというもの…
最近GradleでJavaのコードフォーマットの環境を整えたので、その備忘録。 google-java-format-gradle-plugin これが一番楽そうだった github.com build.gradleに依存を追加する plugins { id 'com.github.sherter.google-java-format' version '0.7.1' } フ…
たまたま検索に引っかかった記事が面白そうだったので読んでみた感想文。 yakst.com 1. 自分でログを書くべからず printfを使ったり、自分でファイルにログエントリを書き込んだり、あるいはログローテートを手動でやってはいけない。オペレータにお願いして…
github.com そもそもSentryってなに sentry.io アプリケーションの例外などのログを溜め込み、集計・可視化を行えるSaaSです。 詳細は割愛。 モチベーション Sentryのクライアント実装こと、 sentry-java は環境変数とシステムプロパティでの設定方法を提供…
最近Sentryを使い始めたのでメモ。雑。 sentry.io DSN(Data Source Name) の設定 (JVM) ログの吐き出し先。 JVMプロパティなどで設定する java -Dsentry.dsn=https://public:private@host:port/1 -jar app.jar Logbackの設定 build.sbt libraryDependencies …
(無事、転職いたしました) Table of Contents 1. 略歴 2. 主なスキル 3. これから学びたい 4. 最近作ったものなど 5. 以上を踏まえて希望するお仕事 転職を検討しています。Scala、もしくはデータ分析系に関われるお仕事がありましたら、DM頂けると嬉しいで…
Table of Contents 1. 読書 1.1. データサイエンティスト要請読本 登竜門編 2. Trailhead 3. fish-shell 3.1. `hub` コマンドの保管を入れた 4. Emacs 4.1. faceの設定をいじるなど 4.2. org-modeを使い始めた 5. Scala 5.1. enum的なものをScalaで使う方法…
まとめ 出来上がったものがこちら(投げやり github.com --- - hosts: localhost vars: HOME_DIR: "{{lookup('env', 'HOME')}}" SPARK_VERSION: "2.2.0" HADOOP_VERSION: "2.7" tasks: - name: Download Apache Spark get_url: url: "http://ftp.tsukuba.wide…