Post date: Mar 2, 2017 6:34:30 AM


Idea FindOneGoodProductIdea()


Idea candidatesIdea = null; //do I have a candidate idea? if not keep going.

while (true)


candidateIdea = new Idea(); //I am in a creative stage. BUT get ready to switch to analytical stage

if ( candidateIdea.IsGood() ) //Now I am in a analytical stage. Was switching from creative to analytical fun for you? By the way no chance to compare between ideas. conjoin analysis





return candidateIdea;



Idea FindGoodProductIdea()


ArrayList candidateList = BrainstormLotsofIdeas();

return ChooseTheBestIdea(candidateList);


#include <You_Need_Competition.h>

#include <debt_or_equity.h>

Build a list of ideas (creative stage)

Think about problems, Not technologies. If your only tool is a hammer, you will see everything as a nail

Think about your other interests

software is written to solve one industry problem (vertical; less sexy, less known so greater opportunities)

software works across all industries (horizontal; sexy, more known so less opportunities)

Get good education, but not too much; PhD = narrow and deep

Get good input, but not too much; it's your baby

Remora fish

Mistakes: A lot of business go out of business because of their own stupid mistake

Ping Pong: Big slam is nice but you can win without being fancy No high risk/high reward necessary

Golf: Big swing at tee off is nice, but you can win at putting. Watch first how other's ball rolls

Football: Big touchdown is nice, but it's a yard by yard strategy game.

Judo: Big throw is nice, but it's a grip by grip strategy game