Hi! I’m Zainab . I write relaxed tutorials on
functional programming, and present on all sorts of
intriguing topics. You can see what I’m up to on LinkedIn .
Flip open your laptop, grab a cup of tea and choose a post below.
Reasoning through concurrent systems has always been a challenging
task. Poor code can be riddled with race conditions, non-terminating
cases and other complex concurrency bugs; and even well-written code
can be hard to understand. Async programming is an innovative
concurrent programming model that rises to this challenge. In this
talk, we'll explore reasoning with async Rust. We'll be introduced to
its fundamental building blocks, such as async
, await
, join
and select
, and learn how to predict the behavior of code written with them. We'll build on these to simplify more complex concurrency puzzlers. Finally, we'll explore different approaches to handling concurrent state and see how they compare.
Infinite data is a large concern in streaming, but as a concept
it’s impossible to fathom. In this tutorial, we’ll develop an intuition
for infinite streams in fs2. We’ll see how fs2 describes infinite
processes, and build a model for understanding them.
On SQLite, JavaScript and the future of the web.
fs2 is an excellent functional streaming library with a rich toolbox for
transforming streams. But sometimes we need a transformation that’s outside
that box. In this tutorial we’ll learn how to write custom transformations
using the fs2.Pull
datatype. By the end of it you’ll be
able to write every stream transformation you can think of.
Could not find an implicit IORuntime.
is a common error
when using cats-effect. But what is an IORuntime
, and
how should we use it? In this tutorial, you’ll use cats-effect 3 to
explore the basics of thread pools, execution contexts, and
blocking. You’ll see why the cats-effect
IORuntime.global
is the best model for your application.