Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Ask HN: Most productive programming language for individual use?
2 points by Aerbil313 on July 30, 2023 | hide | past | favorite | 24 comments
I’m seeking the most productive language for my daily use, for small software I need for myself. One criteria: The speed I’m able to get the task at hand done. I keep hearing good things about OCaML, Lisps and Smalltalk, any ideas?

Edit: In clearer words, in which programming language do you feel yourself the most productive discounting factors external to the language? (like platform monopoly, runtime, environment, package ecosystem etc.) Think about the language itself.



The one with the libraries you need.

So... Depends on the task? Every language has good niches, so start by searching pypi, cargo, rubygems or even just github.


I'm most productive in the language that I know best. Secondary to that, I'm most productive in the language that has semantics and libraries that do the best at providing useful parts for what I'm trying to write. Third, I'm most productive in a garbage-collected language, unless I'm not allocating memory, or unless I need careful control of memory.

So if the problem I have is pulling pieces out of a text file, I reach for Perl. I know it well enough, and it's great at that problem. For most other things, I reach for either C++ or Java, because they're what I know best.

But if part of the goals of the project is "learn a new language", then that changes the logic. Then I'm explicitly looking for a language that I don't know. At that point, I have to go by what others say about the language, because I don't personally know it's strengths and appropriateness to the thing I'm trying to write.


It depends on what you are trying to do and what programming idioms you prefer.

What kind of tasks do you work on? Recommended programming languages for web development are quite different from embedded programming work. I may prefer Clojure for some tasks, but Rust for other tasks.

The programming language that I am most productive in may not be your preference. Some people prefer Rust for low-level tasks, while others prefer C++ because they have used it for decades.


Which is the one you feel yourself most productive in?


For what task?

I do not use a hammer when I need to tighten bolts, but when I need to drive nails I use a hammer. ("Use the right tool for the job at hand.")


I clarified the submission, yet let me specify a task: CLI tools to fetch, store and manipulate textual data and files. Maybe very simple GUIs.


>> CLI tools to fetch, store and manipulate textual data and files. Maybe very simple GUIs.

Perl is great for this type of work. It is designed for concise text manipulation and it is very easy to be productive with a minimal amount of code:

https://opensource.com/article/22/2/text-based-code-perl


Thanks!


Requirements too vague to begin to answer the question.

Choice of language generally has little to do with overall productivity, except you will need time to learn a new language, libraries, idioms, ecosystem. So best to start with the language you have the most expertise and experience with.

The factors you discount can affect overall productivity much more than the programming language.

Your question seems like asking which tires will let you drive fastest, ignoring everything else about the car and the road and your driving skills.


I'd say it's the language that you personally know the best. (Because then you won't constantly be checking syntax.)

Perl actually had really good pattern matching, and Perl 6 has a lot of crazy new features -- but if you don't know of them or how to use them, it doesn't help.


I'm a proponent of the most popular wins. Look at the top five and pick one. You'll get lots of support in terms of libraries and general know-how for most OSs which helps immensely on productivity. You'll want to make it as easy as possible on yourself.


hmm, you should name the environment where things should happen ? Could be e.g. inside the Java-VM, .Net, maybe some mobile-OS or a Browser-Engine ? Once that is clear, it's a bit easier to recommend a/some language/s.

greets


Not any single environment, but general daily computing tasks. Updated the submission for clarification btw.


C++ for CLI , Swift for UI


Ruby. Python. Go.


Thanks, may I ask for one of three?


Then go. Cannot beat it's speed, ease of use, productivity compared to ruby or python.

Miles ahead.


Java


That is the one language I’d think is not as productive for individual use. Can you say why or are you kidding?


I'm not the one you're asking. But the thing about Java is the library. It's like Barbie - it has everything.

You feel slower in Java? I'm not saying you're wrong. But are you enough faster in another language to enable you to write (and debug!) functions that Java gives you for free? Or, do you not need many of those functions?


I originally asked for languages in which the language itself is more powerful, yet you got me thinking, because I want speed first and foremost. Still, wouldn’t a Lisp dialect (which are famous for individual dev productivity) like Clojure better in this regard, because it has afaik Java interop?


gojurescript.


I understand that Go is simple (thus productive), and JS has every feature on earth (thus productive), but why Clojure over other Lisps (which are already productive)?


because of reagent.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: