@angular Writing a few components using the SignalInput. It is very simple and tidy. I suspect most of the changes I will make is have signalinput components as views, and leave most of the observable state as is.
A few things I've noted.
It doesn't take too long before I ran into stuff that is going to change. Like forms.
The toSignal interop is quite nice. You end up with lots of type complications with observables, and having a default value removes the |null from the type.
I started changing a few things in a large complicated component, but ran into some roadblocks very quickly. You write and structure data flows using the available tools; signals require a different approach. I would characterize it as 'pull'. Instead of setting or pushing values as configuration, you need to pull values from changing data. I started with some setters, and realized that I needed to start on the other end, where the data was consumed and work backwards.
I can see how easy it will be to create extremely long complicated and brittle change trees.