Real World Ember
Real World Ember
Jeffrey Biles
Functional Programming in Ember: Daniel Chappell at Q2 eBanking
32 minutes Posted Feb 18, 2016 at 1:00 pm.
0:00
32:44
Download MP3
Show notes

We talk functional programming in Ember, functional programming in other languages (including languages that transpile to Javascript), and functional programming in theory.

  • Daniel Chappell
    • 2.5 years programming exp, previous career was as a photographer
    • motivation for starting programming was getting out of photography, but he soon came to love programming for itself
  • functional programming
    • functional style makes codebase safer and easier to change and collaborate on
    • Computed Properties in Ember are pure functions
    • Should separate code into functional and imperative pieces, with imperative as small as possible
    • Recognized a lot of Functional philosophy in Ember
    • Most Ember code can be turned into Computed Properties
    • Types of Ember Code where mutation are fine: hooks and actions
    • These happen based on user actions- changing the route, changing data, interacting with the screen
    • Computed Properties are as trustworthy as functional properties thanks to how Ember updates them for us
    • Data Flow
    • Elmber <- Please create!
    • Javascript is getting way better! Thanks TC39 and Babel.js!
    • ES6 + Babel has made transpiling cool whereas it wasn’t before (Somewhere, Jeremy Ashkenas weeps)
    • Coffeescript helped us understand Javascript
    • Type systems
    • Algebraic data types
    • Not an expert in all of FP, but it informs how he writes code
    • Javascript facilitates multi-paradigm coding
    • “Patterns are language features that haven’t been implemented yet"
    • Patterns are the testing ground for new ways of organizing code
    • Javascript is flexible enough to emulate most other languages’ patterns
    • Scheme is another example of a language that is flexible enough to emulate other languages’ patterns
    • He invests in eMacs because he wants to mess around with lisp
  • Q2 eBanking
    • Provides high-quality banking software for small local banks that wouldn’t be able to build one themselves
    • Web, Android, and iOS experiences all from the same Ember codebase
    • Mission: keep small community banks/credit unions competitive with the big banks
    • Jeffrey just opened a business account with a Q2-affiliated bank, and the software is great
    • Ember has been great for the project- especially the commitment to semantic versioning
  • They’re hiring!
    • You can work with Ember all day every day
    • If you’re investing your time in Ember, they want to talk to you
    • Reach out to @josephdchappell on twitter
  • Sponsored by EmberScreencasts.com