I only want to offer a personal note of caution around web components. For the granular, UI "atoms" I think they are a great solution. But composing whole UI with nested components and layout-level components is less proven. The neat encapsulation you get with web components is its own kind of sugar, and without checks and balances you can make what seem like very reasonable decisions that wind up duplicating platform functionality and ending with a net loss in your ability to reason about layout and rendering. Also, a very domain-specific codebase that represents a steep learning curve for a new developer.
/Sam On Fri, Nov 20, 2015 at 10:16 AM, David Flanagan <[email protected]> wrote: > I think that we should focus on web components instead of NGA during the > 2.6 release cycle. This is not an argument against NGA, but it is an > argument that we'll have more impact working on web components right now. > > These are my reasons: > > 1) We don't have enough engineers to focus on both for 2.6, especially if > we are also concurrently working on initiatives like B2GDroid, FlyWeb, Pin > the Web, telemetry, Alopex and so on. > > 2) We've been using web components like gaia-header for two releases now, > and the platform seems ready enough that we can make good progress on this. > > 3) With NGA we've only done the easy stuff (front-end/back-end split) so > far. We're still waiting on platform support (or better platform > performance) for service workers, prerendering, the new security model, and > for converting APIs to work in worker contexts. So these important parts > of the architecture have not yet been validated. If we push ahead with NGA > now we will be on the bleeding edge of the platform and will suffer the > bugs and performance problems that entails > > 4) Mozilla engineers understand modularity and its benefits. Given the > opportunity to refactor our apps, I'm confident that we will all move > toward a separation between front-end and back-end, even without the NGA > prescription. In the process of modifying our apps to use web components > instead of the current building blocks, I would like to encourage teams to > create higher-level app-specific web components as needed, and I think that > this kind of refactoring will offer many of the same modularity benefits as > an NGA-focused frontend/backend refactoring. > > 5) NGA is an investment in our current set of apps, at a time when we > don't know what apps will be needed in the next product we try to launch. > But working on web components is an investment in the OS itself: we'd be > creating the building blocks for future apps, and working toward the > platform portability goal that Ari outlined recently. > > So what do I have wrong here? I think points #1 and #5 are my strongest > arguments. I'm less confident about #2 and #3. Does anyone want to argue > that web components are ready to be used? Or that we do have enough > engineers to work on both? Or that NGA is a more strategic and impactful > thing to be working on in 2.6? > > David > >
_______________________________________________ dev-fxos mailing list [email protected] https://lists.mozilla.org/listinfo/dev-fxos

