2017-11-30 Meeting Notes

Date

 Goals


TimeItemWhoNotes
10 minStatusEveryone

BostonJS debriefAri (optionally Tyler & George too (wink))A handful of us attended the BostonJS meetup on Tuesday – let's discuss what we learned! Notes from the main talk (Scaling the Frontend) are available here https://talks.phoenixmatrix.com/micro-apps/#/

WebpackAriWebpack is hard. Why? What's difficult and scary about working with Webpack configs? How can we build up institutional knowledge? Not just "what it is and how it works," but "how can I make it do what I want"?

Bootstrap, popper, & requirejsHarry

Notes

Scaling Frontend

  • Given the current structure of edx-platform and edx engineering, micro applications probably won't work for us
  • Program dashboard microservice didn't work out
    • too much integration pain
    • easier to just do everything in studio
  • applications being independently deployable/releasable only helps if the monolith can pick up those dependencies immediately
    • when we release microapps to npm, we need to bump version in edx-platform
    • platform's releases are still gated by other teams' dependencies....

Bootstrap & Popper

  • Tests sometimes need to pull in pre-dependencies
    • Bootstrap depends on Popper existing in a page context
    • Can we specify Popper as a global top-level dependency for tests (like jquery)?
  • Jest handles this explicitly – can Karma or Jasmine?
  • The next Bootstrap release might handle this

Webpack

  • Why is it hard to work with?
    • What to Google when something doesn't work?
    • Documentation tricky
    • So many options!!
    • Errors are not always easy to understand
    • Hard to get it working with legacy code, not many tutorials/docs etc
    • Black box
      • webpack-bundle-analyzer (and similar projects) help you visualize your bundles
    • Dev builds different from production builds
  • But why is it nice to work with?
    • Better than require/gulp/etc (low bar tho...)
    • Extremely customizable (but enough rope to hang yourself...)
    • dev server!!
  • How can we make this less painful?
    • Walk through dev config line by line
    • Good comments in the cookiecutter configs
    • Generator can provide different options
    • Fork CRA?

Action Items