Workshop 1: Introduction to Temporal

Building Your Foundation Understanding

This lesson focuses on understanding, not coding


What we want to build

In this lesson, we won't be writing any code yet. Instead, we'll build a solid understanding of:

  • ๐Ÿง  What Temporal is
  • ๐Ÿค” Why it exists
  • ๐Ÿ”ง How it solves common problems in distributed systems

Think of this as laying the foundation before we start building.


Expecting Result

By the end of this lesson, you should be able to:

  • โœ… Explain what Temporal is in simple terms
  • โœ… Understand why traditional approaches are problematic
  • โœ… Identify scenarios where Temporal would be beneficial
  • โœ… Recognize key components of Temporal architecture
  • โœ… Feel confident about why we're learning this technology

Code Steps

This lesson is purely conceptual - no coding required!

Instead, follow these learning steps:


Step 1: Watch and Learn

Read through the concept.md file in this lesson to understand:

  • ๐Ÿ” What problems Temporal solves
  • โŒ How traditional approaches fall short
  • ๐Ÿ“š Key Temporal concepts and terminology

Take your time - understanding these concepts will make everything else easier!


Step 2: Think About Your Experience

Consider these questions:

  • ๐Ÿค” Have you ever built a system that needed to coordinate multiple services?
  • ๐Ÿ’ฅ Have you dealt with failures in long-running processes?
  • ๐Ÿ”„ How did you handle retries, timeouts, or state management across services?

Write down your answers - we'll reference them throughout the course!


Step 3: Identify Use Cases

Think about scenarios where Temporal could help:

  • ๐Ÿ‘ค User onboarding flows (email verification โ†’ profile setup โ†’ welcome sequence)
  • ๐Ÿ›’ Order processing (payment โ†’ inventory โ†’ shipping โ†’ notifications)
  • ๐Ÿ“Š Data processing pipelines (extract โ†’ transform โ†’ load โ†’ validate)
  • ๐Ÿ’ณ Subscription management (trial โ†’ billing โ†’ renewals โ†’ cancellations)

Step 4: Prepare Your Learning Environment

Make sure you have these tools ready for upcoming lessons:

  • โ˜• Java 21+ installed and configured
  • ๐Ÿ’ป IntelliJ IDEA or your preferred Kotlin IDE
  • ๐Ÿณ Docker Desktop (we'll use this to run Temporal locally)
  • ๐Ÿ–ฅ๏ธ Terminal/Command Line access
  • ๐Ÿ”ง Git for version control

How to Run

Since this is a theory lesson, there's nothing to run!

Instead:

  1. ๐Ÿ“– Read the concept.md file carefully
  2. โœ๏ธ Take notes on key concepts that are new to you
  3. ๐Ÿ’ญ Think about how Temporal might apply to systems you've worked on
  4. ๐Ÿ› ๏ธ Prepare your development environment for the next lesson

Quick Environment Check

Verify you have everything ready:

# Check Java version
java -version

# Check Docker is running
docker --version

# Check if you can access Docker
docker ps

Expected: Java 21+, Docker running successfully


๐ŸŽฏ Your Learning Goals

By the time you finish this lesson:

  • โœ… You'll understand why Temporal exists
  • โœ… You'll recognize common distributed system problems
  • โœ… You'll see how Temporal solves these problems
  • โœ… You'll be excited to start building

๐Ÿš€ Ready to Start?

Start with the concept.md file to build your foundational understanding of Temporal!

Next Steps:

  1. Read through all concept slides carefully
  2. Think about how this applies to your experience
  3. Prepare your development environment
  4. Get ready for Lesson 2 where we start coding!

Let's dive in! ๐Ÿ“š

results matching ""

    No results matching ""