Skip to Main Content
Below you’ll find my blog posts. You can check out the
How Things Work
Design Patterns: Dependency Injection
If you’re a developer, you may have heard of the phrase dependency...
Building a JSON API with Rails – Part 6: The JSON API Spec, Pagination, and Versioning
Throughout this series so far, we’ve built a really solid JSON API...
Programming Concepts: Garbage Collection
Continuing on in this series, today we’re going to talk about garbage...
What Meta Tags Your Site Should be Using
Whenever you’re building a new site, you probably pay more attention to...
Core Functional Programming Concepts
If you’re a developer like me, then you probably grew up learning...
How Daemons, the Init Process, and Process Forking Work
If you’ve ever worked with Unix-based systems, then you’re bound to have...
Optimizing Your Web Page for Speed
We’ve all had it happen – that web page that you navigate...
ARIA Roles and Attributes: How to Actually Use Them
If you’re a web developer, then there’s a chance that you’ve heard...
How Public Key and Symmetric Key Encryption Work
Public-key encryption and symmetric-key encryption are two of the most fundamental cryptographic...
My Interviews with Amazon
Last Fall in 2015, I interviewed with Amazon Web Services for a senior web developer...
Combining BEM and SMACSS
Code architecture is super important when you want to have clean, readable, and...
How Browser Caching Works
Have you ever noticed that when you load a web page for...
How WebSockets Work – With Socket.io Demo
As a developer you may have heard the term WebSockets thrown around in...
Installing the Docker Client CLI on 32-bit Windows
If you’re unfamiliar with it, Docker is one of the newer development...
The 3 Rules of Dev Blogging
This post covers a short lightning talk I gave at OKC.js this...
Controlling Spotify with Slack and a Raspberry Pi
After moving to a newly constructed floor at Staplegun (where I work),...
Programming Concepts: Type Introspection and Reflection
Often times during the runtime of a program, we need to ask...