Back in Aug 26 2015 I posted hopefully about the future of web components in Netflix’s Digital Supply Chain. Since then, all fans of the open web have sided with expediency (and therefore React). You can’t stop the mob’s forward march :). Seeing this coming a year ago, I offered Reactive Elements as the virtually cost-free way to bridge the gap ‘tween React and WC, but interop be damned I guess. The group recently had the joy of bringin’ on Tim Branyen from Bocoup—I hope he’ll help folks “see the light”.
As a side note, I’m developing an answer to one of the main open questions. It’s tentatively called Stylescope and serves as a more traditional (but versatile) companion to ModCSS.
ModCSS assists in modularizing styles by enabling CommonJS-like system to pull in Stylus or CSS files as JSON. The primary use so far in Netlix has been assigning to style in JSX.
Stylescope assists in modularizing styles by enabling one to reliably assign style information to an HTMLElement with 100% security that style won’t affect other elements. The pain of an Enterprise front-end developer attempting to add their own flair to a large CSS cascade is traumatizing and I’m here to prevent others from experiencing the same fate :)
Stylescope is early alpha, but it already works well for one-deep style trees in its Mochify tests. For next steps, I plan to demonstrate distributing and sharing styles via ModCSS and then consuming them in a Web Component via Stylescope. I’ll need to locate a module containing all viable HTML tags to implement parent-child style relationships in Stylescope…
Some folks in Netflix’s Digital Supply Chain have agreed that Web Components are a good interop container. I also (perhaps controversially) believe people should also use WCs whenever effective as it’s simply native to the web. Telling someone to not use WCs is like telling someone not to use document.querySelector or Array::forEach. The war against React zealots is treacherous and ongoing.
I was at a company called Amco a few years ago. It was my first Senior position outside of running my own company. The VP of Engineering there (Jason King) taught us something he called “asynchronous communication”. It’s the concept that sharing information globally and digitally is more efficient than individually & physically. By sharing with more people, and in a way that they can respond as convenient to them, you optimize the quality and quantity of feedback you can receive. When everyone does this, it make everyone better. It definitely made me better and I think Netflix will get better if we all start practicing asynchronous communication. Ways we can do this are:
Remote pair programming tools that support multiple people
Call me crazy, but viewing images from a CLI app can be pretty cool. Yes, we have the ancient art of ASCII (and that will not go away) but why not use a real image in some cases?
Now the nice folks behind iTerm 2 have made that possible in versions of iTerm post-2.9. I do not claim this has not been done before, but I am unaware of this capability in Terminal. Anyway, on to the goods:
There is no tracking information for the current branch.
I am too! So I searched the OhMyZSH repo for set-upstream-to and re-discovered this command: ggsup. Calling ggsup with the name of the branch you want to track will get you to the place you want to be. W00t!
To recap. Call
...to track `master`. Call
ggsup dev ``` …to track dev. Get trrrrrracking team!
The state in which all resistance to progress is non-present. Easy flow of information from subconscious to conscious mind, characterized by clarity of purpose, speed of achievement and the full architecture of your project being held intact at the front of your mind. “Peak zone” is typically sustainable for 2-4 hours but takes 15-30 minutes to “boot up” into and is easily knocked down like a deck of cards if the “zonee” is disturbed by someone outside the zone.