Joshua Morony
Why you should care about DECLARATIVE programming
updated
TJ's Lua Snips video: youtube.com/watch?v=Dn800rlPIho
The Primeagen: youtube.com/@UC8ENHE5xdFSwx71u3fDH5Xw
My previous video that discusses neovim: youtube.com/watch?v=P5QPacz2-ao
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
0:58 Step 1: Do you really want this?
1:17 Step 2: Vim Extension
2:14 Step 3: Neovim setup
3:07 Step 4: Neovim Extension
3:35 Step 5: The Terminal
4:23 Step 6: Experiment
4:58 Outro
#neovim #vscode #vim
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Previous video: youtube.com/watch?v=c57llB8QA2E
Source code: github.com/joshuamorony/angularstart-quicklists
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
0:51 State management recap
1:31 How do tests fit in?
2:40 Smart component: inputs
4:03 Smart component: outputs
4:52 Testing the service
6:11 Not always this easy
#angular #rxjs #testing
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Setting up Jest in Angular: blog.angular.io/moving-angular-cli-to-jest-and-web-test-runner-ef85ef69ceca
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
0:52 Testing an Input
3:24 Adding another test
4:23 Testing an Output
6:30 Another test
7:20 Don't worry too much
8:19 Outro
#angular #unittesting
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Mike's article: dev.to/mfp22/rxjs-can-save-your-codebase-49fi
More on declarative code: youtube.com/watch?v=sIeTGWSUK7M
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
1:09 Things kind of suck
2:33 Declarative is the *easier* option
3:23 An example
3:52 Always start declarative
4:34 Conclusion
#angular #declarative #reactivity
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
This video was sponsored by the RxDB team, but I had complete editorial and creative control over this video (including publishing with negative opinions if I desired).
More information on RxDB: rxdb.info/?utm_source=videos&utm_medium=youtube&utm_campaign=yt-joshua
Leave them a start on GitHub: github.com/pubkey/rxdb
Previous video on the Signals/RxJS state management approach: youtube.com/watch?v=44_IcGPKQ_M
Source code: github.com/joshuamorony/quicklist-rxdb
0:00 Introduction
0:14 The Problem with Storage
0:56 Reactive Storage with RxDB
2:31 Syncing to a Backend
3:22 Conclusion
#angular #rxdb #rxjs
Source code: github.com/joshuamorony/signals-rxjs-demo-fetch
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
1:07 A problem
3:10 The solution
4:16 Conclusion
#angular #rxjs #signals
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Previous video: youtu.be/R4Ff2bPiWh4
More on declarative code: youtu.be/sIeTGWSUK7M
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
0:00 Introduction
1:06 Upside of Declarative
2:06 Downside of Subscribe
3:21 When can you subscribe?
4:43 When to avoid subscribes?
5:00 Breaking the rules
Learn Angular with Ionic: ionicstart.com
#angular #rxjs
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
0:22 keyof and in
1:31 Generics
2:09 Unions
2:45 as
4:01 Non-Null Assertion
4:26 Utility Types
5:21 Lookup Types
5:57 Type guards
#angular #typescript
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Source code: github.com/joshuamorony/signals-rxjs-demo
Previous video: youtube.com/watch?v=R4Ff2bPiWh4
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
0:56 The Set Up
1:26 Loading from an API
1:56 Filtering
3:06 Errors and Retrying
5:39 Pagination
6:31 Conclusion
#angular #signals #rxjs
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Source code: github.com/joshuamorony/quicklist-default
State Adapt video: youtu.be/b687kMZDXTg
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
0:26 The declarative approach
1:17 No 3rd party libraries
1:57 State and sources
3:12 Updating state
4:07 Alternatives
5:35 Side effects
5:55 Conclusion
#angular #rxjs #signals
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
- Moonlander/oryx config: configure.zsa.io/moonlander/layouts/m9zzx/latest/5
- Lazygit video: youtube.com/watch?v=WJj6pHoVuTg
- My neovim config: github.com/joshuamorony/nvim
- URLtown: urltown.io
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
0:29 Keyboard
1:50 Shortcuts
2:35 Terminal
3:56 Code editing
5:58 Web browsing
7:10 Conclusion
#angular #neovim #productivity
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
More on Standalone Components: angular.io/guide/standalone-components
More on the Signals API: youtu.be/4FkFmn0LmLI
More on Signal Based Components: youtu.be/dO6PyJqd3DI
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
#angular #signals #svelte
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Try URLTown (note this is an early alpha): urltown.io
More on Nx: youtube.com/watch?v=fR6jPnJZ6-I
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
1:29 Using an Nx monorepo
2:42 Using Nx libraries
8:05 Build tooling
9:17 Conclusion
#angular #nx #gamedev
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
State Adapt: state-adapt.github.io/angular
Mike's YT channel: youtube.com/@UCiPDBcPWl9yswuULEZMosZw
More on declarative code: youtube.com/watch?v=sIeTGWSUK7M
Source code: github.com/joshuamorony/quicklist-state-adapt
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
0:55 What is StateAdapt
1:35 Data sources
2:16 The store
3:03 Adapter
3:49 Isn't this Redux/NgRx?
5:57 Conclusion
#angular #reactivity #stateadapt
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Signals/change detection video: youtube.com/watch?v=4FkFmn0LmLI
Signal based components RFC: github.com/angular/angular/discussions/49682
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
#angular #signals
0:00 Introduction
0:34 Signal based components
1:09 Zoneless change detection
2:31 Signal inputs
3:31 Models
4:33 View queries
4:55 Conclusion
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Source code: github.com/joshuamorony/state-machine-error/blob/main/src/app/shared/data-access/posts.service.ts
Reactive error handling with signals: youtube.com/watch?v=54q7P9PB0WU
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
#xstate #angular #rxjs
0:00 Introduction
0:33 What is a state machine?
1:34 The scenario
1:56 Creating the types
3:04 Creating the state machine
5:48 Using the state machine with RxJS
6:33 Is it worth it?
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Phaser tutorial mentioned in video (source of sprite): medium.com/@michaelwesthadley/modular-game-worlds-in-phaser-3-tilemaps-1-958fc7e6bbd6
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
0:29 The idea
1:50 How it works
2:12 An example
4:37 Conclusion
#angular #phaser #gamedev
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
#rxjs #angular #declarative
0:00 Introduction
1:00 Full declarative
2:30 The problem with full declarative
4:00 Partial declarative is pretty good
4:52 Conclusion
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
RxJS reactive error handling: youtu.be/kb9CBd2c4uA
Source code: github.com/joshuamorony/signal-error-example
Implementation of toSignalWithError: github.com/joshuamorony/oss/blob/main/packages/signal-with-error/src/lib/signal-with-error.ts
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
#angular #signals #rxjs
0:00 Introduction
0:13 Pre-signals approach
0:39 Post-signals approach?
1:27 Error handling
1:57 The solution
3:35 Helper utility
4:35 Conclusion
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
0:22 An example
0:59 The problem
1:40 Why care about declarative?
2:31 Imperative vs Declarative
4:10 Not fully declarative
5:19 Conclusion
#imperative #declarative #rxjs
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
This was a fun experiment to see what I could learn about using AI for game development, and revealed something interesting about the interplay between AI and pixel art.
Using Midjourney: youtu.be/p39ViCa6Smo
Pixel tool: giventofly.github.io/pixelit
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
0:42 The setup
1:30 The problem with Midjourney
2:09 Using Midjourney for pixel art
3:58 Benefit of pixel art
4:16 Conclusion
#ai #phaser #chatgpt
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Signals vs subject: youtube.com/watch?v=iA6iyoantuo
What is "declarative": youtube.com/watch?v=skOTEbGwncE
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
0:20 Service with a subject
0:53 Service with a signal
1:58 Async with subjects
3:53 Async with signals
4:37 Combining
#angular #signals #rxjs
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
More on Dependency Injection: youtu.be/ZzC-hfYQXvQ
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
#angular
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
0:00 Introduction
0:54 inject() benefits
1:53 Inheritance
4:05 The problem with inject()
5:36 Conclusion
But, this begs the question: why didn't they just use BehaviorSubject which is already included in RxJS? This video explores that question.
Intro to signals: youtube.com/watch?v=4FkFmn0LmLI
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
0:46 Signals are better
1:22 Accessing values
1:50 Derived values
3:47 The diamond problem
5:46 Side effects
7:04 Conclusion
#angular #signals #rxjs
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
The Primeagen on GitHub Copilot: youtube.com/watch?v=RDd71IUIgpg
Chau Tran's channel: youtube.com/@ChauTran
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
0:22 Doing my work
2:48 The problem
3:53 An example
4:25 Why not use AI for coding?
7:13 The human advantage
7:46 Outro
#gpt4 #ai #chatgpt
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Infinite Doodle on iOS: apps.apple.com/us/app/infinite-doodle/id1672483924
Infinite Doodle on Android: play.google.com/store/apps/details?id=com.joshmorony.infiniline&hl=en&gl=US
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
#capacitor #ios #android
0:00 Introduction
0:50 The idea
1:08 The code
2:13 Creating native apps
4:06 Conclusion
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Source code (signals): github.com/joshuamorony/quicklist-signals
Source code (observables): github.com/joshuamorony/ionicstart-quicklists
Previous signals video: youtu.be/4FkFmn0LmLI
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
#angular #rxjs #signals
0:00 Introduction
0:31 The application
0:56 What makes it declarative?
1:42 Refactoring to signals
4:06 What about RxJS?
7:03 Conclusion
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
This one focuses on taking the existing prototype/MVP, throwing it in the trash, and rebuilding a better version from scratch using things like Test Driven Development and software design patterns/principles.
More about Nx libraries: youtube.com/watch?v=fR6jPnJZ6-I
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
0:59 The new version
2:19 Over engineered code
4:10 Replaying code with streams
7:21 Is all this necessary?
#angular #saas #nx
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
More on Zone.js: youtu.be/lmrf_gPIOZU
More on handling asynchronous reactivity: youtu.be/-CoVmNvp_1g
More on declarative coding: youtu.be/skOTEbGwncE
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
0:31 Signals
1:29 What is the point?
3:17 Reactive/Declarative
4:41 What about RxJS?
7:54 Why it's important
9:26 Conclusion
#angular #signals #rxjs
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
If we work on building the skills to push through these difficult situations, we will grow much more quickly as a developer AND we won't need to rely on others so much.
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
1:26 Where do we begin?
2:58 Deep dive
4:48 Building a prototype
6:20 Using the solution
7:48 Getting stuck
8:17 A new solution
11:41 Conclusion
#javascript #svelte #sveltekit
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
What is "declarative"?: youtube.com/watch?v=skOTEbGwncE
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
#ionic #angular #declarative
0:00 The imperative problem
1:06 The trick
1:20 The declarative solution
2:29 Isn't it still imperative?
3:52 Conclusion
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
This video presents some compelling reasons for why you might want to learn Angular in 2023.
Blog post by Logan Dev: devjobsscanner.com/blog/the-most-demanded-frontend-frameworks-in-2022
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
#angular #frontend #react
0:00 An important lesson
0:59 Major framework usage
1:51 Angular jobs
3:03 Thoughts
3:40 The REAL reason
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Source code: github.com/joshuamorony/svelte-pagination-example/blob/main/src/routes/search/%2Bpage.svelte
What does declarative mean?: youtube.com/watch?v=skOTEbGwncE
P.S. The clip of the daedric prince in the video is from the fan made Skyblivion mod - check it out if you're an Elder Scrolls nerd!
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
0:30 RxJS vs Svelte vs SolidJS
1:18 Drama repellent
1:56 The problem
3:17 The killer feature of RxJS
4:50 RxJS example
5:59 Conclusion
#rxjs #reactivity #svelte
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
This video takes a look at some of the similarities.
Svelte tutorial: https://learn.svelte.dev/tutorial/welcome-to-svelte
Tim's blog post: https://timdeschryver.dev/blog/unlocking-reactivity-with-svelte-and-rxjs
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
0:54 Routing
1:34 Colocation
2:13 Components
2:46 Shared code
3:09 Services
3:59 Interpolation
4:16 Lifecycle hooks
4:26 Inputs and Outputs
4:43 Events
5:17 Reactivity / Change detection
6:25 RxJS integration
7:30 Two-way data binding
8:16 Conclusion
#svelte #sveltekit #angular
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
1:38 What is declarative?
3:57 Why observables?
4:24 This is still imperative
6:06 Declarative version
7:54 The benefit
8:23 Imperative is not bad
#ionic #angular
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
So, now this video is a competition between myself (a Google Developer Expert for Angular) and ChatGPT.
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
0:46 The challenge
1:39 (Josh) What is dependency injection?
2:43 (ChatGPT) What is dependency injection?
4:31 Q1 Analysis
4:37 (Josh) What is a token?
5:25 (ChatGPT) What is a token?
7:09 Q2 Analysis
7:36 (Josh) What are injector trees?
9:40 (ChatGPT) What are injector trees?
11:04 Q3 Analysis
11:21 (Josh) Resolution modifiers
12:22 (ChatGPT) Resolution modifiers
15:08 Q4 Analysis
15:25 Final score
16:06 Conclusion
#chatgpt #angular #ai
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
0:31 The Observer Pattern
1:59 Hot Observable (Subject)
4:18 Cold Observable
6:15 Recap
6:33 In RxJS
8:10 Gotchas
#ionic #angular
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
Source code: github.com/joshuamorony/ionic-ai-theme
0:00 Introduction
0:30 Using Midjourney
1:42 Using the assets
2:39 Creating a colour palette
2:59 Coding the application
4:28 Difficulties
5:20 Thoughts
7:43 Conclusion
#ionic #angular #ai
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
This video introduced lazygit and the more powerful Git workflows it has allowed me to add into my day-to-day work.
Lazygit: github.com/jesseduffield/lazygit
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
0:41 Lazygit
1:36 Staging files
2:05 Managing branches
2:31 Managing commits
3:40 Super power: Committing hunks
5:00 Super power: Squashing
6:00 Super power: Reordering
7:55 Conclusion
#git #lazygit #angular
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
Source code: github.com/joshuamorony/gpt-todo-app
0:00 Introduction
1:02 Creating a component
1:35 Creating a form
2:40 Displaying todos
3:24 toggleCompleted and ngClass
4:00 Deleting and final touches
4:58 Something harder?
6:28 ChatGPT vs CoPilot
6:52 Thoughts
8:53 Conclusion
#angular #chatgpt #ai
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Source code: github.com/joshuamorony/angular-notice-board
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
0:27 Old school
0:45 New school
2:30 Real world app
3:34 Routing and Layout
5:08 Dashboard feature
5:48 Data and Services
7:08 Create feature
7:50 Can Angular be cool?
9:41 Conclusion
#angular
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Check it out here: replaymycode.com
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
0:39 What is it?
1:04 The MVP
3:43 Project Structure
5:30 How it works
8:07 Unnecessary feature
9:44 What next?
10:56 Conclusion
#ionic #angular
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
More on TDD: youtube.com/watch?v=vzgouJbyum0
More on Component Store: youtube.com/watch?v=gYzAhW_glqc
0:00 Introduction
0:47 Observer Spy
1:40 Dumb components
2:59 Smart components
4:31 Services
5:24 NgRx Component Store
7:16 Complex stream
10:59 Ionic Start
11:34 Conclusion
#ionic #angular
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
In this video, we explore what exactly Zone.js does, why we need it, how we can work around it, and why it might be becoming optional in the future.
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
More on OnPush Change Detection: youtu.be/tWy8zaWvkvk
0:00 Introduction
0:27 Component Tree
2:06 What does Zone.js do?
2:59 Default Strategy
4:25 OnPush Strategy
8:16 Async Pipe
10:10 RxAngular
#ionic #angular
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
Reactive source code: github.com/joshuamorony/ionicstart-snapaday/blob/insta-story/src/app/slideshow/slideshow.component.ts
Imperative source code: github.com/joshuamorony/ionicstart-snapaday/blob/without-rxjs/src/app/slideshow/slideshow.component.ts
Video on pausing the stream: youtube.com/watch?v=mI8kH1_mEtw
Original video on slideshow: youtube.com/watch?v=tWy8zaWvkvk&t=0s
Video on using the expand operator: youtube.com/watch?v=aKsPMTP6-sY
0:00 Introduction
1:00 Reactive Approach
2:17 Imperative Approach
4:11 Is Reactive Better?
6:11 Bonus example
#ionic #angular
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Get a LIFETIME MEMBERSHIP for Ionic Start: ionicstart.com
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Other videos:
The benefits of OnPush: youtube.com/watch?v=tWy8zaWvkvk
Smart and Dumb Components: youtube.com/watch?v=9QU_GzcU184
Nx style colocation: youtube.com/watch?v=7SDpTOLeqHE
0:00 Introduction
1:22 Ionic Start
1:51 OnPush Change Detection
3:39 Smart/Dumb Components
4:53 Reactive Coding
7:15 Standalone/SCAM
8:12 Code colocation
9:36 Conclusion
#ionic #angular
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Previous video: youtube.com/watch?v=mI8kH1_mEtw
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
0:00 Introduction
0:36 Downward flow
2:51 Upward flow
4:25 Nested pipes
5:36 A practical example
#ionic #angular
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
Source code: github.com/joshuamorony/angular-onpush-reactive-forms
- Previous OnPush Change Detection video: youtube.com/watch?v=tWy8zaWvkvk
- Should we really NEVER subscribe in Angular apps?: youtube.com/watch?v=WvMxnGfqEis
0:00 Introduction
0:41 Recap of OnPush CD
1:33 Async Validator Example
3:19 Solving with the async pipe
4:34 Other problems with async
6:15 Using ChangeDetectorRef
7:17 The trick
10:03 Conclusion
#rxjs #angular
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
Type guard video: youtu.be/1rgr8Ip_cfE
0:00 Introduction
0:38 The situation
1:10 nonNullable forms
2:25 getRawValue
4:23 Conclusion
#angular
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
Learn Angular with Ionic: ionicstart.com
Previous video: youtube.com/watch?v=tWy8zaWvkvk
0:00 Introduction
0:56 Preview of the result
1:30 Create a stream of photos
4:46 Pausing the stream
6:37 Conclusion
#ionic #angular #rxjs
- More tutorials: eliteionic.com
- Follow me on Twitter: twitter.com/joshuamorony


