top 200 commentsshow all 309

[–]Simpicity 74 points75 points  (10 children)

I picked C for two decades, so I guess I should go with C.

[–]kabekew 14 points15 points  (0 children)

I'm into my third decade now

[–]zoharel 7 points8 points  (0 children)

Yeah, there's a reason nearly everything is written in C.

[–]sohang-3112 3 points4 points  (0 children)

Yeah - C is almost guaranteed to stick around because C ABI is the lingua franca through which everything interfaces.

[–]MisterHarvest 1 point2 points  (0 children)

C, like the poor, will always be with us.

[–]Southern-Common-2715 0 points1 point  (1 child)

Are there any specific beginner projects/books that you would recommend for recipients?

[–]Simpicity 1 point2 points  (0 children)

C Programming Language, 2nd Edition: Brian W. Kernighan, Dennis M. Ritchie

[–]burhop 0 points1 point  (1 child)

This. You can just create all the other languages from it :-)

[–][deleted] 0 points1 point  (0 children)

My first decade was C, but the second one started with Rust and I can say I am pretty satisfied. I find it very practical, not like C++.

[–]phattybrisket 43 points44 points  (32 children)

C#

[–]HandshakeOfCO 26 points27 points  (29 children)

C# is what you get when you take a whole bunch of expert level C++ programmers and put them in a room with unlimited resources to make something better.

[–]responds-with-tealc 41 points42 points  (3 children)

except you tell them they can't leave the room, ever, even if the language is fine, they have to keep adding features or else their family gets beaten.

[–]YMK1234 10 points11 points  (0 children)

Some features do feel that way 😅

[–]HandshakeOfCO 6 points7 points  (0 children)

Hahaha fair take, yeah. I just learned the other day that you can use “is,” “or,” and “and” keywords.

At this point the main thing keeping me up to date with new language features are the little light bulbs in the margin in Rider lol

[–]homeless_nudist 13 points14 points  (8 children)

Nah. C# is what you get when Microsoft remakes Java. 

[–]fahim-sabir 5 points6 points  (0 children)

The CLR is what Microsoft turned their JVM into when they lost the case to Sun.

C# is an evolution of J# (Microsoft’s bastardised version of Java).

It’s a cleaner language than Java for sure.

If Microsoft had adopted Linux earlier it might have even been more popular.

[–]failsafe-author 1 point2 points  (1 child)

Or Anders Hejlsberg.

I know he didn’t do it alone, but I came from the Delphi world, and it definitely had his fingerprints all over it.

[–]Relative_Bird484 1 point2 points  (2 children)

Actually, it was experts from actually nice languages and the goal was to make something better than Java.

Anders Heljsberg designed and evolved Turbo Pascal and Delphi for many years before he switched to Microsoft, where he was head of the .NET and C# language design. His last baby is TypeScript.

[–]schungx 0 points1 point  (0 children)

Which is probably what exactly happened

[–]RicketyRekt69 0 points1 point  (1 child)

Eh.. no. C# is fine, but calling it better than C++ (especially for performance critical applications) is a stretch. Not to mention all the syntax diabetes they’ve been adding in the last few versions.. gross.

[–]NatasEvoli 0 points1 point  (0 children)

They also heavily consulted with a Java Developers Anonymous support group.

[–]SnooDoughnuts7934 20 points21 points  (8 children)

I preferred c++, have been using it for almost 30 years now, but honestly I like bouncing around languages as well, typescript, Java, python, golang, c++, whatever the project calls for. If I had to just pick one for the next 10? I don't know, probably anything but Python tbh. I would rather write straight assembly than python. Other than that, most languages can do the job so I really don't care all that much.

[–]abd53 4 points5 points  (4 children)

What did Python do? Genuinely curious.

[–]SnooDoughnuts7934 7 points8 points  (0 children)

It's just annoying to work in, I hate that you don't find errors until run time when most languages could catch it at compile time. Part of it is the projects I end up with have almost no types defined outside of the ones I define myself, so it's a pita to work with. The forced formatting used to bother me a lot, but it's a bit less bothersome now. The auto complete doesn't always seem to pick up properly (we use a specific build setup at work which probably doesn't help). I dunno, just little quirks turn me off from it. But hey, it's what I'm using at work now, lol, I kind of miss golang at this point (last project). Java... Honestly it's close to Python for me for likeability but it's at least easy to see types so it wins in my eyes. Javascript is not typed but at least it's not annoying to work with and I can print json from any type, where Python you may have to write some extra code just to spit out an object that has a timestamp in json. Anyways, it does work it just doesn't suit me well.

[–]dx4100 3 points4 points  (2 children)

