Over the last two years, my partner and I tried to launch several projects while working full time. We failed. We failed hard. Sometimes because of a lack of motivation, but often because of a lack of methodology.
In this post I will give you my experience about what we did wrong in all these failed side projects, and what we did right to finally launch Shoptolist.
ShopToList is a universal wish list. It allows you to track the products you want to buy, and get notifications if the price drops. Think Pocket, > but for shopping.
1) What made us fail our previous projects ?
Too much focus on the engineering process/hype
As developers ourselves, we spent too much time hunting for the perfect process. We wanted a perfect Continuous Integration/Continuous deployment process, 100% unit tests coverage. All these things are important for “mature” projects, but it’s a waste of time if you want to build your MVP.
We spent hours learning new shiny JS frameworks and tools, instead of actually building our product. We sometimes treated our projets as a playground to test new tech / frameworks. The learning curve can be steep, and our productivity often fell to near zero !
Re-inventing the wheel
We did everything on our own. For example, on our first project, we spent two weeks implementing our home-made login/register/forgot password system. That’s stupid. It’s a “commodity feature”, and there isn’t any value for our users in it !
Then there is the design part, again, we did everything from scratch. We spent so much time trying to make a good looking design. Design is really important, it can sometimes be a feature but arguing about how we name our CSS classes or this damn 10px padding is a perfect example of how not to launch your MVP quickly.
For our first project (a lead generation tool that tragically died before even one user could try it) we spent three weeks working on a cool admin interface full of data / analytics. What a waste of time !
Entrepreneurship porn overdose
We spent countless hours watching entrepreneurship videos and advices, instead of shipping our product. It’s kind of funny to write this on a post about entrepreneurship but, there is so much informations available, with Hacker News, Reddit, Youtube channels, it’s really easy to get lost and procrastinate.
Not talking to users
We barely talked about our side projects, even to our friends. By doing this, we kept ourselves inside a bubble, and it had two bad consequences. First we did not have any inputs on wether it was a good idea or not. And secondly nobody but ourselves could encourage us.
2) What we did differently with ShopToList
We often read that ideas don’t matter, only execution does. In fact, we think ideas does matter a lot, for your own motivation. We switched our mindset from “There is this opportunity in that niche” to “I would love a product that does this”. With ShopToList, the problem we want to solve is first for ourselves.We were really motivated because for the first time we were about to launch a product we would actually use everyday.
We used tools we knew
Instead of playing with shiny new languages and framework, we used Python and Flask, because we felt productive with it. We could have used React — Redux but we are bad with front-end and we know it. So instead we went with the basic CSS-Html-Semantic UI.
For hosting, we used Amazon Elastic Beanstalk, which is a service that automate the deployment setup on AWS. We can deploy our code with a single command, and that’s great. There are lots of alternative, Heroku could have been a good fit too. You don’t want to spend time configuring servers etc.
Templates and boilerplate
This is something that made us save a lot of time. We used a boilerplate for our app, Flask-base. Basically it’s an open source code skeleton that does every basic things all web app needs. User management, email, admin dashboard… There are boilerplates like this for almost every languages / frameworks, use them !
By doing this, we were able to focus on our core feature, not the “noise” around them.
Then instead of building a custom dashboard for business metrics, we leveraged Google Analytics and tracked everything in it. It works great and took us 1 hour.
For our landing page, we used a landing page builder called Launchaco. There are lots of tools like this, it’s a great way to build a great and responsive landing page.
We talked to our potential users
From day 1, we talked about our project to everyone around us. Our friends, collegues, and it helps us understand how people shop online, what they want, and focus on the “Viable” part of the MVP.
Then after a month of hard work, we made several posts on social media / reddit, and got 1200 signups in one week. It’s great to have that many users early, it allowed us to get TONS of feedback, via email, Google Forms survey, and iterate around this feedback.
For example, on the first version of the landing page, lots of people told us they didn’t really understand what the product did. Or they asked questions like “Does it only work with clothes?”
So we changed the wording, like “It works with every website / product”, add some screenshots to make it more understandable, and it worked, our conversion rate on signup immediately went up !
This is just the beginning
We still have a lot to do, we are not very proud of the design, we’d like to add support for every major browsers (there is only a Chrome, Safari and Firefox extension for now), deliver notifications if we see the product cheaper elsewhere (not quiet sure about how to do that at the moment) build mobile apps, there are some bugs…
With ShopToList taking more and more of our time, we might have to think about a monetization strategy. Early on we were upfront about the fact that we don’t want ads at all, we might go the affiliate links way if it is necessary.
This was a humble post about our experience, what worked, and what didn’t. I hope it can help people launching their projects, and not doing the same mistakes as we did on our failed projects !
In the next post we will talk about the money problem, mobile app and getting traction.
Stay tuned if you want updates about ShopToList.
Links:
Website: https://shoptolist.com
Medium: https://medium.com/@sahin.kevin
That was a great read and congratulations on your lunch. I'd just like to share with you some feedback:
It's absolutely annoying that when I click the Chrome extension toolbar it auto-add the current page. I'd 100% positive that it would be better that it displayed a dropdown with 2 buttons: 1) VIEW your current shoplist. 2) Add the current page to the shoplist. I've intuitively clicked the button multiple times wanting to go to my shoplist only to realize that now I had 10 items in my shoplist that weren't even real products.
If might not work well for non-US or non-English websites. I'm in Germany. Example:
I've added this MacBook Pro: http://www.mediamarkt.de/de/product/_apple-macbook-pro-mit-touch-bar-und-deutscher-tastatur-2294165.html
And this Dell: http://www.dell.com/de-de/shop/dell-notebooks/inspiron-15-7577/spd/inspiron-15-7577-laptop/cn57702?VEN1=305950&dgc=af&dgseg=dhs&cid=242045&lid=62986&acd=2399242045629860&VEN3=413804293312194384
And this is how I shoplist looks like: https://i.imgur.com/Fzyqv5F.png
You see? It got the price wrong for the MacBook and couldn't get the price for the Dell at all. And I didn't have any feedback that the price from the Dell couldn't be determined.
Finally, I don't want to discourage you. Quite the opposite. I'm giving you feedback just as I liked when people tell me what is wrong with the producs I launch.
I honestly wish you the best. Don't settle. You got a great product! Good luck!
There is a lot to be learn from this.
Btw of all that entrepreneur overdose from different source, what is most practical thing you used while developing shopToList?
Hi, thanks :)
I'd say all Paul Graham advices, lots of good stuff. The http://startupclass.samaltman.com/ is great too.
Then there is 'The family', it's a european investment firm based in Paris that provides lots of education for entrepreneurs, and everything is on Youtube : https://www.youtube.com/channel/UCYxgidQYV3WPD0eeVGOgibg
Of course, Indie Hacker stories are really cool too :)
Thanks Kevin,
I was just watching some things from "The Family" and this is super useful stuff.
thanks for sharing this!
good post man. thanks!
so many people (myself included) do what you guys did in the early failures.
"There are boilerplates like this for almost every languages / frameworks, use them !"
Does anyone know something like this but for Go (golang)?
I'm with you on the entrepreneurship porn... There's so much out there. It ends up getting you to a place where you're in paralysis by analysis.
I've decided to limit myself to reading for an hour every day and IndieHackers. I listen to audiobooks and the IH podcasts in the car.
I already read it for about 3 times. Sounds inspiring!
It was a nice read. Congratulations :)
Sorry, but I don't get which problem you wanted to solve? And... do you really use some wishlist everyday?
One technical question - how do you track prices? Manually? I can't believe that you can automate tracking prices on every site.
Thanks and good luck!
I also have the same question, besides tracking the prices, how to save the product on every website if they all have different DOM structure?
This comment has been voted down. Click to show.
Hi, thanks.
I'm not sure I understood your question.
What could cause concerns if we want to scale ?
This comment was deleted 5 years ago.
This comment was deleted 5 years ago.