I need to stop building software for myself

One of my goals, since I got into the IT business over thirty years ago, has been to create my own software product. I have often thought if I could create an application or mobile app that gained some popularity, I might be able to fund a retirement of some type someday. Owning a restaurant for a number of years wiped out any savings I had, so I am on the work till I die plan. As a consultant, I get paid for the hours worked, so if I don't work, I don't get paid. If I could create a successful software package, I could generate some passive income that would be helpful in my declining years. 

I have come up with a number of ideas over the years, and I have almost completed a number of applications. I once worked on a dating site, long before match every existed, I also started a site that would allow family and friends to share pictures before digital cameras were a consumer item, I worked on a site that would allow sports teams to manage their players and schedules and share pictures, I started a city event planning system that would allow any business in the city to share the events on their website with just a little bit of JavaScript code, and I also worked on a restaurant ordering system long before anyone offered online ordering. I almost had the last one working right before my restaurant went out of business.

I have put so many hours into these projects over the years, but I have never released one of them. I seem to always get to about 80% complete then never finish. Typically my paying gigs always get in the way and being able to pay my current bills trumps setting up future income. The other issue I have always had is that I work on these side projects alone. I don't meet many people who like to work during their free time the way I do, so finding partners for a side project has been difficult. I always thought if I could find a front end designer and another developer I clicked with, we could build some amazing things. 

I think the biggest thing that gets in my way is me. I have trouble putting myself into the mind of the user for the applications I build, so I build them as if they were for me. That's a problem because I am not like a typical user, I don't think most developers are. When I work at a customers site, I sit with end users and get to know what they are looking for. I may look at a usability issue and think it doesn't matter, but a room full of users will tell me otherwise. Comments like "It takes too many clicks to do that" are common things I need to work around. Without having a base of users to bounce my ideas off of, I end up getting stuck trying to accomplish every scenario I can think of, and I get to a point of decision paralysis. 

With the fast movement in the software industry, agile methodologies and lean startup principles are becoming more and more popular. A lot of this is just the Test Driven Development paradigm taken to the business level, but I think it has a lot of value for someone like me. The idea of building an MVP (minimum viable product) and letting early adopters use it and make comments on it could resolve my final 20% issues. In my mind, I think if I don't release a perfect product, people will try it and throw it away and never give me a chance again. Studies have shown however that isn't the case. Early adopters will try it because they like anything new, and they also like giving feedback that helps generate the product they want. It really is a win-win for a single developer as well as large companies. Even big auto companies are using this approach to increase efficiency in their manufacturing processes. 

I would still love to find another programmer and designer to work with because I think multiple viewpoints really help in designing good software and also keeping people motivated, but for my next attempt at a software project, I am going to release it into the wild as soon as the basic features work and see how the feedback mechanism works. 

Does anyone else out there run into issues where you get in the way of your own progress? Do you have other suggestions for how to get out of the way of yourself and move your product to the finished column on the board?

Comments

Popular posts from this blog

Asp.Net Core with Extended Identity and Jwt Auth Walkthrough

File Backups to Dropbox with PowerShell

Dynamic Expression Builder with EF Core