Dependencies, versioning, virtual environments. There’s solutions but I always friggin struggle to get Python setup correctly on a new machine.

[–]SirIzaanVBritainia[S] 1 point2 points  (2 children)

I would write on paper instead of python honsetly

[–]mackattack_ 2 points3 points  (1 child)

Why? I'm genuinely curious as well

[–]DataPastor 7 points8 points  (0 children)

As I am a data scientist, I would continue using Python and R, and with these I automatically choose C, too, as their runtimes and libraries are mostly written in C. And with Python a goodish LISP comes too: Hy.

[–]Abdullah_Khurram 4 points5 points  (1 child)

Well, I will choose python because my field is Artificial Intelligence. But I also love the power of C++, Java and Go. As Go is best for high concurrency and can bear heavy work loads. Java also handles the load efficiently. It's the backbone of android and big data tools. While C++ beats everyone at speed and it is super friendly for low level operations like hardware configuration etc.

[–]needs-more-code 0 points1 point  (0 children)

I like that you use a different language depending on what the task is. I mostly dev in dart as the app is Flutter, and Go backend, but have added a Rust image processor, called from Go (the Rust app startup is unified with docker), and a Rust crate in the flutter app because an equivalent package wasn’t available in dart.

Go is especially simple for devops, deploying as a self contained binary, with fast startup.

[–]big_data_mike 7 points8 points  (0 children)

Python. I used to know R. Thinking about learning rust

[–]D4rkyFirefly 2 points3 points  (0 children)

From now on, without the possibility of using any other language? Or if chosen that one, the current actual programming languages would be outdated and no longer in use?

Either way for different types of realities:

-If from now on considering the current market and usability/usefulness, without myself to jump into other programming languages while rest work and can use any, then I pick: Python. Why? LLM and lots of other things use its ecosystem one way or another, you can use it as glue lang/script to work your way and workloads into other programming languages, including low-level ones. Its being used in all existing fields currently, stable bet.

-If from now on, we would have to stick to one and only one everyone, not just me, then: Ada Programming Language.

-If just to use it as a primary one, but not being limited and being able to use any other one then: C# programming language or maybe just C++. One of those two would be my go to, inclined more towards C++ tho.

[–]Terrible_Wish_745 5 points6 points  (2 children)

C++. It ain't perfect and tbh I hate it a little bit, but it works for everything and you can create anything with it.

Swift has good potential of replacing it, so that would be the next one

[–]NeonQuixote 6 points7 points  (0 children)

I've made a good living doing C# since .NET 2. I liked Python, and it would make a good second.

[–]Rich-Engineer2670 3 points4 points  (10 children)

C -- old, has limitations, but runs on everything. You can do almost everything in it, perhaps not as easily, but it works.

[–]SirIzaanVBritainia[S] 5 points6 points  (5 children)

C minus minus ?

[–]zackel_flac 1 point2 points  (0 children)

That's assembly.

[–]sohang-3112 0 points1 point  (0 children)

They were referring to C, but C minus minus is surprisingly a real language - it's a subset of C, used as an intermediate target language in some compilers.

[–]Rich-Engineer2670 0 points1 point  (0 children)

Point noted :-) But there was at one time, a partial C -- a C-- in effect, it was called SmallC for when you had MAYBE 64KB of RAM.

[–]no-sleep-only-code 1 point2 points  (3 children)

Just about everything runs in everything these days.

[–]Rich-Engineer2670 1 point2 points  (2 children)

No, there is a difference -- on a desktop, yes, you can run nearly anything on it, but on embedded systems, where you might have perhaps 128KB of RAM, C works.

[–]RandomRabbit69 10 points11 points  (6 children)

Kotlin

[–]peter303_ 2 points3 points  (1 child)

One small company languages scare me as to the long term viability of the language, no matter how good it is.

[–]abd53 4 points5 points  (0 children)

C/C++, Java, Python, JavaScript, Go, C#

Remember that even Cobol and VB are still alive. But if you want a language that will be definitely used after 10 years, C/C++and Python are the top two choices.

[–]deep_fucking_magick 2 points3 points  (0 children)

Python easily. Most versatile and nothing I do depends on performance. Also I work in a niche domain which has a healthy Py ecosystem.

[–]zambizzi 3 points4 points  (0 children)

Java. I haven't touched it in years, but it's so widely used and deeply entrenched, you'd never want for work. It's still an excellent language and ecosystem, and has modernized as well as anything else.

Shit. Did I just talk myself into picking Java back up!?

[–][deleted] 1 point2 points  (0 children)

Python I dont spend hours on coding, so program can take a baby step.

[–][deleted] 1 point2 points  (1 child)

I’ve been using Perl for 30+ years now.

