Regarding controlled and uncontrolled components it's really hard to say what is "bad" or "right". It depends on the specific case, but in most ones in my opinion is better to use the controlled components in order to achieve this "single source of truth” I've mentioned in the post (in short data will be controlled by the state and it will be always in sync with input element). I recommend checking this article, which is also mentioned in React docs -> goshakkk.name/controlled-vs-uncontrolled-inputs-r…
And yeah, I agree with you! It's better to use TypeScript. Moreover, I think in the future it might become a standard in Web Development, so it's worth to learn it 🤓
Gabriel Idenyi A
Software Engineer
Haha, I loved the DRY thingy on #2. Great tips 👍🏽