Photo by Felix Mittermeier from Pexels

By now, we’re all familiar with the TypeScript codebase I use at work. The code relies on a lot of abstraction and I’m getting better at using it without having to figure out how every piece works. But when I notice unexpected behavior, I have to be prepared to use what I know about TypeScript and JavaScript to dig deep into the code. This week, I wrote a configuration that worked just fine in certain circumstances, but threw this error in others:


Photo by fauxels from Pexels

This was a busy week at work, but one where I learned a lot more about the internal workings of our systems than general concepts that I can share. For the first time in a while, I woke up on Saturday morning without knowing what I was going to write about! I was tempted to take the weekend off, but I know myself well enough to realize that if I break my routine I might never come back to it. …


This customer is a churn risk and they’d really like this report ready by the end of the week, can anybody pick up this ticket? Sometimes it’s our turn to say yes to something even though we’d rather not volunteer. If you’ve ever been there, congrats on making it out on the other side.

At work this week, I was the one who grabbed the tricky ticket and thanks to support from some SQL and DB experts on my team, I got the report done. In retrospect, it wasn’t anything too revolutionary, but it might be worth breaking things down…


I tried to get ambitious this weekend, with mixed success. After a coworker suggested I try to turn a commonly used bash script into a simple Chrome extension, I thought it would be a good idea for a blog. I had never attempted an extension before, so I realized that it might be too difficult to complete in one weekend, but at least I could blog about what I had learned.

About 30 minutes into my research, I had a familiar concern (which incidentally has never actually turned out to be legitimate). I was worried that writing about a Chrome…


My experience as a developer has been punctuated by hearing others casually using words or phrases that I didn’t understand. I’ve nodded along with data streams and webhooks, EKS and API, and of course lambda. I remember first hearing about lambda functions when studying Java because “Java only uses methods, not functions…though it has lambdas…but don’t worry about that right now.” Today, we’ll start worrying about that.

The Story of Lambda

A lambda is a Greek letter that sort of looks like an isosceles triangle without a bottom. We can see a few different examples of it in the header image for this post…


Photo by Igor Starkov from Pexels

Here’s another great example of a subject I’ve learned, but don’t frequently use as a tool because I don’t understand it well enough. If you’re a loyal reader, you may remember that I’ve started to work with a new codebase at work (the one that’s written in TypeScript). This code was written to improve some of our existing processes by using templating to make our scripts smaller, more efficient, and easier to predict. So now, instead of writing custom JavaScript, I plug some strings into the framework — awesome!

A big part of my job is finding and parsing strings…


I studied SQL, JavaScript and React at Flatiron School. I studied Java with my friends at BrightCode and my Python basics came from a Udemy course. This set me up well to code in my workplace…until I was exposed to new repos that were built using TypeScript. I’ve been procrastinating digging into the language because it’s somewhat intuitive if you’re experienced with JavaScript and understand strongly typed syntax, but eventually we have to stop glossing over code we don’t understand and actually write a blog about it. So here we are.

Typed JavaScript

We can see it in the image: TypeScript extends…


credit: Pixabay on Pexels

It’s book club week again, so I’ve been working through Chapter 8 of Building Secure & Reliable Systems. I’ve never been a great reader and it’s easy for me to lose focus and find myself having “read” a page without really retaining any of it. To prepare myself for my next group discussion, I’ll do my best to summarize some of the concepts that will help us Design for Resilience.

Resilience describes a system’s ability to withstand attack or failure not necessarily by preventing it, but by building thoughtful contingencies for the inevitable moment of vulnerability. …


Photo by Dương Nhân from Pexels

This week we’ve got another “The Knowledge House made me do it” entry. I had a meeting with a student who was interested in using Firebase to store data for her mobile app and she asked if I had an opinion. I did not, but I vowed to form one because I prefer being able to answer questions that people ask me! So…

What is Firebase?


Photo by Raphael Brasileiro from Pexels

The Attentive Technical Book Club has started up again, and this time we’re looking to tackle Building Secure & Reliable Systems by Heather Adkins, Betsy Beyer, Paul Blankinship, Piotr Lewandowski, Ana Oprea, and Adam Stubblefield. The book is about 500 pages long and the group is looking to finish it in 10 weeks, which doesn’t give me much time to carefully review any topics that I didn’t fully grasp the first time around. This week (and likely in the future as well), I’ll use this blog to unpack one of the chapters I’ve recently read: Safe Proxies.

What we know so far

Safe Proxies is…

Mike Diaz

Solutions Engineer

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store