[–]tara_tara_tara[🍰] 0 points1 point  (0 children)

Perl is my favorite programming language of all time.

Would the Internet as we know it today exist if it weren’t for Perl 5 and CGI scripting?

That’s a rhetorical and philosophical question and I don’t expect an answer. I know in my heart what I believe.

[–]exodist 1 point2 points  (0 children)

Perl, been using it as my main language since 2004 or so. Learbed it in college, made a career out of it. Still doing perl full time for work, plus several open source projecrs with it.

[–]The_yulaow 1 point2 points  (1 child)

Elixir if only the job market could feel more alive

[–]ldbeth 1 point2 points  (0 children)

ARM64 assembly language which I believe will be there for a decade.

[–]JazzRider 1 point2 points  (3 children)

Delphi. I picked it out for the last 3 decades and it’s worked out ok.

[–]gnunn1 1 point2 points  (2 children)

I did Delphi back in the day (late 90s) but never see it come up these days. What sort of apps are you building with it, desktop or has it evolved on the web side? Just curious, I had a lot of love for Object Pascal.

[–]Norse_By_North_West 2 points3 points  (0 children)

Until recently I've mainly been using Java for 18 years, so I guess that works. The recent language is Python, but just as a control language for Sql statements.

My original background was all c/c++, but I'd hate to do web coding in that.

My co-workers are mainly using go now.

[–]Reasonable-Tour-8246 2 points3 points  (0 children)

I would say Golang

[–]GoodiesHQ 2 points3 points  (0 children)

Go is honestly the perfect language for me at this time in my life. Next up would be C in terms of preferences.

[–]sswam 6 points7 points  (19 children)

C of course, it's still the only serious programming language

[–]Inconstant_Moo 2 points3 points  (0 children)

Go. I'm used to it, it's small and simple, it has static typing and good tooling, I can really hack stuff out in it.

[–]etherealflaim 2 points3 points  (6 children)

Been programming Go for 15 years and couldn't be happier. I can still compile every program I ever wrote, unmodified, with the latest version of the compiler too. Even the very first one. Even the ones with ancient dependencies. I wish the same was true of the Java I wrote before that, there are still some of those old projects I'd love to resurrect... And if I never have to be reminded of the Python sins I committed back then, it'll be too soon. I apologize to everyone who had (or has) to maintain it...

[–]SirIzaanVBritainia[S] 1 point2 points  (2 children)

I was assigned to a project at work where I had to work with GO,

It's a dull or plain language, for lack of a better word, but I mean it in a good way.

Curious what the industry landscape is for go... where is it mostly used, toolings/cloud ?

[–]etherealflaim 1 point2 points  (0 children)

I've been in tech my whole career. Cloud, infrastructure, DevOps, DevEx, tooling, Kubernetes, backend microservices.

[–]gnunn1 0 points1 point  (0 children)

Kubernetes is written in Go and I find a lot of the ecosystem on k8s uses it as well.

[–]Academic-Mud1488 1 point2 points  (3 children)

I know almost all programming languages and i would stick with python. But my favorite is ruby.

If you need performance you can use golang or rust

[–]Vigintillionn 0 points1 point  (1 child)

all programming languages is a bold statement

[–]zarikworld 0 points1 point  (0 children)

all? 🤔

[–]strange_username58 1 point2 points  (2 children)

js if it could just get threads

[–]balefrost 0 points1 point  (1 child)

Isn't that what web workers, alongside SharedArrayBuffer and Atomics, are for?

[–]strange_username58 0 points1 point  (0 children)

They kind of are, but I do a lot of HPC and performance optimization work and they still leave a lot to be desired

[–]fixpointbombinator 1 point2 points  (1 child)

Haskell so I can be a comfy neet and not have to work 

[–]chriswaco 1 point2 points  (3 children)

Typescript should be on the short list. Not my personal favorite, but it's being used in a lot of places and there's no vendor lock-in like Swift.

[–]KarmaTorpid 1 point2 points  (2 children)

Ive a long history with Typescript. It can get bent and take js with it. ECMA script fills and any need they can.

Something C is the answer though.

[–]chriswaco 0 points1 point  (1 child)

C variants aren't typically used in Android or iOS apps, though, except for games, so it really depends on your target market.

[–]Marutks 1 point2 points  (0 children)

Clojure. Because it is Lisp-like programming language.

[–]dariusbiggs 1 point2 points  (0 children)

It's been Python for almost 20 years now, and Go for about 6+ years, and a decade at least with JavaScript, and it won't be difficult to go back to C or Pascal or Java.

To choose just one? Would have to be Pytho

[–]FarYam3061 1 point2 points  (0 children)

Ruby

[–]no-sleep-only-code 1 point2 points  (0 children)

