The Ember.js Times - Issue #36
Saluton Emberistas!

This week, the Ember.js Times awaits you with news about Glimmer Components landing in Ember, an overview of this year’s roadmap for Ember CLI, and a Readers’ Question - this time focussing on the future of Glimmer ✨❤️🐹

Also, it's the final countdown to EmberConf 2018, the largest Ember gathering worldwide! There are still tickets available for the conference, trainings, and activities. Join the #conf-emberconf channel on Slack to connect with other attendees.
Roadmap for Ember 2018 - Your Opinion is needed in the Ember Community Survey 2018!
In an effort to get a better picture of the Ember community and its needs, the Ember Community Survey 2018 is underway,  and your input is needed! Similar to previous years, @mixonic,@AkankshaKana and @iezer are investigating how the community is using Ember for everyday work - and the results will ultimately influence decisions on the content of the current roadmap of Ember itself.

The survey is still open for a few more days until March 7th and takes less than 10 minutes - so if you’re just reading this during your coffee break ☕️- this is actually the perfect time to do it! The full results of the survey will be presented at this year’s EmberConf on March 13th.

You can read more about the outline of the survey in the official blog post and submit your answers and ratings here.
Take the survey
Default fall back, and Glimmer components in Ember, and bears! Oh My!
There you are in a template. It’s dark outside, the weather is rough, and you encounter the double curlies. Not familiar with the app, since it was just given to you by your boss a few hours ago, you start to pull your hair.  Is it a helper? A property on the component? Is it an attribute passed in? After digging around frantically (probably using ctrl F, or command F for the mac people) you discover it’s a property of the component. Why the ambiguous nature of the curlies? For ages, every Ember developer has been putting this uncertainty into the hands of the default property fallback. Whatever shall we do?!?

The new RFC for deprecating the property fallback behaviour
in Ember aims disambiguate the curlies and remove the confusion when reading a template. To provide clarity, the PR proposes ((, being foo a property. By doing this, it is certain that the property belongs to the component class. While not the main focus of the proposal, the PR could have positive effects on the rendering system by reducing compiler overhead when discovering the true intent of the curlies in question. Even though this is still in discussion, it certainly provides a path forward that to enrich the developer experience. Make sure to read the discussion – which includes a post by @wycats on how various recent RFCs tie in together into a coherent future for the framework future – and make your opinion heard in the comments section.
@tomdale recently posted the “Glimmer Components in Ember” quest issue to lay out the work necessary to bring Glimmer components to Ember. This gives developers an option to use all the nice things Glimmer components have to offer while living alongside the current Ember.Component class. 

The quest is split up into a number of Phases:
  • Phase 0 builds off the custom component RFC adding a custom component manager API, allowing addons to implement any custom component API, not just Glimmer one.
  • Phase 1 offers a transition and migration path so that developers can opt into Glimmer components at their own speed. 
  • Phase 2, angle brackets.
  • Finally, enough said.  Phase 3 is most of Glimmer goodies, especially the @tracked decorator, resulting in the wonderfully simplified component code of a Glimmer component. 
Join the #st-glimmer-components channel in the Ember Community Slack to help this quest along! 

This is an exciting time to be an Ember developer! And with EmberConf around the corner, things can only get better!
Lately, the Learning Team and Friends have been working on the Ember Inspector. See bugs or want to get involved? Pop into #-ember-inspector in the Ember Community Slack to help out with this invaluable debugging tool!

Over the weekend, a new landing page was launched for the API docs! Hard refresh if you still only see the "application" module docs. The power of the cache is strong.

We'd like to give a special shout out to @rimian who has been steadily fixing a ton of links in the Guides! The Learning Team also continues to diligently chip away at the migration of to Ember repos in 👏
In the final sprint to this year’s EmberConf, the Ember CLI team is getting ready to create an plan for which major features should land for the tool in 2018.

Tree Shaking, out-of-the-box support for npm packages on install, Yarn Workspace Support and a workflow for Service & Web Workers are only a few among the plethora of topics under discussion - and your suggestions and comments are needed!
Read more about the current outline and bring on your thoughts in the discussion thread for the 2018 Ember CLI Roadmap.

The first changes for code splitting in Ember apps are already underway with several new pipelines for creating directory trees for dependencies landing in the CLI (1, 2); finally, a few more internal improvements landed this week (3, 4, 5).
This week we have another Readers’ Question ready for you:
This time it’s all about the implications that splitting Ember into separate, independent packages will have on the stand alone library Glimmer.js.

Ember Core Team member @ef4 will tell you more about the future architecture of Ember and how Glimmer.js fits into the bigger picture in his answer on the Ember discussion board.
Read more
Got a question for the Core team yourself? Submit your own questions here
We will answer one of your questions in the next edition of the Ember.js Times ✍️ 
✨ That's another wrap! See you next week. ✨ 

Be kind,
Amy Lam, Ryan Mark, Jen Weber, Jessica Jordan, Ricardo Mendes and the Learning Team
Until the next issue, happy Embering :)
The Ember.js Learning Team · 812 SW Washington St, Ste 1000 · Portland OR 97205 · USA
Unsubscribe | View in browser