Posts
On becoming a 10x engineer
I know, 10x engineer is click bait-y...
LLM based agent systems
A list of resources for AI and LLM.
Upgrading Dokku version by version
I've used the dokku-update
app in the past, but version 0.30.0 has a breaking change, so I needed to upgrade to 0.29.x first.
It doesn't look like dokku-update
app doesn't support specific versions.
Here's what I did to upgrade manually.
Setup Postgres with pgvector on Dokku
I'm starting to experiment with AI on Route285 and need a vector database. Since I'm already using Postgres and Dokku, I'm adding pgvector. Pgvector isn't installed by the main Postgres images.
Rails Premailer Webpacker Using Full Paths
I've ran into this a couple of times and it's taken forever to figure out! I don't know how I fixed it before, but this is how I fixed it this time.
WordPress Verify Checksums
Bridgetown with Dynamic Routes on Dokku
Bridgetown is a Ruby based static site generator. Being Ruby is awesome already, but with the new dynamic routes feature and support for Turbo it could be a really powerful site builder. Static for most things, and dynamic content provided by Turbo!
Use modern CLI tools to search and replace text in files
Searching and replacing text is easier with modern CLI tools. I'll show you how to use ripgrep and sd to search and replace text in files.
SMTP Set Up For Hosting Servers
Notes for setting up SMTP for sending mail from hosting servers.
Install Directus on Dokku
It's time to create a database for Route285. Up until now, I've been using Markdown and JSON files to manage the data for the site.
After looking at a few options, I settled on Directus. In thier words:
The Thing About Pricing
Pricing is one of the things I've been struggling with on CommandWP. I want a simple plan that offers customers a lot of value. I want to offer pricing that I'd personally want to use.
While I figure that out, I've left pricing off the site, hoping to find early adopters to help me figure out pricing later. It seems most people don't want to invest time in something without having an idea of what the costs might be going forward. I'd want the same.
Here are some of my thoughts about pricing and where I ended up. CommandWP now has pricing!
Optimizing Development Processes for Business Value
The point of software development is to deliver custom value as quickly as possible. At least development in the context of a business.
While teams should be self-managing, they should also strive to create value. These are principles for development I've seen increase productivity.
If Not a Roadmap, Then What?
I've been wrestling with this question. Roadmap are so integrated in development processes that it's hard to think about processes without them.
Replace Your Product Roadmap
A product roadmap is a list of tasks and mile stones. It's generally built with a destination in mind. The destination isn't always clear and more importantly why it's the destination isn't clear.
Do More With Less Developers
Creating a highly effective development team requires a number of things. Over the years and working on different teams, here's what I've found works.
Rails Turbo Broadcast Update to Partial
How to send page updates with Hotwire using a specific partial.
From No-code to Code - How CommandWP Came To Be
Around 2014 I was doing a lot of consulting work. One client was creating WordPress sites and would contact me looking for help installing plugins or to fix a site that had been hacked with mal-ware.
They had a handful of sites they were working on and it was clear they had two common problems. No one was updating the code and there were no backups to be found!
Bet - PPC Campaign
Running a local PPC campaign will gain 2+ users. Assuming an LTV of $540/year, a $500 CPA, while high is a workable to optimize.
Bet - Locally focused site
Update site to a cleaner look and content focused on local hosting to Denver / Colorado will help increase conversions on the site.
Bet - Brick and Mortar
Experiments are good, bets are better?
I think most people would agree the best way to learn is through experiments, some might say the "hard way", but I'm starting to believe it's actually the only way.
Experiments produce experience and that's where the value comes from. I've spent way too much time reading how to do something but I don't feel like I've actually learned how to do something until actually doing it.
Bet - Early adopter program
Early adopter program will validate the market for CommandWP.
Watch a process using Turbo streams
After upgrading to Hotwire, I wanted to try out Turbo Streams. In CloudSh there is a background job that runs a Golang application to index sites. That seemed like a cool thing to use Turbo Streams so I can see the console output.
Turbo Streams just work. The basic flow is capture the process output in the background job, broadcast it to the UI, and follow along by scolling as new data comes in.
Add Hotwire to an existing Rails app
Some quick notes on adding Hotwire to an existing Rails applicaiton.
How I handle web project hand offs
It's time to hand over a project. What do I provide when handing off a project? What do I expect to get when jumping into an existing project?
It's the same regardless of which side I'm on. Here's what I review and use to asses projects. I mainly deal with web applications, so I'm focusing on those.
Not everything here is necessarily part of the project requirements or agreement, but these are areas I look at to get a clear understanding of the state of the project.