👋 Hi, this is Gabriel with this week’s learnings. I write about software, startups and things that interest me enough to learn about. Thank you for your readership.
This week I’m sharing my top learnings about FoundationDB, ScyllaDB, LSP, and more. Hope it is helpful!
Learned while reading
Over the past decade, there has been a significant shift in microprocessor design, with a growing emphasis on increasing the number of logical cores. This trend, along with the widespread adoption of Non-uniform memory access (NUMA) support, has enabled ScyllaDB to introduce a novel shard per core design. In the past, distributed databases typically assigned shards based solely on a node ID. However, ScyllaDB takes a different approach, recognizing that modern nodes contain multiple cores. By assigning a separate shard to each core, ScyllaDB maximizes parallelism. ScyllaDB's design ideas are largely packaged up in their application framework called Seastar. Redpanda, a Kafka alternative, also leverages the Seastar framework.
FoundationDB sets itself apart from other databases by bridging the gap between SQL and NoSQL worlds, offering the best of both. It provides ACID transactions and strong consistency, which are typically associated with traditional SQL databases. At the same time, FoundationDB delivers the schema flexibility and performance that are often attributed to NoSQL databases. At its core, FoundationDB stores everything as simple key-value pairs. This low-level storage engine serves as a foundation upon which various types of databases can be built, including document, graph, and relational databases. Developers can model their data in ways that best suit their specific use cases, without being constrained by a rigid schema. FoundationDB sees transactions in NoSQL databases as the future, and this vision is gaining traction, with other NoSQL databases like ScyllaDB now exploring the addition of ACID transactions to their offerings.
Compilers and language servers, while often based on the same backend, serve different purposes and therefore are separate processes. A compiler, such as Clang or Clang++, translates source code into executable machine code. On the other hand, a language server, like Clangd, provides IDE features such as code completion, error highlighting, and navigation. Many language servers implement the Language Server Protocol (LSP), a standard introduced by Microsoft in 2016 to make a single language server portable to multiple development tools.
Learned while listening to podcasts
There are 343 software public market companies in the U.S.A that are worth a billion dollars or more. Yet, there is 1000+ unicorns in the private market. Of which, 60% were marked by SoftBank, Tiger, Coatue, and Insight.
With Llama 3, OSS is catching up to closed source models. Having a free and “good enough” alternative for developers to easily build on creates a competitive advantage that will be hard for closed source models to beat even if they are better. GPT4 is $10 per 1 million tokens input and $10 per 1 million tokens output. Llama 3 70b is 60 cents per million tokens input and 70 cents per million tokens output.
Loved reading this. I wish some of the images below had links to X.
Liked the article, do write more and more details if possible, thanks.