Don't Repeat Yourself

Don't Repeat Yourself (DRY) is a principle of software development aimed at reducing repetition of all kinds. -- wikipedia

2025年読んで印象に残った本(技術書編)

一般書編の続きです。 blog-dry.com 毎年恒例ですが、本を横に置きつつもまあまあ記憶に頼って書いている箇所があります。なので、事実誤認は少なからず含まれる可能性が高いです。また、Amazonアソシエイトリンクが付与されているので、苦手な方はご自身で…

2025年読んで印象に残った本(一般書編)

さて、毎年恒例のお正月に昨年読んだ本を思い返そうのコーナーです。2024年は下記の記事としてまとめました。お正月から急性胃炎らしきものを発症しており遅くなりました。 blog-dry.com blog-dry.com 私はソフトウェアエンジニアをしているので、ソフトウェ…

開発環境現状確認(2026年)

覚えてたのでやります。 blog-dry.com 前提として、macOSです。 エディタ Neovimを使っています。仕事ではKotlinを使用しています。KotlinのLanguage Serverは登場しましたが、相変わらずまだ安定的に使える状態にはないのでKotlinを書くときだけ仕方なくInt…

『NewSQL徹底入門』

NewSQLというキーワードを最近よく聞くようになってきました。TiDBはその代表格で、私の所属する会社でもよくその動向に関する情報が共有されています。最近話題になっていたものだとモンスターハンターワイルズへの利用でしょうか。[*1]最近だとAWSがDSQLを…

2025年やったこと

