Live data from Hacker News

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

thorstenball.com

171–180 of 319 posts

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

#171
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,…

This reminds me of something Rich Hickey said about becoming a better developer: https://gist.github.com/prakhar1989/1b0a2c9849b2e1e912fb “A wide variety of experiences might lead to well-roundedness, but not to greatness, nor even goodness.”

Yea this is 100% nonsense, and is borderline gatekeeping. Well roundedness allows me to identify a particular language/tech stack that is most suitable for a task and then I can just drill down on it and get productive very quickly.

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

#172
post #155
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…

Now if you multiply these hypothetical two or three weeks by the hourly rate of someone who can learn, you'll get the cost of replacing the author with another employee. My point is that the cost could've been much smaller.

In my eyes, you neglect the opportunity cost of "using one tool for everything": You end up with a solution that is much harder to mantain, since the wheel will have been re-inventend many times over and sprinkled with bugs along the way. Given a problem of fixed complexity, at some point costs will rise when fewer tools are used.

In summary: There is a "too much" and a "too few" when it comes to the number of tools used in a project. Where in that spectrum the OP is falling, we can't possibly know without knowing more details. Maybe the cost could have been smaller, maybe they hit an optimum and costs couldn't have been reduced by fewer tools (or more tools).

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

#173

Earlier quoted context omitted.

> 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…

[deleted]

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

#174

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 environm…

Did you find yourself writing Java differently after writing Clojure?

I find myself not writing Java now thankfully :)

My day job is embedded systems programming for aerospace, so it's almost entirely C/C++ with some tooling in Python.

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

#175
post #160

Earlier quoted context omitted.

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 fact…

I don't doubt it's possible. What I do doubt, is that it's possible to know several languages in-depth and at the same time be at least very good in a specific domain (webdev & mobile apps are not domains), have good algo and problem-solving skills, have decent to good soft skills, know at least a little bit of PM and also be a good conversation partner and well informed citizen of the world, while also being a good…

Yeah, it's a matter of personal choice.

My choice was to forgo any hobbies unless they are somehow useful for programming, ignore most of being "well-informed citizen of the world", ignore the whole mating and breeding business and to focus solely on programming at first, then on programming-related fields that picked up my curiousity. I'm still competent enough in other programming- and work-related areas - at least I've never been told otherwise - but, indeed, half of what you write about is nonexistent in my life.

Actually, if there was a monastery for programmers, with ascetic lifestyle and good broadband connection to the Internet, I'd go there in a heartbeat.

OTOH, I don't think you'd need to go to such lengths normally. As a programmer, you'll be working for 40 years at least, right? 30 minutes of reading a day will eventually get you to the respectable N (if you choose this particular field), it'll just take longer.

The OP said the fact that he learned multiple languages makes him fall behind his peers in coding tasks. I'm saying that he would have no such problems had he learned these languages in-depth and it's perfectly possible to do so. I admitted immediately that the effort needed for this is at least substantial, no disagreement here - I just pointed out that, after that initial effort of consistently learning N languages for 2*N years, the following languages become very easy to pick up. That's it :)

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

#176
post #56

I learned many languages for years and I received a poor return on time investment. Later, I started learning AWS in depth and studying for certs. I now know way more than I previously did about networking, envelope encryption, messaging, infrastructure as code, pipelines, caching, CDN’s, networking protocols, load balancers, dns, and designing highly available and scalable systems. In summary, don’t forgo learning a…

and system isn't rocket science, it's been coded by good engineers knowing the limit thus gives you a good abstraction for you to learn it quickly. that is, get hands dirty and start coding. Look at those who were _so_ good at Novell's NetWare admin goes? Loot at those who were _so_ good at openstack goes? And no more longer, you can see those who were _so_ good at k8s goes XD Look

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

#177
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.

What would you recommended first? I'm also self-taught, just JavaScript, typescript and react and a tiny bit of shell scripting. Job never asks for anything more, but I want to get better at designing, engineering, and building scaleable webapps. So more towards "full stack" I guess.

Haskell sounds super cool, but it seems like nobody really uses it to build things on the web. They mostly just talk about how it "helped them think".

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

#178
post #169

Earlier quoted context omitted.

And I would even say that’s not true most of the time. Why is the update button slow? - Is your customer in Asia and your servers are in us-east-1? Do we need a multi master database one in each region? Can we make even that faster by doing an eventually consistent write? - do we really need a synchronous update process or can we use queues to make it more consistent? - is our web server slow? Should we scale horizon…

Answer 5. Update implemented as O(n!) for the input dataset graph because the coder didn't knew any better.

But with a complex system. How would you know where the bottleneck is if you don’t know how to instrument your entire system and how would you know the possible solutions?

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

#179

What a terrible advice. Does author has trouble with discipline? You don't get anything by learning more and more programming languages. Programming languages are tools, be expert at 2 or 3 languages and that should be enough. Learn anything more to solve a specific problem. You understand the crux of a language by being expert at it not by "me too" novice at it.

touche

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

#180
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,…

> Lately I've confirmed its because they know exactly 1 language , but they know it so well & in so much depth, they know exactly where to look, the right mcmc library, the right slice sampler, the right optimizer, that's what matters.

That sounds like your "issue" isn't knowing too many languages but that you don't know any one language as in depth as they do though?

I don't see why you'd want to unlearn anything.. doesn't that knowledge only help?

I think there are benefits to learning more languages but also support the idea you should have at least one you're super comfortable with.. thats not mutually exclusive!

Post reply on HN