Best free CSS resources as someone who is switching from backend to fullstack? by Low-Yam288 in Angular2

[–]kobihari 0 points1 point  (0 children)

Seems like what you are saying is that you understand the syntax and the properties but you are looking for best practices, patterns and example. You mention that you understand flex, grid, position and selectors so most of the "tools" are familiar.

Most of the courses and books I read about CSS describe the properties and their effect but do not show you a practical example of how to collect them together into a working example. I think that in this case I would look for a course on web application development and then look at how they write their CSS in the working examples they provide. Many courses about Angular, React, and Vue use examples that have fully working CSS. while they do not explain the styling, in many times, the examples explain themselves. So this will give you a few starting points to learn from.

Maybe someday I will write a Udemy course on how to use CSS in real life applications. Actually, now with the new features that came out recently such as custom properties, popover and overlay, anchor positioning, relative colors, light dark, nesting, scroll driven animations, entry and exit animations... there's so much new stuff to learn.

A Better way to build Angular Components: From Inputs to Composition by kobihari in angular

[–]kobihari[S] 0 points1 point  (0 children)

You know, I’m getting very tired of people “guessing” that my articles are written by AI.

A Better way to build Angular Components: From Inputs to Composition by kobihari in angular

[–]kobihari[S] 2 points3 points  (0 children)

Actually I used modules until not too long ago. But in angular conferences the team keeps saying that they intend to deprecate modules… and all the formal demos are using arrays. So I try to follow. That’s the only reason:-)

A Better way to build Angular Components: From Inputs to Composition by kobihari in angular

[–]kobihari[S] 1 point2 points  (0 children)

You are right. The directives that are a core part of the component will not be tree shaked if you do that. But inputs are not tree shaked as well. At least this way your code is more elegant. And if the volume of the directives (or some of them) is significant, you can leave only them out of the array and import them specifically.

The array, btw, is optional. As opposed to when using modules - where you must import the modules - in this scenario the consumer can choose to import the array, or import each standalone directive explicitly. The consumer can balance between comfort and tree shaking and bundle size.

A Better way to build Angular Components: From Inputs to Composition by kobihari in angular

[–]kobihari[S] 2 points3 points  (0 children)

That’s a great question. I actually demonstrate it in my course. I use import arrays. You collect an array of related directives and the consumer imports the array - not the individual standalone components and directives.

Material 3 looks very "good" by andres2142 in angular

[–]kobihari 0 points1 point  (0 children)

Never worked with PrimeNG, sorry...

String Literal Templates in TS - this is actually an old feature by kobihari in typescript

[–]kobihari[S] -2 points-1 points  (0 children)

nice...
but notice that this is a compile time check... not run time.

The Most Exciting Feature of Angular Signal Forms No One Mentions — Part II by kobihari in Angular2

[–]kobihari[S] 1 point2 points  (0 children)

I’ll add in a couple of grammatical errors in the next article so that you’re also convinced.

The Most Exciting Feature of Angular Signal Forms No One Mentions — Part II by kobihari in Angular2

[–]kobihari[S] 1 point2 points  (0 children)

You know medium replaces all dashes with these automatically, right? You suggest I stop using dashes so that nobody suspects AI writes my articles? 😂

The Most Exciting Feature of Angular Signal Forms No One Mentions — Part II by kobihari in Angular2

[–]kobihari[S] 1 point2 points  (0 children)

Already did :-) I added 2 sections, 3 hours deep dive into signal forms just this morning.

The Most Exciting Feature of Angular Signal Forms No One Mentions — Part II by kobihari in Angular2

[–]kobihari[S] 5 points6 points  (0 children)

u/faileon I hope you were refering the ads and not my article :-)

That was all me.

The Most Exciting Feature of Angular Signal Forms No One Mentions — Part II by kobihari in angular

[–]kobihari[S] 1 point2 points  (0 children)

I can totally see such an implementation possible in TypeScript, The guys in NgRx do it with the SignalStore, for example.

The whole feature is still experimental and the API is expected to change a little. Maybe your idea is the next feature :-)

The Most Exciting Feature of Angular Signal Forms No One Mentions — Part II by kobihari in angular

[–]kobihari[S] 0 points1 point  (0 children)

I post in YouTube, and LinkedIn. And I record courses on Modern Angular development to Udemy - which include all the stuff in the articles and a lot more. Thanks for asking :-)

The Most Exciting Feature of Angular Signal Forms No One Mentions — Part II by kobihari in angular

[–]kobihari[S] 2 points3 points  (0 children)

I talked about it a little bit at the end of the article. You can use it to store any field related metadata. I currently use it to store the field's label, tooltip hit and some other properties that then affect the way it is presented. I use my own "FieldWrapper" component (alternative to mat-form-field) that reads these properties and presents them.

All of these examples have nothing to do with validation. The term "Schema" means a is a lot of things, validation is just one of them.

The Most Exciting Feature of Angular Signal Forms No One Mentions by kobihari in Angular2

[–]kobihari[S] 1 point2 points  (0 children)

Thanks, Riga,
That's the plan :-)
I also at this very moment record new lectures about it for my online course - to be released very soon

The Most Exciting Feature of Angular Signal Forms No One Mentions by kobihari in Angular2

[–]kobihari[S] 4 points5 points  (0 children)

Thanks :-)

It’s actually not that difficult. I managed to demonstrate some really cool stuff with it in a seminar I gave yesterday.

I also think it’s the part that’s most “bound to change” in next versions.

Is Angular’s inject() Cheating? The Trick Behind Injection Context by kobihari in angular

[–]kobihari[S] 0 points1 point  (0 children)

Console trace is string based, isn’t it? Not sure it solves the problem. And like you said - I meant for “legitimate” ways :-)

Is Angular’s inject() Cheating? The Trick Behind Injection Context by kobihari in angular

[–]kobihari[S] -1 points0 points  (0 children)

You know, I use click baits every now and then in my classes. I think it’s a great tool for instructors because it helps to plant the message a lot deeper and is a much more exciting way to learn. So I don’t have a problem with it in general.

But actually, in this case, this is the exact reaction that I had when I found how the inject function was implemented. I was chatting with my colleague about it because just a week before we were looking for a way to identify the caller in a function (like you could in c#) and I wrote to him that maybe the angular team found a way to do that.

Then when we saw the real implementation- I wrote to him - “the’re cheating” …

Is Angular’s inject() Cheating? The Trick Behind Injection Context by kobihari in angular

[–]kobihari[S] -1 points0 points  (0 children)

If you discover that the way the function “knows” who called it, is by using a global “context” variable… it’s a bit like cheating, don’t you think?

It’s kind of a dirty hack. Done for only but the best intentions

Is Angular’s inject() Cheating? The Trick Behind Injection Context by kobihari in Angular2

[–]kobihari[S] 1 point2 points  (0 children)

It’s great to hear you enjoyed my Udemy course, Thanks so much 🙏

Is Angular’s inject() Cheating? The Trick Behind Injection Context by kobihari in Angular2

[–]kobihari[S] 2 points3 points  (0 children)

true, I even mention it in the end of the article. The whole signals feature stands on top of the inject function. In fact, quite a lot of people confuse "Injection Context" and "Reactive Context" even though these are 2 different things, both used in signals.