Live data from Hacker News

Ask HN: How do you choose languages for building applications?

news.ycombinator.com

21–30 of 48 posts

Re: Ask HN: How do you choose languages for building applications?

#21
Company / professional context:

Step 1: Raise your eyes above the computer monitor in front of you. What is the team / company already using? What will they likely be using in one year from now?

Step 2: Ask yourself honestly without "I wish I could and I wish I would" - can the problem be solved using the tech that the team / company already has invested in?

Step 3: Make decisions. Default to the answer in Step 1, but consider the evaluation in Step 2. Try to get as close to 1 as possible.

At home / "for the shits and giggles": Whatever is interesting. Sometimes even bending backwards to force functionality out of tech that has absolutely no business doing what I want it to do.

Re: Ask HN: How do you choose languages for building applications?

#25
if coding a webapp, I use full stack ruby on rails (hotwire/turbo/javascript with importmaps).

System stuff go/pyhon. I haven't had time to learn either Rust or Zig, but I think Golang is good enough for now.

I have a lot of java experience, but to be honest the opensource toolchain outside big tech is too much of a pain to use (say gradle or mvn). I believe SBT is quite good but learning scalla goes into the bucket alongside rust and zig.

Re: Ask HN: How do you choose languages for building applications?

#26
Language choice isn't about religion, it's about leverage. Lisp-family languages like Clojure and Racket are at the zenith of expressive power. Elixir/Erlang is for telecom-grade fault tolerance, concurrency, and distribution. Rust and Go get you bare metal performance. If you're wanting to work professionally as a software engineer, you should pick a language based on future job alignment. And nobody "rewrites it later in a more performant language" that's just not a reality.

Re: Ask HN: How do you choose languages for building applications?

#27
post #2

No matter what people say, the reality is that people use languages they know best. And unless you strive for the best possible performance, there is really no other reason to change that. Do not let perfectionism be in the way of "good enough". Also, you can ship fast and write more performant version, possibly in different language, later.

Although sometimes the choice is so you can learn that language, which is absolutely the best way to learn a new programming language.

Absolutely! I always tell people who want to learn to program to have a goal in mind. Something they want to actually build and use, not just yet another todo list they do not care about and won't touch ever again. In a way, it is better to have a problem first, then learn a programming language to fix that problem instead of the other way round.

Re: Ask HN: How do you choose languages for building applications?

#28
Programming language choice is determined by the task at hand. If you want to create frontend web apps, it’s JavaScript/ Typescript. If you want to write an OS, it‘s C/C++. If you do data analysis, it’s R/Python. Apple ecosystem? Swift. You can continue the list. By looking at domains and dominant languages. What resources are there for your domain, what have others contributed to, what libraries/ packages are there, what’s the mindshare, etc

Re: Ask HN: How do you choose languages for building applications?

#29
I am seriously starting wiegh highly, "What languages will generative AI work best with?" Either from a baseline model aptitude aspect or that the language itself provides structural guardrails that lower runtime issues.

This comes after creating several large scale personal projects completely using AI in python.

It is interesting to think about what affordances will make AI most productive.

Post reply on HN