2017-11-02 Meeting Notes

Date

Goals


TimeItemWhoNotes
10 minStatusEveryone
30 minAsset compilation auditDave OrmsbeeAsset Compilation Audit 2017-11-01
15 minAndy parting wisdom

Notes

Asset Compilation Audit

  • In collectstatic (static_optimize.py) the biggest timesink is the RequireJS optimizer, which can/should be moved to webpack.
  • Lowest hanging fruit?
    • Consolidate JS files across themes
    • Extract and isolate vendor JS
    • Investigate "ideal" Bootstrap CSS compile time
    • Fix Webpack config extraction process. Shared config in a single place for both Django and Webpack?
      • Sticking point here: Studio static files logic/git hash cachebuster
  • Devops motivation (Fred Smith (Deactivated))
    • Green/blue deployments require cookie routing logic around static assets. This can lead to broken CSS, JS, etc.
    • Immediate goal: push assets to S3 at build time, serve from there instead of from the app servers
    • Factor asset builds out of the AMI build process, parallelize asset build with AMI build
    • AMI builds 21 minutes, asset building >50% of that
    • devDependencies vs prodDependencies
    • Duplicate versions of all assets (md5 vs non-md5 filenames)
    • Cloudflare vs. Cloudfront
      • Aggressively cached
      • Sometimes assets 404
    • Can we build/package vendor JS separately, since it changes less frequently?
      • Do we need to build fonts? :x

Farewell Andy

  • Teams work fast but it's hard to make far reaching decisions!
    • OEPs help a lot; formalize process or technology changes
    • Let's write an OEP for decoupled frontend?
    • Another one for isomorphic JS?
  • Constant communication!!!!
    • Don't let people think projects are dead
  • How do we get people to learn stuff? Communicate more often?
    • Devops struggles with this as well
      • Lunch & learns
      • All hands meetings
      • Turnover!!!
    • Support from higher up?

Action Items

  • @everyone: send Dave commands you use in day to day development.
  •