Echo JS 0.11.0

<~>

tracker1 comments

tracker1 2304 days ago. link 1 point
Would love to see a comparison of strapi vs. GraphQL options.
tracker1 2304 days ago. link 2 points
Not seeing much of a real benefit over just aliasing some React.createElement options...
tracker1 2305 days ago. link 2 points
Most of this advice is not just for Angular development.  It's also a bit thin...

Suggested reading from Steve Souders, some of this is a bit older, but most still applies. Some of the DOM quirky issues are significantly different, but general optimizations and suggestions around actually testing for performance metrics apply.

High Performance Web Sites: https://www.amazon.com/gp/product/0596529309

Even Faster Web Sites: https://www.amazon.com/Even-Faster-Web-Sites-Performance/dp/0596522304

Steve Souders' Blog: https://www.stevesouders.com/blog/

Beyond this, there's also the issues of perceived performance, you can actually be too fast, when people expect a spinner or loading screen, they may not believe something is actually done.

There are a lot of counter-examples for performance in design.  It's a matter of actually developing for some optimal paths without investing too much time before you need to.
tracker1 2306 days ago. link 1 point
NOTE: make sure to encrypt your app keys for anything public facing, or limit their visibility to only CI/CD platforms.  For travis, on open repos, definitely don't accidentally commit this in the open.

It looks like a homegrown CI/CD type agent and not a bad idea.
tracker1 2306 days ago. link 1 point
Auth error on demo site like: OAuth Forbidden - You are not a sandbox user of this account...
tracker1 2308 days ago. link 1 point
> We can also attribute the origin of this “JS revolution” to the release of ECMAScript 6

I'd disagree with this one.  I feel that node+npm is the real launching point of the "JS revolution."  Because it did something that hadn't come before.  It allowed for modular, reusable code.  At least once bundlers were available on the platform, AMD options and Browserify in particular.  Which pre-dates and informs ES6 Module syntax, which still doesn't have very broad adoption.  Though a lot of source uses ESM style while still relying on node/cjs convensions, which will probably adapt over time.

I think it largely comes down to a few different bits.  Interest in more interactive engineering efforts on the client-side combined with in-language tooling that Node itself brought.  Like a blacksmith, JS developers can actually make their own tools.  npm allows unlimited sharing of these tools for reuse and optimization.  Github rised around the same time and allowed for greater collaboration than ever before.  In the end it has been a near perfect storm, so to speak.  This has all lead to JS as "the one language to rule them all."

JS is not the best language at anything imho.  But it's good enough for almost everything and thanks to npm and node, it's often the fastest to done option.  These are the reasons why I will almost always push for the first version of everything be in JS/Node.
tracker1 2308 days ago. link 1 point
Absolutely... I'm actually surprised more service/database open-source software doesn't start off as AGPL for those reasons (re: MongoDB and Redis changes).  In the end there are pluses and minuses around it all.

Libraries, and especially connecting client libraries for say databases, I feel very differently about and favor MIT or ISC (I like WTFPL, but lawyers don't like the implied lack of warranty and prefer explicit declaration.)
tracker1 2309 days ago. link 1 point
It isn't necessarily a negative, just pointing it out.  A lot of devs work for companies that don't allow (A)GPL, or at least severely limit AGPL specifically depending on the environment.  Was just pointing it out. :-)
tracker1 2310 days ago. link 1 point
With Redux (flux pattern), it's often in the context of a 1-way UI rendering/updating process, which simplifies larger applications a lot.

Also, what is described by handlers isn't so different in practice than more complex action creators that dispatch a new object that should replace the old in the state tree.  And while not expressly immutable, shallow clones are often the preference.

The pattern described in the article in practice takes a *LOT* of coordination for anything beyond trivial.  Also, at scale encapsulation (OO) patterns, especially with inheritance act a lot slower.  You're actually better off having an action library that acts on objects over objects that act on themselves as a result (such as a game, for example).

It's worth looking at video game development, even if you aren't writing games for some examples here.  Of course as with anything else, you will find more and less elegant designs in practice.
[more]