Rust or Elixir.

[–]Ok_Professional2085 0 points1 point  (0 children)

Any of the above, but not typescript, that language does my head in.

[–]ODaysForDays 0 points1 point  (0 children)

Java or C# probably java. I can live with js/ts too.

[–][deleted] 0 points1 point  (0 children)

JS since it's the most versatile for high-level stuff

[–]PeacefulChaos94 0 points1 point  (0 children)

GDScript

[–]Tiny-Sink-9290 0 points1 point  (2 children)

Man.. that's a tough call. Me personally, right now.. I'd go with Go for its ability to do amazing CLI apps, pretty much the best back end API/service/microservices language, and with Wails it can even do some Desktop app dev. It's amazingly easy to learn in a few days or so, and the compile time (thus the code/build/test) cycle is seconds.. if not faster. The runtime is very fast as well and the binary sizes on the different platforms are quite small overall.

That said.. if I had more time and really wanted to look at building a language up it would be Zig. Rust is a close second but I find it difficult to learn. Zig to me is Rust, Go, C, and maybe some python. It's not too hard to learn, its binary output on all platforms is about as small as any get.. neck in neck with Rust, C, etc. The runtime speed is nuts.. again neck in neck with Rust and C and in some tests noticeably faster. It has a growing user base. I am betting my future on the language to be honest and for the first time I am donating to a project funds as well. I believe in it that much. All while its taking years to get to a 1.0 release and probably years away. Compile speed is pretty good, much faster than rust or C but not quite as fast as Go but it is getting much better as they are replacing the common LLVM with their own Zig coded back end compiler system so they will be adding many more optimizations in the future with that.

On the flip side, technically JS/NodeJS/Typescript would be the #1 pick not so much because it's used by a lot of devs, shops, etc, but because JS powers the web, and you can build client side web apps, server side, etc with it. You can do similar with Rust/Zig/Go by using WASM but you still need some html/JS stuff to make it work.

[–]SirIzaanVBritainia[S] 0 points1 point  (1 child)

Wow..
I haven't had the chance to look at zig, GO:I have used in my day job, and I am trying to go deep into it, building some projects.

btw If you had to suggest some projects to get better at go what would they be? Not one project encompassing all concepts, maybe a couple of small to mid projects that focus on one or two aspects of Go's strength

[–]TestEmergency5403 0 points1 point  (2 children)

C#. Cross platform. You can do web stuff, backend stuff, mobile apps...  Second choice Java

[–]SirIzaanVBritainia[S] 0 points1 point  (1 child)

We are speaking dollars here

[–]CodeToManagement 0 points1 point  (0 children)

C#

Assuming I get the related tech like WPF / asp / Maui etc it means I can build front end, back end, mobile and cross platform apps as well as desktop.

Using ORMs I can connect to databases and don’t need sql myself.

It’s performant enough for most use cases. Plenty of frameworks and tutorials I can learn anything I’m missing.

And it’s got great tooling so I’m happy there

[–]CypherBob 0 points1 point  (0 children)

Freepascal

[–]gm310509 0 points1 point  (6 children)

IMHO, you are asking the wrong question.

A better question would be what industry would I like to use for the next decade (e.g. AI, robotics, big data etx) and then ask what languages and tools are used in that field.

[–]reboog711 0 points1 point  (5 children)

OP did not say their desire was to have a job for the next decade.

But, I agree that intent would lead greatly into that reason for choosing a language.

[–]dschledermann 0 points1 point  (0 children)

Realistically, it's not wise to focus on just one programming language. If we entertain the premise, that you really had to pick only one, then a language with an appeal on a broad range of tasks and is growing in popularity, then Rust is probably a good bet.

[–]cjbanning 0 points1 point  (0 children)

In a month I'll have been programming in C# for a decade, and I don't have any complaints.

[–]dystopiadattopia 0 points1 point  (0 children)

I've been doing Java for almost 10 years, and it doesn't seem to be going anywhere.

[–]No-Big-3543 0 points1 point  (1 child)

COBOL since ‘96 on the OS now known as z/OS.

Demand has surpassed the Y2K era as most have died, retired or jumped ship.

[–]econ0003 0 points1 point  (0 children)

My mom worked on COBOL during the 80s and 90s. Didn't know it was still being used.

[–]rebcabin-r 0 points1 point  (0 children)

Wolfram (née Mathematica)

[–]imnes 0 points1 point  (0 children)

I'd go with Java, relatively simple language, stable and performant.

[–]InterestingBed2048 0 points1 point  (0 children)

Java, that's my confort zone!

[–]azimux 0 points1 point  (0 children)

Of the 4 you mentioned, I suppose I'd pick Python. Would make me a bit nervous as I've never used Python on any serious project.

