Hacktoberfest 2020 events and info 🎃, read the new RFC to deprecate tryInvoke 📜, tips for switching from Ember Data to Ember Orbit 💡, read the blog post on Ember Octane with Glimmer Components ✨, and last, but not least, September EmberJS Chennai Meetup 🇮🇳 !
Have you always wanted to contribute to open source, but don't know where to start? The month of October is the perfect time to give it a try!
Hacktoberfest is an annual celebration of open source happens around the world, in thousands of projects on GitHub. Here in Ember land, we have lined up special events, mentoring, pairing, and more. You can read the full details in the Ember blog, but here are the highlights:
Tomorrow on Saturday, October 10th, drop into a pairing session! You can join voice chat on Ember Discord, where mentors are available to to take your questions, give some advice, and do pair programming during two sessions. Just jump into the "General" voice channel on Discord, all the way at the bottom of the channels list. Mentors are available 9am-10am ET, and 9pm-10pm ET. Click the links to see times in your own time zone.
You can join the #hacktoberfest chat channel that is open all day, every day. Volunteers are also keeping an eye there for questions or help reviewing pull requests.
On October 16th, there is a sold out Contributors Workshop. If you are registered and can't make it, please let the organizers know so that someone else can join!
If you are a parent, person of color, LGBTQ+, or woman, check out our channels for these groups! They are another great place to connect with others and maybe find a pairing buddy. Please note we are welcoming and respectful of trans women and any others who identify as women in a way that is significant to them.
If you belong to one of those groups but have not joined the channel yet, you can ask in the #discord-server-admin channel or send a direct message to Melanie Sumner.
The author explains that, in most cases, function arguments should not be optional. In the rare occasion that it is optional, the Javascript language has optional chaining so we can deprecate the usage of tryInvoke.
Derek Gray (@derekwsgray) encountered a business requirement to provide an Undo/Redo feature in a large Ember app. While gradually updating the app to rely on ember-orbit, Derek recorded tips and changes that you will want to consider when you are in a similar situation. Perhaps you will want to leverage other Orbit features (offline cache, transaction logs, background sync strategies).
The blog post provides:
A list of introductory reference materials
How to allow ember-data and ember-orbit to coexist during migration
How to convert ember-data syntax to ember-orbit
We encourage you to check it out and bookmark the link for future reference!
Ricardo Mendes (@locks) in a blog post, goes through the challenges of building apps using classic Ember components and how Glimmer components address them in a modern, clean way. He goes through building Glimmer components from the viewpoint of classic Ember Components. Improvements include:
Glimmer components use native class syntax and do not extend from EmberObject.
Separation of internal state (properties) and external state (arguments).
HTML-first approach makes for a much simpler API surface.
With improvements such as Native Class Syntax, reducing the API surface, and removing framework gotchas like components adding a default <div> around itself provide the ability to reason about the code locally instead of having to rely on the framework knowledge.
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! 🤞