MustModify Blog: Recent Posts

redirects and their effect on browser history

August 31, 2023
I'm working on an app that asks for oauth permission from Google and other orgs. The workflow for getting tokens to act as another user via oauth is: 1. Get a key and a secret from the other party. 2. redirect the user to the other party with parameters including your token and what you want permission to do. You also send back a...


Testing the Health of a Rails App

October 27, 2022
When I start a new project, I want to know what areas are going to be problems -- what's the overall health of the app? Here are some searches that generally help me to determine this. ``` rake stats ``` 0 to 30% test coverage -- not even trying 30% to 70% -- oof 70% to 120% -- ok to very good 120% + -- amazing / possibly excessive....


Definition of "Legacy Code"

January 08, 2021
I had an interesting discussion with a client recently. I had used the word "legacy" to refer to parts of their codebase. They then repeated the word, but with somewhat more negative connotation. So I'm writing here to firm up my definition of what it means to be legacy. Here are some thoughts I got from a Slack channel: • it's not a good...


Programmer Architypes

November 30, 2020
In early 2004, Nikhil Kothari wrote about three personas Microsoft came up with while working on Visual Studio 2005. Mort, Elvis and Einstein. I have my own list. As a tech lead, I talk to my team about programmer architypes. We all have many traits within is... and these can be good when used at the right time, but bad when used at the wrong...


Executable Comments

October 07, 2020
One of the most important skills that differentiate an upper-mid-level developer from a lower-mid-level developer is the ability to write readable code. One strategy for increasing the readability of your code is to use something I've heard referred to as "executable comments" -- writing your code so that the variable names and structure give...


MySQL vs PostgresQL: Pros and Cons for Default Database

July 05, 2020
I start up a lot of software with a database for small to mid-size apps that don't particularly have any requirements that would lend themselves to using one or the other SQL database. I just have to pick one. Here are some things I've discovered that inform my thinking about which one to choose. | | PostGresQL | MySQL | | --- | --- | ---...


My NASA Story

April 01, 2020
I was a junior nerd well before I was a senior nerd. I was in a weekly program at our local planetarium -- the "Young Astronauts" run by the still-awesome (https://www.linkedin.com/in/david-e-hostetter-62073023/) at what is now the Lafayette Science Museum. I went to space camp and vividly remember snickering when my friend and I ordered...


Communication Tactics for Consultants

March 23, 2020
Here, I'll list some of the communication tactics I've grown to use over the last 10 years of consulting. Sometimes you want to make it clear that you do not have the ball, but it also seems like a minor issue and you don't want to make a big deal about it. You can say, in increasing level of assertiveness: * Not sure if this was intended...