HN Theater @HNTheaterMonth

The best talks and videos of Hacker News.

Hacker News Comments on
"Make the Back-End Team Jealous: Elm in Production" by Richard Feldman

Strange Loop · Youtube · 27 HN points · 4 HN comments
HN Theater has aggregated all Hacker News stories and comments that mention Strange Loop's video ""Make the Back-End Team Jealous: Elm in Production" by Richard Feldman".
Youtube Summary
How often do you find a back-end team jealous of the language the front-end team gets to use? Having modernized many legacy front-ends over the years, I can unequivocally say that introducing the Elm programming language to a rich web app (previously built on a mix of React.js and legacy jQuery) has yielded the most reliable, clean, and performant result I've ever seen. Elm's benefits to this mission-critical code have felt like the programming equivalent of the "After" photo in an infomercial.

In this talk attendees will learn how to cleanly introduce Elm into an existing JS front-end from start to finish. Highlights include Elm's Time-Traveling Debugger, its uncanny ability to catch nearly all runtime exceptions at build time (no more "undefined is not a function"), and a package manager that guarantees and automatically enforces semantic versioning for every package.

Attendees are assumed to be comfortable with JavaScript and CSS, but no other knowledge is needed. Come see how nice your front-end programming experience can become!

Richard Feldman
NOREDINK
@rtfeldman

Richard is a functional programmer who specializes in pushing the limits of browser-based UIs. He's built a framework that performantly renders hundreds of thousands of shapes in HTML5 Canvas, a JavaScript immutables library that seamlessly interoperates with normal JS collections, and a Web App for long-form writing that functions like a desktop app in the absence of an Internet connection.
HN Theater Rankings

Hacker News Stories and Comments

All the comments and stories posted to Hacker News that reference this video.
Excellent question. Turns out there is: http://elm-lang.org

Is a Haskell inspired programming language that makes developing front end a delight.

It helps to build Reliable front ends. Watch this conference to get a sense of what Elm does. Making the Backend Team Jelous[1]

Plus the Elm architecture makes everything orderly and easy to understand.

Quite a change from the mess of react components and Angular rewrites.

[1] https://youtu.be/FV0DXNB94NE

martijn_himself
This looks great, and thanks for providing the links. Is Elm production ready? Have you used it to build any apps?
lsjroberts
NoRedInk use it in production and are quite big advocates (having hired the BDFL) - http://tech.noredink.com/
lisardo
I talk about my experience. I deployed Elm to production in several projects for the biggest group fitness company in the US.

It's incredible. Compiler errors are incredible. No undefined bullshit. It's purely functional, so the code you need to understand at the same time is always gonna be inside 20 lines. And you can use it with javascript if you want too.

You will learn a lot using a pure functional programming language. Programming is about transforming data, so even if I go back to any OO language I learned that state can cause several problems.

martijn_himself
That sounds great. Did you have to convince anyone to adopt Elm or were you free to pick your language of choice? Using a pure functional language appeals to me as well.
citrusx
Obligatory counterpoint: http://reasonablypolymorphic.com/blog/elm-is-wrong
I gave a talk going through this very conundrum. :)

https://www.youtube.com/watch?v=FV0DXNB94NE

I'm pretty keen to play with Elm, but it gives me some pause that an app like this (or the demo at https://github.com/evancz/start-app) results in... 11k lines of Javascript. Nevertheless, these talks got me bulled up on Elm: https://www.youtube.com/watch?v=FV0DXNB94NE (Richard Feldman, collegially, on React -> Elm)</a> / https://www.youtube.com/watch?v=oYk8CKH7OhE (Evan Czaplicki on the motivation for Elm)
michaelsbradley
That's because the Elm compiler doesn't yet do much in the way of "dead code elimination" (DCE).

However, that will change in a future release of Elm, once Joey Eremondi's work has been fully integrated. My understanding is that integration is not slated for the 0.16 release (imminent) but will likely be part of the 0.17 release.

See: https://groups.google.com/forum/#!searchin/elm-dev/dead$20co...

hellofunk
Are they planning to leverage the Google Closure compiler the way Clojurescript does? Un-optimized Clojurescript is also huge until it runs through Closure compilation.
hellofunk
I should have read that thread first; it appears the answer to my question is "yes".
michaelsbradley
No, I believe the DCE implementation (still in the works) is specific to the Elm compiler, as opposed to an implementation which organizes the source in such a way as to leverage Google's Closure compiler.
Oct 05, 2015 · dangoor on Side Effects vs. Promises
Yeah, Richard Feldman's Strange Loop talk[1] touched upon Tasks and they do indeed look exactly like what I'm looking for.

Elm does look very nice. Not sure if I'd get the team on board with that kind of change ;)

[1]: https://www.youtube.com/watch?v=FV0DXNB94NE

Sep 30, 2015 · 3 points, 0 comments · submitted by jmite
Sep 28, 2015 · 24 points, 2 comments · submitted by rtfeldman
thomasweiser
Nice talk, very motivating!
atrilumen
I felt a great disturbance in the Internet, as if hundreds of minds suddenly cried out for immutable data and stateless functions...
HN Theater is an independent project and is not operated by Y Combinator or any of the video hosting platforms linked to on this site.
~ yaj@
;laksdfhjdhksalkfj more things
yahnd.com ~ Privacy Policy ~
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.