Angular and React teams looking to collaborate
The Angular and React teams have met up to discuss how they can work together on similar problems they’re facing. But not everyone is happy about the need to reinvent working tools rather than sharpen them.
Show and tell
According to Minar, the reason behind the build was to “provide a good default experience out of the box”, since they believe the JS tools out there don’t do what the Angular team wants. The CLI will look at scaffolding, skeleton files, setting up the build and testing environments as well as possibly covering deployment.
Angular are also working with the Ember CLI crew and NPM directly on their decision to standardise the package manager, with Minar saying “the package managers that exist today aren’t good, but NPM is the closest of all of them”.
News about a new CLI build isn’t exactly everyone’s cup of tea and users on Hacker News feel a bit weary about “the need to reinvent the incredible tools that we have already instead of iterating and improving them”.
Sharing performance tips
Both teams freely demonstrated the work they’ve been doing and were able to compare what they need from each feature or tool. In Brad Green’s meeting minutes, performance measurement tooling and techniques were mentioned via Benchpress, which is a framework for E2E performance tests.
When looking at measuring performance in a predictable way, Minar explained that as micro-benchmarks weren’t very useful for framework code, the Angular team tried moving to macro-benchmarks:
We got close on a first version of Benchpress that was a runner that executed instructions in your app and measured the timing. But we had variable results. With Chrome canary, we could run GC and approximate how much garbage was created/collected on each pass. This got us excited. Wasn’t perfect, was Chrome-only, etc. Also, having it running in the page made things difficult.
We now use Webdriver to control the browser.
On the React side, Lee Byron expressed their team’s interest in testing the React internals and how they perform, as opposed to the browser front-end in the way that Angular use their build system to run comparisons with previous builds.
While Byron shared that React aren’t doing anything yet about locking down the kernel or turning off extensions, the teams agreed that performance was a particularly good area to collaborate on.
This isn’t the first time the teams have met. The Angular gang made their way to React.js Conf at Facebook in January, and both parties have expressed their desire to work together previously.