Today we announce the availability of four new hands-on training courses. Each course covers the same topic—how to interact with Workflows—using a specific SDK:
- Interacting with Workflows with Go
- Interacting with Workflows with Java
- Interacting with Workflows with Python
- Interacting with Workflows with TypeScript
Why should I take Interacting with Workflows?
Temporal application developers need to learn how to build dynamic applications that respond to external stimuli or dynamic data. For example, enabling your Workflows to respond to Signals and Queries allows them to react to external events during execution. In addition, learning about Search Attributes, Asynchronous Activity Completion, and Workflow cancellations will equip you to manage complex Workflows, optimize tasks, and more. This knowledge is essential for developing scalable, maintainable applications that adapt to dynamic changes and user needs.
What Do These Courses Cover?
We had four main goals in mind when designing these courses.
Integrating Signals and Queries with Workflows
Integrating Signals and Queries is an essential skill to learn for developers looking to build responsive applications. Signals allow Workflows to react to events at runtime, while Queries enable on-demand data retrieval from ongoing Workflows without disrupting their execution. Understanding how to work with Signals and Queries allows developers to manage stateful interactions efficiently. This course will guide you on how to define, handle, and send Signals and Queries. You’ll also explore common challenges and practical workarounds, how to monitor your Signals in the Event History, and more.
Developing Custom Search Attributes to identify specific Workflow Executions
Temporal's Search Attributes enable you to locate specific Workflow Executions of interest within the Namespace. In this course, you’ll begin with learning the difference between default and Custom Search Attributes. These attributes will allow developers to quickly identify and act on specific Workflow Executions with the command-line interface and Web UI. We’ll then guide you through setting up and querying your Workflow Executions with Custom Search Attributes, giving you insight and allowing you to efficiently track Workflow Executions.
Evaluating methods to stop Workflow Executions
Understanding how to cancel Workflow Executions is important for managing Workflows under various scenarios, allowing for the cancellation of processes in response to user actions or external conditions. In this course, you will learn how to strategically cancel specific parts of executions and individual Activities, ensuring precise control over your application’s behavior and external disruptions.
Developing Asynchronous Activities
Asynchronous Activities offer the flexibility needed to handle long-running or external tasks effectively, ensuring that your Workflow Executions can continue processing other tasks concurrently. In this course, you will learn what Activity Heartbeats are and how they are used to monitor the progress of your application’s Activities. You’ll also explore the tradeoffs between Asynchronous Completions and Signals, providing the advantages or disadvantages of both. Additionally, you’ll learn how to develop Activities asynchronously within your Workflow code.
Who Should Take this Course?
This course is appropriate for any Temporal application developer who understands how to retrieve Workflow output and navigate the Web UI. Since that topic is covered in Temporal 101: Introducing the Temporal Platform, we recommend that you first complete that course, as well as our Temporal 102: Exploring Durable Execution course, which covers the Event History in greater detail, before you begin one of our Interacting with Workflows courses.
If you're ready to learn how to interact with Workflows, just follow one of the links below and begin your free hands-on training:
- Interacting with Workflows in Go
- Interacting with Workflows in Java
- Interacting with Workflows in TypeScript
- Interacting with Workflows in Python
What's Next for Temporal Training?
The Education Team is currently developing a series of courses, each of which focuses on a specific aspect of Temporal application development. Last month, the Education team released the Securing Application Data course, which teaches why and how to secure application data. We will follow the Interacting with Workflows course with a course on crafting an error handling strategy for your Temporal applications in the coming months.
And, if you attend Replay, be sure not to miss out on Wednesday, September 18. That's when members of our Education team and our partner Bitovi will deliver 14 of these courses live—we invite you to participate!