惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

N
News and Events Feed by Topic
GbyAI
GbyAI
博客园 - Franky
宝玉的分享
宝玉的分享
Blog — PlanetScale
Blog — PlanetScale
Google DeepMind News
Google DeepMind News
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
人人都是产品经理
人人都是产品经理
Microsoft Azure Blog
Microsoft Azure Blog
The Register - Security
The Register - Security
腾讯CDC
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
I
InfoQ
The Cloudflare Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Engineering at Meta
Engineering at Meta
MongoDB | Blog
MongoDB | Blog
有赞技术团队
有赞技术团队
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
F
Full Disclosure
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Vercel News
Vercel News
博客园 - 【当耐特】
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
S
Schneier on Security
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Project Zero
Project Zero
量子位
M
MIT News - Artificial intelligence
Stack Overflow Blog
Stack Overflow Blog
C
Cyber Attacks, Cyber Crime and Cyber Security
美团技术团队
Attack and Defense Labs
Attack and Defense Labs
C
Cybersecurity and Infrastructure Security Agency CISA
T
The Blog of Author Tim Ferriss
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
T
Troy Hunt's Blog
Google Online Security Blog
Google Online Security Blog
罗磊的独立博客
P
Proofpoint News Feed
Schneier on Security
Schneier on Security
Spread Privacy
Spread Privacy
S
SegmentFault 最新的问题
L
LINUX DO - 最新话题
Simon Willison's Weblog
Simon Willison's Weblog
爱范儿
爱范儿
博客园 - 聂微东
A
About on SuperTechFans
PCI Perspectives
PCI Perspectives
D
Docker

Ember.js Blog

Ember 7.0 Released Announcing the Official TypeScript Types Public Preview Accessibility Working Group Update The 2020 Ember Roadmap Countdown to The New Year - Built-in Addons Countdown to The New Year - Ember Exam Countdown to The New Year - Ember Code Snippet Countdown to The New Year - Ember Changeset Countdown to The New Year - Ember In Viewport Countdown to The New Year - Ember CLI Update Countdown to The New Year - Ember Template Invocation Location Countdown to The New Year - Ember CLI TypeScript Countdown to The New Year - Ember Bootstrap and Ember Paper Countdown to The New Year - Ember CSS Modules Countdown to The New Year - Ember Mapbox GL Countdown to The New Year - Ember Shepherd Countdown to The New Year - Ember Template Lint Countdown to The New Year - Ember Composable Helpers Countdown to The New Year - Ember Leaflet Countdown to The New Year - Ember Intl Countdown to The New Year - Ember Test Selectors Countdown to The New Year - Ember Power Select Countdown to The New Year - Ember Simple Auth Countdown to The New Year - Ember SVG Jar Countdown to The New Year - Ember Page Title Countdown to The New Year- Ember A11Y Testing Countdown to The New Year - Ember Angle Brackets Codemod Countdown to The New Year - Ember CLI Sass Countdown to The New Year - Ember Animated Countdown to The New Year - Ember Auto Import Countdown to The New Year - Ember Concurrency Countdown to The New Year - Ember Tether Countdown to The New Year - Ember Modifier Countdown to The New Year - Ember CLI Mirage Countdown to The New Year - Ember Sortable Coming Soon in Ember Octane - Part 5: Glimmer Components Coming Soon in Ember Octane - Part 4: Modifiers Coming Soon in Ember Octane - Part 3: Tracked Properties Coming Soon in Ember Octane - Part 2: Angle Brackets & Named Arguments Preview Weekend: 2019 Ember Community Survey Coming Soon in Ember Octane - Part 1: Native Classes First Annual DecEmber Event! 2018 Ember Community Survey 2017 Ember Community Survey Announcing The Glimmer 2 Alpha Upcoming deprecation of baseURL in Ember CLI 2.7 2016 Ember Community Survey Announcing Ember Core Team Face to Face, January 2016 Ember.js 1.13.0 and 2.0 Beta Released Another Ember 2.x Status Update Ember.js 1.12 and 1.13 Beta (Glimmer!) Released Ember.js 1.11.1 Released Ember.js 1.11.0 and 1.12 Beta Released Ember.js 1.10.0 and 1.11 Beta Released Compiling templates with Ember 1.10 Core Team Meeting Minutes - 2014/08/01 Core Team Meeting Minutes - 2014/08/14 Core Team Meeting Minutes - 2014/09/12 Cleaning Up Github Issues Core Team Meeting Minutes - 2014/07/11 Core Team Meeting Minutes - 2014/07/25 Core Team Meeting Minutes - 2014/06/13 Core Team Meeting Minutes - 2014/06/20 Core Team Meeting Minutes - 2014/06/27 Core Team Meeting Minutes - 2014/06/06 Core Team Meeting Minutes - 2014/04/25 Core Team Meeting Minutes - 2014/04/04 Ember 1.5.0 and 1.6 Beta Released Core Team Meeting Minutes - 2014/03/07 Core Team Meeting Minutes - 2014/03/14 Core Team Meeting Minutes - 2014/03/21 Core Team Meeting Minutes - 2014/02/28 Core Team Meeting Minutes - 2014/02/21 Core Team Meeting Minutes - 2014/02/14 Ember 1.4.0 and 1.5 Beta Released Core Team Meeting Minutes - 2014/01/27 Core Team Meeting Minutes - 2014/01/31 Core Team Meeting Minutes - 2014/02/07 Core Team Meeting Minutes - 2014/01/17 Core Team Meeting Minutes - 2014/01/03 Ember 1.3.0 and 1.4 Beta Released Core Team Meeting Minutes - 2013/12/20 Core Team Meeting Minutes - 2013/12/06 Ember 1.2.0 and 1.3 Beta Released Ember 1.1.2 Released Ember 1.1.1 and 1.2 Beta Released Ember 1.0 Released Ember 1.0 RC8 Released Ember 1.0 RC7 Released Ember 1.0 RC6.1, RC5.1, RC4.1, RC3.1, RC2.1 RC1.1 Released Ember 1.0 RC6 Ember 1.0 RC5 Ember 1.0 RC4 Ember 1.0 RC3 Announcing the Ember.js Security Policy Ember 1.0 RC2 Ember 1.0 RC Ember 1.0 Prerelease 2 Ember 1.0 Prerelease
The Ember Times - Issue No. 141
2020-03-27 · via Ember.js Blog

👋 Emberistas! 🐹

Yehuda's Octane Tutorial 🔥, a quick tip for refactoring your templates 📑, dive into angle and curly bracket invocations 🔍, easier porting of websites with Percy ✨, Feeder Corona Dashboard 📰, track JavaScript's built-in classes 💯, Ember autostash modifier 💾, read about how to use a ember-template-lint rule from an addon ✅, decorator positioning now enforceable ↕️, and last, but not least, stand alone EmberConf 2020 videos are out 🎥!


Yehuda's Octane tutorial 🔥

There's an awesome new Octane tutorial in town 🤠 and it's written by none other than our very own Yehuda Katz (@wycats)!!!

In the tutorial you'll build the schedule page for a conference like EmberConf. It feels like just the right thing to build after our amazing virtual EmberConf 💙💚💛💜🧡.

The first part in this tutorial, Let's Go, begins with something that not all JavaScript tutorials cover, HTML and CSS, using CSS Grid and Flex. You'll learn how to go from mocks to a deployed app in very little time.

The second part of the tutorial, Components, is also out and it covers refactoring out some of the HTML duplication. It's a great introduction to how you can use components and lists to reduce repetition.

So far there are 7 posts planned:

  • Let's Go
  • Components
  • Pulling Out Data
  • Airtable Time
  • Cleaning Things Up
  • Adding More Pages
  • Polishing: Server-Side Rendering, Prerendering and Code Splitting

So be on the look out 👀 for more in this very helpful new series!


A quick tip for refactoring your templates 📑

Abhilash L Ramesh (@abhilashlr) wrote a small and clear blog post with actionable tips to make your Ember templates cleaner. So if you have complex if-else logic in your template that you would like to make clearer, this blog post could help you out.

He also added some extra bonus tips, but no spoilers here, head to the blog post to check them out!


Ember templates: classic vs. angle bracket syntaxes 🔍

From Yehuda and Abhilash's blog posts, you got to see a bit of how templates work. But we've got one additional resource for you!

@0xADADA and Dan Freeman (@dfreeman) did a deep-dive into classic and angle bracket invocations. Please have a look to learn how these invocations handle attributes and arguments differently.


Tech stack modernisation without breaking things with Percy ✨

You might already be a regular visitor of the Ember Guides. But did you know, that the #1 learning site for Ember developers used to be powered with Ruby and Middleman? After plenty of contributions by many different community members, the app has been modernised with an Ember tech stack to make it much easier for new contributors to work on the project!

You might not have noticed the switch of tech stacks under the hood of the Ember Guides, and this is exactly how it should be! Want to learn more about how this was done? Be sure to read Chris Manson's (@mansona) latest blog post about the process behind the seamless Emberification of the Guides (and the Ember website): it highlights how the visual regression testing tool Percy can help developers to bootstrap their efforts of porting a website to a new tech stack without breaking it.

You can read the full blog post on the simplabs blog.


Feeder Corona Dashboard 📰

Feeder built a COVID-19 aka Corona Dashboard in Ember, but for incoming news on the subject such as news media, government updates, research, social media, and travel advice. Check it out here: feeder.co/reader/corona.

Feeder is a news manager that tracks any online source you choose and bundles it into an easy-to-digest reading experience. The Corona Dashboard is built using Feeder's regular stack that ingests public RSS feeds and filters on a set of keywords.

Erik Rothoff Andersson (@erkie) shares Feeder's experience with Ember with the Times:

We started at Ember 2.10 and are now at Ember 3.14 and counting. It's so cool that the upgrades help to educate us how to become better developers. One striking thing is the a11y template linting rules that promote best practices. I had no idea about those things, but now I do! So thanks Ember.

