A Deploy State of Mind
On Friday morning Mike helped me wrap up one last big glitch I was having with PostrgeSQL—a “type” error that required a manual ALTER of the table. After that it was time to push it up to Heroku and get a few users.
It wasn’t until I was imminently faced with deploying that the thought of anyone using this app besides me really sunk in. For a couple of months the project had just been one big exercise in hand-rolling a web application. It was a constant cycle of learn-build-learn-build. Although I knew the plan was for other apprentices to eventually use the app as a tool, I think the thought of anyone actually using my application terrified me just enough that I didn’t think about it.
When I did think about users and a deploy this sudden wave of “but this isn’t readies” and “but what if this happens” came crashing down as I poked my head out of the cave I’d been in. And along with them came a few lessons:
1) Don’t go into a “builder’s” cave. It’s important to always have users in mind. This app is supposed to be a learning project for me and one that I work on solo, but it definitely wouldn’t have hurt to face the fear of actual users a little sooner and more regularly.
2) One of the reasons working with a team is so valuable is because other perspectives are so important. One brain, one way of thinking, one decision maker can lead to a bit of a tunnel— and sometimes going around or over a mountain might be better than burrowing through it.
3) Deploy early and often so that you can find out if all of the “buts” and “what if’s” really matter. Sure I have a long list of things that I think should get done before I have my first user, but having some early testers will help me figure out what’s the most important and where I should best focus my energy.
Fortunately the Friday afternoon deploy went pretty smoothly and Mike and I are already using app. There is also already a bug and “fix” list, but it’s relatively short and manageable so I should be able to knock out a lot of it tomorrow.