October 2025 Summaries
2 posts from TigerBeetle
Filter
Month:
Year:
Post Summaries
Back to Blog
TigerBeetle and Synadia have pledged a combined $512,000 to the Zig Software Foundation over the next two years to support the language's development and its community. Zig was chosen for TigerBeetle due to its emphasis on explicit memory management and simplicity, aligning with the project's goals of creating safer, more efficient software. Unlike Rust, Zig's design philosophy prioritizes explicit control over hidden operations and offers checked arithmetic and safety as a spectrum rather than an absolute. This made it suitable for TigerBeetle's needs, which include avoiding multithreading and ensuring correctness across numerous invariants. Zig's simplicity and focus on core features have allowed TigerBeetle to innovate rapidly and maintain tight tolerances, leading to its adoption by major financial institutions. Despite being in a pre-1.0 phase, Zig's stable features and the dedication of its core team have provided significant performance improvements with each update. The partnership with Synadia, inspired by shared values and a commitment to open-source development, reflects a broader vision of fostering community-driven innovation in systems programming.
Oct 25, 2025
1,817 words in the original blog post.
Handling time in reliable systems can be deceptively complex, even though it appears straightforward. Instead of relying directly on the time functions provided by programming language standard libraries, two code patterns are recommended to manage time effectively. The first pattern, known as "Call Site Dependency Injection," involves passing a single instance of the current time (an "Instant") to methods that need it, simplifying testing by allowing direct construction of time instances. This pattern is demonstrated through its use in adaptive replication routing, where it aids in measuring replication delays without needing a full clock interface. The second pattern focuses on scheduling future work by introducing a regular "tick" method within the system, which is invoked at a fixed cadence, simplifying control flow and reducing precision requirements for future scheduling. These patterns address the essential complexities of time handling, offering practical solutions for different scenarios without resorting to the complete virtualization of the clock.
Oct 21, 2025
657 words in the original blog post.