development

executableの場所を探すときwhichではなくcommandを使う習慣

whichを使わない一番の理由はcoreutilsに入ってないから(commandはたいていのshellでbuiltin functionになっている)。 ash(1): command interpreter - Linux man page dash(1) - Linux manual page Bash Builtins (Bash Reference Manual) たぶんDockerfil…

動的型付け言語で Fuzz Testing や Property Based Testing

なるべく小さい関数を組み合わせて設計するのが一番なので、それを目指したい 関数が増えるほどテストを作るのが大変になる 大量のボイラープレートコード 同じような文脈の乱立 「関数が増えるほどテストを作るのが大変になる」のを避けるために 「大量のボ…

TLA+に再挑戦(2022.2)

英語のドキュメント を読んだけどあまり理解できてなかったので 日本語 で再挑戦する会。 今回 2022.2 実践TLA+もくもく会 - connpass 「6章 時相論理」を読んだり試したり 次回から第2部、「7章 アルゴリズム」 感想 デッカーのアルゴリズム 厳密に交互にと…

第4回 Software Architecture: The Hard Parts 読書会@リモート

第4回 Software Architecture: The Hard Parts 読書会 - connpass JavaEE勉強会の読書会 開催場所はDiscordのjavaee-study-jp Neal Ford, Mark Richards, Pramod Sadalage, Zhamak Dehghani さんの Software Architecture: The Hard Parts [Book] を読んでま…

テストコードの中でruntime.GOOSを参照して実行しないコード片を判断するのは小さな間違い

ファイルパーミッションを 000 にして、読み取りできない場合をテストするコードがあった。 こういうやつ。 file_operation_test.go Windowsのファイルシステム(NTFS)では意図したようにパーミッションを変更できないため、このテストは失敗してしまう。 …

ST4でGoの開発環境を整えようとしてる

ST3の頃のほとんどのプラグインは廃れているようだった。 もうインターネットにまともな情報は残ってない… 全て忘れて改めて見直した結果はこんな感じ。 構文強調ができること 組み込みまれているから何もしなくてよい。 ファイル保存時に goimports が実行…

TLA+に再挑戦(2022.1)

英語のドキュメント を読んだけどあまり理解できてなかったので 日本語 で再挑戦する会。 今回 2022.1 実践TLA+もくもく会 - connpass 99ページ「5章 並行処理」から読んだり試したりした 次回は「6章 時相論理」 感想 TLA+ Toolbox は PlusCal の生成するコ…

第3回 Software Architecture: The Hard Parts 読書会@リモート

第3回 Software Architecture: The Hard Parts 読書会 - connpass JavaEE勉強会の読書会 開催場所はDiscordのjavaee-study-jp Neal Ford, Mark Richards, Pramod Sadalage, Zhamak Dehghani さんの Software Architecture: The Hard Parts [Book] を読んでま…

TLA+に再挑戦(2021.12)

英語のドキュメント を読んだけどあまり理解できてなかったので 日本語 で再挑戦する会。 今回 2021.12 実践TLA+もくもく会 - connpass 72ページ「3.4 例」のナップサック問題の定式化 「4章 定数、モデル、インポート」を読んで試した 次回は「5章 並行処理…

第2回 Software Architecture: The Hard Parts 読書会@リモート

第2回 Software Architecture: The Hard Parts 読書会 - connpass JavaEE勉強会の読書会 開催場所はDiscordのjavaee-study-jp Neal Ford, Mark Richards, Pramod Sadalage, Zhamak Dehghani さんの Software Architecture: The Hard Parts [Book] を読んでま…

実践ソフトウェアエンジニアリング第9版の翻訳に微力を尽くしました

ソフトウェア開発に関するいぶし銀な本です。 実物は厚くて重いのですが(A4、517ページ、1.2kg)、とても読みやすい体裁になっています(字形や文字サイズや割付の効果?)。 電子書籍(Kindle)もあります。 実践ソフトウェアエンジニアリング(第9版) 作者…

TLA+に再挑戦(2021.11)

英語のドキュメント を読んだけどあまり理解できてなかったので 日本語 で再挑戦する会。 今回 2021.11 実践TLA+もくもく会 - connpass 55ページ(第3章の冒頭)から復習しつつ、72ページからの「3.4 例」で行き詰まった。 デバッグトレースを取得するために…

第1回 Software Architecture: The Hard Parts 読書会@リモート

第1回 Software Architecture: The Hard Parts 読書会@リモート - connpass JavaEE勉強会の読書会 開催場所はDiscordのjavaee-study-jp Neal Ford, Mark Richards, Pramod Sadalage, Zhamak Dehghani さんの Software Architecture: The Hard Parts [Book] …

TLA+に再挑戦(2021.10)

英語のドキュメント を読んだけどあまり理解できてなかったので 日本語 で再挑戦する会。 今回 2021.10 実践TLA+もくもく会 - connpass 第2章の途中から第3章の途中まで読んで試した。 PlusCal の複雑な振る舞い TLA+ の演算子と関数 TLC(モデルチェッカー)…

第10回 The Software Architect Elevator 読書会@リモート

第10回 The Software Architect Elevator 読書会@リモート - connpass JavaEE勉強会の読書会 開催場所はDiscordのjavaee-study-jp グレゴール・ホープさんの「The Software Architect Elevator」を読んでます 今回は 39. Who Likes Standing in Line? から …

