Thanks for the response Charlie. I hadn't realized that there hadn't already been attempts to make a larger scale SPA in Elm. Your lessons learned will definitely be of interest to me. I was suggesting that some rules of thumb be put into the guide for larger applications but I guess we haven't got rules of thumb yet!
On Saturday, October 1, 2016 at 12:28:20 PM UTC-6, Nathan Feaver wrote: > > Hi everyone! > > Often it is helpful for me to hear the experience from someone who is just > learning how to use my software. I think the same is probably true of > programming languages so I thought I would share my story of learning Elm > with you. > > The Good Parts > > I started looking at Elm about a week and a half ago and have probably > spent 20 hours reading and watching Elm content and writing Elm code. I > found out about Elm because I have been interested in Elixir and stumbled > into this conference talk by Rob Martin, *Teaching functional programming > to noobs* (Lambda Days 2016) <https://www.youtube.com/watch?v=bmFKEewRRQg>. > I jumped straight into writing code using Exercism.io exercises. I copied > code I saw in examples but couldn't get too far. I watched Richard > Feldman's *Introduction to Elm* > <https://www.youtube.com/watch?v=zBHB9i8e3Kc> and Evan's Let's be > Mainstream <https://www.youtube.com/watch?v=oYk8CKH7OhE>. Those two talks > and occasionally looking up core library docs got me far enough that I > could get through a good number of the Exercism exercises. I was impressed > that the language was so intuitive, that error messages were sooo good, > that currying was easy, and that using types was both terse and descriptive > at the same time. > > I started working on updating a small personal project and realized I > needed to understand 'The Elm Architecture' so I've been working through > the tutorial with my remaining time in Elm. So far, the tutorial is great > and progresses at a good speed. > > The Rough Edges > > I had a difficult time figuring out where to go for good documentation. > Everything was spread out among multiple resources. My first experience was > looking at elm-lang.org/docs where I found a dozen or so links that point > to 5 different domains/subdomains. If I had come to Elm without hearing > strong praise from a respected programmer then I'm not sure I would kept > going. The disorder of the documentation gives the sense that Elm is a > hobby language rather than production-ready. Elixir handles these concerns > very well: Commonly used libraries have a consolidated guide > <http://elixir-lang.org/getting-started/introduction.html> and > documentation <http://elixir-lang.org/docs.html> within a single click of > the language's homepage. > > Questions I have at this point (that would help me to know if Elm is worth > continuing to invest in): How does 'The Elm Architecture' work with larger > applications? I've seen some examples like the Todo app and the Flatris > clone that have a high-ish number of actions that the app responds to in > `update`. What about an app that spans multiple pages and should respond to > hundreds of actions? Would you split the app into many small apps? If so, > would there be a parent app that delegates actions? Also, can I use `The > Elm Architecture` and Commands/Subscriptions outside of the HTML world? I > think it would be helpful to answer these questions at some point in the > documentation. > > > Hopefully this ends up being useful. Overall, I have really enjoyed using > the language and will continue to write Elm code in my free time and look > for ways to use it professionally. Thanks for listening! > -- 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.
