<story><title>MobX 6</title><url>https://michel.codes/blogs/mobx6</url></story><parent_chain><item><author>triyambakam</author><text>I have mostly found it to be a footgun and inspiration to write spaghetti. While it may have good intentions, it doesn&amp;#x27;t matter if it lets less experienced developers do absurd things that I now have to refactor. I don&amp;#x27;t think it really fits well into the React model, and while it&amp;#x27;s not only used for React, it&amp;#x27;s quite common that way</text></item><item><author>brundolf</author><text>MobX is possibly my favorite open-source project. The elegance with which it makes an entire problem-space just &lt;i&gt;disappear&lt;/i&gt;, with minimal magic or surprises, with maximal performance, with a delightful user-experience, with minimal opinions or assumptions about how you use it. I have nothing but praise; React + MobX is the most productive I&amp;#x27;ve ever been while working on user interfaces.&lt;p&gt;On top of all that, Michael is a very reasonable and patient project leader. His documentation puts advanced concepts in plain terms, and when people file feature-requests he always displays a genuine willingness to consider their use-cases and points of view, to solve their problem if it&amp;#x27;s reasonable for the project to do so, and is never condescending even when questions or suggestions are plainly bad.</text></item></parent_chain><comment><author>brundolf</author><text>&amp;gt; I have mostly found it to be a footgun and inspiration to write spaghetti. While it may have good intentions, it doesn&amp;#x27;t matter if it lets less experienced developers do absurd things that I now have to refactor.&lt;p&gt;I admit the only team I&amp;#x27;ve used it on consisted of three people, and there are certainly really gnarly things you can do with it if you go out of the way to, so I don&amp;#x27;t know how it scales to larger teams. Though I would argue that it encourages best practices by making those the paths of least resistance. I would also say that - unlike, say, RxJS - its mental model is very simple and straightforward, and should be quite accessible to inexperienced developers. But yes, it doesn&amp;#x27;t do a lot to &lt;i&gt;stop&lt;/i&gt; you from shooting yourself in the foot.&lt;p&gt;&amp;gt; I don&amp;#x27;t think it really fits well into the React model&lt;p&gt;I disagree with this part completely. It doesn&amp;#x27;t fit well with the Redux&amp;#x2F;hooks model, but that&amp;#x27;s because it replaces it. In my opinion it lets React focus on what it does best: updating the DOM to match a new virtual DOM, and takes everything else out of React&amp;#x27;s hands, which to me is a huge win. I am not a believer in the &amp;quot;every state change replaces the entire root state structure using a composition of pure functions&amp;quot; model; I think it&amp;#x27;s contrived, clunky, and hard to follow. I believe that state should be minimal, but should be treated as what it is. MobX gives you all the tools you need to enshrine state &lt;i&gt;as state&lt;/i&gt;, without introducing any duplication&amp;#x2F;synchronization complications.</text></comment>
<story><title>MobX 6</title><url>https://michel.codes/blogs/mobx6</url></story><parent_chain><item><author>triyambakam</author><text>I have mostly found it to be a footgun and inspiration to write spaghetti. While it may have good intentions, it doesn&amp;#x27;t matter if it lets less experienced developers do absurd things that I now have to refactor. I don&amp;#x27;t think it really fits well into the React model, and while it&amp;#x27;s not only used for React, it&amp;#x27;s quite common that way</text></item><item><author>brundolf</author><text>MobX is possibly my favorite open-source project. The elegance with which it makes an entire problem-space just &lt;i&gt;disappear&lt;/i&gt;, with minimal magic or surprises, with maximal performance, with a delightful user-experience, with minimal opinions or assumptions about how you use it. I have nothing but praise; React + MobX is the most productive I&amp;#x27;ve ever been while working on user interfaces.&lt;p&gt;On top of all that, Michael is a very reasonable and patient project leader. His documentation puts advanced concepts in plain terms, and when people file feature-requests he always displays a genuine willingness to consider their use-cases and points of view, to solve their problem if it&amp;#x27;s reasonable for the project to do so, and is never condescending even when questions or suggestions are plainly bad.</text></item></parent_chain><comment><author>Lazare</author><text>My experience has been the reverse. I&amp;#x27;ve found MobX code easier to maintain than equivalent Redux code, and although it&amp;#x27;s obviously subjective, I feel it is a good fit for the React model.&lt;p&gt;Just noting that experiences may differ sharply. :)</text></comment>