John: Hey, John Sonmez from simpleprogrammer.com.
I got this question.
It’s kind of a long email, so again, I’m going to summarize this here.
It’s from Florian and he’s from Belgium which by the way, I got to visit Belgium and
saw Bruges or Bruges I don’t know if it’s Bruges or Bruges.
I could never figure that out, but anyway, it’s like a fairytale city.
It’s pretty cool city.
I don’t think I’ve ever seen anything like that.
Anyway, so Florian basically has this question and he said, “How’s life?
Is the Europe trip going well?”
I’m back now, but it was, it was fantastic.
He says he’s a young software developer from Belgium.
He read my book Soft Skills and watches my YouTube channel closely and he discovered
my website from PluralSight courses.
He wants to know about side projects here.
He basically says that he gave up on his side project.
He was working with a colleague and they were working on this—an app around David Allen’s
GTD philosophy which is Getting Things Done.
You can check it out.
I’ll put a link to the book.
A really good book, a really good kind of process for managing your work and your life
but that’s beside the point.
Anyway, he says he was working on the web app.
They’ve been working on it for 1-1/2 years.
They had no prototype at the end of that.
They spent way too much time on anything.
He said he didn’t even have a social life, wasted a lot of time, real overkill of meetings
and he said the idea wasn’t bad.
Which I agree, it’s probably not a bad idea.
He wanted to know about the approach of a personal side project.
There’s a bunch of questions here: “Would you first create a full backlog with all features
in it?
Thinking things through, what happens if you delete (A) those kinds of things, like if
you delete feature A. Perhaps not the Agile way, but I want to know what the workload
is for MVP Minimal Viable Product.
I’m using Visual Studio online to organize this.
I want to have a bunch of metrics of progress achieved by charts.”
He goes on to say, “Next, I want to create a full HTML mockup of the application to real
show what the application does, all dummy data” and goes on and on talking about frameworks
and all this stuff and should I write Unit Test and thinking about database design and
web APIs and Build Server and using Jenkins.
Here’s my advice.
You can probably see where I’m going with this is is basically don’t do that.
You spent 1-1/2 years trying to create this product and you didn’t even have a prototype
out.
That’s the total wrong approach.
All these questions you’re asking me these are not the questions that you need to be
asking me, not at this point in time.
These are the questions that someone working for a multimillion dollar organization with
a team of 80 developers needs to be asked.
Those are serious questions for that, but for 2 guys trying to figure out if an idea
is going to work, working on it part time, don’t do all that.
Instead what you need to do is try to create the simplest possible version of the product
that you can put out and get it out there as soon as possible.
I don’t want to keep on hitting on the MVP Minimum Viable Product buzz word but it’s
a true thing.
You need to do that.
Don’t even worry about how the code is organized.
What you want to do is you want to fail fast if you’re going to fail.
If you succeed you want to learn quickly and consider whatever you’re writing or creating
right now.
The version will be a throwaway.
That’s my best advice.
Get your idea out there and get it tested and get feedback as soon as possible and then
you can do things right later.
One thing I’ve learned being an entrepreneur is when I first started my software development
career I was all about doing things right all the time.
What I’ve learned is that that’s fine when you’re working with someone else’s
money, but when you’re working with your own money sometimes you got to do things quick
and dirty because it’s just not profitable, it doesn’t make sense.
When you’re burning up someone else’s money you can sit back and you can ponder
all the intricacies of the architecture and should we use this unit testing framework
or that one.
That’s fine because someone else is paying you to do it, but when it’s your money and
it’s your time your attitude kind of changes.
It doesn’t mean to just like, you know, to throw out all craftsmanship and do a crappy
job but it means that you’re going to make tradeoffs and the biggest tradeoff that you
have to make is getting something out there quickly and start to get income from it.
The best way to test a thing is ask someone to pay for it.
What I would suggest if you do another side project or if you restart this one is get—set
a deadline.
Let’s say you start this project now, in 2 months you have V1 shipping that is your
deadline.
You must do that in 2 months.
You’re not giving yourself anymore time than that.
In 2 months you’re shipping something and you’re going to collect money for that thing.
Put it out there.
See if people will pay for it.
Even if you don’t have the full thing built out, if you say what you’re going to build
and it’s a good idea people will give you money for it.
If no one will give you money for it, it’s a bad idea, it’s not going to work, don’t
waste another year and a half building something that no one is going to pay for.
It doesn’t matter how good your architecture is and how much you plan this out and how
much you have your ____[inaudible 00:05:36] charts and you got your metrics and all this
stuff if no one ever actually buys it and if it never gets built all that is going to
be totally wasted effort.
Don’t waste time doing things that are going to be complete throwaway if you never ship.
Instead, focus most of your effort on shipping and then you can add those other things later
once you start making money, once it’s actually viable then you know you’re not wasting
your time.
I feel like if it took you a year and a half and you never got to a prototype you probably
wasted a whole lot of time worrying about things that are not actually important.
It’s a good lesson though.
I don’t mean to like totally harp on you.
You got to learn this lesson, but that’s my advice on the situation.
Hopefully your next project you can get it shipped very quickly.
That gives you also—think about it, in a year a half you could have tried out 5 or
6 ideas and hopefully one of them would have worked instead of focusing on building just
one and then you don’t even get it done.
You give up because, hey, who has the endurance to work on a thing for 1-1/2 years without
actually getting any money for it.
Anyway, great question and if you have a question for me, just email me at john@simpleprogrammer.com.
I’d love to answer one of your questions in a video format.
If you like these videos, if you like this podcast, subscribe.
Talk to you next time.