Random Thoughts of a Happy Programmer
Subscribe
Archives
I'm Writing Again
August 4, 2024
I can’t believe it’s been over two years since I last published an article here! Time really flies. The crazy part is that over these last two years, I’ve...
Does Music Help You Focus?
April 3, 2022
I’ve always been the sort of person who works with music in the background. Ever since I was a little kid writing code in my bedroom, I’d routinely listen to...
Real Estate vs Stocks
April 3, 2022
As I’ve mentioned before, I’m a bit of a personal finance nerd. I’ve been carefully tracking my spending and investing for many years now. In particular, I...
Journaling: The Best Habit I Picked Up in 2021
February 27, 2022
2021 was a challenging year in many ways. Other than the global pandemic, many things changed in my life (some good, some bad), and it was a somewhat...
How to Calculate the Energy Consumption of a Mac
January 29, 2022
I’m a bit of a sustainability nerd. I love the idea of living a life where your carbon footprint is neutral (or negative) and you leave the world a better...
How I Converted a REST API I Don't Control to GraphQL
October 2, 2021
I’ve been building and working with REST APIs for many years now. Recently, however, I’ve been spending more and more of my time working with (and building)...
The Feature Snowball
May 2, 2020
The “feature snowball”, as I like to call it, is a product and time management technique I’ve been successfully implementing for the last 10 years or so....
Defensive Finance in a Downturn
April 6, 2020
I live in the bay area of the United States in a suburb of San Francisco. At the time of writing, I’ve been in isolation from the world for roughly 3 weeks,...
Don't Waste Time Getting Feedback
April 4, 2020
Time is valuable. In fact, time is the single most valuable thing any of us have. That’s why I think it’s so important not to waste time if you don’t have...
The Only Type of API Services I'll Use
February 16, 2020
I love API services. It still feels magical each time I query an endpoint and get back some interesting data or cause some complicated functionality to...
My Personal Financial Strategy
January 16, 2020
I’ve always been fascinated by money: how people earn it, spend it, and invest it. What fascinates me most about personal finance is how personal it is....
Please Stop Using Local Storage
January 25, 2018
Seriously. Just stop it already. I don’t know what it is, exactly, that drives so many developers to store session information in local storage, but whatever...
How EU Cookie Law Myths Affect Web Security
January 20, 2018
Over the last few years you might have noticed banners like this one popping up on a lot of web pages: These banners are a direct result of the passage of...
To 30 Billion and Beyond
January 2, 2018
Several years ago I created a free web service, ipify. ipify is a freely available, highly scalable ip address lookup service. When you query its REST API,...
How to Monetize Your Website with Cryptocurrency Mining
December 9, 2017
I’m a big fan of cryptocurrencies and blockchain technologies. They have a number of interesting applications, one of which I’ll be discussing today:...
Authentication Still Sucks
August 28, 2017
I currently own 47 domain names. I know it sounds like a lot, but that’s down quite a bit from my all-time high of 78 ~two years ago. I’m constantly thinking...
Too Busy
March 30, 2017
For the last handful of years I’ve been too busy to do a lot of things. Too busy to launch new products on my free time, too busy to go on trips for fun, and...
I Don't Give a Shit About Licensing
July 13, 2016
Every now and then I’m reminded of just how much I hate software licensing. Instead of doing what I normally do and silently complaining to myself, I figured...
Obsessing Over Availability is Dumb
December 28, 2015
Over the past handful of years, as I’ve been building and working on several very large and very public API services, I’ve noticed that almost everyone I...
Two Years of Evangelism
December 17, 2015
In a couple short months, I’ll have been at Stormpath for two full years. It’s pretty insane how fast the time has flown by. It seems like only yesterday I...
Saying Goodbye
December 10, 2015
It’s hard to describe in words how painful it is to lose a best friend – so instead, I’ll simply tell you about how amazing having a best friend can be. I...
Building a Heroku Addon - Planning
April 21, 2015
NOTE: You’re currently reading part 2 of a series I’m writing called “Building a Heroku Addon”. If you haven’t read the previous installment, you’ll want to...
Building a Heroku Addon
April 5, 2015
I hope it’s no surprise to any of you that I’m a big fan of Heroku. If you’re not already familiar with the service, it’s probably the most popular, well...
Why I Love Basic Auth
March 22, 2015
One of the disturbing trends I’ve noticed over the past few years is that more and more API services are slowly ditching support for HTTP Basic...
Leaving Things Better Off
March 14, 2015
When Sami and I first got married (almost 5 years ago, now!), our biggest source of marital frustration and unhappiness was chores. More specifically: the...
Enjoy Your Life
March 6, 2015
Life can be really hard sometimes. Everyone has a million responsibilities: family, friends, work, hobbies, ambitions, etc. It can all be a lot to deal with...
The Best Thing I Ever Did
January 24, 2015
I’ve got many different interests. Chances are, if you’re reading this, you found this site through my technical writing (it’s what I’m best known for). What...
Finding Your Passion
January 19, 2015
I’ve been incredibly lucky in my life as I’ve always known what it is I enjoy doing – what I love. I realize that not everyone is so lucky. When I was just a...
For Loops in Node
September 22, 2014
As of late, I’ve been spending a fair amount of time writing Node.js code. While I’m not a huge Node.js fan (yey Python + Go!), I find myself liking some...
Tech Marketing and Spam
June 4, 2014
Earlier today I was accused of spamming the Flask subreddit (you can see a link to the offending post here). What essentially happened is that I wrote a post...
Heroku and SOA
June 3, 2014
In the past, I’ve written a bit about service oriented architecture, what’s great about it, what’s bad about it, and how I’ve used it extensively in past...
Quality
May 29, 2014
Since I first started working as a “professional developer”, my primary focus has been building a lot of different things – fast. Even when I was younger and...
My Experience as a New Developer Evangelist
February 21, 2014
Three weeks ago I joined Stormpath as a Developer Evangelist. This is my first Developer Evangelist job, and so far it’s been a lot different than anything...
Moving On
February 2, 2014
As I wrote the other day, my startup OpenCNAM has been doing really well over the past two years since it’s launch, and lots of exciting things have been...
My Startup, A Retrospective
January 30, 2014
Wow, the past ~2 years have been totally crazy. Almost two full years ago I launched OpenCNAM, with this post here on my blog. Since then I’ve learned a ton,...
Making the World a Little Bit Better
January 21, 2014
For the past few days, I’ve been reading an excellent new book: The Tipping Point, by Malcom Gladwell. Despite the relative wordiness of the book, it’s an...
How Caller ID Works
December 17, 2013
Oh man. I don’t do this often, but, I’m going to do a bit of ranting >:) Why? I’ve been working with telephony stuff for almost 5 years now, and have a...
Instantly Improve Your Month
December 15, 2013
Two months ago I was having a pretty lousy time. I was in a serious rut. The new project I’d been working on was struggling with various scaling issues...
Fucking Do Something!
October 20, 2013
A little bit of life advice to myself for future reference: the next time you’re not feeling great – feeling lonely, sad, whatever it may be – just get up...
Quickly Extract XML Data with Python
September 3, 2013
Today I had the unfortunate luck of having to integrate an XML web service into an application I’m working on. As you might already know, parsing JSON data...
How Hard Can You Work?
July 17, 2013
Lately I’ve been rereading one of my favorite books of all time: The Passionate Programmer. While every page of this book contains an important lesson, I...
Building an API Company - A Series
June 28, 2013
In this article series, I’m going to show you how to build an API company from the ground up, step-by-step. I’ll be covering the entire process (in depth),...
Twenty Five
June 27, 2013
Today is my 25th birthday. I promise you I won’t bore you with the details of what I’m doing for my birthday, but I did want to spend a few minutes and write...
Easy Fuzzy Text Searching With PostgreSQL
June 11, 2013
I’ve been using PostgreSQL for the past few years as my primary database of choice. I figured I’d take a moment to write about one of the coolest features I...
Fearless
May 23, 2013
Ever seen a truly fearless person? If so, you’re likely one of the few people on earth who have. Truly fearless people are incredibly rare. Having the...
5 AM
May 21, 2013
All my life, I’ve been the sort of person that likes to sleep until 2pm, then wake up and do things. For as long as I can remember, I’ve been more awake and...
CD
May 13, 2013
There are certain practices every programmer learns at one point or another, which greatly improve their productivity. All the best productivity hacks for...
Some Thoughts on Bitcoin
April 27, 2013
Last month I started actually using bitcoin for the first time. I’ve used it in the past, but never had any serious interest in the stuff until recently....
motivation.io
April 15, 2013
A couple of weeks ago, my friend Alven and I built a small webapp together that I wanted to share with you today: motivation.io. The idea behind...
High Standards
March 31, 2013
While I’m not one to advocate many personal development hacks, there is one hack that I think everyone dedicated to personal growth and success should know...
Older archives
GitHub
Website
Bluesky