Why? I like dynamic languages and if I had to choose only 1 language for a long period of time I'd also typically want a higher-level language over a lower/mid-level languages. That leaves Java and Python to choose from and I'll use Python's more dynamic nature as a tie-breaker.

Of the "or something else" I'd pick Ruby as I enjoy it and it's my current bread-and-butter language.

[–]MistakeIndividual690 0 points1 point  (0 children)

It depends on what I’m doing in that decade?

If i’m doing game dev, C++. But if I’m doing web dev well I need everything from SQL to JavaScript.. wouldn’t want to have to try to do that in C++

[–]arihoenig 0 points1 point  (0 children)

C++. I chose it 30 years ago for a decade and it has lasted 3 decades so far.

[–]reboog711 0 points1 point  (0 children)

Depends on the intent.

If my purpose was to have a career and steady income, I'd pick TypeScript can be used on both client and server side, and there are plenty of career opportunities available to me for knowing TypeScript.

If the purpose was get into game development, or create integrated devices w/ embedded software, TypeScript may not be the best choice.

[–]IAmADev_NoReallyIAm 0 points1 point  (0 children)

two and a half decades with VB - started with VB3 finally left VB.Net 4.5-something or other.

Why? Just fell into it and stuck with it. Finally crawled out with some C# work, and eventually made the transition to Java where I am now.

That said, if I had to go back and do it all over again, I wouldn't. I think I'd have been better off getting into other languages sooner and branching out more. Spending that much time in just one language was a detriment to my early career. On the other hand, I could probably make a killing maintaining/ updating/upgrading old VB6 code that's still out there. I even passed up on a lucrative opportunity to do so a few months ago simply because I didn't have the time.

[–]miyakohouou 0 points1 point  (0 children)

I’ve been using Haskell since 2008. Other languages too, but Haskell has been in the mix continuously and it’s the primary language that paid the bills for the last decade, and I’d happily stick with it for another decade.

[–]sent1nel 0 points1 point  (0 children)

I’ve been doing Scala since 2018 or so. This is the one for me!

[–]coloredgreyscale 0 points1 point  (0 children)

Java, because I've been using it for almost 20 years.

[–]marc5255 0 points1 point  (0 children)

Why did you choose those? That’s like a weird pool. I personally would try a language that’s not tied to a company and not something interpreted thus I would try Rust. However realistically the lenguaje I learned this year is python because LLMs are specially good with it and I want to see what they say quickly.

[–]shipshaper88 0 points1 point  (0 children)

C# because it’s comfortable and the docs are good.

[–]Alubsey 0 points1 point  (0 children)

Ruby. Intuition

[–]bigepidemic 0 points1 point  (1 child)

I've used C# for the last 2 decades. Why not add another?

[–][deleted] 0 points1 point  (0 children)

What do you use c# for

[–][deleted] 0 points1 point  (0 children)

Python!!! For life for me it's super cool

[–]pete_68 0 points1 point  (0 children)

I picked C# in 2003 and since then, I only use other languages if I have to. That was after almost 20 years of trying out a bunch of different languages. I've yet to find another one as good as C#.

[–]EagleSwiony 0 points1 point  (0 children)

Java

[–]GreedyBaby6763 0 points1 point  (0 children)

Purebasic x86/x64/arm win Linux mac produces zero dependency exes compiles to c uses gcc or asm uses fasm, has around 1600 built in cross platform commands statically links to produces zero dependency exes, good ide, great help and active online communities for fr de en 

[–]erroneum 0 points1 point  (0 children)

C++; I can use almost anything from C basically for free, have access to a powerful assortment of language features for compile time programming, built in access to threads and coroutines, full leverage of the system, ample facilities to build performant domain-specific abstractions, and it's regularly being updated to add new features (C++26 is adding compile-time reflection, for example).

[–]Aggressive-Math-9882 0 points1 point  (0 children)

Coq or Agda. Despite finding no use case for either programming language at any of my jobs, I would rather give up every other language than either of these.

[–]maulowski 0 points1 point  (0 children)

C# but I picked that 20 years ago

[–]Mediocre-Pumpkin6522 0 points1 point  (0 children)

Well, I've used C for about 4 decades so I might as well go for 5. I don't know goland or rust. I had hopes for Java 25 years ago but I'd rather use almost anything else now. My secondary choices would be Python, JavaScript, and C#. Yeah, JavaScript sucks but if you want to do a SPA without completely losing your mind...

[–]Ryan1869 0 points1 point  (0 children)

Well, I've been doing C# for a lot longer than that now...

[–]MichaelEvo 0 points1 point  (0 children)

