Bytes #58 - not here to make friends

not here to make friends

Issue #58.July 26, 2021.2 Minute read.

Yes, we've been waiting around for the new Kanye album to drop, same as you. But in the meantime, we made you some content -- and unlike Ye, we're right on time.

This week, we've got a new GraphQL meta-framework, a major release from a Node-based programming tool, and visceral childhood flashbacks fueled by copious amounts of Mountain Dew [not sponsored].

Welcome to issue 58.


Look at this Graaaph

Envelop -- The new WordPress of GraphQL?

The Guild just launched Envelop, its open-source JavaScript library for customizing the GraphQL execution layer with a brand new plugin system. It's not a GraphQL server itself, just a wrapper on top of the GraphQL engine.

How it works: Envelop provides you with a low-level, hook-based plugin API. By combining plugins (and/or creating your own), you can essentially build your own GraphQL framework (or at least extend an existing one however you want).

Let's take a closer look:

  • Plugin-topia -- These plugins are small, reusable pieces of code, that can be easily shared as NPM packages or inlined within your codebase. Envelop already has plugins for easily adding caching, tracing, logging, authentication, error handling and more.

  • Flexible -- The plugins work with any HTTP server and any GraphQL schema, so you can easily extend the functionality of whatever framework or server you're using (and avoid vendor lock-in).

  • "Babel for GraphQL" -- Envelop also allows developers to easily add new features as plugins for the GraphQL engine, not just features that come on top of GraphQL.

Bottom Line: The Envelop creators say their goal is to build a better foundation for a GraphQL ecosystem that's been "stuck and fragmented" for too long. We'll be interested to see how fast this Choose-your-own-GraphQL-adventure catches on, but it does have a few well-known frameworks (including RedwoodJS) on board already.

App sumo

The giant check makes it official [Sponsored]

AppSumo wants to pay you for your side project

Building a side project is fun. Marketing your side project sucks.

But thanks to AppSumo, it's never been easier to turn your side project into your own personal cash cow -- without worrying about the marketing.

That's because they've got an online marketplace where more than one million founders and entrepreneurs go to buy digital products like SaaS apps, template libraries, and ebooks every month.

And right now, AppSumo's so desperate to get new products in front of their hungry audience, that they'll pay you a bonus of 500 bucks after you get your first ten sales on their platform.

And with all those sweet side project dollars coming in, imagine how much you'll be able to donate to good causes like Michael Scott's Dunder Mifflin Scranton Meredith Palmer Memorial Celebrity Rabies Awareness Fun Run Pro Am Race for the Cure.

Code red

The last thing you remember seeing before blacking out at your 13-year-old birthday party

Node-RED 2.0 can help you build a better smart toaster

The main focus for this Node-RED 2.0 release was dropping support for old versions of Node.js and making some other major internal dependency updates. Coincidentally, I did my own "major internal dependency update" when I quit caffeine (again) last week.

Wtf is Node-RED? It's a flow-based programming tool that's built on top of Node.js and is part of the OpenJS Foundation. And it's an easy, low-code way to create event-driven apps with a browser-based flow editor and a text editor (so you can write custom JavaScript functions if you want).

When would I use this? Node-RED is super popular in the IoT space because of Node.js's event-driven, non-blocking model. This makes it perfect for integrating hardware devices (like a Raspberry Pi) with cloud-based systems, databases, and most APIs.

What else is new in v2?

  • New runtime features -- like a new CLI command node-red admin init that helps you generate a settings file by asking you questions about how you want to configure your environment

  • New editor features -- like support for the Monaco Text Editor and a new selection of CSS variables that make for a much richer code editor

  • New flow features -- like the newly-added Flow Debugger and Flow Linter

Side project idea: Create a Node-RED-Code-RED smart fridge that automatically plays this Double Barrel Chug Challenge video on the smart fridge display every time I remove a bottle of Mtn Dew Code Red from the inside. So much for the caffeine fast.


2x Sr. Frontend Engineers - React | 100% Remote is looking for two experienced individuals that have a solid understanding of React and want to help design, implement and launch major user-facing features. They are a 100% globally distributed team of ~45 high-performing, happy people that are dedicated to building a product our customers love.

Cool Bits

  1. CalDOM is a new JavaScript UI library that gives you full, direct access to the native DOM while keeping the reactivity.

  2. Alan created Bulletproof React -- a simple, scalable, and powerful architecture for building production-ready React apps that's heavily influenced by the Sia's 2011 banger. Fire away, fire away.

  3. Kacper wrote a fun article on How to use finite state machines in React with some cute cat illustrations.

  4. Svelte Storm is a new Svelte IDE that lets you easily visualize state in your Svelte apps. And the warrior (Rich Harris) whispered back, "I am the Svelte Storm." #Inspiring.

  5. Marcus wrote about three big insights he gained while researching Vue.js accessibility.

  6. There's a new State of Developer Ecosystem in 2021 survey, and JavaScript is (still) the most popular programming language. Tbh, we stopped reading it after that, so I'm not sure what else is in there.

  7. JavaScript debugging is now built directly into VSCode, so we can finally get rid of those annoying browsers once and for all.

  8. Astro (like any good contestant on The Bachelor) informed us all that "they're not here to make friends," when they added a new section to their docs about all the specific ways that Astro is better than every other competing site builder.

One Question Interview

What will building for the web look like in 5 years?

I see a lot, if not all, of the friction of developing and deploying JavaScript going away within 5 years. The 2010s were marked on the JavaScript side by the rise of Node.js and front end frameworks, but in the wake of those evolutions came tons of configuration files and transpilers/bundlers/whatever just to make the JavaScript that we write on our workstations compatible with the Browser.

The 2010s were also marked by public Cloud providers becoming ubiquitous. It's almost impossible nowadays to find a company that doesn't have workloads on either AWS, Google Cloud or Azure (or any combination of those). I think what we're seeing now on both fronts is an emerging focus on developer productivity and ease of use.

There are new tools and frameworks coming out in the JavaScript world dedicated to making the development experience more straightforward and hassle-free, and we're seeing a shift on the Cloud provider scene to products that are easier to use and configure. I see a lot of overlap between these two areas, and I think it'll manifest as less configuration files to write for JavaScript developers so that they can write code that is compatible with the browsers they target out of the box.

In 5 years, I think we'll be able to create a GitHub repository with some frontend and backend JavaScript code that is compatible across many browsers and deployed on the Cloud, all without a single configuration file.

William Perron William Perron is a software engineer on the Deno team who's focused on observability and building large-scale distributed systems. He'll be giving a talk this Thursday called "Deno: Rethinking Server-Side JavaScript."

Join Bytes

Delivered to 105,434 developers every Monday