Just another day, I saw “Before you speak: THINK” poster. The simple and genuine values it contained apply to Startups also. That’s why this post.

1. Is it True?
The First question that every entrepreneur should ask himself is that the idea/solution, he/she is thinking about, really based on truth or based on assumptions. Is it valid truth or my own experience messing with truth? Since, we always make many assumption about that market is easy to conquer and your product will redefine the market and consumer will adopt your solution with little efforts.
Your product should be based on logic/truth not on vague terms like intuition/experience.
It is good to answer this question at starting. As in softwares, Bug caught early in life cycle cost much less than bug caught when product is shipped, in startup case, if product really shipped.
Answering this question lead to analyze that we are making right product.
2. Is it Helpful?
Is idea/solution really helpful to consumer? Here also you couldn’t rely on your experience/intuition. You have to go to actual random consumer and ask them about if your solution really helpful to him/her. If he/she had problem of conceptualizing it then you could go for rapid prototype and that would help him/her better clarity. If you consider ignoring your customer input, please think over it. Think about why they think the way they think.
Answering this question help in analyzing why people would adopt your product/solution.
3. Is it Inspiring?
Next set of question every entrepreneur ask themselves are Is their idea/solution is inspiring. Is it solve new problem? or Is it solve existing problem in new way? What will inspire bloggers/early adopters to write about or to use your product? What is your USP that you should brag about? Is your USP inspiring enough (adding enough value) for customers to shift from already existing platform to yours?
Design/User experience adds certain value/USP but you need to understand that this will helps only when all other things remain constant or you add some value to them also.
Answering this question help in developing What would be your startup pitch.
4. Is it Necessary?
Is your idea/solution is necessary or adding luxury? Generally, necessary products have greater chances to succeed than luxury. However, keep in mind that prolong exposure to luxury and tactful marketing strategy of luxury also transform luxury to necessary. For e.g., Apple have all luxury items but people had prolong exposure to music players and phones that they saw it as necessary now not as luxury.
Answering this question help in developing why customer should come again and again to you. One time buyer doesn’t add enough value as recurring or revisiting customer adds. And, this answer also ensure you are addressing large enough market.
5. Is it Kind?
Kind doesn’t mean here you have to do it in kind (free) ( freemium is great model for startups). Kind here means you need to be novel in your approach as well as different from your competitor strategy that they don’t see you as threat to their survival or fund raising or IPO etc., when you are booting up. For e.g. Hotel Industry or major travel portals didn’t saw Airbnb as their competitor.
Answering this question helps you understand your competitors and how you could avoid direct clash with them.
P.S. A personal advice. Thinking is great. However, don’t about multiple ideas in multiple fields even if they are possible. Just focus within your product and believe in it. If you believe in your product others definitely will.
Filed under startup thoughts ideas
Sometime we need plain old string instead of InputStream. In my case, I needed plain string as an input to JSONObject constructor whereas I was getting InputStream from HttpConnection. Here is the code snippet for this InputStream to String conversion,
private String readStream(InputStream is) {
try {
ByteArrayOutputStream bo = new ByteArrayOutputStream();
int i = is.read();
while(i != -1) {
bo.write(i);
i = is.read();
}
return bo.toString();
} catch (IOException e) {
return "";
}
}
Filed under Android code_snippet
Converting String object to Date object is common and trivial problem in Android, whether you are writing date parsing for feed parser (like me) or some json in response to web request. Here is the solution,
String dtStart = "2012-08-09T11:47:19Z";
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
try {
Date date = format.parse(dtStart);
System.out.println(date);
} catch (ParseException e) {
e.printStackTrace();
}
There is one manual step, You need to figure out date format you are getting and write your own expression for parsing string to date as I do here “yyyy-MM-dd’T’HH:mm:ss’Z’”. Look at SimpleDateFormat Documentation for how to write your own parsing expression.
Filed under Android
Happy Independence Day…
like everything else our Independence is also relative to some point in our case that point is 15 August, 1947, when Britishers left and Nehru-Gandhi dynasty took over. Those who didn’t knew that current ruling Gandhi family has nothing to do with our Nation’s Father Mohandas karamchand Gandhi. Indira Gandhi married to a man named Feroze Gandhi and he had nothing to do with Mahatma Gandhi.
Some of us including myself consider this is the time for another movement another Independence from corruption and corrupt bureaucrats. Those people are moving themselves and mobilizing others for a vision of corruption free India. Still many people want to see how this movement goes before joining it. They could argue that they are not still, they are moving at the rate of 400 meters per sec anyways because of earth rotation. On serious note, We need to understand why are people not joining movement, we need to understand those reasons. This is not that they are against these movements this is because we as individual only join something if we think we are going to succeed and they don’t believe in movement would be successful. If movement gain enough momentum that they could break their inertia then they will also be part of this movement.
Corruption is also very relative term when others do then it is corruption, when we do then it is time saving, money saving and saving from nuisance of corrupt government officials.
We need to understand why these officials work that way? Why most wealthy politicians do most filthy scams? After certain point, they are not doing it for money then why? This is because after certain point it is not urge for money it is our society and colleagues that indirectly pressurize them to take money. If they don’t take money or incentive at that time they will be forced to do so, or they fear so. That’s why they never able to turn back. We need to break their momentum of corruption by some external force. That force might be long sentences, Janlokpal or whatever.
For new India, we need to understand our people and their behaviors. We need to set examples. we need to create heroes that others could look upon and try to achieve that goal. We used to create gods, that’s why we have so so many gods. Our Ancestors knew that we need someone to look upon. But, Know we stopped to create gods, the alternative is create heroes, so that people could look upon them.
I know, these steps themselves are not enough It need motivated people, people who also believe in these, people who believe we could change our nation and turn it into “Sone ki Chidiya” (Golden bird) once again. That gold was nothing but our trust and belief in others, we need to just reinitiate that once again.
I always wonder how people would be able to manage do same thing over and over again (in job, marriage, life. How?) and still enjoys it or get along with it. I got bored with repetitive tasks very easily. I love Mystery, Exploration and Learning, I always need something new things in my life, routine is not for me.
This is the main reason why I run-away from relationships. since certain questions always pop up in my mind. What if I will not be able to commit for a long relationship? What if my dead straight answers would hurt others feeling? What if she wouldn’t understand my dreams? What if she wouldn’t be the one?
I don’t want anybody to change for me. I don’t want to change someone dreams. I don’t want anyone to restrict my dreams too. I don’t want compromises in a relationship from either side. So, our career goal should be aligned.
I am not a social person. I am very moody person. What if I piss her off because of my bad mood. What if when in good mood I do some silly stuff. What if my non-social personality wouldn’t acceptable to her.
I don’t listen to what others say about me. Since, they have an opinion and opinion changes over time. I have only to prove myself to me. what if others’ words hurt her.
Mostly, I don’t express my feelings as it should be, I always downplay my feelings. That’s give me strength in hard times and help me remain humble in good time. Everybody needs complement what if I wouldn’t admire other in a relationship, as and when expected, even if I would be happy. What if she pissed me off and I wouldn’t able to express myself.
I always speak truth. I couldn’t speak lie since I needed my brain and memory resources in really useful matters. You could always caught me telling a lie, if I had to in front of you. Or, if possible, I would avoid you. What if in a relation at somepoint I have to tell a lie. And, If I got caught (with 90% of chance yes), she needs to be understandable to understand the situations.
I treat myself as special child. Who have bigger role than everyday chaos. That role is my primary road map. What if…
There are lots of ‘what ifs’ but what if everything would went right and that also wouldn’t satisfy me…
Filed under myself
kya hai ye Pyar,
kyo hota hai ye pyar,
kyo kehte hai ise pyar,
khafa hone par bhi,
kyo aata hai us par pyar,
pyar… ye kaisi paheli hai pyar,
koi samajhayega mujhe,
kis ko kehte hai pyar…
koi acha lage to koi kehta usko pyar,
koi khayalo me bas jaaye to kisi ka wo pyar,
koi labo pe halki hassi chod jaaye to wo pyar,
koi yaad aaye to koi kehta usko pyar,
koi samajhayega mujhe,
kaise hota hai ye pyar…
kabhi dost ban jaata hai pyar,
kabhi kisi ajnabi se ho jaata hai pyar,
kabhi kisi dil ke kone me,
chingaari jaisa sulagta hai pyar,
koi samajhayega mujhe,
kisse hota hai ye pyar…
koi pyar ke naam se darta hai,
koi pyar pe marta hai,
koi jakhm khaye baitha hai pyar ka,
koi intezaar karta hai pyar ka,
koi samajhayega mujhe,
kin rasto se guzarwata hai ye pyar…
kabhi mohalle ki chhato par,
kabhi daak ke khato par, (I know its connected world with msg and phone but fir bhi yehi sahi lagta hai)
kabhi college ki ho-halle (हो-हल्ले) me,
kabhi party ki balle balle me,
ho jaata hai pyar,
koi samajhayega mujhe,
kaha hota hai ye pyar…
koi kahe ‘I love you’,
koi kahe ‘I have a crush on u’,
koi kahe ‘tum pe marti/marta hu’,
koi kahe ‘mera pyar tu’,
koi samajhayega mujhe,
kaise bayan hota hai ye…
kabhi ek se, to kabhi do se,
to kabhi puri duniya jahan se,
ladna padta hai kabhi is pyar me,
kabhi khud se, to kabhi pyar se,
koi samajhayega mujhe,
kyo itna mushkil hota hai ye…
koi kahe ye pyar hota meetha,
koi kahe ye pyar hai karwa,
koi kahe iska noorani rang,
koi kahe issa bazaro me nahi milta sang,
koi samajhayega mujhe,
kis tarah ka pyar hai hota…
kabhi rang gore pe aata pyar,
kabhi sawal (सावल) pe bhi aa jaata pyaar,
kabhi balishth (बलिष्ठ) pe aata pyar,
kabhi nirbal pe bhi aa jaata pyar,
koi samajhayega mujhe,
kya dekh kar aata hai ye pyar…
koi isme sharmila ban jaata hai,
koi isme seema laang jaata hai,
koi isme jeevan saathi ban jaata hai,
koi isme fakira ban jaata hai,
koi samajhayega mujhe,
aakhir kis anjaam pe pahuchata hai ye pyar…
P.S. I don’t have proof but I think its NP problem ;)
If I could rewind time then I want to meet you again,
That first sight, that first talk again,
If I could rewind time then I would like to spend time with you again,
That walk on the river side, that trip together again,
If I could rewind time then I would like to ask out again,
That your ever saying never again,
If I could rewind time then surely I choose you over my dreams,
I would stop those freak outs, those stupid moments of insane,
If I could…
I want to be with you again…
(Title and the following text is my last day [30th March, 2012] mail at Adobe, This is reflecting my views only as Individual, Adobe has nothing to do with it)
Hi All,
Today is my last day at Adobe. This is not going to be last day kind of mail.
It is about my life, my journey and my views. It is about creating dots for my life. Since, Adobe is one milestone on my way to my dream. So, here I am writing on that milestone, where I am heading to.
I am going to follow my childhood dream, that I have to do something of My own. Over the period, that My own thing remains there but what that My own thing got change with time. So, I am going to follow that one dream of mine. If you had such dream in your childhood or early adulthood then go ahead and follow that since that what makes you really happy, that doesn’t necessary to be crazy like mine. I said dreams ‘in your childhood or early adulthood’, Since after you join corporate you acquire dreams of your superiors and successful/happy colleagues (don’t acquire mine if you don’t have passion and courage to do crazy things with your life).
This job and these future ventures of mine are also just the Milestones that leads to me to my dream. I have plans for next 20 years, So I have plans for what makes me happy for next 20 years. Currently, technology is not quite mature to handle my dream project and I don’t have enough resources to push technology like I wanted it to be.
I am not believer of revenue first philosophy, I am believer of enabling and pushing comforts to new level through my technological passion. I believe that money is always by product of passionate work. So, I am starting with little money just my savings. However, I have big dream, passion and dedication to stand for what actually I wanted. I am not what others wanted me to be, I was, I am and I will remain what I wanted it to be. That’s why I am getting my smile back.
I know what My strengths are, coding and developing anything from initial just idea to full product(I believe that :)). I am not expert in communication, since I never want it to be (it consume lots of brainpower without producing any useful ideas/thoughts). Knowing what I am not expert of is really useful because I invested my energy to find partners with that as strength. And, I know this mail could have grammatical mistakes, just another crappy thing that I never used to. :)
I am believer of open-source philosophy, the term free software doesn’t mean you can’t sell it for money. Please read this article for more information. I had hard time to sell this idea here at Adobe. Why it comes here, surprise surprise (wait for future, It will came very soon).
To me breaking Jinx of traditions is what needs to be done. Traditions evolves it’s not a constant thing, you have to change with that otherwise you will be old sooner than others. This is why I am breaking Jinx of last day or similar depressing title of mails.
And, yes I am leaving Adobe after 2.5+ years. And, I am very excited about that. I know people will think that I am too optimistic about what I am doing; its high risk business that I am entering in, however My motto is to enjoy my life.
I will let you know my future projects very soon.
Please free to contact me @
Gmail – <removed-to-avoid-spam>.2020@gmail.com
Facebook – http://facebook.com/gagan1985
LinkedIn - http://in.linkedin.com/in/gagandeep1985
There is one interesting thing about my gmail id. It is created prior to T20 cricket thing, It is about India will become developed nation by 2020, another dream of one of my ideal A.P.J. Abdul Kalam.
Regards,
Gagan
P.S. I know that breaking Jinx takes time and energy. And, I will miss most people mail box. Since, they have filters in their mind for last day or similar titles. :)
For Impatients: Use UNetbootin, Universal Netboot Installer to create bootable USB drive of your favorite Linux distro. For all Others, I got 3 new machines to create my own lab of experiments (long awaiting plan, first look of it will be posted soon). I have to install Ubuntu Linux distro but forgot to brought any CD/DVD. So, I tried installing Ubuntu from USB. To my surprise, Ubuntu came with usb-creator.exe for windows in its ISO image. You can extract usb-creator.exe from 7-zip. It comes with nice easy to use UI.
At first it was giving me some error because I didn’t formatted my USB drive. After formatting, it created required USB from Ubuntu ISO created. However, After booting the system with USB drive, system hung on the screen that display this message “SYSLINUX 4.03 2010-10-22 EDD Copyright (c) 1994-2010, H. Peter Anvin et al”. I searched a lot and found that there is some problem with usb-creator.exe itself that shipped with Ubuntu ISO. In some thread it was suggested that use UNetbootin, Universal Netboot Installerinstead of Ubuntu’s default one.
Unetbootin is also easy to use and even comes with option to download your favorite Linux distro.
After creating bootable USB disk from Unetbootin. I was able to install Ubuntu from USB drive in just 5 minutes. :) S5KZSMEP6B2F
Sometimes, It is necessary to create progress bar or loader to show user that something happening in the background. Loader/loading icons are good way to do this but If you want your user to show actual progress then something else is needed. A progress bar which shows how much task has been completed and how much left. Gmail has done some remarkable job in this. Since, Gmail loader is simple and elegant in looks. And, It is really simple to create a Gmail like loader. What you need is two divs. One div will treated like container, which will filled by other div to show progression of the task. So, outer div will contain border only and shows totality of the task, where as internal div will contain background color, it will give sense of filling the outer div. And, when some part of task happened we will increase this inner div’s size. So that, it fills outer div and give sense to user that we had done something and hence increase the progress. Here is the example to do Gmail like loading feature, <!DOCTYPE> <html> <head> <title>Gmail like loader</title> <script src=”https://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js”></script> <script> function callMe(inc) { inc = inc || 10 var w = parseInt((parseInt($(“#inner”).css(“width”))/parseInt($(“#inner”).parent().css(“width”)))*100)+ inc; $(“#inner”).width(w+”%”); if(w>100)$(“#inner”).width(0); } $(document).ready(function(){ var id = setInterval(callMe,1000); }); </script> </head> <body> loading… <div id=”outer” style=”border:1px solid;width:200px;height:10px;overflow:hidden;”> <div id=”inner” style=”background-color:#0F67A1;height:100%;width:0%;”/> </div> </body> </html> I had two divs, outer and inner. outer had border and inner had background color. In outer we had used overflow:hidden to hide inner div progression if it increases beyond 100% (length/width of the outer div). I had to use interval to show some progress. Update: Demo http://jsfiddle.net/gagan/62CZZ/embedded/result/