

I am stuck to set priorities in my career. - playing_colours

I would like to ask for some advise. I'm enthusiastic about programming with strong desire to grow but the problem is I am struggling to set priorities in what to work on next and what skills to build and polish.<p>Basically there are just too many things that I think either interesting or just important for me to work on to succeed. 
1. I work as a .NET software developer at company which specialised in building high load web applications on .NET framework. I do my best and would like to bring more value and build expertise in what is needed at work. So I need to invest time at work and at home to read blogs on actual problems at work, write pet apps, read other people code in .NET etc.
2. I am interested in trying to learn some JVM functional language (Scala or Clojure). I tend to want to leave .NET in some years for something else and JVM languages are possible candidates.
3. At the same time I have an idea to create my startup application - to get some understanding of business, to get my own thing done. I wouldn't like to use .NET for it but Node.js for real-time chat and Rails.
4. I would like also to learn some foundamentals of computer science: to build my expertise in algorithms, ML, etc.<p>The problem is I can't do all these things now and I am struggle to choose what to focus on. If I try to focus on some point from the list I feel I lose some opportunities in other points. Say I am doing some node.js for a week and staring to think if what I do is the best choice or I can invest my time and put efforts into .NET things and bring more contribution to my current job etc.<p>Does anyone have the same problem? How can one manage to finally set priorities, calm down and start doing hard work without any doubts? May be some advice, some book etc. Thanks.
======
msluyter
I have the exact same problem, s/.NET/java/. I think it's become increasingly
common these days, because there are so many different interesting competing
technologies. I went through a long period of dithering, trying to figure out
where I wanted to invest my spare time, jumping around from IOS, django,
rails, and other stuff, and eventually just bit a bullet went with ruby &
rails, for better or worse. So, I still invest some time getting better at
java, and then most of the rest to learning rails.

But still, I'm constantly pulled in other directions. "Oooh, Meteor??? that's
shiny!" And I feel that you have to learn at least some javascript (which is
really pretty cool). So yeah, it's hard to maintain focus.

Barring other ways of deciding, you could look for a vibrant community. I've
been really impressed with level of passion and engagement from the ruby
community.

~~~
playing_colours
hehe, agree on meteor :) and I also said the same when read on vert.x .

------
Rickasaurus
As someone who has been in the industry for about 10 years now I can say with
certainty that the shiny new technology of the week will no longer be the hot
new thing next year. Most of them will simply disappear in the 3-5 year time
frame.

Want advice? Pick a problem and become really good at solving it. Know the
theory and know the tech most people are using to solve it (Hint: It most
likely won't be on hacker news). Ignore just about everything else.

Once you've got well above average skills, try to get on a team with people
who know more about it than you. You can learn new stuff mentored in about
1/5th of the time.

~~~
playing_colours
What do you mean under "problem"? It's say "building web sites using RoR" or
it should be something more or less specific?

~~~
achompas
I don't know how GP feels about this, but web development is almost
commoditized at this point. The barrier to entry is pretty low, and supply has
grown sharply as more people learn how to code.

I think GP means something less specific, like "become an expert in
distributed database systems" or "learn to develop infrastructure for
distributed machine learning." Those problems are complementary to some of the
biggest areas in tech now (machine learning, distributed computing) and will
not go away for a long time.

------
jqueryin
We're not quite there yet, but we're looking to solve this problem for you
when we build out our "suggestions engine". You can contact me directly if
you'd like to know more.

mojoLive - <http://mojolive.com/invite/corey>

------
osivertsson
My idea would be to find a mentor of some sort.

Someone you can sync with weekly about your progress, preferably on something
with a clear goal. Start small ("What is the simplest thing that could
possibly work?") to be able to demo to your mentor each week.

~~~
playing_colours
Thank you! It's the second advice here to find a mentor. I think it's not easy
to find a smart guy who will mentor you but I ll try.

