Georgi Parlakov
Observables in Plain terms
#1about 8 minutes
Understanding the core concept of operators as wrappers
Observables can be visualized as a chain of wrapping operators, similar to Russian dolls, where each operator adds functionality to the one before it.
#2about 9 minutes
Live demo of the operator wrapper model
A code demonstration reveals how subscriptions propagate down the chain and values emit up, showing that observables can emit both synchronously and asynchronously.
#3about 4 minutes
The `toPromise` operator waits for observable completion
The `toPromise` operator doesn't resolve with the first emitted value but instead waits for the source observable to complete and resolves with the last value.
#4about 8 minutes
Comparing the `first` and `take(1)` operators
While `take(1)` safely completes on an empty stream, the `first` operator will throw an error if the source observable completes without emitting any values.
#5about 10 minutes
Choosing between `switchMap`, `concatMap`, and `mergeMap`
`switchMap` cancels previous inner observables, `concatMap` waits for them to complete sequentially, and `mergeMap` runs them all concurrently.
#6about 4 minutes
Keeping observable chains alive with `catchError`
Placing a `catchError` operator inside a higher-order mapping operator like `switchMap` prevents an inner observable's error from terminating the entire outer chain.
#7about 2 minutes
Combining streams with `combineLatest` and `withLatestFrom`
Both `combineLatest` and `withLatestFrom` require all source observables to emit at least once before they produce any output.
#8about 2 minutes
Managing subscriptions to prevent memory leaks
Use a parent `Subscription` object to group multiple child subscriptions, allowing you to unsubscribe from all of them at once to avoid memory leaks.
#9about 3 minutes
Recommended resources for learning RxJS
Key learning resources include the official RxJS documentation, interactive marble diagrams for visualizing operators, and content from core team members like Ben Lesh.
Related jobs
Jobs that call for the skills explored in this talk.
Technoly GmbH
Berlin, Germany
Senior
JavaScript
Angular
+1
Bitpanda
Vienna, Austria
Senior
TypeScript
Angular
+3
Matching moments
09:17 MIN
Comparing signals with RxJS observables
Angular Signals: what's all the fuss about?
06:59 MIN
Create custom RxJS operators for cleaner data streams
Angular tips/tricks you can use from tomorrow on
03:46 MIN
How pipeable operators changed the RxJS API
How to Create New RxJS Operators
05:35 MIN
Recapping the reactive carousel implementation
Practice makes perfect - when it comes to RxJS
06:19 MIN
Advanced typing for complex custom operators
How to Create New RxJS Operators
06:12 MIN
Audience Q&A on signals and Angular development
Angular Signals: what's all the fuss about?
02:57 MIN
New animation and composition operators in RxJS 7
Practice makes perfect - when it comes to RxJS
05:07 MIN
Developing a reactive mindset for RxJS
Practice makes perfect - when it comes to RxJS
Featured Partners
Related Videos
How to Create New RxJS Operators
Mohammad-Ali A'râbi
Practice makes perfect - when it comes to RxJS
Jan-Niklas Wortmann
The Art and Craft of Type Development
Michael Hladky & Stefan Baumgartner
NgRx Tips for Future-Proof Angular Apps
Marko Stanimirović
Angular tips/tricks you can use from tomorrow on
Benedikt Starzengruber
Angular Signals: what's all the fuss about?
Daniela Bonvini
State of Angular
Jessica Janiuk
Rethinking Reactive Architectures with GraphQL
David Leitner
Related Articles
View all articles



From learning to earning
Jobs that call for the skills explored in this talk.

PiNCAMP GmbH
Berlin, Germany
Senior
React
GraphQL
Next.js

&why GmbH
Berlin, Germany
€50-70K
Junior
Intermediate
Senior
React
Next.js
TypeScript

Confideck GmbH
Vienna, Austria
Remote
Intermediate
Senior
Node.js
MongoDB
TypeScript



Optimus Search
Berlin, Germany
Remote
Intermediate
API
CSS
GIT
React
+4

Rescue
Senior
API
VoIP
React
Python
Vue.js
+3

Content Pass GmbH
Berlin, Germany
Senior
API
Node.js
JavaScript
TypeScript
Continuous Integration

PLATO AG
Berlin, Germany
Remote
€70-120K
Intermediate
React
Cypress
WebPack
+6