views:

351

answers:

7

Whether Learn programming from other (may be senior) programmer or self learning?

Which one do you feel the good choice for any programmer?

+4  A: 

I think a combination of both is best.

Whilst experience is always valuable, you shouldn't let that stop you from researching your own way of doing things.

A fresh approach to a problem can sometimes be better.

RSlaughter
+3  A: 

I guess you should do both. Senior programmers can show you lots of tricks and have and can share their vast experience, but by doing self-learning, you actually go through the process of discovering things yourself which is equally valuable.

So I listen to senior developers but try to figure own complex concepts on my own and then later consult someone more experienced to clean up any misconceptions and get some feedback.

DrJokepu
A: 

I'd say a combination.

Best way to learn is to just start using a language. Just dive in.

Mentoring is incredibly useful to provide hints as to where to start or to help refine what you've learnt.

Rob Wells
+10  A: 

Speaking as someone who spent 4 years as an instructor at a commercial training company, I don't think that in that time I taught a single person to program. I may have taught them language syntax, good practices, which libraries to use etc. but learning to program was always something they had to do for themselves.

anon
+4  A: 

Self learning should be your primary objective.

Only learn from seniors or others who are competent and experts.

Follow these rules:

Rule #1 Assume nothing.

Rule #2 Question everything.

Rule #3 Explore and experiment.

Rule #4 Use your imagination or creativity.

+1  A: 

It's somewhat "to do it alone or to do it with a girl" question. Both approaches have their benefits.

You can learn lots of valuable things from senior colleagues. But not necessarily. One can be a senior developer and have a genuine senior experience. Or one can spend seven years being a senior developer by doing primitive and very simple things.

In both cases there are pros and cons. You can get insight into some real-world issues and the ways to solve them. That is good. You can also learn to do it the wrong and unprofessional way and to grow accustomed to it. That is bad.

If you learn things on your own, you are free to see all available opinions and solutions and choose the one you like. Or even develop your own ideas and solutions.

The risk is until you reach some level of experience there is no way to tell whether you should embrace what you learn from a senior or a particular blogger if you learn something on your own or you should take it critically and looks for other solutions.

After some time you just get the feeling of what is right and what is wrong even if you are inexperienced in this particular area.

So my advice would be: stay open to all sources of information but take everything critically. Not just accept some solution to some problem as a blessing and follow it all your life.

Some amount of skepticism does you good. :)

User
A: 

Self-learning is best, but the inability to ask questions can leave you stuck for a long time (this is where resources like Stack Overflow come in handy). I have always considered mentoring as simply inheriting prejudice, but you can at least ask a question and get an immediate answer - an answer which you need to sense-test for yourself, of course.

Bob Moore