8 ms·
Ask HN: What language would you code if you didn't need to make money?
I'm currently a frontend JS/React engineer but planning to retire in one or two years (FIRE) and don't plan to stop coding, only not doing it for money. My language of choice will probably be Clojure.
- html5web 6y agoI’d choose Python.
- PaulHoule 6y agoAVR8 macro assembler.
- deleted 6y ago[deleted]
- ddingus 6y agoPASM Parallax Propeller Assembly Language. It is beautiful, more productive than it should be, and the chip is s lot of fun.
- qq4 6y agoHaskell, hands down. And here I thought there were jobs to be had in Clojure. Am I deluded by the functional Kool-Aid?
- yuppie_scum 6y agoNot sure if this counts but I really enjoy Terraform.
- alexmingoia 6y agoHaskell.
- softwaredoug 6y agoProbably depends more on the kinds of projects I’m doing in this hypothetical semi retirement hobby lifestyle :). If I’m playing with data science stuff, Python. If I’m in a large codebase, something statically typed. If I just want to learn languages, Haskell? Forth?
- loa_in_ 6y agoHaskell for anything on a system, Forth for anything on a microchip, React for anything in a browser with Rust for fast web code (in WebAssembly)
- frompdx 6y ago> Forth for anything on a microchip 2020 was the year I learned about Forth. It really is fun and practical. I run FlashForth on my Arduino Uno.
- loa_in_ 6y agoIt really is. It's just it's too impractical under an OS. And there's not enough job postings/project managers that would consider Forth.
- the_only_law 6y agoAda, Erlang, maybe something like D. I'd probably find time to learn about all that category theory / lambda calculus stuff and use some more pure functional stuff.
- ThrowMeAwayOkay 6y agoC#
- nocubicles 6y agoI would code in Go.
- closeparen 6y agoI write Go at work I thought I would use it for a recent side project to avoid stumbling around another language, but I just couldn’t do it. Testing err != nil branches is excruciating. I have no will to do it except for money, and low test coverage makes me feel too dirty to be happy with my work if I skip it.
- johnthescott 6y agoi find proper error handling to be just as interesting as coding the actual algorithm, especially server-side. debugging big distributed systems often boils down to how errors are handled. throwing an exception loses too much context and feels like cheating.
- closeparen 6y agoIt’s interesting when there’s some way to recover from the error, but the vast majority of the time I’m just wrapping it and passing it up to the caller. It also depends somewhat on how many potentially-error-returning calls are involved in an operation. Go’s verbosity means there can be 7+ different error return points in what would be a single statement in another language (HTTP request, subprocess, etc). I sometimes like the fact that I have to handle error for the operation generally, but not at that level of detail.
- runawaybottle 6y agoJavascript.
- cristiansosa 6y agoI am really comfortable using Javascript and PHP. So, when it's a hobby, so as not to feel pressure, I program in these languages.
- a_e_k 6y agoProbably still C++. Sure, it's got plenty of warts and pitfalls, but at this point I'm sufficiently used to the ones in the subset that I work in that I can just get on with the domain problem and not really have to think too much about the language.
- tomjuggler 6y agoProcessing. The creative coding language.
- branneman 6y agoHave you seen & tried Racket?
- d26900 6y agoI picked 11 languages that I found to be interesting: C, C++, Python, JavaScript, Java, Ruby, Scala, Rust, Kotlin, TypeScript, Swift. Then for each language I created categories (7 in total): - Job Results from Indeed Japan - Release Year - Salary in Yen - Stack Overflow's Dreaded Languages - Stack Overflow's Loved Languages - Stack Overflow's Wanted Languages - Tiobe Rank After that, I first discarded 63 % of the suboptimal languages from each category (37 % rule). And selected (roughly) 37 % of the most optimal languages from each category. Finally, I gave a point for the top 37 % languages in each category, and it culminated to: 1. Python 2. JavaScript 3. Rust & TypeScript 4. C IOW: the 37 % rule tells me that these programming languages are decent. Python, JavaScript/TypeScript and C have a solidified job market already. (More than 9000 results; ignoring the outlier TS. A minimum salary of 800000 yen.) The only outlier with the lowest result was Rust. (Kotlin was the second lowest, and Swift the 3rd lowest.) But the heavy Stack Overflow weighing (42 %) brought Rust into the top 4. So the answer is: Rust. (The language that I would like to use in a professional setting, but can't.) Websites used: - https://insights.stackoverflow.com/survey/2020#technology-most-loved-dreaded-and-wanted-languages-wanted https://insights.stackoverflow.com/survey/2020#technology-mo... - https://jp.indeed.com/ https://jp.indeed.com/ - wikipedia.org - https://www.tiobe.com/tiobe-index/ https://www.tiobe.com/tiobe-index/
- superbcarrot 6y agoI think the spirit of the question is "what if you didn't have to check other people's opinion and the job market to pick a language?", it's kind of the opposite of what you've done here.
- d26900 6y agoWell not quite. I based it on the Stack Overflow developer surveys as well (Tiobe too). Tiobe is basically a measure for how often a language is searched for, if I am not mistaking. Rust for example has a small market share (based on the Indeed Japan results). I still want to use Rust (even if I don't get to use it in a professional setting). Though, I understand your sentiment, but I guess it's a "technically I am right situation". Or what do you think? Tl;dr: I picked Rust. :) Edit: Though on a second thought: you are actually right! :) Sorry OP!
- forgotmypw17 6y agoPerl
- toyg 6y agoPython. I adopted when it wasn’t popular and I believe I’ll probably never find a better language for my sensibilities.
- d26900 6y agoPython is so cool and old (1991) or let's say "battle-tested". I really like minimalistic languages like C (1972) and Python. It seems like minimalistic languages have higher chances of survival.
- SinisterAlex 6y agoScheme :O
- branneman 6y agoRacket
- tubularhells 6y agoIf I did not need the money I would never code again in my life, besides some automation and web scraping to archive stuff I want a local copy of. Life is simpler and happier for me when I minimise computer time.
- d26900 6y agoWas money always the primary incentive or did you just lose the passion for programming over time?
- tubularhells 6y agoWeb development was gradually overcomplicated the past 15 years. There is no joy in it, yet it's where the jobs are. I envy people who are doing it in their spare time, but for me it's a special kind of hell. Low level and game dev is enjoyable but hard and demanding, not because it is bloated with shit we don't need, but due to its nature and restrictions. I like minimalism in my own life, not the plan9 kind of autistic 'suckless' kind but the Zen Buddhist letting go variety. That's not what we have now in computer programming.
- d26900 6y agoThat sentiment is shared by a significant amount of people[1][2][3][4], it seems. I am also sympathetic to minimalism in life (owning essentials only) and in many of my (programming) projects (single-header libraries[5], minimal dependencies). I think I would be content with C, Bash, Python and SDL alone, if I wasn't so dependent on the need to "exchange my time for money". (And perhaps Rust as well.) References: [1] https://www.askonomm.com/blog/i-dont-want-to-do-frontend-anymore https://www.askonomm.com/blog/i-dont-want-to-do-frontend-any... [2] https://jonathanwhiting.com/writing/blog/games_in_c/ https://jonathanwhiting.com/writing/blog/games_in_c/ [3] https://begriffs.com/posts/2020-08-31-portable-stable-software.html?hn=2 https://begriffs.com/posts/2020-08-31-portable-stable-softwa... [4] https://copyanddesign.com/blog/the-benefits-of-static-websites https://copyanddesign.com/blog/the-benefits-of-static-websit... [5] https://github.com/d26900/JamaisVu https://github.com/d26900/JamaisVu
- e-clinton 6y agoRust
- xkriva11 6y agoPharo!
- peruvian 6y agoI wouldn't code projects at all anymore but probably scripts or small things in Python or JavaScript when need be.
- oumua_don17 6y agoCommon Lisp
- frompdx 6y agoMostly I wonder how much I would continue to program. Something I struggle with now is thinking of interesting projects to work on with the free time I have already. Probably I would choose Clojure(Script) because that seems to be where I feel the most productive. Maybe Janet, but I've struggled to be productive with Janet for things like webapps. I might spend more time tinkering with embedded using Forth. Over the last year I've slowly built out small pieces of Forth code on the ATMega328 for controlling a small robot (writing snippets code to control an ultrasonic distance sensor, motor controller, etc). One day I'd like to tie all of that together but it is a very time consuming process. What I would really want to focus on if money were not an issue is photography. Before the pandemic I had planned to build a darkroom in my basement. It seemed non-essential so I've put it on hold. When things start to go back to normal I won't feel guilty about hiring contractors to come to my house to help me indulge my hobby. Darkroom work is very time consuming but also very satisfying. Meditative even. You need a proper space for it and most importantly you need lots and lots of time. I would also spend more time exercising, or at least as much time as I do now. Working from home has allowed me to replaced the time I would have spent commuting with getting more sleep and exercising 3-5 days (usually 5) a week. At the moment I think I am the strongest I've ever been. Not as fit as I was in my teens and early 20s, but definitely stronger and more disciplined. Anyway, what's the point in having free time to indulge yourself if you are too frail? I'd like to keep my momentum going and hopefully remain physically capable when I'm old. I think I would want to get out of the house more. Go talk to people. Take pictures of people. Write about it. This was something I was passionate about long before coding became part of my life. Coding pays the bills and gives me money to spare so I can at least do some of this. I think it would be hard to eek out a living on something like this alone, but who knows?
- d26900 6y ago> I'd like to keep my momentum going and hopefully remain physically capable when I'm old. On that matter, here are some interesting people: - Robert Durbin (64-year-old doing calisthenics): https://youtu.be/NPG94VMWPww https://youtu.be/NPG94VMWPww - Lucio Chiquito (the 104-year-old PhD student): https://www.bbc.com/reel/video/p090s793/advice-from-a-104-year-old-phd-student https://www.bbc.com/reel/video/p090s793/advice-from-a-104-ye... Maybe it will serve some of you as an inspiration to draw upon. Who knows?
- vimy 6y agoC++. Build my own 3D engine and game. Even more fun if I code it on a pentium 1 with windows 95.
- Qem 6y agoPharo, surely.
- ska80 6y agoCommon Lisp and Idris :)
- diragon 6y agoWhatever it is, it needs to be simple (in the way C is simple) and modern. Currently Zig fits that combo technically. Other features that are nice to have: - REPL or some mechanism that's close enough (zig has --watch which is not close enough, but shows some promise perhaps). Python is ideal. Common Lisp traditionally too, but it's a bit clunky in other ways. - resource efficiency. Zig's pretty ideal for this. - superb package management. Rust's Cargo is the shining example. Zig has no package management yet. - if async is a thing, it needs to be a core thing that's supported by everyone. Zig's looking good here. Some features that are hip now that I don't care that much: - extreme safety when it costs fluidity and fun. - OO features - advanced PL features - gathering all PL features just for the sake of having them These are my opinions today. Next week, I might be in the mood for "Why were any languages invented after Common Lisp? Seems like a huge waste." sigh Sometimes I wish I knew only a single programming language.
- pknerd 6y agoTurbo Pascal and VB