Software Transactional Memo

STM関係のことをメモっていこうと思います。

プログラミング

LLVMやるならgodbolt

この記事は pyspa advent calendar 2023の11日目の記事です。 godboltをご存知だろうか。 godbolt.org ブラウザから誰でもアクセスできる無料サービスでコンパイラの挙動について学ぶ事ができる。 例えば簡単に「渡された数Nに対し1+2+....+Nを返す関数sum」…

間接参照を巨大仮想メモリで飲み込む

この記事はデータベース・システム系 Advent Calendar 2023の3日目の記事である。昨日の記事も僕でした。 間接参照を巨大仮想メモリで飲み込む メインメモリはハードディスクやSSDより容量が小さく、この問題は当面は解決の目処が立たない。 そもそも今のDRA…

世紀末LSM-Treeプチフリ神話の終わり

データベース・システム系 Advent Calendar 2023の2日目の記事です

ストレージとコンフィグでデータベースのグリッチを探す

AIに描いてもらったストレージで作ったレース会場 はじめに この記事はデータベース・システム系 Advent Calendar 2023の一日目の投稿である。今年読んだ論文(今年書かれた論文とは限らない)の中で驚きや納得があって良かったなぁと思った論文をいくつか紹…

「禅とオートバイ修理技術」をプログラマが読んだ

「禅とオートバイ修理技術」これら2つの間にどのように関係があるのかまるで見当が付かず、タイトルだけ聞くとキワモノのようだがWikipediaによるとアメリカでは一番良く売れた哲学書とされている。 海外のエンジニアのブログを読み漁っていた時にオススメさ…

徐々に高度になるリングバッファの話

世界最速リングバッファへの道

キャリアハックの奇行

「やる気」とは才能である

きれいなコードを書けという話について

コードの読みやすさはコーディングのみによって成らず、ソフトウェアエンジニアリングであるという話。

正しいクラウドはある意味で遅い

TL;DR 正しく設計するとキャパシティは常にカツカツになる これはpyspaアドベントカレンダーの8日目の記事です。前日はShibukawaさんです。 世はクラウド時代、ソフトウェアはひとたび作られたら何億回実行されても摩耗するものではないので、どんな間抜けな…

Re: Re: Re: ドメイン固有型(値オブジェクト含む)を再考する

blog.j5ik2o.me この記事は彼のブログ投稿への返信です。 彼とのtwitter上でのreplyの応酬スレッドが見返すと引くほど長くなっていたので僕の観点からの要約を纏める。予め断っておくとこれは本当に自転車置き場の議論以外の何物でもなく、技術的な学びはど…

Re: ドメイン固有型(値オブジェクト含む)を再考する

blog.j5ik2o.me 値オブジェクトはドメイン固有型の一種です。なので、不変と等価判定だけではなく、なにかしらのドメイン固有の不変条件(invariant)を維持する責任があると考えます(もちろん型として切り出すわけですからその投資に見合うだけの見返りがない…

Value Objectについて整理しよう

Value Objectとは何であるか? マーチン・ファウラーのPatterns of Enterprise Application Architecture(PofEAA)やエヴァンス・エリックのDomain Driven Design: Tackling Complexity in the Heart of Software(DDD)が原典であるが、PofEAAではこう切り出し…

書評:並行プログラミング入門

並行プログラミング入門とRustはいいぞ

分散プログラミングモデルおよびデザインパターンの考察 その5

これまでプログラミングモデルのプの字もなかったので申し訳程度にプログラミングモデルの話をする。 分散して特定のアプリを動かしたいだけなら、例えばbitcoinをマイニングするASICクラスタに対して特定のプログラミングモデルは必要とされない。そのよう…