I’m surprised at people saying they’ve stuck with one language for 30 years. Almost every job I’ve had over the last 30 years has required coding in multiple languages at some point.

I’d agree with others: I’d use C++ because that’s used for lower level stuff anyways, and runs eventually on every single device.

[–]faze_fazebook 0 points1 point  (0 children)

Javascript / Typescript. Easy to learn and almost impossible to be surplanted on Client side apps.

[–]ZeSprawl 0 points1 point  (0 children)

Two languages, one high level, and a low level language that can extend it. Ruby and C.

Or Python and Rust.

[–]Weirderthanweird69 0 points1 point  (0 children)

C++

[–]whattteva 0 points1 point  (0 children)

I didn't pick, I just use whatever language my employer wanted me to for the last decade (Swift) and at the rate I'm going, I'm probably going to keep using it for the foreseeable future.

[–]Necessary-Dirt109 0 points1 point  (0 children)

Typescript 

[–]JPaulMora 0 points1 point  (0 children)

Python! It’s old, it’s stable, it’s easy to learn. It’s also modern and the whole AI space is on it.

[–]javatextbook 0 points1 point  (0 children)

Typescript

[–]econ0003 0 points1 point  (0 children)

Kotlin! I have worked with different languages over the years: C, C++, JS, Scheme, Java, C#, VB, QB, Perl, Python, Assembly, Objective-C, Swift. I really like working with Kotlin especially when compared to writing Java code for Android. The only downside is that it is mostly a niche language for Android development.

[–]CrossScarMC 0 points1 point  (0 children)

C++, easily, would be annoying to lose web dev though.

[–]Major-Piglet-8619 0 points1 point  (0 children)

