5 ms·
Ask HN: Most productive programming language for individual use?
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.
- gregjor 3y agoRequirements 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.
- thesuperbigfrog 3y agoIt 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.
- Aerbil313 3y agoWhich is the one you feel yourself most productive in?
- thesuperbigfrog 3y agoFor 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.")
- Aerbil313 3y agoI clarified the submission, yet let me specify a task: CLI tools to fetch, store and manipulate textual data and files. Maybe very simple GUIs.
- thesuperbigfrog 3y ago>> 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 https://opensource.com/article/22/2/text-based-code-perl
- Aerbil313 3y agoThanks!
- wg0 3y agoRuby. Python. Go.
- Aerbil313 3y agoThanks, may I ask for one of three?
- wg0 3y agoThen go. Cannot beat it's speed, ease of use, productivity compared to ruby or python. Miles ahead.
- gardenfelder 3y agoJava
- Aerbil313 3y agoThat is the one language I’d think is not as productive for individual use. Can you say why or are you kidding?
- AnimalMuppet 3y agoI'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?
- Aerbil313 3y agoI 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?
- Bosinski 3y agohmm, 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
- Aerbil313 3y agoNot any single environment, but general daily computing tasks. Updated the submission for clarification btw.
- nathants 3y agogojurescript.
- brucethemoose2 3y agoThe 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.
- deleted 3y ago[deleted]
- AnimalMuppet 3y agoI'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.
- mrcode007 3y agoC++ for CLI , Swift for UI
- MilnerRoute 3y agoI'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.
- WheelsAtLarge 3y agoI'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.