Skip to content

Instantly share code, notes, and snippets.

@MelSumner
Last active November 20, 2017 18:45
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save MelSumner/971ba6b7a3c0b01a4cb3a43d3b962dac to your computer and use it in GitHub Desktop.
Save MelSumner/971ba6b7a3c0b01a4cb3a43d3b962dac to your computer and use it in GitHub Desktop.
"Why Ember" Thoughts
  • Ember has been around since 2011. It's also not the product it was in 2011, and has adapted/evolved into an experienced, dependable ecosystem.

  • "Safety of the Herd" (article) illustrates that we get to solve more interesting problems when the entire community adheres to a shared set of standards.

  • "How to learn EmberJS in a hurry" (article) illustrates that the Ember learning curve may not be as steep as you think.

  • Ember's testing story is superb, and the core team demonstrated the wisdom that comes only through experience, by making it a core feature that is equally as important as the framework itself.

  • Accessibility- the ember-a11y community and growing collection of addons demonstrates the commitment to the idea that people of all abilities should be able to use the web

  • Open Source software that doesn't have a single central controlling enterprise. Angular is Google. React is Facebook. Ember is the community.

  • Community benefits from a diverse range of talent. Developers who work all over the world, and for other tech giants, work on/contribute to Ember. Apple, LinkedIn, Netflix, Twitch, JPMorgan Chase- they all use Ember in some capacity and contribute to the community.

  • Ember components are everything you never knew you always wanted. It's not just about the components, it's about component isolation.

  • Ember is an opt-out of the "framework wars". Ember isn't going anywhere. (https://tomdale.net/2017/09/compilers-are-the-new-frameworks/) Ember is pretty open about learning from other Frameworks, and if you look at what other frameworks learned from Ember- you'll see adoption patterns there too. For example: Angular-cli...compare to Ember-cli, and connect the dots.

  • Ember takes a more holistic view of SPAs. It provites the build tooling, solutions to common problems, common template language, data layer, dependency injection system. Everything is composable, and you don't have to worry about whether or not your data-layer choice will be compatible with your dependency injection system.

  • This coordinated approach also means that you won't have to worry about the teams which may or may not be actively working on or maintaining each portion of the tech stack.

  • Up front, Ember solves more problems than Angular or React ecosystems, which means your team will have fewer bikeshedding discussions to have (but don't worry, there will still be plenty of things to argue about), and your projects can focus on the real thing they want to build.

  • Angular 4 is now fully scoped but a lot of its conventions were driven by only a few developers in a very short amount of time, and that's resulted in a FW that is not as easy to understand and not quite as intuitive.

  • Every time I have thought "I wonder if Ember has a solution for...X" - it does! A11y is literally the only thing that I found lacking, and because Ember let me get up to speed faster, I've already contributed to the Ember A11y community!

  • "Ember is slow" except it's not. It used to have these issues, and it won't stop you from building a non-performant app. But if you build your app in a standard way, it's quite performant. The Glimmer rendering engine has helped that effort tremendously even in just the last year.

  • GlimmerJS is providing the path forward that will give teams an incremental way to move to the Ember ecosystem. "NPM install your way to Ember"

@EndangeredMassa
Copy link

  • Ember has been around since 2011. It's also not the product it was in 2011, and has adapted/evolved into an experienced, dependable ecosystem.

I would add that the evolution itself was done in a way that made upgrading dependable and usually easy.

  • Open Source software that doesn't have a single central controlling enterprise. Angular is Google. React is Facebook. Ember is the community.

They even intentionally limit the number of people who can serve on the core team from the same company at the same time.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment