# UI

## Optimistic UI

Why? You have 100ms to respond to user input before they notice a lag. [RAIL](https://developers.google.com/web/fundamentals/performance/rail?hl%3Den%23response_respond_in_under_100ms)

How:

* [https://www.smashingmagazine.com/2016/11/true-lies-of-optimistic-user-interfaces/](https://www.smashingmagazine.com/2016/11/true-lies-of-optimistic-user-interfaces/)
* UX: [https://uxplanet.org/optimistic-1000-34d9eefe4c05](https://uxplanet.org/optimistic-1000-34d9eefe4c05)
* Meteor: [http://dev.apollodata.com/react/optimistic-ui.html](http://dev.apollodata.com/react/optimistic-ui.html)

## Observer model in Angular

* custom subscribe method in service
* RxJS
* event emitter: [http://stackoverflow.com/questions/36076700/what-is-the-proper-use-of-an-eventemitter](http://stackoverflow.com/questions/36076700/what-is-the-proper-use-of-an-eventemitter)
* store: base-store.ts
* angular event: [http://stackoverflow.com/questions/34700438/global-events-in-angular-2](http://stackoverflow.com/questions/34700438/global-events-in-angular-2)
