This interview was recorded for the GOTO Book Club.
http://gotopia.tech/bookclub
Check out more here:
https://gotopia.tech/episodes/420
Bill Frasure - Co-Author of "Effect Oriented Programming"
Bruce Eckel - Author of many books such as "Thinking in Java", "Thinking in C++" & Atomic Kotlin & Co-Author of "Effect Oriented Programming"
James Ward - Principal Developer Advocate at AWS & Co-Author of "Effect Oriented Programming"
Andrew Harmel-Law - Technical Principal at Thoughtworks & Author of "Facilitating Software Architecture"
RESOURCES
Bill
https://github.com/swoogles
https://x.com/bill_frasure
Bruce
https://bsky.app/profile/bruceeckel.bsky.social
https://x.com/BruceEckel
https://github.com/BruceEckel
https://www.linkedin.com/in/bruceeckel
James
https://bsky.app/profile/jamesward.com
https://twitter.com/_JamesWard
https://github.com/jamesward
https://www.linkedin.com/in/jamesward
Andrew
https://bsky.app/profile/andrewhl.bsky.social
https://twit.social/@ahl
https://x.com/al94781
https://github.com/andrewharmellaw
https://www.linkedin.com/in/andrewharmellaw
https://andrewharmellaw.github.io
Links
https://effectorientedprogramming.com
https://happypathprogramming.com
https://zio.dev
https://www.unison-lang.org
https://www.roc-lang.org
DESCRIPTION
Andrew Harmel-Law explores the core concepts of effect oriented programming with authors Bill Frasure, Bruce Eckel, and James Ward. The discussion reveals that effects are composable operations that encapsulate side effects and defer execution, giving developers the right handles to manage unpredictability through compiler-checked types.
The authors explain how ZIO tracks three critical types: outputs, failures, and environmental requirements, enabling better testing with mock clocks and random number generators.
They share their intentional avoidance of intimidating functional programming terminology like "monads" proving you don't need mathematical foundations to understand effects. The conversation covers effect systems' expansion beyond Scala into TypeScript, Kotlin, and new languages like Unison and Roc, and how their collaborative writing process with strict constraints like 47-character line limits - created a coherent 100-page book readable in portrait mode on your phone.
RECOMMENDED BOOKS
Bill Frasure, Bruce Eckel, James Ward • Effect Oriented Programming • https://amzn.to/4sO6wLV
Bruce Eckel & Svetlana Isakova • Atomic Kotlin • https://amzn.to/4qT1gEQ
Bruce Eckel • Thinking in C++ • https://amzn.to/4qnrIGW
Andrew Harmel-Law • Facilitating Software Architecture • https://amzn.eu/d/5kZKVfU
Sam Keen • Clean Architecture with Python • https://amzn.to/4pBT5g0
Eric Evans • Domain-Driven Design • https://amzn.to/3tnGhwm
Bluesky
Twitter
Instagram
LinkedIn
Facebook
CHANNEL MEMBERSHIP BONUS
Join this channel to get early access to videos & other perks:
https://www.youtube.com/channel/UCs_tLP3AiwYKwdUHpltJPuA/join
Looking for a unique learning experience?
Attend the next GOTO conference near you! Get your ticket: gotopia.tech
SUBSCRIBE TO OUR YOUTUBE CHANNEL - new videos posted daily!