HN user

Prikrutil

2 karma
Posts0
Comments4
View on HN
No posts found.

Some people have already mentioned that learning a new language often makes you a better programmer in other ones. I don't have any experience in improving skills that way (I started learning Haskell, but it's too early to see whether it's making my Erlang better or not), but what I've learned is that unwillingness to learn new languages makes you a fanboy of language(s) you already know. Being a fanboy of any language is what I'm actually afraid of (just because I know what it is to be a fanboy =)

Suppose, there is a guy (I will name him "Poluekt"), who is a master of Foo language (sounds like "a master of kung-Foo!"). Foo is a really good functional language having active community, excellent runtime and good libraries; Poluekt is good at writing in Foo but isn't brave enough to say "I'm not a Foo, I'm a programmer who wants to choose between languages when it comes to solving non-trivial problems".

What will happen with such a guy when he hear of nice features a new language (say, Bar) offers to solve problems in domain where Foo is (was?) the language of choice? Oh, it will be very offensive for our guy to hear that Bar beats Foo in some cases or even is press it. It will make Poluekt so unhappy, irritable...

Nobody knows how many Bars there will be on the Poluekt's way, but learning them seems a good way to become a good specialist.

It would be very tempting for me just to answer "yes, it's very important" or "not, it doesn't matter at all" with appropriate arguments, but I don't think any of those answers could reflect in full what I actually think.

It's very important. Your effectiveness as a programmer depends on which languages you can use when solving problems. Also how easy it will be to extend your program in the future depends (among other things) on which language you've chosen.

If you want a language to reflect your thoughts as directly as possible you may want to use one of the problem-oriented languages (R for statistics, Erlang for fault-toleranse servers, Python for scripts etc).

I think that language matters, because the right chosen one usually increases your efficiency when it comes to writing a specific applicatoin.

It doesn't matter.

In short: it doesn't matter how sharp a sword in your hand is if you are a master of swords.

My current languages-to-learn list is: [Erlang | [Haskell, OCaml, Lisp, Python, R]]

I agree that some kind of anxiety is often (don't want to say "always") near to those who are said to be "rabid thinker". But is depression what I should think of a "natural side effect" of being such a man? If so, my would-be future (yeah, I want to be "rabid thinker"!) is going to be full of depressions :/

What I beleive is that any depression has a cause which can be (and should be) eliminated if you are going to be happy. If you really know what the problem is, you probably know what to do with this (it's harder when there are so many problems that it becomes impossible to find out the one-and-only root of all evil).

It may seem as if I'm trying to say that depressions are unusual. Not really, I think that is a stage which should be overstepped (but what if there are some such stages?)

It sounds like you have already read some of these books and find them useful to find possible "bugs" in your mind making you anxious. If so, maybe you'll find my comment a bit naive.

What I've decided is that the only way to find out all the "bugs" to annihilate is by ignoring all the easy to get suggestions made by other peoples (who are smart enough to do that without any assistance). It's important that you should find out where the roots of your problems actually are and how to get rid of them by yourself. I beleive that no one knows about you more than you do.

Why don't I consider such books as a good point to start from? In fact, I'm a bit afraid of such books... They look like ones about patterns: they don't always turn you into a good programmer, but there is a chance that after reading you won't be able to think in terms other than you have already read about (that is actually what I'm afraid of).

Anyways, I'm going to take a look at books you've mentioned (with care :). Thanks!