Personal Productivity Stack Exchange is a question and answer site for people wanting to improve their personal productivity. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'd like to ask you for some advice. I'm currently building the MVP for my startup. I'm also quite motivated to improve my skill in programming, but since I decided to do this project I spent a lot of time learning the language and framework I'm using via various materials. I read books like Javascript Ninja, Effective Javascript and learned a lot about Closure and Prototypal inheritance. I also read Discovering Meteor and even dug into the source code of meteor to learn about DDP protocol. While I enjoyed the learning, whenever I started to code, the main task I'm supposed to do, I procrastinate and rationalize my self to learn more. As a result, I've got little done for the MVP. I really want to get out of this vicious cycle.

Should I get a accountability partner or a mentor to keep me on track? Any advice for my predicament? Thanks in advanced.

share|improve this question
It sounds like a partner to help you develop would be the perfect decision. You two could discuss different designs, review code, and keep each other on track. Good luck! – Gaʀʀʏ Jun 28 '14 at 17:08
up vote 4 down vote accepted

Ship something today, ship anything.

Create a product people can actually use, even if its just one person with whom you are close.

The important thing is to develop a real platform that you can build on.

If the best platform you have today is a piece of paper and a pencil or lego blocks then ship a manifestation of your idea. See if that works. Get feedback and make it better.

If you can publish an web page then do it. Today. Even if it is a simple html form that produces a fake result. Ship that and see if it works.

What you ultimately want is to develop a platform where you can continuously build, ship and then test to see how you can make it better.

share|improve this answer

You sound like you love learning, and that's great. I'm the same way. Don't beat yourself up about it.

Here's what I've learned to do:
Whenever I'm learning a new coding language, I find a problem I want to solve, or a small tool or utility I want to build, and I do it in that new language. The key, however, is to keep it small. If you're just learning the language, it's pretty ambitious to use it for your MVP.

As a newbie, you will soon have to Google how to do something or another. So then you'll learn something else. That should feed your craving for knowledge enough to give you a little relief. Enjoy it, until you find the answer you've been searching for, then get back to your programming.

It may take a few cycles, but if you've really learned the language, and you really do want to produce something, eventually it's more fun to create than to learn how to create.

On the other hand: I've found that this doesn't work when I'm trying to learn something and I'm overwhelmed by the subject matter or by what I've aspired to do. I'm procrastinating by seeking more knowledge, because I've taken on too much.

That's called avoidance. Or maybe even fear. Often times when we're afraid of failing at something, we keep researching, keep learning, keep organizing, and getting ready to start... All so we don't have to actually do anything.

Take a good look at your goals. Reassess your plans.

Have you bitten off more than you can chew? Maybe you need to dial it back a little.

share|improve this answer

Are you a solo startup or do you have partners? Is there anyone else expecting you to complete a minimum viable product?

If not, get someone, ideally a potential customer/user that you will demo the MVP for.

Once you have someone you will demonstrate your MVP to, make an appointment to demo it. That's a hard appointment on a calendar, date, start, and end time. Make it far enough in the future that you think you will have time to complete the MVP, but not so far that you can slack off getting it done. Now go do it.

Better, make a recurring appointment at 2 week intervals to show them what you have so far. That's "show" as in demonstrate a working system. You may not have enough done to count as MVP each iteration, but you should have demonstrable progress.

share|improve this answer

Just start immediately! Best way to learn programming is by actually doing it.

Obviously, this project is very important to you and looks like you are trying to achieve perfection, but it is not possible. One will never write a perfect code. So, the sooner you start - the better.

If you are not sure where to start or don't have sufficient skills to do everything right now - try organising the work into smaller tasks, and doing first the ones you have the skills for. Doing so will also improve your skills and you can learn alongside doing your project.

It is important to realise that in the IT sector you actually never stop learning. You will always have to learn more and more, but of course, learn it while doing something productive.

share|improve this answer

Might be a little late for this one but - I had no experience with coding at all but when I went to college, the first thing they did was teach us the logic and design of the program and how to pseudo-code (which is basically an outline of how the program will work)

Within 2 or 3 months of understanding that, I feel like I can pick up a language and learn it easily.

In my opinion, if you want to learn how to code quickly and (maybe) easily, learn the logic and design of programming first.

That's my bitcoin to you sir. Good luck.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.