EmberConf 2016: Cross-Pollinating Communities - We All Win
I just want to give a flyover of his big ideas here. My own observations are liberally mixed in.
"Good artists copy; great artist steal."
The maxim above is oft quoted to correct what is commonly assumed about creativity. It is, as Chris stated, commonly ascribed to Steve Jobs, but there's a detective story to be told about the origins of this proverb.
Jobs did say this, but he was quoting Picasso when he did so. But Picasso may have been borrowing from a good friend he once painted, the composer Igor Stravinsky. The composer had said, "a good composer does not imitate; he steals."
But there's more. The great novelist of the South, William Faulkner said, "Immature artists copy, great artists steal."
"Steal good ideas and make them your own." - Chris Ball
The historical origins aside, these parallel proverbs remind us that we build on what has been built before us. We learn from the past. And the Ember project is no different.
Communities Ember has stolen from
There are a number of them.
From Rails , Ember borrowed the strong preference for convention over configuration, powerful tooling, and very importantly, the concept of router.
From React, Ember has stolen and run with the axiom for components of, "data down, actions up." React also provided the concept of a virtual DOM.
From Backbone.js, Ember polished up its own API, making it more lightweight and descriptive, with names for hooks such as model, afterModel, and didRender.
Communities that have stolen from Ember
But Ember lives among a community of thieves, and its own pearls have been stolen.
The React community is now building its own router, but one that is directly inspired by the Ember router.
And the AngularJS community is going to implement its own CLI based explicitly on Ember CLI.
Ways Ember has pushed great ideas
Ember went big on JSON.
Ember embraced promises.
Ember picked up the idea of web components and completely re-oriented the framework from 1.0 to 2.0 towards this concept.
Ember was the first major framework to utilize Babel and easily allow for building your apps with ES6 modules.
We All Win
Chris segued to the end by quoting Yehuda that:
"Successful communities toggle between 2 modes on the path to greatness." - Yehuda Katz
The 2 modes are (1) experimentation; and (2) sharing solutions. And this is true not just of communities, but developers, designers, engineers, companies, and products. I.e., everyone creating stuff and solving problems.
The truth is, Ember resides proudly in the open source world. It's not that we are stealing from each other to our detriment, rather we are borrowing, improving, and evolving the whole ecosystem. This means we developers win, our customers win, and our users win.
In conclusion, Chris exhorted all to take the following action:
- Build on what has come before you.
- Look at other communities.
- Look at other industries.
- Be shameless about "stealing" good ideas.
My own thoughts
I was excited to see Chris's talk listed when I first saw the schedule because the title captured my own feelings toward frameworks and libraries. I like Ember and enjoy using it. But we're open-source, and the best ideas deserve to win.
What excites me about Ember is its openness to the best ideas. The Ember community is not afraid to steal, and besides tomsters, it doesn't hoard its own treasure. And that's a good thing.
Thanks to Chris for the great presentation! You can find his slide deck here.