← 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.

Product Types: Why Types Behave Like Multiplication

Product Types: Why Types Behave Like Multiplication

There’s a point in programming where types stop feeling like simple containers and start behaving like algebra.

Arun Pandian M
May 23, 2026
6 min read
Algebra of Types — When Data Structures Start Behaving Like Math

Algebra of Types — When Data Structures Start Behaving Like Math

There is a point in programming where types stop feeling like containers and start feeling like equations.

Arun Pandian M
May 14, 2026
3 min read
Asymmetry — Why Products and Coproducts Feel So Different

Asymmetry — Why Products and Coproducts Feel So Different

Category theory often promises symmetry. But real systems remind us: **direction changes everything**.

Arun Pandian M
Apr 4, 2026
7 min read
Coproducts — Modeling “Either This or That” in Code

Coproducts — Modeling “Either This or That” in Code

Most bugs don’t come from what your program does. They come from what your program **assumes cannot happen**.

Arun Pandian M
Apr 3, 2026
4 min read
Products — When Two Independent Things Become One Structure

Products — When Two Independent Things Become One Structure

In programming, we combine values all the time.

Arun Pandian M
Mar 23, 2026
4 min read
Isomorphism — When Two Different Models Are Actually the Same

Isomorphism — When Two Different Models Are Actually the Same

Sometimes the hardest bugs come from believing two structures are different when they actually contain the same informat…

Arun Pandian M
Mar 14, 2026
4 min read
Duality — Flipping the Arrows Changes Everything

Duality — Flipping the Arrows Changes Everything

When we studied initial objects and terminal objects, something subtle appeared.

Arun Pandian M
Mar 11, 2026
4 min read
Terminal Object — The Place Where All Arrows End

Terminal Object — The Place Where All Arrows End

In the previous post we saw **initial objects** — objects that can send arrows **to everything else**. Now we reverse th…

Arun Pandian M
Mar 11, 2026
3 min read
The Initial Object — Finding the True Beginning

The Initial Object — Finding the True Beginning

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

Arun Pandian M
Mar 9, 2026
6 min read
← Prev123Next →