Avinder Bahra
@avinder42
FP and House Music enthusiast. Lead developer on ZIO DynamoDB.
🚀 ZIO DynamoDB v1.0.0-RC20 is out! Now with Scala Future interop for non-effect projects (e.g., Play), improved batching semantics, and various updates & cleanups. 🔗 github.com/zio/zio-dynamo… #Scala #ZIO #DynamoDB
Published a small Rust crate for generating WASM Components by generating @moonbitlang code - it embeds the MoonBit compiler, binding generator and other wasm libraries so it has no runtime dependencies: crates.io/crates/moonbit…
ExoQuery’s secret sauce? It auto-flattens front SQL blocks into a razor-thin query—no wasted scans, no temp tables—while you still chain fully composable, nested-looking selects in plain Kotlin. 🪄⚡️ Nothing else in Kotlin comes close! #ExoQuery30in30 #Kotlin #Database
Just blogged, "Golem Prepares for Major Refocus on Agentic Applications." 👀😱 Read the brand-new post while it's still hot!👇 golem.cloud/post/golem-pre…
ZIO Blocks rocks! Just created a minimal Codec using github.com/zio/zio-blocks for ZIO DynamoDB and the developer experience so far has been super smooth. Looking forward to some more hacking. Props to John and Andriy Plokhotnyuk #Scala #ZIO
The design of ZIO Schema 2 is complete, just in time for my talk next week at @lambda_conf 2025! Here is what you can expect! 1/n 🧵
Another application of reflective optics: serializable patches, which should enable both efficient bulk-updates, as well as boilerplate-free event-sourcing. H/T @adamhearn_ who 'blessed' me with more work to do during talk-prep week 😆
Uncle Bob receives substantial criticism, some technically sound and well-informed. Yet much comes from young peacocks strutting. Respect your elders, kids—with luck, you'll achieve half of Bob's career success and live to see peacocks strut your way too.
Yay or nay on the following name changes: Optic => Accessor Lens => Field Prism => Case Traversal => Elements Optional => Optional If you are a big fan of the names `ap` or `Kleisli`, you are not eligible to vote in this election. 😉🤣
It been over 9 years since i've used a relational database for my day job (3 yrs MongoDb + 6 yrs DynamoDB ) - how things have changed. Its no coincided that this has coincided with the micro-services juggernaut - our domain models and requirements are much smaller
A new release of ZIO DynamoDB has been published github.com/zio/zio-dynamo… which includes a bunch of improvements and updates. Special shout goes out to @andcea for his feedback on the library. More features to follow soon #Scala #ZIO #DynamoDB
Lead engineer of @GolemCloud @dvigovszky presenting “Golem, Powered by WASM” at @wasm_io ! Daniel shared the latest thrilling updates on Golem Cloud and took a deep dive into how WebAssembly’s sandboxing capabilities are transforming our approach to durable execution. He focused…
A Statement I am a Scala developer and speaker who was cancelled three years ago. Yesterday I attended the High Court in London to hear an apology from several prominent members of the Scala community for making untrue claims about me on 27 April 2021. I sued them for libel, and…
The way new developers evaluate features is so different from the way experts do. I've found it's hard to build dev tooling for both markets, because some of the things the junior folk want are actually anti-patterns in the large. (Fortunately, not authz / access control!)
We ran a DB user study and found expert devs rank "authorization and access control" as unimportant while newer devs rank it the most important feature! Unless on Firebase/Supabase you don't need complicated ACLs/RLS! Just write server functions to check if a user can do stuff.
The updated Zionomicon includes coverage of two key ZIO libraries, ZIO Schema and ZIO HTTP, in the following chapters: ➡️Chapter 34: Schemas: The Anatomy of Data Types ➡️Chapter 35: Communication Protocols: ZIO HTTP
The Scala FP community has never collectively gotten to the same place... Big chunks are stuck in the stone age, with the equivalent of Effect<A>--no typed errors, let alone typed context! If Scalaz/Typelevel never existed, perhaps it would have been a different story!
At first I thought tracking `Requirements` at this level was overkill. "Why not just have `Result<T,E>`?". Now that I'm using @EffectTS_ more, I'm realizing it's pure genius. Perhaps the most ergonomic and safe method of Dependency Injection I've ever seen.
I am so glad, that TaglessFinal scared me off effects at first. I really started using them with the release of @zioscala 2.0. Which is the root @EffectTS_
At first I thought tracking `Requirements` at this level was overkill. "Why not just have `Result<T,E>`?". Now that I'm using @EffectTS_ more, I'm realizing it's pure genius. Perhaps the most ergonomic and safe method of Dependency Injection I've ever seen.
I find getting in the flow state for technical writing really hard
Sometimes I start explaining an idea but don’t know how to begin! I write everything that comes to mind, and my writing emerges like a painter beginning a painting not knowing where the paint will lead — Less planned, more intuitive!