ChatGPT: please write a blog post on the perils of LLM misuse from the perspective of a crotchety tech-skeptic. Incorporate the theme 'Invent the disease and you can sell the cure.' Add a hopeful reflection at the end so it's not too negative-sounding.
How do you write about optimizing Kubernetes clusters without getting into the weeds? The whole thing is just weeds. Nonetheless, there are things you can do to reduce your kubernetes spend and maintain performance without an advanced degree in Kubernetology, and I'll go over some of those things in this post!
While a few hundred megabytes in an application image seems a small concern in this day and age, when you're running scores or hundreds of instances in a cluster environments such as Kuberenetes, those megabytes start to add up. This can lead to spending more than needed on infrastructure, CI builds taking longer, and performance issues during cluster scaling. Read this post for a few simple…
JSON is everywhere you look these days. The `jq` tool makes it easy to slice, dice, and transform JSON from the command line. It can be hard to map the official manual to real-world applications, so let's look at some practical examples of `jq` and its cousins that handle YAML & HTML!
ES2019 introduced a new way to access the (non-unique) description property of (unique) Symbol objects. As with any new JS feature, every developer's first question is "how can I shoot myself in the foot with this?" Read and find out!
We all want to "improve as we go" when writing code, but how do we do this while also getting the feature development task at hand done and keeping our PRs small?
Frameworks are good when they speed up stuff you already know how to do; if they are just magic incantations and you have no idea what they’re actually doing, that’s when you run into trouble.
Microservices make some tasks easier and introduce some challenges where they didn't exist before. In this post we'll look at sharing sessions across microservices on the `now` platform.
"Bleeding edge" is all well and good, but can't we at least opt-in? Here's one weird trick to bring some transparency into the JavaScript module ecosystem with regard to new language features…
Interactive Debuggers are familiar to every Java developer, but they are much less well known in the JavaScript world. If you're a JavaScript developer who hasn't experienced the power of step-thru debugging, read this post to find out what you're missing!
What if, instead of commenting out or deleting our useful log statements when we're not using them, we could turn them on when we need them and off when we don't? The `debug` module lets us do that-- but how does it work? Let's find out!
What type is this object, what properties does it have, what arguments does this function take... there's a lot I don't miss about writing Java full-time, but boy do I miss this! Can we get these type hints in JavaScript? Let's find out!
The demo-gods are unmerciful and typing is hard with hundreds of people looking on. Learn to write code without writing code and your presentations will go off without a hitch!
LoopBack makes it easy to develop greenfield APIs, but in real business environments, data isn’t always tidy & cooperative. In this case study we'll see what it takes to migrate a complex legacy application to LoopBack.
New language features can make an expression that was cumbersome to write in ES5 easy in ES6, enabling and encouraging the use of this type of expression. We’re going to look at one such case here: how arrow functions make it easier to write higher-order functions in ES6.
Wherein I document my Grunt+github-pages+bookmarklet build which required templating, switching branches, rebasing, commit, and all sorts of craziness.