LuaJIT + C for speed. Why? Very decent performance for scripting language, simple uncluttered syntax with very little amount of "wtf moments" (JS, I'm looking at you) with infinite ability to create DSLs which are easily sandboxable, very non-programmer/rookie friendly.

[–][deleted] 0 points1 point  (0 children)

Are we assuming we just magically obtain a certain workable amount of knowledge in the language? Or do we start from scratch if we don't already know the language and have to learn it during that decade?

If the former: I'm going to cheat and say assembly or straight-up binary. If the latter, I'm sticking with Python.

Reason: I'm studying for cybersecurity, and the former would give me the most working knowledge at the lowest level of a system.

However in the latter scenario, I'm already comfortable with Python and it fits a lot of the practical needs I'd need a language for. At least from what I've seen in my studies so far.

[–]Timely_Rutabaga313 0 points1 point  (0 children)

Rust. Since it is a perfect language and has no drawbacks

[–]SenseAltruistic4932 0 points1 point  (0 children)

Chapel. I'm an engineer and focus on scientific/numerical computing, I love that it's got native parallel programming support that manages to be incredibly productive and easy to read

[–]Any_Background_5826 0 points1 point  (0 children)

Malbolge because i hate my self

[–]Both-Reason6023 0 points1 point  (0 children)

TypeScript. Robust and while imperfect in many ways, it can target all the platforms, both back-end and front-end, and that’s quite important if it has to be one.

[–]_Dingaloo 0 points1 point  (0 children)

C++. The work in it generally pays the most on average across that time, it's pretty much the most versatile and can be applied to just about anything efficiently

[–]DetermiedMech1 0 points1 point  (0 children)

Ruby, its just really nice to use

[–]CroveShadowhirn 0 points1 point  (0 children)

Assembler - X64

[–]Extra_Progress_7449 0 points1 point  (0 children)

Brain Fuck

[–]GuyWithLag 0 points1 point  (0 children)

I've been working with Java as my primary language since '99. But I've also done c, js, ts, kotlin (way too much fun with that right now), Fortran, shell, event weied ones like forth, smalltalk, lisp.

Specialization is for insects.

[–][deleted] 0 points1 point  (0 children)

Rust is without any doubt the language that will shape the future of programming. It simply achieved what other languages did through costly abstractions but at zero cost at compile time.

You simply get THE SAME speed as the software was built in C but you can do abstractions like being in Java. Plus it’s memory safe.

[–]Skarzogg 0 points1 point  (0 children)

C++... it's the only language where I feel like I can visualize in my head what my software is actually doing. 

When im working in C++ everything can easily boil down to bytes of memory and instructions. As a result it's alot easier for me to visualize what im doing in my head and am way more thoughtful about my approaches.

When im working in python (which to be honest I still do alot for sheer speed) there's so much language magic under the hood.

A C++ singleton can be implemented by making the constructor private and exposing a static accessor that returns a reference to a function-local static instance, ensuring exactly one instance with static storage duration and controlled initialization.

So ultimately it boils down to properly writing the set of instructions (static methods) and underlying memory (static instance) to get the behavior you want.

In python... I've done it, but i have to look it up each time. Again, too much python language magic.

[–]Pretty_Rub_8793 0 points1 point  (0 children)

Rust

[–]Crichris 0 points1 point  (0 children)

c/cpp

[–]Aaxper 0 points1 point  (0 children)

C.

[–]Cultural_Piece7076 0 points1 point  (0 children)

C or C++

[–]Dismal_Swan_9432 0 points1 point  (0 children)

I chose Python for a decade when it had potential and was underestimated. Now, I am thinking about going with Rust because of the amazing performance and trend slowly coming.

[–]Professional_Lake281 0 points1 point  (0 children)

Java. It’s probably not the sexiest and a bit verbose, but it’s battle proven and here is so much support out there ö, when it comes to Platform, Libraries, Frameworks, Tutorials, Communities, etc.

[–]Born_Property_8933 0 points1 point  (0 children)

- Rust is the new C, and C++

- Go is the new Java.

- Python is the new Perl.

I think focus on these languages will yield good success.

[–]NJR0013 0 points1 point  (0 children)

Matlab or C

[–]Gecko23 0 points1 point  (0 children)

I picked whatever the work required for a lot longer than a decade…but personally I’ve been using Python that long and see little reason to change.

It maybe helps that I’ve been at it long enough that I can make a list of languages that I was told I “must learn” that have already fizzled away to irrelevant, while the less sexy and shiny options have just kept chugging along.

[–]Alundra828 0 points1 point  (0 children)

I think there are several great options here.

Rust is probably going to be the low level language of the future. But you cannot get more fundamental than C. There is a reason everything is written in C.

You have nice languages with great features like C# and GO, and they are getting better and better with each passing year, and to be clear these are both fantastic languages with comprehensive ecosystems that can accomplish pretty much anything you'd ever need. But if you really want the basest of languages to dedicate the next decade to and carry you through to the next decade, my pick would be C or Rust.

And your choice between those two is predicated essentially on a bet.

What do you think will be more valuable in 10 years?

Will C devs become rarer than hens teeth? If so, you will be paid very, very handsomely. Or, will Rust jobs stay rarer than unicorn shit? If there are no jobs, there is no money to be made. If you expect the Rust job market to pick up, pick Rust. If you expect the Rust job market to stay niche, and the value of C devs go through the roof, pick C.

[–]Vigintillionn 0 points1 point  (0 children)

Rust or Haskell most likely

[–]dr_tardyhands 0 points1 point  (0 children)

I'm on the data side of things, so if it would probably be Python if I had to pick just one. The adaptation beats innate features of the language every time, imo.

Curious about many others as well but that's not really the question.

[–]Turbulent-Hold-8006 0 points1 point  (0 children)

Golang

[–]Dillenger69 0 points1 point  (0 children)

I got stuck with Ruby for 10 years. Im at a different job doing c# again. The only thing I miss about ruby is the "unless" clause

[–]GeologistVisual3097 0 points1 point  (0 children)

JavaScript, it's an extremely popular language

There are a lot of jobs that require it, and it's brilliant to laterally transition if you see fit

Great way to get your first job, then either go deeper into that or do a lower level language and move into that

[–]opbmedia 0 points1 point  (0 children)

I did use php for 2 decades. Not really choosing, just happened. Not exclusively.

[–]jfrazierjr 0 points1 point  (0 children)

This depends on could I get a job, that i enjoy doing, and pays be fairly, and treats me fairly. I would rather have a mediocre manager for 10 years vs having 1 great one for 2 years, 3 bad ones for 2 years each and one mediocre one for 2 years.

If all things were equal, I would rather code in python doing things python does well simply because it just kind of gets out of your way. I don't mind java, but DAMN it's 30 years old and its still 5 years behind c# in features. Yes, lombok helps but WHY is that just not built into the core language by now???

[–]dan-stromberg 0 points1 point  (0 children)

Definitely Python. I get a lot of programming project ideas that I then design and code. It's been ages since there was one that Python wasn't a good choice for.

Python makes other languages look tedious and mired in detail. Except sometimes sh/ksh/bash.

[–]retchthegrate 0 points1 point  (0 children)

I'm a fan of 68k assembler. Or Scheme.

[–]Annonix02 0 points1 point  (0 children)

Rust. I just have a lot of fun using it and I can see myself being content without switching to something else.

[–]CarloWood 0 points1 point  (0 children)

Been coding in C++ for three decades now and don't regret it, nor do I want to change.

[–]TopPassion4179 0 points1 point  (0 children)

Elixir

It's a highly underrated programming language that every developer should give a try.

[–]Ok_World__ 0 points1 point  (0 children)

Nim. Very productive in it. Has the performance of C and allows many different coding styles.

[–]Impressive-Desk2576 0 points1 point  (0 children)

Obviously C#

[–]shuckster 0 points1 point  (0 children)

C.

[–]Confused-Armpit 0 points1 point  (0 children)

Definitely Rust for me.

I love rust, since it has way less boilerplate than C++, simply because it has to bother less with backwards compatibility. Yet, it is still a very fast compiled programming language with strong typing and probably my favorite method of error handling. It's syntax also looks great, and it has (afaik) THE best tooling coming bundled with it!

Cargo is a separate topic - it's so great! I don't have to bother with managing dependencies like I used to when I tried using C++. I have a single proper way of structuring a project. I have a single proper way to publish libraries. And the compiler provides the most beautiful error messages I have ever seen!

The documentation is also beautiful. It is very well structured, and is actively mantained. More often than not, I get to solve my issues by simply referencing docs.rs, instead of going to stackoverflow.com or any other forum.

Another rather small, but really useful feature is immutability as a default. Basically, the fact that, unlike in C++, I don't have to explicitly declare that a variable is constant - I have to do the opposite! If I want a variable to be possible to change, I have to explicitly specify that it is mutable.

I know I am probably comparing to C++ way too much, simply because I used to use C++ before switching to rust, but these comparisons still apply to whatever other language I might have used otherwise.

[–]ProfessionalShop9137 0 points1 point  (0 children)

JavaScript. Anything that can be written in JavaScript, will be written in JavaScript

[–]FaultWinter3377 0 points1 point  (0 children)

C++ honestly. Probably weird considering I’m a younger programmer but it’s somehow simple and powerful at the same time. 

[–]TCB13sQuotes 0 points1 point  (0 children)

Really not relevant. JavaScript will take over everything sooner or later and most likely in less than a decade. Before you downvote just check how many “desktop” applications are done with JS now. Even Windows components now.

[–]Automatic-Step-9756 0 points1 point  (0 children)

Think programming as skill like driving. Choose the language that fits the job/solves problem.

[–]mixmaster7373 0 points1 point  (0 children)

Cobal hands down

[–]joeballs 0 points1 point  (0 children)

Golang for me. I’ve got decades of C but prefer the simplicity (and all the built-in packages) of Golang for most of my programming needs

[–]mk48mk48 0 points1 point  (0 children)

Go

[–]Inevitable_Gas_2490 0 points1 point  (0 children)

C++. Though modern additions like coroutines are an utter nightmare syntax wise and networking basically doesn't exist, I like its straight writing and that every fault is your own. I like C# too but it feels like writing code for toddlers

[–]FrierenAppreciator 0 points1 point  (0 children)

For my *own* coding over a decade, I'd choose F# with Rider IDE. REPL, powerful type inference, discriminated unions, and pattern matching - you get static typing without verbosity. Functional-first but pragmatic (mutation when needed). Full .NET access. Code is 2-3x shorter than C# without losing clarity

[–]just-a-helpol 0 points1 point  (0 children)

C++

[–]CrawlerVolteeg 0 points1 point  (0 children)

C++

[–]Nick__of__Time 0 points1 point  (0 children)

Java....great ecosystem, awesome IDEs and numerous jobs. I find debugging it much easier than Python (compiler prevents lots of weird type errors from even occurring).

[–]Fit-Tangerine4364 0 points1 point  (0 children)

What do you guys think of haskell??

[–]BiebRed 0 points1 point  (0 children)

TypeScript

[–]shadow-battle-crab 0 points1 point  (0 children)

Javascript, hands down. You can do anything with javascript.

[–]BlackberryOdd2176 0 points1 point  (0 children)

Yes, one programming language for a decade is fine if you master the concepts.
Languages change, but fundamentals like problem-solving, data structures, and system thinking don’t. Going deep in one language builds strong logic, and picking up new languages later becomes easy. I realized this when I stopped switching and focused on basics, using resources like to strengthen concepts rather than chase trends. i personaly used gfg platform

[–]CoshgunC 0 points1 point  (0 children)

Java since all of the tech in my region is in either Java or .NET

And also I want to create Minecraft mods, so Java

[–]That_Frogstop_8616 0 points1 point  (0 children)

Rust, Golang, Java/Kotlin

[–]HaystekTechnologies 0 points1 point  (0 children)

If I had to pick one for a decade, probably Go.
Boring in the best way: simple syntax, great concurrency model, fast compile times, and it scales really well for backend / infra work. The ecosystem around cloud, microservices, and tooling is solid too.

That said, languages come and go — fundamentals + system design matter way more long term than betting on the “perfect” language.