May 26th 2024

How to build a web application

I have had many debates on the best ways to build web applications and I have some strong opinions about it. However, some smart people have already come up with some guidelines that I think mirror my opinions pretty closely so I'm noting them here for future reference.

April 20th 2024

A new résumé for new opportunities

Unfortunately all good things must come to an end and so has my time working at Rakuten on our SSP. Our team and our product were impacted by the war in Ukraine and it seems our platform never recovered enough to prevent it from being sold to one of our customers. It sucks for us but in the end there is definitely worse things happening in the world with that war. However, it does leave me and my team looking for new opportunities. I've added a link to my résumé on the navigation menu. Feel free to click, take a look, and let me know if I have the skills you need!

August 20th 2023

Stuffing a RTX 4090 in an Dan Lian-li A4 H2O

In continuing with the evolution of my small form factor PC I recently took to upgrading the GPU to an RTX 4090. Given that it was a bit challenging compared to my 3080ti both size wise as well as highlighting some issues I didn't even realized I had with the included pci-e 4.0 riser cable I thought I'd share my experience.

May 28th 2023

New PWA Tools Section with Offline Support!

I've been working on a new section of the site for a bit and it's now ready to go. In the past I've received numerous requests to support offline capabilities with some of the tools I've created (specifically, the Lazy Portfolio Rebalancer so I've created a new Tools section of the site to support standalone Progressive Web Apps that have offline support. To install using a Chrome-based browser (including Edge) visit the tool's page you're interested in and click the install button in the address bar.

March 7th 2022

Small form factor PC refresh

The "small, but powerful, gaming machine" has seen a few new parts over the years but one of these parts (a new nvidia RTX 3080 ti founders edition) eventually pushed it beyond its cooling capabilities. My slim case was not well designed for handling the new flow through airflow design adopted by the newer RTX cards and any heavy usage caused the entire thing to fill with heat until eventually the PSU would call it quits. Ripping the top off of the case and adding a few extra USB fans helped to cool things off a bit but it was not a pretty sight, and the temperatures were still uncomfortably high...

February 12th 2022

Was the "all-in" spread trade a success?

In episode 54 of the All-In podcast, Chamath brought up the idea of initiating a spread trade within big tech stocks as a way of protecting against a market downturn. It has been three months since the episode aired and we've already had a pretty good market correction with the possibility of some more to go. So, how did the spread trade do? If you had entered the trade when the episode aired would you have made money? Let's take a look.

September 25th 2020

Rebalancing your lazy portfolio

Lazy portfolios are a simple and safe way I've been using for some time to successfully invest in the market. The general idea is to allocate your investments into a few broad funds (usually index funds) proportionally to your desired risk profile and let them sit and grow over time. Once you've purchased your funds at your desired allocations the only action required is to occasionally rebalance them and bring them back to your desired allocations as they change over time. These rebalances can happen at set time intervals (6 months to a year) or at specific triggers based on some other strategy. If your only criteria is that your risk profile adjusts as you get closer to retirement age then you can invest entirely in a target date fund, but if you want more control over when/why/how you rebalance then a lazy portfolio might be for you.

June 9th 2019

The reduce ({...spread}) anti-pattern

Performance is a common topic in computing, but it is especially common in the frontend world as the latest Javascript technologies battle for the frontend throne. Some may say React has already won (and the usage numbers seem to agree) so in this blog post I wanted to talk about a piece of problematic code I'm seeing more frequently in the frontend world as Javascript syntax is evolving and components are taking over.

December 13th 2018

CenturyLink is blocking its customers' internet while saying Utah legislators told them to

We've all experienced frustration with the internet going down. Now imagine how frustrated you'd be if you found out that your ISP intentionally blocked your internet access for the purpose of advertising their software; and better yet, your ISP claimed that state legislators required them to do it! Well that's exactly what is happening to CenturyLink customers in Utah right now.

January 21st 2018

How to add search to your static website

One of the most important features that a website can have is a method to effectively search its content. There's no denying that there's such an overload of information on websites these days that helping people find what they need can be a monumental task. That's where a well designed site searching functionality can swoop in to save the day and today I'm going to show you how to deploy this superhero feature on your very own static website, no backend required.

January 7th 2018

Houston, we have a blog!

One of my goals with this new year has been to start writing more frequently, be it technical articles or just my thoughts and ramblings. I've considered Medium in the past (and still might duplicate some of my writing there), but felt the platform just isn't quite there yet for the purpose of writing technical articles. I have read many well-written technical articles there that I felt were held back by the limitations of the platform. I'm of the strong opinion that learning is doing, and limiting educational writing to text and graphics isn't the best medium for doing.