CRDTs #2: Turtles All the Way Down(jhellerstein.github.io) Modern distributed systems often seem to rest on an stack of turtles.
For every guarantee we make, we seem to rely on a lower-layer assumption. Eventually we're left wondering: what is at the bottom?
Dijkstra on Ada(wordpress.com) Dijkstra was one of the reviewers of the fours language proposals which eventually lead to the language Ada: red, green, blue, and yellow (the winning proposal was green). Here are some quotes from each of the reviews:
CRDTs: Pros and Cons (Lattices and Lettuces?)(jhellerstein.github.io) Over the next few days, I'm going to post a number of observations about CRDTs: Convergent Replicated Data Types. These are data structures that aspire to help us with coordination-free distributed programming, a topic that interests me a lot. How can developers (or languages/compilers) deliver distributed programs that are safe or correct in important ways, without employing expensive mechanisms for coordination that make the global cloud run as slowly as a sequential computer?
Alan Turing papers saved from shredder could fetch £150k(theguardian.com) Widely considered the father of theoretical computer science, Alan Turing’s influence on modern life continues to be felt in the age of artificial intelligence. But despite this legacy, a cache of his most important papers was nearly shredded – only to be saved at the last minute when their significance was recognised at a family event.
Memory Consistency Models: A Tutorial(jamesbornholt.com) There are, of course, only two hard things in computer science: cache invalidation, naming things, and off-by-one errors. But there is another hard problem lurking amongst the tall weeds of computer science: seeing things in order. Whether it be sorting, un-sorting, or tweeting, seeing things in order is a challenge for the ages.
What makes a good engineer also makes a good engineering organization (2024)(moxie.org) The people who create software generally refer to themselves as software engineers, and yet if they graduate from university, it is typically with a degree in computer science. That has always felt a little strange to me, because science and engineering are two pretty different disciplines – yet we for the most part seem to take such an obvious contradiction for granted.
CHERIoT: The Last Ten Years(cheriot.org) This week, we received an IEEE Security and Privacy Test of Time Award for the 2015 paper CHERI: A Hybrid Capability-System Architecture for Scalable Software Compartmentalization.
DeepSeek-V3: Achieving Efficient LLM Scaling with 2,048 GPUs(arxiv.org) The rapid scaling of large language models (LLMs) has unveiled critical limitations in current hardware architectures, including constraints in memory capacity, computational efficiency, and interconnection bandwidth.
Moving Forth: a series on writing Forth kernels(bradrodriguez.com) A selection of papers I have published, seminars I have presented, and computer programs I have written, that are available on this site. Please note that many of the papers include illustrations -- your browser should support GIF files. Detailed drawings are sometimes offered as PDF (Adobe Acrobat) files.
71 points by todsacerdoti 8 days ago | 11 comments
O(n) vs. O(n^2) Startups(rohan.ga) I recently saw a tweet[1] about how people should go about starting startups/businesses, and it caused me to formalize my intuitions around two distinct types of tech businesses I am familiar with. I’ll call them $O(n)$ startups and $O(n^{2})$ startups.
Comparing floating-point numbers (2012)(wordpress.com) This post is a more carefully thought out and peer reviewed version of a floating-point comparison article I wrote many years ago. This one gives solid advice and some surprising observations about the tricky subject of comparing floating-point numbers. A compilable source file with license is available.