Armen Vardanyan
banner
armandotrue.bsky.social
Armen Vardanyan
@armandotrue.bsky.social
GDE for Angular, front-end team lead. I write articles and talk at conferences
Pinned
If you don't know, I've authored a book about #Angular - aptly titled "Modern Angular"

It is approaching print publication and is already available online with early access

You can check it out here:
www.manning.com/books/modern...
Modern Angular
Discover the new features and techniques of the most modern versions of Angular.</b> The powerful Angular framework is ever-evolving, with each new iteration bringing amazing new modern features. Mod...
www.manning.com
Any good resources on steps to upgrade to application builder in v17 without upgrading to v18/v19?
December 16, 2024 at 9:11 AM
Quick question: do you think about a class getter as "derived state"?
December 10, 2024 at 11:20 AM
Did you know you can create #Angular template-driven form groups?

Defining forms is easy even without reactive if you know the details. You can use `ngModelGroup` to achieve the same result:
December 9, 2024 at 12:36 PM
Another just-for-fun question

So, the #RxJS `tap` operator is specifically designed to perform side-effects

However, its implementation is just taking an Observable and returning a new one with the side-effect slapped on it

So, is `tap` itself a pure function or not? 😁
December 9, 2024 at 11:59 AM
What concepts from reactive programming do you find the most challenging to explain to beginners?

My bet is on "declarative programming"
December 4, 2024 at 7:49 AM
#NgRx ESLint ruleset has a rule that prohibits mapping Observables from the store to be mapped in component

Instead, it encourages the use of new, derived selectors and a direct selection of the state

I believe we should not create computed properties from store signals

What do you think?
December 2, 2024 at 3:13 PM
My last article seems to be doing quite some rounds...

If you have missed something from Angular v19, check the article out - there are a lot of hidden gems there!

www.angularspace.com/angular-v19-...
Angular v19 No Signals Edition
Angular v19 is all the rage these days! Of course, everyone talks about SSR improvements, like incremental hydration, linkedSignal and resource/rxResource APIs, and you can already find some articles ...
www.angularspace.com
December 2, 2024 at 12:12 PM
When we make HTTP calls in #Angular, sometimes we need to map the response to something else

With `rxResource`, would you prefer to do it with an #RxJS operator, or with a computed/linked signal?

I prefer doing it with RxJS, but I want to hear opinions
December 2, 2024 at 11:33 AM
I ran into an #Angular article today, and I think it is entirely AI-generated

The amount of just plain wrong stuff in it is too astounding to write it off as just a mistake

Honestly, this makes me mad

medium.com/@sehban.alam...
Understanding the Difference Between `ngFor` and `@for` in Angular 17
With the release of Angular 17, developers have witnessed a number of improvements and new features that enhance the overall developer experience. Two of the most discussed constructs in Angular for…
medium.com
November 29, 2024 at 12:40 PM
Important to remember: while `Resource` implements some methods from `WritableSignal` (set, update), it is not itself a signal.

If you want to bind a resource to `ngModel` in your #Angular component template, use its `value` signal, not the resource itself:
November 28, 2024 at 2:14 PM
I never understood why people would make Facades for #NgRx, I don't get the point.

Isn't NgRx itself already a facade? A big, complex system with which you interact only via two simple methods (dispatch, select)
November 28, 2024 at 12:18 PM
You can call methods of a child component in #Angular templates via a reference variable

Do you think this is a bad practice? If so, how can we avoid it? What would be some cases where this is justified?
November 26, 2024 at 2:24 PM
Not something super hard, but important

#Angular linked signals have the same scheduling approach for computations as regular `computed` properties

Computation does not run initially until the value is first read. Subsequently, only new reads will trigger to recompute
November 25, 2024 at 2:31 PM
I've run into an interesting type issue with #Angular's new `linkedSignal`

Using the previous value argument in computation callback results in an `unknown` type, even when the type returned is super explicit

Any idea why this is the case?
November 25, 2024 at 1:16 PM
My upcoming #Angular v19 article is already under review, and

I'm happy to say exploring the full release docs taught me a lot
Interesting things are coming 🤫
November 25, 2024 at 12:11 PM
What have been some cases, in your experience, where you purposefully did not use `OnPush` in an #Angular component?

Was the component too large? Did it cause many issues? I'm interested in hearing scenarios
November 25, 2024 at 11:43 AM
I think one improvement to #Angular's Resource API would be the addition of initial values

Sometimes the `request` can depend on optional signals, and we might want an easier mechanism of having some default value:
November 22, 2024 at 11:31 AM
#Angular's Resource API is wonderful

Easily chain HTTP requests that depend on each other:
November 21, 2024 at 1:19 PM
I'm already writing a new article

I will cover all the more obscure features (some of them I already tweeted about) that got a bit overlooked because of the `linkedSignal`/Resource API hype 😁

Will drop next week! 🚀
November 21, 2024 at 12:05 PM
#Angular v19 Resolvers will now also accept a `RedirectCommand`!

We can use it to navigate to other pages depending on the data received, or for handling errors
November 21, 2024 at 11:35 AM
Let's maybe start an #Angular discussion?

What's the best feature in your opinion in v19?
November 21, 2024 at 9:47 AM
If you don't know, I've authored a book about #Angular - aptly titled "Modern Angular"

It is approaching print publication and is already available online with early access

You can check it out here:
www.manning.com/books/modern...
Modern Angular
Discover the new features and techniques of the most modern versions of Angular.</b> The powerful Angular framework is ever-evolving, with each new iteration bringing amazing new modern features. Mod...
www.manning.com
November 21, 2024 at 8:10 AM
Great to see so much appreciation!
One of the TOP #Angular Space Writers
Delivers far beyond anything you can read.

- v19 Resource API has been
disassembled to the bone

Each detail carefully presented and studied.

I'm glad that appreciation for @armandotrue.bsky.social is showing in numbers!

www.angularspace.com/everything-y...
November 21, 2024 at 7:44 AM
I put a lot of effort into this article - and I mean a lot!

I've read the source code, compiled and tried out examples - to deliver you the latest we know about Resource API

Give it a read to learn more!
As Fresh as it gets
As detailed as possible - for now ;)

The Best Resource on the
#Angular v19 Resource API !!!

By one and only @armandotrue.bsky.social

This article is too good!!!

Article: www.angularspace.com/everything-y...
November 20, 2024 at 4:49 PM
By the way, if you want to update an #Angular signal of an array using an index, the new `Array.with` method can be useful!

It returns a new array instead of modifying the existing one, which is perfect for pure updater functions like `update` callback or reducers:
November 20, 2024 at 12:56 PM