TLA+に再挑戦(2021.09)

英語のドキュメント を読んだけどあまり理解できてなかったので 日本語 で再挑戦する会。 今回 2021.09 実践TLA+もくもく会 - connpass 冒頭から 45 ページ(第2章の途中)まで読んで試した。 TLA+ Toolbox の準備 サンプルコードの入力と実行 https://scrap…

第9回 The Software Architect Elevator 読書会@リモート

javaee-study.connpass.com JavaEE勉強会の読書会 開催場所はDiscordのjavaee-study-jp グレゴール・ホープさんの「The Software Architect Elevator」を読んでます 今回は 35. Economies of Speed から 次回は 10/16(土)です。 39. Who Likes Standing in…

Javaアプリケーションのコンテナに割り当てたCPUリソースの影響

結論:垂直方向(CPUコア数の増減)より、水平方向(コンテナ数の増減)で検討するほうが有意義だと思う TL;DR PostgreSQLへ接続するWeb API(Spring Bootアプリケーション)のOCIイメージを、CPUコア数を指定して実行したとき、スループットやレイテンシに…

第8回 The Software Architect Elevator 読書会@リモート

javaee-study.connpass.com JavaEE勉強会の読書会 開催場所はDiscordのjavaee-study-jp グレゴール・ホープさんの「The Software Architect Elevator」を読んでます 今回は 31. Slow Chaos Is Not Order から 次回は9/11(土)、35. Economies of Speed から…

Growing 97 Things Series

97 Things シリーズが成長しまくってる。 日本語訳が出てたり、絶版になってたり、行先はまちまちだけど。 データエンジニア (知ってた)Javaプログラマー クラウドエンジニア エンジニアリングマネージャ SRE UXプラクティショナー スクラムプラクティショ…

第7回 The Software Architect Elevator 読書会@リモート

javaee-study.connpass.com JavaEE勉強会の読書会 開催場所はDiscordのjavaee-study-jp グレゴール・ホープさんの「The Software Architect Elevator」を読んでます 今回は Part IV. Organizations から 次回は8/14(土)、31. Slow Chaos Is Not Order から…

JDK から分離した ECMAScript エンジンの Nashorn を依存ライブラリで使用する

参考リンク。 GitHub - openjdk/nashorn: http://openjdk.java.net/projects/nashorn/ 公式?なGitリポジトリ。開発が継続しているのがわかる Java Platform, Standard Edition Nashorn User's Guide, Release 14 公式?なNarhorn Engineのユーザーガイド。…

Alibaba Dragonwell JDK のコルーチン実装 Wisp2 の調査

AlibabaはOpenJDKのディストリビュータ Dragonwell JDKという名前のJDKを開発、提供している Dragonwell JDKにはWispというコルーチン実装が組み込まれている Kotlin のコルーチンとは違って、JVMのスレッド実装を入れ替える構造になっている どのような特性…

第6回 The Software Architect Elevator 読書会@リモート

javaee-study.connpass.com JavaEE勉強会の読書会 開催場所はDiscordのjavaee-study-jp グレゴール・ホープさんの「The Software Architect Elevator」を読んでます 今回は 20. Writing for Busy People から 次回は7/24(土)、Part IV. Organizations から…

Spring Batch にアプリケーションとは別のデータベーススキーマを使わせたい

yujiorama/spring-batch-different-database-schema-example 経緯 Spring Batchでジョブを実行するには、ジョブ実行管理テーブル群を作らないといけない アプリケーションのデータベーススキーマはFlywayでマイグレーションするので、分けておきたい テーブ…

pgdiff(Rubyスクリプト)による PostgreSQL データベースの比較

pgdiff を使うと、オンラインの PostgreSQL を比較して、データベース定義を揃えるための SQL を生成できます。 特徴とメリット・デメリット 総合すると、何も使えないときは頼りたくなる、くらいの評価…… 依存する gem は pg だけで、それ以外は pure Ruby …

第5回 The Software Architect Elevator 読書会@リモート

javaee-study.connpass.com JavaEE勉強会の読書会 開催場所はDiscordのjavaee-study-jp グレゴール・ホープさんの「The Software Architect Elevator」を読んでます 今回は 16. The IT World Is Flat から 次回は6/19(土)、20. Writing for Busy People か…

A5:SQL Mk-2のER図(.a5er)からDDLを生成する

TL;DR コマンドラインユーティリティ自体の実行方法 Maven で実行する方法 Gradle で実行する方法 おまけ:GitリポジトリでER図(.a5er)を管理するときは .gitattributes を作ったほうがいい TL;DR モデリングに利用してる人も多い(であろう)A5:SQL Mk-2 …

第4回 The Software Architect Elevator 読書会@リモート

javaee-study.connpass.com JavaEE勉強会の読書会 開催場所はDiscordのjavaee-study-jp グレゴール・ホープさんの「The Software Architect Elevator」を読んでます 今回は 14. If Software Eats the World, Better Use Version Control! から 次回は5/22(…

JSONプロセッサーjq

使用頻度は高いのに使い方とかドキュメントをちゃんと読んでなかったので調査してきた。 web cite github/stedoral/jq 趣旨 jqのマニュアルを読んだりしてるうちに日本語版ができたので個人サイトで見れるようにした。 jq マニュアル・チュートリアル(非公…