Posts
On Replacing Spreadsheets
I have spent the better part of the last decade building software designed to replace traditional spreadsheets (Excel, GSheets). The business case is clear: a significant amount of work currently occurs in spreadsheets due to the lack of better solutions. If you’re looking for a startup idea, plenty of fertile ground exists here. Talk to potential customers in various industries, ask them about the business problems they primarily solve with spreadsheets, and identify the pain points they experience with this approach.
Migrating to AWS Amplify Hosting
It has been well over a year since I wrote about the excessive infrastructure powering this blog, and recent changes have prompted an update. While this blog remains a static website built with Hugo, and the underlying infrastructure is largely the same, the overall configuration has become much more streamlined thanks to AWS Amplify hosting. Previously, I had to use a combination of CloudFront, S3, ACM, Lambda, CodePipeline, and Route53 to host both the “dev” and production versions of this site with automated deployment and TLS.
The Excessive Infrastructure Powering This Blog
This blog is a set of static HTML pages powered by the Hugo static website generator. Sounds pretty simple right? Well it is, but hosting this blog is another story involving the use of quite a few AWS services in order to meet my needs. Some of the complexity is due to my specific requirements for this website, but I think these are reasonable for anyone hosting a static website for personal or business use.
Smartsheet Webhook Callbacks with API Gateway
I recently had a need to auto-populate the values of drop-down list columns in Smartsheet based on a list of values in a “lookup” sheet (this is similar to using named ranges to provide drop-down values in Excel). While there isn’t a way to do this with native Smartsheet features, it’s rather simple to implement via Smartsheet’s API and webhooks. Webhooks require a publicly-accessible callback URL, which can be a bit of a pain if you don’t happen to have a server available to host the callback.