Live data from Hacker News

Ask HN: As a programmer do you have ups and downs and periods of intense doubt?

news.ycombinator.com

1–10 of 63 posts

Ask HN: As a programmer do you have ups and downs and periods of intense doubt?

#1
Hi all,

Am a developer based in Africa and have developed small applications for the company I work for an airline ground handling company and have also created apps for sale on codecanyon.

Am a competent programmer not necessarily a good one but am able to get things done when under pressure, For example I made the codecanyon application at a previous job as an intern when we were required to comply with certain ISO regulations within a month. I did it as I had no way out. It has earned me approximately 250USD per month which in Africa is enough to pay rent but not be self employed.

The problem comes when I need to do something that I am 100% responsible for. For example create a SaaS app. The usual process goes like this Have an idea, Get excited, come up with all kinds of cool/new features that look marketable/useful, sometimes I go to the extent of buying a domain, when it reaches to implementation I get this crippling doubt on whether what am creating will sell/will be a profitable SaaS application. I am simple crippled by the fear of failure and abandon my wonderful idea. As a result I have numerous half baked personal projects. This projects do have their advantages as I discover new ways to do things that are very beneficial to my work projects but for my personal projects and personal life they are a dead end.

Do any of you experience this, do you just push it to the back of your mind and push on forward or is it just that am a coward?

Re: Ask HN: As a programmer do you have ups and downs and periods of intense doubt?

#2
You're not a coward, you're facing the doubt that everyone else does. However, it is unhealthy to think that the SaaS you dreamed up will be successful, when so many others have failed...that realization that you've had, that there are advantages to undertaking projects that fail...that's worth holding on too...as while you may not frequently succeed at first, you can still keep learning the skills from building the failures that will be needed for a success.

Also worth realizing that the success of a project is not based purely on hard work and skill. A great amount of luck is involved.

Re: Ask HN: As a programmer do you have ups and downs and periods of intense doubt?

#3
Keep going.

If you build something and it fails, the experience you gain will be valuable - and a failed project is more valuable than an abandoned project - so even if you fail, you'll be in a better position you are in now! :D

Self doubt is normal - it's part of the creative process. But use it to be critical of your own work, but in a constructive way.

If the work seems daunting, remember the words of Dori on finding Nemo - Just keep swimming. How do you eat an elephant? One bite at a time!

Re: Ask HN: As a programmer do you have ups and downs and periods of intense doubt?

#4
One fundamental feature of programming (development, software engineering, whatever the name), is that you have to face the unknown.

If you already knew what problems lie ahead and their solution, you would already have programmed it, and then what use would it be to rewrite the program? Just re-use the previously written code!

So by definition, what you will develop, will be a program solving a problem with unknown dimensions and solution. You start by writing the code for the known parts, but while doing that, you have to live with the fear of the unknown that lies beyond the next procedure.

Performing specifications and analysis phases is a way to deal with this fear of the unknown, by drawing a coarse map. But often it's not possible to precise the map much better than labelling "Here be dragons" ahead (or worse, to hide the dragons with reassuring words, like Module X, or Component Y).

So be courrageous, plow ahead, and you'll be lucky, when you'll get close, you'll see that what you thought to be dragons was just a hill, and you'll find a solution to climb or circumvent it.

What you need to learn however, is how to deal with the complexity that emerges from discovering problems and solutions as you go: then you have to step back a little, and find simplifying abstractions, to refactor the work done so far, to get a simplier solution englobing all the problems seen so far, (and hopefully that will be found in the future).

Re: Ask HN: As a programmer do you have ups and downs and periods of intense doubt?

#5
From my previous experiences one man show is very difficult. Especially if you dream big and have high goals (e.g. monetization, startup idea etc.).

I am now trying to involve at least one person to all my side projects. Even for small projects. There is great problem solving attitude - Divide-and-conquer.

If you can split problem to smaller parts , you can involve some other passionate friends who can participate and help you.

