← Back to Journeys
Series Journey

Bridges to Functions: Imperative vs Kotlin FP

"Bridges to Functions" is a hands-on series for Kotlin developers who want to move from imperative patterns to functional thinking. Each post compares an imperative solution with a functional alternative, explains the ‘why’ through everyday analogies (recipes, conveyor belts, and blueprints), and introduces just-enough category theory (functors, monads, natural transformations) to make the abstractions meaningful. Expect concise Kotlin examples, visual pipelines, exercises, and practical patterns you can apply in production code.

22 articles in this series
Bridges to Functions: Imperative vs Kotlin FP

Articles in this series

Technical Directory

Tech Insights & Engineering Articles

Explore technical articles, software architecture deep dives, clean code tutorials, and computer science explorations from my journey.

Writer Monad — When Functions Need to Talk Without Breaking Purity

Writer Monad — When Functions Need to Talk Without Breaking Purity

One of the first things you learn in functional programming is:

Arun Pandian M
Feb 27, 2026
5 min read
When Composition Breaks: Why We Need Kleisli Category

When Composition Breaks: Why We Need Kleisli Category

In the previous posts, we built something beautiful.

Arun Pandian M
Feb 22, 2026
4 min read
When Code Stops Mutating and Starts Composing - Understanding Monoids Through Real Kotlin Problems

When Code Stops Mutating and Starts Composing - Understanding Monoids Through Real Kotlin Problems

Most bugs don’t come from complicated algorithms.

Arun Pandian M
Feb 16, 2026
4 min read
Monoid as a Category — When “Combining” Becomes “Moving”

Monoid as a Category — When “Combining” Becomes “Moving”

Most developers first learn a monoid like this:

Arun Pandian M
Feb 15, 2026
3 min read
Monoids — The Rules Behind Safe Combination

Monoids — The Rules Behind Safe Combination

Most bugs don’t come from computing a value.

Arun Pandian M
Feb 14, 2026
3 min read
Orders as Categories — Why Comparison Matters More Than Sorting

Orders as Categories — Why Comparison Matters More Than Sorting

When we compare things in programming, we instinctively think about sorting:

Arun Pandian M
Feb 9, 2026
4 min read
From Nothing to Arrows: Objects and Simple Graphs

From Nothing to Arrows: Objects and Simple Graphs

“Every complex system that works evolved from a simple system that worked.” — John Gall

Arun Pandian M
Jan 19, 2026
7 min read
Memoization: When Remembering Is Smarter Than Recomputing

Memoization: When Remembering Is Smarter Than Recomputing

At some point in every developer’s journey, you notice a familiar pain: the **same computation** is being done **again…*…

Arun Pandian M
Dec 24, 2025
5 min read
Types & Functions — The Real Building Blocks of Programs

Types & Functions — The Real Building Blocks of Programs

Types tell you what something is. Functions tell you what it can do.

Arun Pandian M
Nov 17, 2025
5 min read