Live data from Hacker News

Learn more programming languages, even if you won't use them

thorstenball.com

41–50 of 319 posts

Re: Learn more programming languages, even if you won't use them

#42

Frankly I've never understood the desire to be a polyglot. The time spent learning new syntax and a new standard library could have been spent learning libraries, algorithms, data structures, etc, so I don't think it's the most productive way to improve yourself as a programmer. I'm more interested in learning a new language because it lets me do something I couldn't do before.

It should be qualified that you should learn languages that are actually conceptually different. You could easily learn 20 languages that are practically identical as far as the actual concepts are concerned. The difference, to you as a programmer, between C and Python, is much smaller than between Haskell and either of those, or between Haskell and Idris.

Covering a larger volume of concepts is what should be the emphasis. That is definitely useful, maybe even more useful than just memorizing stock algorithms and data structures, especially if you engage with the mathematics behind the languages.

Re: Learn more programming languages, even if you won't use them

#43

At this point I have almost 20 languages that I've used for at least two years, which is what I consider an decent bar for "knowing" a language. The problem I now have is that I don't know if I'll ever be able to master any language anymore. Mmmmaybe C, since I've used that fairly consistently, albeit on-and-off for 25 years. But whenever I get to an "if" or "for" or function declaration, I often have to look at an e…

Mastering a language is not about not making mistakes or not having to lookup things on Google

Mastering a language is about not making rookie mistakes and get the best out of it

Re: Learn more programming languages, even if you won't use them

#44
post #7

I’m getting tired of this. Yes I see the benefit of knowing multiple languages but let’s look at the other side of that coin. There’s the dev that is familiar with a dozen languages and writes terrible code in all of them. When exactly are we supposed to be learning all these languages? Nights and weekends that effectively has you working 24/7? Or more likely some developer that has a personal relationship with the C…

IMHO the whole point of learning new programming languages is exactly not to rewrite everything to the latest hipster language on a whim. Instead this adds new tools to your toolbox, so next time you can choose a tool that's a better match for a problem instead of trying to bend a language that wasn't created to solve such problems. IMHO having many small specialized "speedboat languages" around which can be learned…

In the contest of a distributed application I definitely agree with this. When constrained to a monolithic application architecture, small focused languages can be problematic. As monoliths grow and become more complex, domain shifts and requirement changes can take you out of that small language sweet spot.

Re: Learn more programming languages, even if you won't use them

#45
So I fully agree here because techniques from one language often lead to much better technique in a language of a different paradigm.

For instance, I now use many of the functional techniques I’ve learned in JavaScript to write less, easier to read code instead of more loc of imperative code. I’ve also worked at a company that had many functional patterns implemented in php, and frankly made the language quite decent.

In terms of the time issue, I spend about 15 minutes a day just before bedtime learning new languages. I probably manage to do this 4 days out of every 7.

Re: Learn more programming languages, even if you won't use them

#46

Frankly I've never understood the desire to be a polyglot. The time spent learning new syntax and a new standard library could have been spent learning libraries, algorithms, data structures, etc, so I don't think it's the most productive way to improve yourself as a programmer. I'm more interested in learning a new language because it lets me do something I couldn't do before.

I always had the feeling that the hard stuff about programming wasn't libraries or syntax, but how to structure code conceptually – especially if you want to keep it flexible and future proof.

Learning Rust for example gave my C and C++ a noticable boost, just because Rust made some topics unavoidable that I managed to subconsciously avoid for years when it comes to C, C++.

Re: Learn more programming languages, even if you won't use them

#48

Frankly I've never understood the desire to be a polyglot. The time spent learning new syntax and a new standard library could have been spent learning libraries, algorithms, data structures, etc, so I don't think it's the most productive way to improve yourself as a programmer. I'm more interested in learning a new language because it lets me do something I couldn't do before.

My impulse to learn new languages is primarily driven by my desire to be able to read code that other people are writing, not necessarily to use it myself. For example, I'm not a huge fan of C++ or x86 assembly, and I doubt I will ever write anything significant in either, but I learned C++ so I could read what other people were doing with it, and I learned x86 assembly so I could understand reverse engineering tools better.

Re: Learn more programming languages, even if you won't use them

#49

At this point I have almost 20 languages that I've used for at least two years, which is what I consider an decent bar for "knowing" a language. The problem I now have is that I don't know if I'll ever be able to master any language anymore. Mmmmaybe C, since I've used that fairly consistently, albeit on-and-off for 25 years. But whenever I get to an "if" or "for" or function declaration, I often have to look at an e…

I'm this way with foreign languages: Spanish and french. I know french very well, and learning/speaking Spanish is significantly harder because I'm always using french words by mistake. sure it'll get better with practice, but interlingual dyslexia is real.

I’m not too familiar with the Southern European languages, but I am quite familiar with the Northern European languages. That is where I find the opposite of your difficulty happen, where all those languages look like a different flavour of German to me, so they were very easy to pick up, because I could just read Swedish slowly without ever looking at a textbook or dictionary, and over time I found myself quickly able to write it.

Differences between people, or differences between cultures perhaps. Having grown up in the Netherlands I did already come across Frisian and Limburgs, which are also slightly different but if you keep reading or listening you just pick it up. So I don’t know, keep practicing I’m sure you’ll get Spanish!

Re: Learn more programming languages, even if you won't use them

#50
post #16
post #5

I think there's a bit of a threshold with language learning. When you know a handful (or just theo necessary ones for your job), there is probably a bit of tendency to be religious about your "stack". When you know a few more than you need, then you're driven to pick between them for any given thing. Then, you start picking languages you don't know and learning them to do some thing you need done, and so on. I wrote…

"Here are the languages and DSLs that ended up in the mix: cron, Makefile, bash, sed, regex, jq query, python, R, sql, nginx conf" And also anyone who could replace you will have to know all these languages. Nice approach to job security.

That’s good or bad dependent on the world you want to see.

In my opinion, engineers should have an ample toolbox for much the same reason that a good carpenter has a tool for any given thing.

If well tooled engineers is what you’re after then you’ll be replacing one with another; with few surprises.

Post reply on HN