It's all good. :) This stuff is complicated!
On Sun, Jul 10, 2016, 11:19 AM Peter Damoc <[email protected]> wrote: > Richard, > > Thank you for taking the time to write this considerate answer. > > I apologize for the post I wrote yesterday. > I was in a very very dark place after a night plagued by insomnia at the > end of an extremely stressful week where I could not get anything done. > > Fear is the path to the dark side... and I think I let fear take over. > > Anyway, it is fascinating to see that such a seemingly simple topic has > the brightest minds in the world still looking for an answer. > > I did not knew that the situation is this complicated. > > > > > On Sun, Jul 10, 2016 at 8:54 PM, Richard Feldman < > [email protected]> wrote: > >> >> >>> Regarding the user form, you said that what I asked is trivial in Elm. >>> Do you have some kind of sample code that you can share or, if you would >>> be so kind, could you post some sample repository that does that? >>> >> I would *LOVE* to be proven wrong about that. I would love to see some >>> simple Elm code that outputs a form that looks like it came from 2016 and >>> go "oops, my bad, sorry for wasting everyone's time". >>> >> >> Sure - I even wrote a blog post >> <http://tech.noredink.com/post/129641182738/building-a-live-validated-signup-form-in-elm> >> about >> it. :) >> >> That post includes examples in the form of SignupForm.elm >> <https://gist.github.com/rtfeldman/ba60ad491cc6b58fe2cc4ca78f5a4580> and the >> styles that go with it >> <https://gist.github.com/rtfeldman/4ec263490ba9a1618b59#file-example-html-L7-L16>. >> I >> didn't bother inline the styles into Elm, but obviously that's a copy/paste >> and find/replace job. >> >> All of Graphics.Input was dropped >> >> >> Ah, I did not know that! My mistake. You're right, Janis. >> >> Regarding elm-mdl. I am well aware of the release of 6.0.0. I was not >>> arguing that people are not still fighting. >>> What I said was that "*they were explicitly or implicitly dismissed"*. >>> >> If you want me to be more explicit, I was thinking about the discussions >>> around boilerplate that prompted elm-parts, the difficulties around >>> geometry that prompted debois/elm-dom. >>> >> >> Facebook released React with a built-in, dead-easy way to do reusable >> stateful components: each component has its own local mutable state. >> >> However, they at Facebook weren't satisfied with how this UX scaled, so >> they also released Flux as a more scalable way to manage state. >> >> Many people weren't happy with Flux, though, so they started looking >> elsewhere, for example to ClojureScript, leading to Omniscient.js >> <https://github.com/omniscientjs/omniscient> based on David Nolen's >> cursor-based state management model for Om <https://github.com/omcljs/om> >> . >> >> David Nolen himself ended up moving away from that with Om Next >> <https://github.com/omcljs/om/wiki/Quick-Start-(om.next)>, which >> abandoned cursors in favor of a custom state management system based on >> Relay, Falcor, and Datomic. Obviously not everyone agrees with him; >> Omniscient.js is still under active development. Its last commit is 2 days >> ago. >> >> Others looked to Elm, like Dan Abramov, who created Redux >> <https://github.com/reactjs/redux>. It's very popular in the React >> world, although since Facebook hired Dan, he's been working on ways to make >> React not need it anymore. That seems likely to result in the release of a >> new way to do things <https://xkcd.com/927/>, whenever whatever it is >> gets released. >> >> Others thought Redux was too heavyweight and trying to do too much at >> once, which has led to Choo >> <https://github.com/yoshuawuyts/choo#concepts>, a self-described >> <https://github.com/yoshuawuyts/choo#hey-doesnt-this-look-a-lot-like-elm> >> adaptation of Elm 0.17's architecture in JS. >> >> I've spent hours discussing these things with Jafar Husain at Netflix, >> who thinks Observables are the answer. See for example rx-react >> <https://github.com/fdecampredon/rx-react> or Andre Staltz's popular >> Cycle.js <http://cycle.js.org/>. >> >> This is to say nothing of how Angular manages state. Or Ember. Or >> Aurelia. Or Vue. >> >> My point is this: >> >> *Every single community that's involved in making browser-based UIs is >> flooded with conflicting viewpoints on how reusable stateful components >> should be done.* >> >> There is not some glaringly obvious answer that will make everyone happy. >> It does not exist. >> >> History strongly suggests that in this area,* making one group of people >> happy makes others unhappy.* >> >> I was on a Skype call several months ago where Søren and Evan had an >> extended discussion about his experiences developing elm-mdl. The fact that >> Evan did not end up doing things the way you think he should is not a >> reflection of Evan being dismissive of Søren's experience, it's that >> *reusable >> stateful components are a minefield of tradeoffs*. >> >> Personally I think when one finds oneself in a minefield, it is wise to >> tread carefully. :) >> >>> -- >> > You received this message because you are subscribed to the Google Groups >> "Elm Discuss" group. >> > To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> > >> For more options, visit https://groups.google.com/d/optout. >> > > -- > There is NO FATE, we are the creators. > blog: http://damoc.ro/ > > -- > You received this message because you are subscribed to a topic in the > Google Groups "Elm Discuss" group. > To unsubscribe from this topic, visit > https://groups.google.com/d/topic/elm-discuss/gVY5DmZOR9s/unsubscribe. > To unsubscribe from this group and all its topics, send an email to > [email protected]. > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "Elm Discuss" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
