Software Transactional Memo

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

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

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

Re: ブロックチェーンでそんなことはできない

はじめに chike0905.hatenablog.com この記事は大変楽しく拝読したが、ブロックチェーン素人ながら気になる点がいくつかあったので指摘する。要旨は以下である。 タイトルで「できない」と言ってる割には「できるけど筋が悪い」だけに見える 研究中で結論が…

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ではこう切り出し…

ブロックチェーンの作り出す価値に付いて

TL;DR 疑いの目を向けてみると怪しい奴ばかり 通貨発行は楽しい、これは真理である。 www.sinseihikikomori.com 1人プレイ用のゲームの中で敵を倒してゲーム内の通貨を得る行為は広義の通貨発行と見做せる。ドラクエの世界でスライムを倒して3ゴールドを得る…

Re: Web3というテロリズム

わからないことを偉そうに書いて怒られて進化したいという芸風なので書いてみました。 というのだから技術的に正確なツッコミを入れて欲しいという事だと信じて書く。まさか後釣り宣言など来ないだろう。

Re: Re: Re: 空想のNFTと現実のNFT

前回の記事に更に返事を頂いた。応酬が全部長文なのでこの記事から読み始める人は「まとめ」から読んで興味が湧いたかどうかで全文を追うか検討して欲しい。 sasakill.substack.com まさか本当に返事が貰えるとは思っていなかったが、実に興味深く、かつ知見…

Re: 空想のNFTと現実のNFT

前回の記事に長文で反論が付いていたので興味深く拝読した。 sasakill.substack.com 書いた人はSmartnews社のVice Presidentのようで、予想外のところまで記事がリーチしたのは少し驚いている。 メタバースはNFTの使い途の一部でしかなく、Web3によって完璧…

NFTとメタバースについて思うこと

TL;DR NFT投機界隈のデタラメに気をつけましょう

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

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

ソフトウェアエンジニア、建売を買う

建売りの戸建てを買ったのでそれに合わせて学んだ事や考えた事のメモ。

電動スタンディングデスク FLEXISPOT を自宅オフィス環境に導入した

TL;DR スタンディングデスクは良い コロナ禍が始まって以来、在宅勤務を続けているが勤務先へのアクセス利便性を優先したが為に住居は1LDK+Sという状況で、2歳になった娘も居る状況で労働環境の確保と充実は急務であった。 スタンディングデスクで探すと昇降…

娘が1歳半になるまでに助かった便利アイテムたち

TL;DR アフィ記事です 1歳半になりました 先日めでたく友人に子供が生まれ、他でも安定期に入ったとかめでたい報告が相次いでおり、そういう年代に入った実感が湧いてきた。 前々回の記事で書いた娘が無事に一歳半検診を終え、この期間であっても学んだ事は…

こうしてGoogleに入社した(kumagi編)

Googleオフィスの窓からの眺めをGoogle Photoが自動加工したもの TL;DR AtCoderやろうぜ Googleの(僕から見て)偉い人が立て続けにブログを書いており ctrl-x-s.blog hoge.blog ここ数件の僕のブログへの反響を読んでも「Googlerだから特別」みたいな意見が散…

Googleに転職していきなり3ヶ月の育休を貰った

TL;DR アフィ記事です 転職してからすっかりSNSで音沙汰がなくなったなkumagiと一部の界隈で噂されているようですが、twitterやFacebookにはたまに書いていたように娘が産まれました。 Googleでは子供が生まれた時に育休を取ることができる。単なる育児休業…

6年勤めたNTTを退職しました

最終退社時の自分の机 2012年に修士卒からの新卒でNTT研究所に入り、6年間お世話になりました。研究所では同期や先輩や後輩や上司に恵まれ、存分に書籍や論文を読んで勉強して力を蓄えたり、対外的な発表の場にも恵まれ外ではできないような体験をすることが…

分散キューという名の苦しみ

TL;DR 分散システムにおいてキューを導入する場合、本当にキューが必要なのか再考すべき。そこが地獄の入り口だから。 システムの抽象 コンピュータの世界は、本来は0と1の信号の羅列が飛び交う無機質なものである。でも人類は信号だけですべてを語らず、様…

NTTによるブロッキング論点の整理

NTTがブロッキングを発表してから様々な反響があったのでざっと眺めて反応を主観でカテゴライズしてみる。 TL;DR; NTTも政府もしっかりしろ。あと違法行為はやっぱりダメだ。

NTTによるブロッキングの何が許せないのか

注意: この記事は私の所属する組織の意思も意見も絶対に断固として欠片すらも表明する事を意図して書いていません TL;DR;今回のサイトブロッキングは私見ではダメだと思ってるけど、国の言うロジックは一応わかるし勘違いベースで応援するのも叩くのも止め…

分散ロックという名の過ち

 TL;DR;「分散ロック」が分散システムの設計図に登場した時だいたいその設計は間違っていて本当に必要なものはトランザクションだ 並行システムを実装する際にロックを用いるのはとても自然なことだ。 僕も普段はロックフリー系のアルゴリズムに詳しいと言…

分散システムについて語らせてくれ。顛末と反省。

8/10のNTT Tech Conference #2 にて発表の時間をもらってこのタイトルで喋ってきた ntt-developers.github.io 発表が決まるまで これはNTTグループ内のソフトウェア・ネットワーク系技術者が集まるコミュニティで、誰が発表者になれるかは投稿されたProposal…

『夢のデータベース?「Cloud Spanner」の実力は?』について

こんな記事が目に入った。 www.itmedia.co.jp 大雑把に完全に間違ったことを言っているわけでもないが、読んでいくといろいろ鼻につくところがあり、どのあたりから間違っているのかと自分に問いただすのは現時点での自分の知識を棚卸しするためにも有用かも…

ファントム、あるいは忖度

TL; DR; 「神輿は軽くてバカがいい」というのは文字面以上に誠実な上司と社員の信頼関係 大きい企業ではとにかく会議が多い。僕の務めている部署では意図して会議を減らしているのでかなりマシな部類ではあるものの、その減っている会議の中でもときおり大き…

大企業のデスマーチは何故止められないのか

以下ポエム。 TL;DR; 悪者が居ない組織でも無能で勤勉な会議体は未知の力学で動き続けるのだ。 一般に、大企業に就職するのは簡単ではない。知名度がある分、エントリーしてくる人間の数も多く自然と競争が熾烈になる。その熾烈な競争を勝ち残った分、そりゃ…

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

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

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

引き続き分散システムのデザインパターンの話をしていく。例によって適切な名前を見つけられなかった場合にはその場で適当に名づけているので、ここに書いてある名称が技術レベルでの正式名称だとは思わず、正式名称を見つけたらそっとコメント欄で教えてく…

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

昨日に引き続いて分散システムのデザインパターンについて書いていきたい。 だがそれ以前に故障モデルに関する前提を忘れてはならない。人によって様々な方針があるが、個人的には分散システムの世界において意識しなくてはならない故障モデルは4つだと考え…

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

前回の記事では 分散システムのデザインパターンと銘打っておきながら並列・並行システムの分野の話からクラウド環境へとこじつける事を「分散システム」と呼んだ事。 システム全体を決定づけるわけでもない通信パターン上の選択肢の一部を切り出してシステ…

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

Yahooの技術者が書いたブログ techblog.yahoo.co.jp が悪い方向に期待を裏切ってくれたのに対し、 @kuenishi さんがまとまった文章 kuenishi.hatenadiary.jp を書いていたので、僕も2番煎じぐらいでまとまった文章を書く。始めに断っておくと、分散システム…