About:

The metadata provided does not include a summary about the author of the website.

Website:

Specializations:

Outgoing Links:

Alex Kladov
Subscribe to RSS:
The author reflects on their journey of exploring State Machine Replication (SMR) protocols, particularly Paxos, Raft, and Viewstamped Replication (VR). They express disappointment with the complexity and lack of clarity in existi...
The blog post discusses the complexities of error handling in Rust, emphasizing that there is no universally correct solution. It outlines the different methods of error handling, such as Result-based handling and panic!, arguing ...
The blog post explores the concept of state machine replication (SMR) protocols, particularly focusing on the sans-io pattern. The author discusses their implementation of this pattern in Rust, highlighting the structure and funct...
The blog post discusses the complexities of handling streaming uploads and downloads in Rust, focusing on the AsyncRead and Stream traits. It highlights the differences between these traits, their compatibility with io_uring, and ...
The author reflects on their journey towards financial freedom and questions their ability to retire early based on their investments. They discuss the taxation of capital gains in Austria, specifically the capital gains tax rate ...
The text discusses the implementation of the DataLoader pattern in GraphQL servers, focusing on the simple and hard ways to do so. It explains the use of async concurrency, the implementation of the DataLoader, and the challenges ...
The text explains how GraphQL works and how it solves the 1 + N query problem. It also introduces the Dataloader pattern as a solution to the server-side 1 + N problem and explains how to make it async. The author also discusses t...
The author recommends pinning the Rust toolchain to a specific version to make updates intentional and avoid surprises. They suggest enforcing lints and fixing them intentionally in a dedicated PR, or fixing lints in a different P...
The text discusses the strengths and weaknesses of Rust in handling formats. It highlights the simplicity and efficiency of the serde ecosystem for simple, strict, well-defined, and dense serialization formats. It also points out ...
The author discusses the philosophy of testing and what makes a good test. They emphasize the importance of tradeoffs in testing and the purpose of a test. They also discuss the unit of code to test, the place for snapshot tests, ...
The text discusses the use of arrays in SQL, particularly in SQLite and PostgreSQL. It explains the limitations of SQL in working with arrays and the benefits of using arrays for bulk inserts. The author also explores the use of U...
The author is considering swing trading to maximize profits from stock market investments. They explain the tax implications of swing trading and provide examples to illustrate how it can result in a loss in the short term, but le...
The author discusses the slow Rust thread_local!s and the problems related to it. They are working on a metrics crate and aim to make it high performance and low overhead. The author compares their work to the tracing ecosystem an...
The text discusses benchmarking various approaches to small string optimization, focusing on turning a &[dyn Display] into a Vec<String> as efficiently as possible. The author has forked the smol_str crate and rewritten its intern...
The text discusses the author's obsession with benchmarking and micro-optimizing a piece of Rust code, specifically focusing on small string optimization. The author explores various implementations and assumptions, highlighting t...
The author discusses their experience with gRPC and Cap'n Proto in the context of introducing strictly typed RPC at Sentry. They compare the two technologies, highlighting issues with code generation, zero copy deserialization, RP...
The author discusses the surprising expense of Rust `thread_local!`s, particularly in the context of metrics aggregation. They experimented with thread-local aggregation of metrics using the thread_local crate and found that the '...
The author discusses the issue of software bloat, particularly focusing on the Rust compiler performance test suite and the impact of the AWS Rust SDK on compile times. They compare build times with and without the SDK, highlighti...
The author discusses the overhead of the Sentry Rust SDK and identifies high quality randomness as a culprit. They then delve into the optimization of Strings, focusing on avoiding allocations and copying. They compare various Str...
The text discusses the optimization of code generation of Rust enums, specifically focusing on the issue of bloat caused by the Debug and FromPrimitive derives. It explores the use of perfect hashing to address the problem and pre...
The author's new Android phone started draining battery excessively after an update, and they discovered that the home screen launcher was using up to 200% CPU and 10% memory. They switched to a different launcher, which seems to ...
The text explores the concept of scope guards in Rust, highlighting their effect on compile times. It compares the performance of closure-based code with scope guard pattern, showing that the latter is faster to compile and result...
The text discusses a locking war story related to open source software and the problems faced while dealing with zip archives. It explains the issues with Read and Seek, the use of zip::ZipArchive, and the problems with lock conte...
The text discusses the need for unique identifiers for build artifacts in order to identify and access the correct files. It compares the situation in the native ecosystem with the challenges faced in the Flutter example. It also ...