For my current project, we’ve been using AWS Lambda as our backend. There are a handful of nice tutorials for connecting to an RDS database from an Lambda function. But I couldn’t find many for deploying new code along with a database migration.
Managing timers in React Redux is often tricky. While trying to implement some features that required a lot of timeouts and time measurement of user interactions, we ended up using a simple approach for timers that I hadn’t seen before, so I thought I’d document it here.
When developing a Slack bot or some other webhook, an HTTPS connection is often required. This can make it hard to develop and test on your local machine. For one project, I found myself pushing code to a test server every time I wanted to run it, which worked, but was annoying. So I went […]
I’ve often wanted a way to easily start and stop a group of processes from the command line. My most common use case is wanting to run multiple servers and/or clients at the same time, quickly starting and stopping many processes during development.
In one of my previous posts, I wrote a queue implementation that would let you provide a timeout to the pop method. Unfortunately, it has a bug caused by spurious wakeups. Here is the fix along with an explanation of how you can avoid this sort of problem in the future.
websocketd may be my new favorite UNIX utility. It’s extremely useful for taking the ugly output from a script or utility and turning it into a chart or animation, or even adding a nice interactive UI. And it does it all without changing any code or adding any dependencies to your script or utility.
When using Node.js, you should never mix promises and callbacks. It’s a recipe for confusion. The problem is pretty obvious in hindsight, but it sure threw me for a loop the first time I ran into it.
My PC wouldn’t boot, didn’t even make a sound. I traced the problem down to a particular mounting screw, but there was nothing to indicate that this screw was problematic. It was a perfectly fine screw, correctly installed in the right place. How did I figure this out? Debugging!
I had the opportunity to get a free ReSpeaker core during their Kickstarter in exchange for an honest review—an offer I couldn’t pass up.