We've used pods since the start, but I got tripped up by all the tabs in Atom being called component.js, or template.hbs, which is why I developed the Atom addon Ember tabs. Was really happy when scrolling through ember-cli docs one day and found it mentioned here. So far I haven't kept up to date with the module unification, but it seems promising!

TypeScript is the single biggest innovation in many years, and the ember-cli-typescript addon has been an amazing bridge. It's great to see that a lot of Ember internal packages are now written entirely with TypeScript.

We render a lot of components on screen, so performance has been something we've invested a lot of time in. Switching to Glimmer components for high volume components we were able to reduce render times on hotspots by ~20%.

We enjoyed learning about Ember at Feeder and hope that you find the Corona Dashboard useful in these hectic times! 💛


tracked-built-ins v1 released! 💯

At his EmberConf talk, "Autotracking: Reactivity and State in Modern Ember," Chris Garrett (@pzuraq) announced a new addon to help you track JavaScript's built-in classes.

With tracked-built-ins, your app can automatically react to changes in Objects, Arrays, Maps, Sets, WeakMaps, and WeakSets.

import { tracked } from 'tracked-built-ins';

class Foo {
  @tracked value = 123;

  obj = tracked({});
  arr = tracked([]);
  map = tracked(Map);
  set = tracked(Set);
  weakMap = tracked(WeakMap);
  weakSet = tracked(WeakSet);
}

Give it a try today! Your feedback will help improve autotracking in Ember. 💞


Ember autostash modifier 💾

New modifier alert 🚨! Preston Sego (@NullVoxPopuli) has created ember-autostash-modifier that stashes changes, binds those changes to a key, and restores those changes based on that key!

This modifier is useful for chat apps, where you'd want to persist incomplete messages on a contact's page while the user navigates between other contacts before finishing and submitting a message, or where you want to bind component data based on the URL. Check out this demo of the modifier in action.

It's so nice to see the eco-system of Ember modifiers continue to grow 😀, we can't wait to see what the awesome folks in the Ember community come up with next!


Blog post: ember-template-lint rule from addon ✅

Mehul Kar (@mehulkar) wrote a blog post on how to ship and use an ember-template-lint rule from an addon.

First up, the Plugin API provides an overview on the ember-template-lint plugin system including where to add them or it can be the root of the repo as the blog shows. In order to test your template lint rule, the blog post outlines how to use Jest and configure it to run tests in the node-tests directory. Finally, in order to use the plugin in an app we would need to add the plugin and enable the lint rule in .template-lintrc.js (like the example below).

module.exports = {
  plugins: ['my-addon-name/template-lint-plugin'],
  rules: {
    'the-rule-name': true
  }
}

To follow the detailed steps please read the full blog post and have a powerful way to encourage a certain way of programing today!


Achieve consistent decorator positioning with a new eslint plugin ↕️

Ever had to put up with inconsistent decorator positions in pull requests, because there wasn't a lint rule for that? Now there is! 🎉 eslint-plugin-decorator-position provides some configuration with some recommended defaults to help your project achieve that last bit of consistency.


Stand alone EmberConf 2020 videos are out 🎥

If you missed part or all of the ✨✨amazing EmberConf 2020 ✨✨, now's your chance to catch up on all the great talks à la carte! While the live streams have been available since the days they were streamed, now you can watch them as stand alone talks.

If you want to re-live some of the best moments, or watch them for the first time, you can find the complete library of videos 📼 available for your viewing pleasure on YouTube. Be sure not to miss the BonusConf sessions which are included in this list!

Again, don't forget to check out all the related resources for the talks in the conference notes by Alex DiLiberto (@alexdiliberto).

Also one more reminder! We have a request for those of you who attended EmberConf 2020:

Tell us about someone new that you got to chat with at the virtual conf!

Let us know about your answer to this question either by tweeting us via Twitter using the hashtag #EmberConFriends or as a message on the Ember Discord in the #support-ember-times channel. We will raffle an exclusive EmberConf retro sticker set among all story writers by April 6, 2020. We're looking forward to hear from you and happy catching up on virtual EmberConf!


Contributors' corner 👏

This week we'd like to thank @pzuraq, @locks, @rwjblue, @btecu, @kratiahuja, @Gaurav0, @kturney, @chancancode, @leondmello, @zapalagrzegorz, @monitron, @MelSumner, @jtappa, @brentzc, @skaterdav85, @NullVoxPopuli, @rajasegar and @xg-wang for their contributions to Ember and related repositories! 💖


Got a question? Ask readers' questions! 🤓

Office Hours Tomster Mascot

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! 🤞


#embertimes 📰

Want to write for the Ember Times? Have a suggestion for next week's issue? Join us at #support-ember-times on the Ember Community Discord or ping us @embertimes on Twitter.

Keep on top of what's been going on in Emberland this week by subscribing to our e-mail newsletter! You can also find our posts on the Ember blog.


That's another wrap! ✨

Be kind,

Anne-Greeth van Herwijnen, Preston Sego, Jared Galanis, Isaac Lee, Chris Ng, Jessica Jordan, Erik Rothoff, Amy Lam and the Learning Team