今年は大変だったな…という感想の出てしまう1年でした。 仕事 まず後述するようにとにかく勤務時間をがんばって確保するのが大変でした。会社がフレックスなのでフレックス制度をフル活用し、コアタイム外のミーティングを基本お断りする(ときどき出るけど…

Kotlinの「コンテクスト指向プログラミング」とは何か?

導入 Kotlinにおける高階関数 2種類の高階関数 スコープ関数 コンテクスト指向プログラミングで何ができるか? Context Parametersによるコンテクスト指向プログラミングの拡張 定義と解決したい課題 できること モノイド Raise DSL 関数型プログラミング言…

『開発者とアーキテクトのためのコミュニケーションガイド』

本書はドキュメントについてはもちろんのこと、たとえば人に伝える際にどうすればよいかやリモートワークで働く際に何を気をつけたらよいかといった、開発現場で遭遇する「コミュニケーション」つまり情報伝達の方法論をいろいろと教えてくれる一冊です。今…

2025年上半期読んだ本

気づいたらもう上半期が終わっていました。読んで印象に残った本の紹介をしようかなと思ったのでします。思い出せる限り書きますが、リストアップ忘れはあると思います。 上半期は正直なところ、4月以降が最近保育園に通わせ始めた子どもから風邪をもらいま…

Kotlinの新しいエラーハンドリング「Rich Errors」

先日より開催されていたKotlinConfで、新しいエラーハンドリング「Rich Errors」についての言及がありました。従来のように例外を使用するのではなく、エラーを値として扱えるようにする新機能です。聴き逃しているだけかもしれませんが、まだリリース予定な…

ObsidianとZettelkastenを使っている話

生成AIが直のMarkdownを読み込みやすいという話から、にわかにObdisianが注目を集めているようです。そしてObsidianが注目を集めるにあたり、Zettelkastenという手法にも同時にスポットライトが当たり始めているように見受けられます。実は両者をそれなりに…

同期Rustと非同期Rustで同じものを作るとどれくらい実装が変わるのか

同期Rustと非同期Rustの書き心地や使い心地の違いがRustのAsync WGでも課題として挙げられており、目下できるかぎり近づける取り組みが進行中です。詳しいところはRustが最近運用しているProject Goalsの非同期Rustに関する部分を参照してください。ここを見…

1月読んだ本

例年年の終わりにまとめを書くときに、その年に何を読んだのかを忘れがちです。本棚を漁れば思い出すんですが、そうすると電子で読んで印象に残ったものを紹介し忘れがちです。ならば、毎月やれるときは紹介してみてはどうかというのが、今年のテーマです。 …

『バイリンガルITエンジニアの英語』

バイリンガルITエンジニアの英語作者:mayukoKADOKAWAAmazon 最近本ばかり読んでますね。そろそろコードを書いた話をしたいところなんですが、積読を消化するのに手一杯です。いえ、仕事ではコードを書いているんですけどね。 さて、ITの現場でよく使われる英…

『ソフトウェアアーキテクトのための意思決定術』を読んだ

ソフトウェアアーキテクトのための意思決定術 リーダーシップ/技術/プロダクトマネジメントの活用作者:Srinath Perera,島田 浩二インプレスAmazon 私は現在、会社でアーキテクト[*1]という職位についています。実際のところは、自分の半分くらいの時間でチ…

開発環境現状確認(2025年)

たしかに、その年ごとに何を使っているのかログ取れるとおもしろいですね。来年もやるかどうかは未知数ですが! blog.handlena.me エディタ Neovimを使っています。2023年ごろにVS Codeから乗り換えたはずです。一応緊急避難先としてVS CodeやZedもセットア…

Ktor × Exposed × Koin × kotlin-resultを用いたDDDを意識したアプリケーションの実装

ここ数年で『関数型ドメインモデリング』という書籍や、『Functional and Reactive Domain Modeling』といった書籍を読んだ経験から、今業務で取り組んでいるKotlinではどう表現できるのかに興味がありました。年末年始に少しまとまった時間が取れたので、実…

2024年読んで印象に残った本(技術書編)

2024年に読んで印象に残った本の技術書編です。去年はそんなに多くの冊数は読めていません。というか、技術書を執筆して出版したので、技術書そのものにお腹いっぱいだったのは大きいと思います。 本を書いたという話は下記です。 blog-dry.com 非技術書編を…

2024年読んで印象に残った本(非技術書編)

2024年は終わってしまいましたが、2024年読んで良かった本を紹介したいと思います。今回は技術書でない本を紹介します。 2023年くらいからこちらのブログでやっています。 blog-dry.com 免責事項ですが、完全に読了したものではなく読みかけの段階でも「これ…

Ghosttyを使う

日常的にはWezTermを使用しているのですが、Ghosttyがリリースされたのでセットアップしてみました。という記録です。 Ghostty GhosttyはTerraformやVagrant、Packerなどを提供するHashiCorpという会社を作ったMitchell Hashimoto氏によって開発が進められる…

tokioから発表された新しいORM「toasty」を触ってみる

toastyは先日tokioから発表されたORMです。 tokio.rs このORMは現状開発段階のもので、まだ実用に耐えうる段階にはないとGitHubには書かれています。というか、crates.ioにはダミー用関数が用意されているだけで、プロジェクトの依存に追加したとしてもまだ…

『RustによるWebアプリケーション開発 設計からリリース・運用まで』という本を共著で書きました

RustのWebアプリケーション開発に関する書籍を共著で執筆しました。1年くらい執筆していましたが、出版時期などが定まってきたので内容の紹介を込めて告知の記事を書きます。9/26刊行予定です。予約よろしくお願いします。 RustによるWebアプリケーション開…

Zedの設定をちゃんとやってみる

ここ数回の記事を見返してみると、書評ばかりしていてコード書いてるのか…?となったので、久しぶりにちゃんとコード(設定ファイル)を書く記事を書こうと思いました。いえ、コードは書いてるんですが、まとまった成果になっていないか、あまり新しいことを…

『Kotlin in Action Second Edition』を読んだ

しばらくは忙しく過ごしていてなかなか技術書を読む余裕はありませんでしたが、ようやく一冊読めたのでメモを残しておきたいと思います。『Kotlin in Action』という本の第2版です。未邦訳らしかったので、原著を読みました。 なお、気になったところだけつ…

『ルールズ・オブ・プログラミング』を読んだ #iknowtherulesjp

Ghost of Tsushimaなどを作った会社の人が書いた本です。ゲーム開発におけるコードを書く際の教訓を整理し、改めて示し直したいい一冊だったと思います。大事なことですが、著者は決して「このルールを絶対使え」と言っているのではなくて、そもそもまず会社…

『Tidy First?』を読んだ

最近アーキテクトなるお仕事になったようなので、コードやアーキテクチャ関連の本を読み漁っています。何冊か読んでいるんですが、まずは最近Kent Beckが出版した『Tidy First?』の話を書きたいと思います。 Tidy First? (English Edition)作者:Beck, KentO'…

Kotlinのスマートキャスト

最近はKotlinエンジニアをしています。Scalaを5年ほど書いていたので、Kotlinの文法それ自体はScalaの知識でだいたい追いつくことができました。一方で、使えたら便利だと思う機能としてスマートキャストという機能に出会いました。Kotlinには言語仕様書があ…

IntelliJ IdeaにIdeaVimを入れてNeovimとほぼ同じ動作をさせる

JavaやScalaで仕事をしていたころは毎日使っていたIntelliJですが、いつの間にかRustで仕事するようになってまったく開かなくなりました。最近はNeovimで仕事をしており、そちらの方がもはや慣れています。 ところが最近Kotlinを使う必要が出てきたので、Neo…

git commit --fixupを使いましょう

発端 Pull Request で force push されると差分がわからなくなるから困るんだけどみんなどうしてますか?— codehex.bsky(へっくす) (@codehex) 2024年2月25日 ポストの前提がちょっとわかりませんが、レビュー後にforce pushされると、どこに修正を入れた…

勉強方法について

最近よく聞かれるのですが、実際のところ答えに困ったので普段何をしているかをメモしておこうと思います。自分語りです。前提として、筆者はソフトウェアエンジニアであり、ソフトウェアエンジニアとしてどうしているかという話をしています。 学び方 学ぶ…

年初でアップデートした開発環境の話

いくつか記事を読んで、もう少しGitならびにGitHubの操作周りを便利にしたいと思ったので、いくつかアップデートをしてみました。追加したのは次のとおりです。 ghqの導入と、リポジトリをfzfで探せるようにした。 ghコマンドをちょっと覚えた。 Orbstackをb…