добры дзень Emberistas! 🐹
This week: more #EmberJS2019 posts wanted! ✏️, RFC for an alternative to Controllers 🎛, and tips for adding TypeScript 🌟!
Don't forget. This Monday, June 17th is the deadline for your #EmberJS2019 post to be a part of Roadmap RFC! Please write a blog post, GitHub Gist, or tweet, then share it with firstname.lastname@example.org and Discord community. 🧡
For ideas and inspiration, you can check out all #EmberJS2019 posts at our community repo. If time's not on your side, feel free to write and share your post even after the deadline.
Here are the highlights from this week's posts:
@yarnpkg PnP is a fantastic way to reclaim some/a lot of disk space. I started some work last year to support it in Ember CLI, but couldn't finish it in time. We should revisit this!
I think we should treat learning as important as the technical ideas that distinguish ember.js. [...] My fabulous colleagues have often asked spot-on, difficult questions about the guide's admonitions to do something a particular way. I too often resort to shallow "that is just the way it is" answers.
[With Ember Octane] it's time for us to focus on how we structure and bind and package those modules, both at the framework and application levels.
Ember needs a way for a component to have direct knowledge of its children, [...] clearer about where they want to end up with the file system layout, [...] spread
...attributeson multiple elements, [...] and public API and get a full suite of documentation (for AST transforms).
I see a lot of work around but it's not written in roadmap anywhere. [...] it will be great to have kinda "likes" for non important features, to prioritize them.
In a follow-up post, @melsumner encouraged the community to examine areas of improvement with a sense of calmness:
The Community as a whole must remember that each and every single one of us are the only ones who will excite others about using Ember. We are the only ones who can pique curiosity of others.
@mehulkar explained several reasons that make Ember difficult to learn and how we can address them.
The Octane edition will be great for performance and developer ergonomics, but it doesn’t fundamentally bolster (or change) the selling points of Ember. I think we need to aggressively reduce the API surface area at every level from core classes to CLI tooling, converge into the JS ecosystem and “the platform”, and make the application’s inner workings more explicit by both providing low level primitives and using them in an obvious way.
I would like us to address some of the long standing issues and missing features, as well as bring in some of the nice things from the JSX world, while staying true to what makes templates feel so productive in Ember today.
@dfreeman encourages us to make an active effort to tear down the Us and Them mentality.
The Ember community makes up only a fraction of Web development as a whole, and that necessarily means a lot of the innovation going on is happening outside our figurative walls. [...] Conversely, if we do develop something novel and valuable but it's only possible to use it in the context of an Ember project, that's a missed opportunity for the rest of the world.
@frank06 is looking forward to increase efforts to communicate the value of Ember in the wider tech community:
Ember has fallen off the radar. Pretty much any article about front-end talks about React/Angular/Vue and that's the end of it. They are taking such a big market share that Ember will struggle despite its technical merits. [...] I noticed several Ember developers going out in the wild to talk about Ember. This is great. We need more and better marketing and PR.
Testing has always been a strength of Ember. [...] Yet, it is still too hard for some organizations to start testing. [...] It is important, that as we go forward as a community, we don’t give up our lead in this area and address these pain points that continue to make testing difficult.
A special section in the guides on integrating Ember.js into a classic app could help interested developers become comfortable with both the technical process and with the idea that the Ember.js community supported this use case.
[O]n-boarding new and fresh minds from a different background of frameworks into teams that use Ember, has been quite a challenge. Not because the framework is difficult to learn, but the dots around the documentation need a bit more connectivity.
Many more #EmberJS2019 posts to be covered in the next issue! 💜
@NullVoxPopuli proposed two RFCs to outline how we can eventually remove controllers from Ember.
- RFC 499 proposes an alternative way of rendering templates for a particular route. (If some of you remember routable components, this isn't that. 😉)
- RFC 380 proposes adding a
queryParamsproperty to the
RouterServicefor accessing query parameters anywhere in your app: Routes, Components, etc. 🎉
If both these RFCs were accepted, it would help pave the way to being able to deprecate controllers. So if that’s something you care about, be sure to comment! 🖊️
If you are new to adding TypeScript to your Ember project, @James-Byrne has got you covered!
From James' blog post, you can learn how types help you catch errors at compile time and keep your documentation up-to-date. You can also find common problems to watch out for when you introduce types to your app.
Have a look and add types today!
This week we'd like to thank @sdebarros, @josemarluedke, @bekzod, @rwjblue, @demersaj, @runspired, @wycats, @sivakumar-kailasam, @bmac, @jenweber, @rwwagner90, @nummi, @qpowell, @locks, @kennethlarsen, @dnalagatla, @DPK101, @samselikoff, @dcyriller, @MelSumner, @rajasegar, @haochuan, @thoov, @lougreenwood and @lifeart for their contributions to Ember and related repositories! 💖
Wondering about something related to Ember, Ember Data, Glimmer, or addons in the Ember ecosystem, but don't know where to ask? Readers’ Questions are just for you!
Submit your own short and sweet question under bit.ly/ask-ember-core. And don’t worry, there are no silly questions, we appreciate them all - promise! 🤞
That's another wrap! ✨
Preston Sego, Isaac Lee, Chris Ng, Jessica Jordan, Amy Lam and the Learning Team