Re: Ask HN: As a programmer do you have ups and downs and periods of intense doubt?

#6
Yes, I've had similar periods of doubt when considering ideas for my personal projects, though never to the extent you've been experiencing.

In general, doubt is a healthy thing. It allows you to weight the decision and the consequences before blindly jumping in and possibly making a terminal error. Without doubt as a balancing mechanism, humans would be acting on a rush and we would be living in anarchy and chaos.

That said, however, there is a limit as to what you should allow your doubts to do. Speaking of your personal projects, it is normal to have an idea, initially consider it great, get excited about it, then in a few days sometimes weeks/months to cool down with regard to it. This is in principle the necessary process. You need to let your ideas prove themselves before you act on them.

But then when you're convinced this is a solid idea, which has a potential for market acceptance and the real need it can satisfy, then it's time to put your doubts in the back drawer and decide whether you go with it or not. The idea may be great but too big for you alone to handle it, in which case you start to look for outside help. If it's small enough and you can pull it off alone, then do it. In the past I had ideas I began to work on to realize later their scope was beyond my abilities to complete them so I stopped them unfinished. I choose not to think about them as failures, but as painful but valuable lessons which taught me things I otherwise would never have learned. Then in the future I would not make those kinds of errors in judgement again.

Fear of failure is also a cultural thing. Certain cultures are very much averse to risk taking and failing where the society looks down on those who tried something unconventional and did not succeed. I don't know if it applies to your situation, only you can tell, but at least you should be aware that this may potentially be affecting your perception of reality.

No one starts a software project with an official warranty letter from some authority stating that it will work. You simply recognize its potential, you believe in it and that should be enough to keep you going. That's how the mind of an entrepreneur works.

Re: Ask HN: As a programmer do you have ups and downs and periods of intense doubt?

#7
post #5

From my previous experiences one man show is very difficult. Especially if you dream big and have high goals (e.g. monetization, startup idea etc.). I am now trying to involve at least one person to all my side projects. Even for small projects. There is great problem solving attitude - Divide-and-conquer. If you can split problem to smaller parts , you can involve some other passionate friends who can participate an…

>> From my previous experiences one man show is very difficult. Especially if you dream big and have high goals (e.g. monetization, startup idea etc.).

It's been my experience as well. Pretty sad to recognize the limits to what you can accomplish alone. Sad but necessary.

Re: Ask HN: As a programmer do you have ups and downs and periods of intense doubt?

#8
Of course. Because we spend most of our time fixing our own bugs, no other profession confronts someone with their limitations and shortcoming as much as computer programming does.

But a cheesy pop-culture reference rings true here:

Q. "Can a man be brave when he is afraid?" A. "That is the only time a m an can be brave." -Game of Thrones.

Re: Ask HN: As a programmer do you have ups and downs and periods of intense doubt?

#9
Getting excited, coming up with features, buying domains, feeling doubt, questioning my sanity... I consider these all normal stages of product development.

Try thinking of them as road signs. They indicate you are getting closer to your destination. If any of these road signs are amiss, then start worrying (and check your pulse to make sure you're still alive).

Re: Ask HN: As a programmer do you have ups and downs and periods of intense doubt?

#10
> This projects do have their advantages as I discover new ways to do things that are very beneficial to my work projects but for my personal projects and personal life they are a dead end.

Absolutely I experience this and I expect most programmers have a few half baked or in-progress projects laying around.

You are focusing on the wrong aspect (the half done part) and not on the very beneficial part - learning for future projects. Keep those half done projects organized and in version control so that you can come back to them later. Better yet, license them all as BSD and put them in a public repo. Then if you need them for work 1) they can't be exclusively co-opted by a company even if they are used there (after all you built them on your own time) and 2) others can learn and contribute.

If you are definitely not coming back to them be sure to tag them as abandonware so people aren't expecting bug fixes.

Post reply on HN