Performance + BP + Interop IPR
Performance
Performance High-Levels
- Keeping IO Async
- Keeping request time < 200ms
Performance Q3 Dev Action
- TASK: Add an artillery profiling test
- TIME: 2-3hours
- (Ben task) -- add script to measure artillery coverage (2d)
- (Ben task) -- add bunyan framework to app (3d)
Performance Q3 Goal
- Have 20% of routes covered by artillery
Best Practices
BP: Server
- Continue the TypeScript Migration
- Last Quarter, we moved from ~5% TS to ~18% TS coverage in the app.
- Goal: Reach 30% TS coverage in Q3
- (Ben task): Improvements to tyranid-tdgen (2d)
BP: Server Actions
- All new logic files should be in TS
- Continue migration of individual JS files to TS
- Areas to tackle: lots of controllers + services on the server are still in JS
- Dev Time: varies, between 5 minutes - 2hrs depending on complexity of file. Each dev should shoot for a 0.5% increase in TS coverage each refactor monday.
BP: Server Actions (continued)
- Usage of any only when manipulating completely arbitrary objects, otherwise should use existing or new interface
- Prefer simple functions to classes / interfaces to types.
- Add doc-block comments for functions / interfaces
BP: Client
- Same TS percentage, and new file policy as server
- Migrate any existing JS components / directives to TS
- Goal: (same TS percentage as mentioned in server)
- (Ben task): Client-side tyranid-tdgen improvements (2d)
- Optional: Begin view migration for React
- (more info on this to come on monday BB)
BP: Client Action
- Migrate a JS angular component to TS
- Dev Time: ~1-2hrs
Interop
Interop: High-Levels
- Keeping Tyranid Schema Clean + Documented for public api.
- Keeping code isomorphic if possible.
- Using open standards where possible.
Interop: Dev Actions
- Add documentation on tyranid models (notes for properties).
- Time: ~20minutes.
- (Ben Task) -- add tyranid logic for measuring documentation coverage. (2d)
- (Ben Task) -- add JSONSchema generator for tyranid (3d)
Interop: Goals
- Have 50% of collections properties documented.
Performance + BP + Interop IPR
Ben's areas IPR - Q3
By Ben Southgate
Ben's areas IPR - Q3
- 845