How to Create Your Own Software Product
Today we’re going to create a software product!
Yep, you heard correctly, we’re going to create a software product - a WordPress Plugin.
No need to worry…
It’s a bit like baking a cake.
If you’ve ever checked my LinkedIn Profile then you’ll know that I spent many years working in the software industry.
One of my goals when starting my online business was to create my own digital products. And more specifically I wanted to create my own software products.
I didn’t know exactly how I was going to do that – I had a rough idea, but nothing concrete.
Well, now I know a lot more about creating my own software product than I did a few months back. And I wanted to share exactly what it entails.
How do you create a software product?
Making a WordPress Plugin is a bit like baking a cake.
Not that I’m into baking cakes - eating them, YES, baking them, NO!!
But as I understand it, you need:
- Ingredients: 4oz flour, 4oz sugar, 4oz butter, 2 eggs, etc.
- Recipe: add this, mix that, beat those, etc.
- Equipment: oven, food mixer/processor, mixing bowl, cutlery, etc.
It’s similar when creating a software product because you will need:
- People: the ingredients
- Process: the recipe
- Technology: the equipment
Let me show you how we created our software product.
The first thing to say is that I have not created this software product on my own!
It’s not compulsory to have a business partner when creating a software product, but it certainly helps!
I approached my online marketing friend Richard and asked him if he’d be interested in working on a joint project to create a software product.
Why Richard? Aside of the fact that he's smart and already has a successful track record in creating and selling information products (ebooks/courses, etc.)
- We both trust and respect each other
- We both live in the UK
- We both support the same football team – yeah, I know, unbelievable - I thought I was the only Aston Villa fan
He said, “Yes!” and the AV Project was born.
Don’t believe me? Here is the folder in Box:
If you’ve never created a software product before, then I strongly recommend you take some education first.
To take our cake analogy, if you’ve never baked a cake before then you would want to read a book or watch a video on the steps you need to take.
Let me clarify. I don’t mean get trained on how to start coding PHP and CSS, and all the rest of the languages you need for a WordPress plugin. I mean get trained on how to start from scratch and end up with a finished product on the market.
So Richard and I started off by investing in an online course from an instructor who had real experience of creating a software product from scratch. In fact, he’s had several successful software products over the last few years.
This is one of the key things we learned in our online course:
Stay in the CEO Mindset – i.e. don’t worry about the small technical details.
Given that neither Richard nor I are programmers it is a given that we would need a Developer. During the course we learned how best to outsource the software development and we were able to recruit a developer via Elance.
Last, but not least, you will need people to review your ideas and review your finished product.
We are indebted to the trusted band of marketing friends who have run our plugin through its paces. Without them we wouldn’t be at the stage we are now – ready to launch!
Those are the main ingredients, the important people, in this first stage of creating a software product.
Before I describe the PROCESS that we followed, I’m going to tell you about the TECHNOLOGY we used. Again, some of these come down to our preferred choice, but you will either need these or a variation thereof.
Box is an online file sharing and personal cloud content management service.
You will need a project planning tool. There are plenty on the market, but we chose Excel.
You need to keep communicating when you are running a project. Skype allowed us to chat, talk and share screens.
We used Balsamiq to provide our developer with a full-design specification including mockup screens.
We used Jing for creating screen grabs and recording short videos.
We used Screencast to store and share short testing videos.
Right, so we have the PEOPLE and we have the TECHNOLOGY. Now we need something to bind those parts together in our winning mixture.
I’m going to take you through, at a high level, what we did at each stage in the process of creating our WordPress plugin.
- April – Complete the online course
- May – Finalise idea
- June – Design/Development/Test
- July – Beta Test Review
- August – Product Launch
The Learning Process
As I mentioned earlier, Richard and I invested in an online course on how to create and sell your own software product. The course was all pre-recorded so we could go at own pace to fit in with other commitments; work, blogs, and family. Our target was to complete this by the end of April, which we achieved. Tick!
The Planning Process
Having completed the course, we now had an idea of what was going to be involved and we started to map out a timeline. I knocked up a plan in Excel and started dishing out tasks to Richard and me.
Two things to note about planning:
- You have to be realistic
- You have to be flexible - things don’t always go to plan!
The Idea Generation Process
We had the theory from the training course and now we had to put it into practice starting with an idea, or two or three…
And the reason I say that is because the ‘Eureka moment’ does not exist!
REMEMBER: Perspiration breeds inspiration!
However, you definitely don’t have to come up with a totally brand new idea to be successful. Here’s what to do:
- Always be on the lookout for tasks which could be automated
- Research the market
- Research the successful products that are already out there
- Make a list of their features
- Combine those features to create a new software product
As soon as we learnt this in the course we started coming up with ideas and jotting them down in another spreadsheet, affectionately called the AV ROLODEX.
Having got an idea or two you need to test the market. So we put together a mini-spec with some screen mock ups and sent the idea out to a few PEOPLE – our reviewers.
The feedback on our first idea was not good. So, having picked our egos off the floor we took the positives out of the feedback and generated a second idea that was closely related to the first.
The feedback on the second ‘improved’ idea was much more positive and now we had something to go with.
*The Idea and Specification are Crucial! Get the foundation right!*
The Design Process
Having decided to run with our idea we entered the Design Phase, which consisted of 3 main tasks:
- Create Mockups
- Create Outsourcing Accounts
- Finalise Product Name
Richard created the mockups, and what a fine job he did. Here’s an example of one mockup screen:
Whilst Richard was busy creating mockups, I started opening our accounts on the outsourcing sites Elance and Upwork. I also started to create our brief job specification ready to post in the next section.
The Outsourcing Process
Here are the steps we followed to hire our developer:
- Post your job (brief spec)
- Candidates apply (within hours)
- Shortlist candidates (4.5 rating or above + check previous work)
- Send full job spec to them
- Ask them questions and confirm deadline/milestones (chat on Skype)
- Hire the chosen one (within 3 or 4 days of posting)
- Work with them + regular progress checks
NOTE: Upwork now owns both the former oDesk and Elance.
The Development Process
I’d like to say that once the developer is hired, you csn sit back and relax for a few days, but in truth, you can’t.
First of all, it’s important to follow Step 7 above – Work with them and have regular checks. If you don’t, then you run the risk that (a) they won’t do anything or (b) they misunderstand your design spec. Either will result in wasted time and money 🙁
Secondly, whilst the developer is doing his coding there are a few other tasks to be getting on with, mainly focused around your own website where you will market your product from. More to come on that in Part 2.
Here are the three main steps in this phase:
- Complete Beta Version
- Test Beta Version
- Complete Version 1
Aside of that, as you can see, there is the small task of testing. You cannot afford to go light on this task. At times it's boring and frustrating, but you have to be prepared to test your plugin to breaking point.
And we did break it...several times...and each time we sent it back to the developer to be fixed. So, be prepared, the above 3 steps are quite reiterative!
When you’re satisfied with your final version, then you need to reach out to your contacts and ask them to get involved with more testing. And also ask them to provide testimonials for your sales page.
When you bake a cake there are always a few additional ingredients that you add into the mix. I’m talking of, for example, a dash of vanilla essence, or a pinch of a salt.
The small things that perhaps nobody sees, but definitely gives the cake its flavours.
When you create a software product, you need that little bit extra than just the essential PEOPLE, PROCESS and TECHNOLOGY.
You need things like:
In short you need plenty of hair and thick skin!
Without any of those you’ll be down and out within weeks.
You must remember:
- You only reap what you sow - in business, as in life!
- Enjoy the learning curve!
- Push your comfort zone every day!
Wrapping up Part 1
The journey so far has been a massive learning curve. We have used our individual strengths to complement each other in creating our first software product.
Today, you’ve learnt what it takes to create a software product. Next time, we’ll look at how to market and sell your software product.
Let me know what you’re thinking in the comments below. I’m sure you will have many thoughts and questions about this whole saga, so fire away!