Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

This sounds like the tech equivalent of FOMO, "fear of missing out": http://en.wikipedia.org/wiki/Fear_of_missing_out

> If I am going to build this in React.js (which I totally should do) then I’ll spend less time in Visual Studio and more time in Sublime Text. Before I can start, I should first verify that my Sublime color scheme is up to par.

The problem is the leap from "I'm going to be spending time in Sublime Text" to "my Sublime Text environment must be perfect before I can get started." I used to have the same problem, constantly fiddling with my tools to try and get them Just So. It was an enormous time sink.

Eventually what helped me get past it is learning to be OK with the idea that your tools are sub-optimal, because they will always be sub-optimal, no matter how much time you spend bikeshedding them. There's always one more font, one more plugin, one more color scheme. You're always one step away from perfection, no matter how many steps you take.

(If you want to get philosophical about it, we humans are all imperfect creations too, right? So it makes sense that our works, the things we make, would be flawed as well. Perfection is not a quality of things made by human hands, no matter how skilled those hands are.)

So the only way to be productive is to take a sort of Zen attitude and learn to be OK with imperfection. Accept your tools as you accept yourself, flaws and all.

It reminds me of one of my favorite quotes, from Stephen Mitchell's translation of the Tao te Ching (http://acc6.its.brooklyn.cuny.edu/~phalsall/texts/taote-v3.h...):

   Fill your bowl to the brim
   and it will spill.
   Keep sharpening your knife
   and it will blunt.
   Chase after money and security
   and your heart will never unclench.
   Care about people's approval
   and you will be their prisoner.

   Do your work, then step back.
   The only path to serenity.


That's my favorite part of that translation of the Tao Te Ching, too.

Additionally I find value in this rant from Erik Naggum: http://www.xach.com/naggum/articles/3141310154691952@naggum....

    like,
    if you aren't using today's fad language in the very latest version of
    the IDE, you'll be left behind.  aaaugh!  but it's good that some people
    run like they are scared out of their wits.  if they suddenly disappear
    over the edge of a cliff, a good number of people will notice in time and
    _not_ follow them.  those are the ones that matter.

    you can scare most people most of the time, but you can't scare all of
    the people all of the time -- some will always use Common Lisp.
The problem I face with accepting imperfection in general is twofold: 1) while I may not ever reach perfection, it's still a goal, because I find that I have flaws, and I can (and sometimes do) fix them, and life is better (plus after fixing I may then see new flaws to fix that I couldn't see before) and 2) when I'm forced to use a very imperfect tool for [business reason], when I know about this more perfect (not necessarily more shiny) tool over here but can't use because of [business reason]. In the second case, there are two states that are happier: actively using the better tool, or not knowing about the better tool in the first place. When you already know about the better tool, and can't soon get to the point of using it actively, the transition period can be demoralizing sometimes.


I have a set of guidelines for myself to keep me from going off into a never-never land of getting nothing done, because I love new gadgets, new software, new tools, etc. They aren't rules, because sometimes the right way to solve a problem is to use something new, but they do help me avoid a lot of pointless wheel-spinning.

Some of those guidelines:

Editing text is a solved problem, emacs or vim, pick one and get back to work. I picked vim 20 years ago, and have mostly stuck with it. I can imagine someone else might have other editor options in the list of things that solve the editing text problem. I go outside of this guideline when poking at Android development, because all of the current docs and tutorials assume I'm using Android Studio and the friction is so much lower when using those tools. At other times I've used other tools. jEdit, Eclipse, OpenOffice, when they were the right tool. But, I always come back to vim for editing text, and it's always what I try first before trying to find the optimal tool...only if vim makes something hard do I branch out.

Linux distributions aren't all that different. Pick one, and get back to work. I picked Fedora 20 years ago (when it was called Red Hat Linux), and have stuck with it. CentOS/RHEL/Scientific Linux goes on my servers, because it's just like Fedora, except stable and reasonably secure for up to a decade after release. Other options are reasonable, but there is no reason for me to switch. I have to know the server-side of every distro my software supports (and FreeBSD), but I don't need to know the desktop minutiae of every distro, so I ignore it completely.

Avoid relying on proprietary tools, particularly those that require a lot of learning to use. This one is more subtle. Maybe the best tool for the job is a proprietary piece of software or a web service...but, it's difficult to have faith that it will be around in five or ten years. So, if there is a slightly worse Open Source option, I will choose that option, because I am less likely to have to learn it again or re-develop my ancillary tools to work with it. I happily pay for good software...but, I don't happily pay (in time or money) for a forced upgrade/migration cycle.

There are lots of others that are less relevant for this context; experience can make some kinds of decisions quicker to make. Though, I guess it can also put blinders on making it harder to see new and better ways to do things. It's probably worth revisiting these decisions every five or ten years to be sure the landscape hasn't changed dramatically.


Thank you for giving it a name. I do believe you nailed it with FOMO. Interesting.


It's interesting that you "have tons and tons of ideas for mobile apps, web applications" but don't see them through to completion.

I'm the opposite: few worthwhile ideas but consistently finish the side projects I start, however minor -- I don't allow myself to start a new one until I've finished the last one.

We should trade.


Maybe you all shouldn't trade positions but contact info.

In my experience, I'm much more productive if I'm collaborating or otherwise have obligations to someone. It sounds like the OP needs some human interaction, which is often good for minimizing certain bad self-indulgent habits. For example I eat much healthier when my wife is around then when she's not, even if the meal is just for me.


I hope one of your side projects you finish is to clone yourself many times, because you've got a rare talent, finishing things you started!


this entire thread has been very informative


It also reminds me of an Einstein quote.

"Reading, after a certain age, diverts the mind too much from its creative pursuits."




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: