Softinio’s Notes on Software Engineering — Issue #5

It has been an exciting few weeks since my last newsletter. Java 17 launched with some exciting features. Apache Spark PR to add support for Scala 2.13 got merged. And Kafka 3 was released.


Spark support for Scala 2.13 is merged 🎉

Cross-Platform Mobile dev with Scala and Capacitor | by Antoine Doeraene | Jul, 2021 |
These last years, the trend has been to export web technologies out of the browser, into the desktop (e.g., electron) and more and more into Mobile Applications (e.g., Ionic). Whether or not we like…


Write a DSL in Swift using result builders — WWDC21 — Videos — Apple
Some problems are easier to solve by creating a customized programming language, or “domain-specific language.” While creating a DSL…

What are Swift Concurrency’s task local values? — Donny
If you’ve been following along with Swift Concurrency in the past few weeks, you might have come across the term “task local values”. Task local values are…

What are monads — Daniel Steinberg on Swiftly
In this excerpt from Swiftly Speaking, Daniel Steinberg talks about monads. For the full interview, click here:


Java 17 launched on September 14th, 2021. I am pretty excited about this release as it does include some features that I have used in other languages like Scala such as sealed classes and pattern matching using improved switch statements. This release is also LTS. Excited to use Java 17.

Java 17 arrives with long-term support: What’s new, and is it falling behind Kotlin? • The
Text blocks, sealed classes, switch expressions, records, and more


Apache Kafka 3.0 — Major Improvements, Breaking API Changes, and New
I’m pleased to announce the release of Apache Kafka 3.0 on behalf of the Apache Kafka® community. Apache Kafka 3.0 is a major release in more ways than one. Apache

Why it’s worth it to deeply understand the fiddly, boring-seeming details of the computer systems you use every day.

This is the paper associated with the above talk by Martin Kleppmann

Don’t Get Stuck in the CON Game (V3) — by Pat Helland — Scattered Thoughts on Distributed
Consistency, convergence, and confluence are not the same! Eventual consistency and eventual convergence aren’t the same as confluence, either.

GraalVM at Facebook. Facebook is using GraalVM to accelerate… | by Alina Yurenko | graalvm | Jul, 2021 |
Facebook is using GraalVM to accelerate its Spark workloads and reduce memory & CPU usage. Keep reading to learn about their migration story, performance improvement results, and future plans. This…

Category Theory

Discovered a new YouTube channel on Category Theory

Richard E.
This is mostly mathematics lectures for graduate courses on algebraic geometry, commutative algebra, and groups. There are also a few math talks at an unde…

Software Engineer based in San Francisco, California -