Live data from Hacker News

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

thorstenball.com

191–200 of 319 posts

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

#191
post #169

Earlier quoted context omitted.

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?

By doing a proper architecture design and data analysis before writing a single line of code, instead of coding away without any sense of direction.

Delivering a good result out of that process, requires knowing algorithms and data structures tailored at the problem space.

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

#192
post #155

Earlier quoted context omitted.

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…

True.

Still, bash and (most likely) sed could've been easily replaced with Python.

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

#193
post #191

Earlier quoted context omitted.

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?

By doing a proper architecture design and data analysis before writing a single line of code, instead of coding away without any sense of direction. Delivering a good result out of that process, requires knowing algorithms and data structures tailored at the problem space.

Right. Like that’s going to happen in an environment where shipping code on two weeks sprints is expected. Even in your perfect world where this does happen, it’s not like you could possible know what type of bottlenecks or usage patterns will happen until you get real users using your code.

Are you suggesting we go back to a waterfall approach and not get fast feedback and learn what works as you are developing?

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

#194
post #14
post #13

Earlier quoted context omitted.

And none of those OO langs can be relied on to have tail recursion so now you a new problem

Most non-functional languages will implement map/filter/reduce as loops under the hood, but realizing that there is an abstraction for general sequence processing frees you up to focus more on the core business logic at hand and reduces the surface area of your code for bugs. Sure, handrolling a loop is a trivial activity that novice programmers can figure out, so you should _never_ get it wrong because you _never_ e…

I don't recall exactly how many handrolled loops I've messed up in the last 10 years, but the number is either 1 or 2. Could I mess up one or two map/filter/reduces in 10 years? Is it impossible to mess them up? What about the cases they don't cover, so you use your own recursion?

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

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

I manage to do it, though I've been studying for 20 years. Helps that I don't watch sports.

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

#196

Earlier quoted context omitted.

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

Haskell actually could help a lot with JavaScript. Functional programming, writing stateless functions, function parameters, and generally manipulating functions, are valuable and useful concepts in JavaScript and React, and Haskell forces you to learn and understand them. Alternatively, F# could fill that niche if you prefer its syntax.

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

#197
post #52

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 don't know if I'll ever be able to master any language anymore Even with just a handful of languages in my toolbox, I feel this way too. A mixture of unease and anxiety. In addition to syntactic variations, I find that the notion of writing idiomatic code in a given language amounts to more thinking overhead which eats into productivity. I'd need to be programming in the same language over a long period of time f…

I don't care so much about writing idiomatic code anymore. For example I tend to write python like javascript. Mostly only use lists and dicts (JSON basically), while ditching the whole OOP/class concepts for the most part. What I prefer is more or less a language-independent style, which makes it easy to port code at least between languages with similar paradigms.

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

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

> cook something else, not just rotate dish-ware.

As a developer you are the chef. If all you can make is spaghetti, is it the kitchen's fault? OP makes the point explicit: the language shapes the way you approach problem solving.

When declarative, functional and procedural programming all yield the "same fucking spaghetti", you might just have missed the point.

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

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

why don't you share the code that they wrote? I'm interested in seeing the code produced by people in academia. Anyway, once you reach enough mastery in your craft using one language or another is just a difference in deciding what level of abstraction you can work at and this is determined by performance requirements.

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

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

Is the language, or the languages library?
Post reply on HN