Richard Clayton

Thoughts on using Kafka with Node.js (node-rdkafka)

Let me start by saying, node-rdkafka is a godsend. When we first started using it, the library was the only one fully compatible with the latest version of Kafka and the SSL and SASL features. I owe webmakersteve and other contributors all a six-pack of beer for making this possible (thank you!!!!).

With that said, I guarantee you . . .

Read More

April 01, 2020

Avoid Synchronous Functions in Node.js

Sync Functions can dramatically slow down your app and they are almost never necessary.


Most synchronous methods in Node.js (statSync, readFileSync, etc.) have asynchronous alternatives (via callback). Using util.promisify can easily make these methods async/await compatible. Using the Promise-based equivalents can greatly speed up your application. In fact, I'd argue there's never a need for the . . .

Read More

Posted in: nodejstypescript

February 29, 2020

A Gentle Introduction to TypeScript

Talk given at Fullstack Talks (NC San Diego) - 02/2o/2020


This information has been updated since the talk (mostly extra info added, some grammar/spelling errors corrected).

Who am I?

  • Principal Software Engineer at Peachjar
  • 3/4 Stack Developer (or Pear-shaped Developer)
  • Former Marine Corps Meteorologist
  • Virgo
  • Foodie
  • . . .

Read More

February 21, 2020

Distributed Locking with Postgres Advisory Locks


Postgres Advisory Locks are a great solution for arbitrary application locks, particularly in scenarios where you are already using Postgres and have a need to block concurrent mutations to a resource (that resource DOES NOT have to be data in Postgres).

Concurrency is hard

We ran into a problem . . .

Read More

February 16, 2020 TypeScript Client

TL;DR - TypeScript Client Gist:

If you are not familiar with WebSequenceDiagrams, it's an excellent tool for creating sequence diagrams for planning software flows. If you are not familiar with sequence diagrams, a quick Google search will . . .

Read More

June 22, 2019

What's Making Me Happy - 01/21/2019

React w/out Redux, Kubernetes Node Draining, and Customizing DataDog

Hey friends, welcome back to WMMH! It's about a month since my last post -- my sincere apologies; work and vacation have sapped my free time. Fortunately, the extra time has given me more things to be happy about!

Over the last couple of weeks, I have been working on various projects up and down the stack. This work included . . .

Read More

Posted in: kuberneteswmmh

January 29, 2019

Kube-Native Workflows with Argo

Stitching Docker containers together to get stuff done fast!

About a month ago, was looking for a tool to help automate some of the analytic jobs our data scientist built in Python. My goal was to automate the following process:

  1. Execute Python jobs that analyze the day's activities, producing a CSV output.
  2. Create a new table in Postgres (that hold the CSV data).
  3. Insert the . . .

Read More

Posted in: architecture

December 20, 2018


This update link alerts you to new Silvrback admin blog posts. A green bubble beside the link indicates a new post. Click the link to the admin blog and the bubble disappears.

Got It!