7 ways to break free when you’re stuck in a tech project

Alessandro Dal Grande
3 min readAug 20, 2014

I got stuck countless times and this are the weapons I used to fight back each time. What about you?

Get fresh air

Drop your Mac and go for a walk in the park. Do some meditation. Cook or attend to your plants in the garden. Flex your muscles with Lego. Do anything but think about the project: this helps the brain re-wire. For a framework, see the Pomodoro technique.

Use total immersion

Somewhat intuitively being the opposite of the opposite of the previous point (it’s not), this is based on the total immersion technique advocated by Tim Ferriss. From his 4-Hour Chef book (no, I’m not an affiliate, yes he is one of my models):

It is possible to vastly compress most learning. In a surprising number of cases, it is possible to do something in 1–10 months that is assumed to take 1–10 years.

Watch Youtube videos, listen to podcasts, read newsgroups and books about the problem you’re trying to solve. This is especially for hard problems: you can’t tackle one without massaging your brain into “automatically” thinking about it. I used this technique during my master thesis and at my startup Nifty to create a computer vision-based app.

Ask around in your favourite community

Communities like Stackexchange are a big help these days, so if you have a technical problem that you cannot top, ask: maybe someone else experienced it and solved it already. I think the tech community is one of the strongest for this kind of things.

Write a test

I’ve lost the count of how many times tests saved my a**. Most times you have silly errors blocking you and a test will shed light on that slippery detail you were missing. If it’s difficult to write a test, e.g. VoIP system or image processing on iOS, write the most minimal test you can, but still do it. This will force you to drive your brain through how the logic you have to implement works.

Break it down

The technique of Caesar used to conquer Gallia, divide and rule, is not only great in war, but in solving brainy challenges too. Break down the big monster into small dependencies, tackle each one, then connect all of the dots. (self note) It’s easy to forget the 80/20 in tech is 80% thinking, 20% writing code.

Change algorithm

Look for top industry ways of doing things first, then personalize to your case. If this still doesn’t work, start from scratch, using different assumptions, to arrive to the same solution. When I implemented the initialization part of a 3D reconstruction routine, I quickly realized that, as good as it was in theory, it was a nightmare from the UX point of view. I researched with the experts and eventually found a new approach that someone devised just a few months earlier.

Change tech

Don’t be dogmatic about your technology choices: choose what is best for the situation. If early in the project you realize the friction is high due to chosen tools, just change them. Nowadays, thanks to open source, you have the biggest toolbox ever!

--

--

Alessandro Dal Grande

Dreams Driven Person / @aledalgrande / Founder at Nifty (www.nifty.fashion) / @niftyfashionapp