Ask HN: Help - I've hit a wall.
62 points| chris_dcosta | 14 years ago
I'm a single tech founder and I feel like I'm going round in circles trying to get through this wall. I'm thinking of trying some freelancers but even the thought of explaining the dependencies is like a heavy weight in itself.
It all came to a head today, when I just realised I can't even beak down the next step into small prices because of the dependency. It's getting me down and I've run out of ideas to get me through. It feels like I'm wading through mud, and actually the end is in sight, but it's like looking at the summit of Everest from the ground.
Does this make any sense to anyone? Can you help?
[+] [-] jsherer|14 years ago|reply
Seth Godin calls this point "The Dip". It's a trough in the lifecycle of a project/plan/development/etc when the high and excitement of starting something has died off and the rewards don't seem worth the remaining effort. I can tell you, though, that if you put in the time, get inspired, and slog through the toughest part of "The Dip", you'll come out the otherside with something great. Most projects don't make it past, so there's great value in doing so.
Here are some links to read more about "The Dip":
http://www.slideshare.net/stevecla/pushing-past-the-dip-how-...
http://sethgodin.typepad.com/the_dip/
http://www.ribbonfarm.com/2007/09/06/seth-godins-dip-and-mul...
[+] [-] chris_dcosta|14 years ago|reply
I'd like to add one more point, in that the project has reached the stage where I was starting to get people excited about it when it was presented, as opposed to the early reactions where the concept wasn't fully formed, and most people couldn't relate to it. I think I am feeling the pressure of expectations as well. People are now asking me when it will be ready, whereas before there was no such anticipation.
[+] [-] jacquesm|14 years ago|reply
What has happened is that you have lost the overview, cleaning up your code will restore that.
[+] [-] fexl|14 years ago|reply
Sometimes it's good to walk away, as in literally take a walk and utterly ignore all your problems, and sometimes it's good to chip away, as in doing one little easy thing that's within your immediate power, however meaningless it might seem. I find that such small efforts produce a sort of "compound interest" effect, where your gains start to pile up faster than you expect.
[+] [-] chris_dcosta|14 years ago|reply
I'm going to give this a go. Thanks.
[+] [-] jtheory|14 years ago|reply
If your overall vision is too solidified in your head, there may be some minor decisions that were a good idea at the time ("well if we're already doing X, it's easy to also give them Y!"), but now that you're down in the muck they are complicating things far more than you imagined.
Sometimes you can just drop a few things you actually don't need (but have become fixed in your vision though habit), ...and dependencies start collapsing, and the whole thing takes on a new shape.
Also: don't overlook temporary solutions.
You can often fix a dependency with a cheap hack that obviously won't scale in the long run... but it gets you over the hump, and you'll be able to replace it with the real solution down the road.
[+] [-] jharrison|14 years ago|reply
The way that I've dealt with it so far is I'll grab one of my friends, technical or not (technical would be preferred) and I'll just start dumping. I'll go through all the things I've identified as hurdles and why I'm struggling with them. More often than not my friends don't have to say anything! Just talking to them helps me find something I had missed. They often have nothing to add but just speaking the challenges helped me find solutions. Someone mentioned talking to a rubber ducky in another comment and I suppose this has a similar effect.
Also, as mentioned many times, take a break. Go for a hike or go see a movie. Do something else. Give your brain a break.
You can also try getting out good ole pencil and paper and writing things down. Start a list of the smallest possible thing you can deliver and deliver it.
It's all doable given enough time so give yourself time.
[+] [-] egfx|14 years ago|reply
[+] [-] Jemm|14 years ago|reply
[+] [-] montecarl|14 years ago|reply
Just take a break when you get stuck and do something else.
[+] [-] carlsednaoui|14 years ago|reply
Breath, go for a run.
Take the time to refractor your code. Cut non-fundamental features, focus on shipping something. What can you achieve in the next week? Focus on that.
Disclaimer: I'm not a programming expert, I've only been coding for 6 months. However, if you want to bounce ideas on marketing your product, feel free to reach out: [email protected] (I do everything from lead gen to paid search marketing for a living - would be happy to help where possible).
[+] [-] sundeep_b|14 years ago|reply
* Even if it takes a day, try telling it to a rubber duck. Take it for a walk if you guys get tired at desk. * Talk it to at least one friend who can try to understand. In my short experience, this helps in realizing how we can or want to proceed. Or even go with the freelancer your thinking to hire, you might succeed. Can't know unless you tried once. * Stubs and skeletons * Sequence matters. If it is only you that has to do parallel work, you have to do it anyway. Even with a freelancer, you should decide how to proceed. So, either ways, even though hard, you need to break it up. Try not to multitask if you do it alone.
And, I think more technical details might fetch you better advice. I could be wrong!
[+] [-] nodemaker|14 years ago|reply
So basically if you are tired of attacking the problem vertically, just leave it and try to attack it horizontally.
Now of course unlike my fizzbuzz problem, your problem can have a lot of more dimensions than two but then it can even become more fun.
Also never forget that you are doing this because you find this the most fun thing to do.
[+] [-] adrianscott|14 years ago|reply
Your project is too big. Get a smaller piece or version working that does something useful for someone.
Don't refactor code.
Just get something small(er) working.
[+] [-] HerraBRE|14 years ago|reply
Sometimes I can push through (e.g. due to a deadline) by picking at individual tiny features and working my way through the spaghetti until they work. I generally start by adding something visible to the UI and keep at it until it works. This has the advantage that I'm almost guaranteed to make visual, visible progress, which helps with motivation.
But often, the only choice is to take a step back, accept that I'll be making "no progress" for a couple of weeks and go clean up my mess and re-factor the code. :-)
[+] [-] csomar|14 years ago|reply
My advice: Do you have customers that paid money and are waiting for this particular problem to get solved? If not, then who cares. The world is fine if the problem doesn't get solved tomorrow.
If you are running out of money, go and do some freelancing/consulting. Get back to it in a couple of months, and you'll see it can be solved differently.
Don't try to solve the problem now. Your mind is probably too busy and anxious calculating future predictions of the outcome (and what got it here in the first place). Get back to it when your mind stop these calculations, you need more brain CPU time to solve this.
[+] [-] read_wharf|14 years ago|reply
You've put a lot of time into the project so far, so you've learned a lot about the project and its domain.
When you first started your project you didn't know as much as you do now.
So consider using everything you've learned to date, and start over from scratch. Total re-design, total re-write.
If you have trouble explaining the dependencies of your own project to other developers, that's a sign of ... something. If you can't break the project down into pieces for yourself to work on, that's a sign of ... something.
[+] [-] jason_slack|14 years ago|reply
I never knew this would be a hidden benefit when I learned to ride last year.
[+] [-] RawData|14 years ago|reply
One of two things usually happens...a half hour after I start reading a book...the solution will POP into my head...or TWO, I'll wake up the next morning with the solution...works every time...
[+] [-] bdfh42|14 years ago|reply
I am at a similar stage with a current project - where I can see there is still lots to do (some of it cloudy - so not a clear view to the summit) - you just have to keep plugging away and - well the good feeling comes back when you realise you have got through it with a good solid base of code behind you.
[+] [-] paulsutter|14 years ago|reply
Check out this discussion for Pud's question "400K users, what now?"
http://news.ycombinator.com/item?id=3850739
You gotta be impressed by his humility and pragmatism, and you gotta be impressed by the wide range of interesting ideas presented.
Try it out!
[+] [-] JohnnyFlash|14 years ago|reply
[+] [-] robomartin|14 years ago|reply
Not affiliated with Mixergy. Just a happy user and premium member.
[+] [-] huhtenberg|14 years ago|reply
[+] [-] dreamingforward|14 years ago|reply
[+] [-] gte910h|14 years ago|reply
Drop me an email at the address in my profile if you'd like me to help you cut a lot off to start with.