Live data from Hacker News

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

thorstenball.com

121–130 of 319 posts

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

#121

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 have walked up to a shop keeper and asked [french(Can I have a loaf of)][Chinese(bread)]

I'm white so I'm sure this was even more confusing for him

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

#122
post #92

I couldn't agree more, but if I could make a recommendation. If you already know a mainstream OO language, you won't get much benefit out of learning another in the same arena. Going from Java to C# you will learn less than going from javascript to ocaml or Java to Haskell. The best thing (for my own learning) I ever decided to do was learn Haskell. I have never been paid to write code in Haskell but it gave me such…

Failing to learn how to program in Haskell made me realize that I had absolutely no understanding of what I was really doing when I was coding and sent me down a deep rabbit hole learning all the computer science concepts I hadn’t ever learned as a self taught programmer.

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

#123
Given my limited memory abilities, I have doubts that I'll ever have a master level or even very strong grasp of more than 2-3 languages at any point in time. C, C++, python, Clojure, and Java are usually in that circular queue (both when I was in school and now in industry), but I find myself humbled every time I come back to one after 6+ months. I imagine that if I were to truly sink 10 years into a single environment, especially a nearly stagnant one like C, I'd carve out some deep pathways in my brain.

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

#124
post #61

Earlier quoted context omitted.

> cron, Makefile, bash, sed For a programmer with a minimal amount of linux experience, it likely takes a week to catch up to what the codebase is doing with these. > regex There are good tools to destructure regex. > python sql jq query I consider those as "given" or "learnable good enough in a week" > nginx conf Don't know this. Overall, "knowing all these languages" seems overblown in the choice of words for me. J…

> There is 1 proper general-purpose language in there That will depend on what the GP has done with SQL. Also, JQuery implies in Javascript. There are up to 3 general-purpose languages in there, one of which nearly any developer will know. There should be plenty of people capable of taking the codebase, but it's not a trivial single language case. The upside is that good developers will be overrepresented when compar…

> That will depend on what the GP has done with SQL.

I am sure they built their UI with SQL - as opposed for example simply doing some queries, or some joined procedures at best.

> Also, JQuery implies in Javascript.

With uttermost likelyhood, they did not only dynamic changes of some html-documents there, but also their backend and crypthography.

Enough with the snark... ("Language" is such a fuzzy term anyways. You could go as far as to label any interaction with a computer as one - there will always be a protocol according to which the interaction happens.)

> There should be plenty of people capable of taking the codebase, but it's not a trivial single language case. The upside is that good developers will be overrepresented when compared to the population that knows one of Python or Javascript.

I still stand by my point. As far as the cost of polyglotism is concerned, that is a one-general-purpose-language-codebase and the rest being DSLs (apparently R too). There are other codebases where there are really 2+ languages. I.e. some functional lang on top, some performance critical code hand-written in C, some logical programming language to do some constraint programming. Each of those 3 takes quite a lot experience.

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

#125

Earlier quoted context omitted.

I'm not familiar with the author, but I didn't take the article strictly from the perspective of the labor market. There are people who program as a hobby, for example. For those who are interested, it can be enlightening to see how different language designs lend themselves to different tasks.

The author wrote 'Writing an Interpreter in Go' for reference.

I didn’t make that connection. That’s a very good book.

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

#126
post #105

Learn more ? I'm actively trying to unlearn a bunch of languages at this point! ofcourse, when I was a wageslave in the bay area, its nice to know python, java, javascript, scala etc. - got me jobs every 2-3 years & put food on table. now that i'm in academia, its completely upside down. literally everybody is way more productive than me in just about any task. The other day I as supposed to program a poisson clock,…

It's perfectly possible to know several languages in-depth. It just takes a lot of time and effort. Moreover, it gets easier with time and practice. Knowing N languages makes learning N+1 language just a bit easier. For me the turning point was around N == 10, since when learning a new language - and yes, in-depth, including idioms, stdlib, some external libraries, maybe some framework (if needed), and also some facts about the implementation and its inner workings[1] - takes a week at most, and for simpler cases a weekend is enough.

OTOH, it took around 15 years to get there. I understand that this kind of dedication may not be possible or worth it for everyone.

[1] Because there is very, very little unique features to each language. Unless you go to the fringes, you're bound to see the same concepts applied again and again and again, which gets really disheartening after a while. If you don't believe me, try naming any "new" feature which was added to your favorite (EDIT: I meant mainstream - TIOBE top 10 or 20 - lang here!) language recently - and I'll show you that same feature implemented 10 or 20 years ago in another language(s).

EDIT: more neutral wording.

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

#127
post #98

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 thought I was the only one. Also class and method names : is it array.length(), array.len(), array.Length, array.size(), len(array), Len(array).

Thank goodness for Intellisense style autocomplete, and hover documentation.

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

#129

I spent a lot of time learning Haskell early in my career. I doubt I'll ever write an actual program in Haskell. I probably won't write so much as a single line of it that will ever see production. (Thank goodness. Haskell is far from perfect, despite its many zealots.) But learning Haskell has changed the way I write code in any language. It's helped me to write better, more testable, more readable, more maintainabl…

I also really like Haskell but except for one consulting customer I only use Haskell for side projects.

Recently I started a side project with the deep learning part in Python and the rest in Haskell. I ended up just week ago converting the Haskell part to Common Lisp. Much faster dev, but I have been using Common Lisp since 1982.

Post reply on HN