What is your favorite programming language to use and why?
Posted by TechnicalAd9322@reddit | learnprogramming | View on Reddit | 111 comments
I don't quite be here on Reddit, but I wanted to hear some of the users' opinions about programming languages that are easy or hard (based on experience or whatnot). I have studied easy languages such as Python, Java, JavaScript, and C++. Overall, I want to be a game developer, but there are times when implementing what you've learned and the math you can be difficult or frustrating. For curiosity, I wanted to listen to you guys opinion on what specific languages you like to use and why> What is good to use and what's overrated.
unnecessaryCamelCase@reddit
JS/TS because it’s what I know and I think it’s beautiful. The syntax is just so pretty imo. For example typing with : instead of just order based stuff like int foo =… Love arrow functions and implicit returns and stuff.
tamimbuilds@reddit
Nowadays my favorite programming language is plain English 🌝
pramodkumar2026@reddit
I have 12 years of experience in Java, Spring boot and python. I love to work in these languages in my past work experiences.
Next, I am exploring the Go as well.
usefulservant03@reddit
C because it forces you to actually get good at coding, unlike other languages nowadays
morsmordr@reddit
C# in a landslide.
for context, I've used: cpp, python, go, java, kotlin, JS/TS and at least dabbled in probably a dozen others
Davi-Barbado@reddit
C++, because of its speed and the ability to make games.
spinwizard69@reddit
First off C++ is not an easy language if you have learned it in depth. So i have to believe you are very much a beginner. That said there is a lot to like in C++ and concepts it broached first that ate now common in other languages.
The language i usually reach for first though is Python ads long as it doesn't get in the way! Sometime projects just go further in a strongly typed language.
TechnicalAd9322@reddit (OP)
well C++ isn't as hard until math and physics come in at. Yes, i am a beginner, I'm not a pro at this yet but I'm getting a hang of this tho.
spinwizard69@reddit
C++ has a lot of dark areas, smart people learn to avoid them. I like the language , but lately Python has been quicker for me to get work done. I wouldn't stop learning C++ that is for sure, however don't spread yourself too thin, C++ with Python, is an amazing combo to have under your belt. Get good a them and any future requirements will be easy.
trilient1@reddit
I’m mostly a game developer, I enjoy C# but I also like the Unreal implementation of C++. I don’t know about you but I wouldn’t call JavaScript an “easy” language, but I’m also not a web developer lol. It’s just very confusing to read as someone who prefers strongly typed languages.
ameliawat@reddit
c# is so underrated outside of game dev. the tooling is incredible and the language keeps getting better. i wish more web devs would give it a chance
trilient1@reddit
I have messed with building Blazor apps and you’re right about it being a pretty incredible tool, I just don’t really have a need to build an app with it personally. Also hosting .net applications is not as simple as using any generic web host, they are usually more expensive.
But I agree, it is quite enjoyable to use and c# would definitely be my language of choice for web.
TechnicalAd9322@reddit (OP)
Tell me about it! I'm currently working on creating a game in C++, but it's a bit difficult when it comes to math and physics, because when you watch YouTube and see advanced users creating it, it looks soo easy until you try to do it lol.
gm310509@reddit
You said:
This is a mistake many people make. The mistake is to watch, but not do while you are watching it.
I create howto videos and throughout I try to suggest some exercises for people to try - often it is the next logical step, but sometimes it is to try alternatives.
If you simply watch (or read) to the end without pausing and trying what you just saw - and regularly pausing to try stuff out, you are very likely suffering from information overload. You will kind of get it, but it might be difficult to recall as it all gets munged into one big ball of information.
That said, just because you tried one thing you won't instantly be an expert, but as you try the foundations, then combine them and build upon them and learn more things, before long you may well become one of the "advanced users" you refer to.
hitanthrope@reddit
Clojure is beautiful
HaskellLisp_green@reddit
C. I love it for simplicity and flexibility.
gm310509@reddit
Favorite? Assembly language.
Most commonly used? RN C/C++, but also Python and Java.
Marutks@reddit
I use Clojure.
Reasonable_Listen888@reddit
python, c, bash, go in this order
Omribenami@reddit
For game dev specifically, I'd lean toward C++ or C# as your primary. C++ gives you the low-level understanding that helps when you're dealing with performance-critical systems, and it's still the industry standard for engines like Unreal. C# is fantastic if you're going Unity route - the workflow is smoother and you can ship prototypes faster.
That said, don't sleep on Python for learning concepts. The syntax is clean enough that you can focus on algorithms and data structures without fighting the language. I used Python to learn patterns I later implemented in C++ for actual game projects.
Important_Staff_9568@reddit
I have done this a long time. I have used COBOL, Fortran, Pascal, C, C++, Visual Basic, Java, JavaScript, Python, and dabbled in a bunch of others. Maybe I’m a jaded old developer but my favorite is whichever one makes me the most money and that has been Python the last few years.
POGtastic@reddit
Python is the language that I use professionally.
I really, really like F#. It strikes an ideal balance between functional programming and pragmatism. If you really need to, you can write F# the exact same way that you write C#, or you can write it much more like idiomatic OCaml, and you can use C#-style interfaces instead of using GADTs.
owp4dd1w5a0a@reddit
I like Idris and Mercury the best in terms of the language itself. I try not to feel too sad about neither language being angler close to becoming mainstream and well supported in terms of tooling.
Anhar001@reddit
interesting, I haven't heard of Mercury before.
Idris is cool with dependent types but it's even more niche than Haskell lol!
Speaking of niche languages you might enjoy Uiua :)
owp4dd1w5a0a@reddit
Is Uiua kind of a descendent of APL?
POGtastic@reddit
The glyphs all have English keyword equivalents, and the interpreter happily switches between the two.
(Does this actually make the language any more intuitive? Nooooo)
owp4dd1w5a0a@reddit
Mercury is a typed pure logic language. Really interesting and novel.
TechnicalAd9322@reddit (OP)
I heard of Mercury but not so much of Idris. Is that language complex?
owp4dd1w5a0a@reddit
Idris is essentially Haskell with eager evaluation and dependent types.
az987654@reddit
Ms basic, because I am.
JohnBrownsErection@reddit
>>> easy languages such as C++
Hmm.
Anyway, I like python because I do a lot of work with data and the libraries make it easy to do cool stuff. Second place is probably PLC ladder logic because of how easy and intuitive it is.
Comprehensive_Mud803@reddit
I’m a former game dev, graphics engineer gone generalist.
I started working with C and C++, later also Objective-C and Swift, aside from using Perl for build pipelines. After Perl, I used Python and Lua (Premake/GENie) for builds.
A couple of years ago, I switched to using C#, due to projects being based on Unity, and I kinda stuck with it. I like C# b/c it’s an actually readable language, coming with good standard tooling and a good package management system.
I tried getting into Rust, but for me, it’s a solution looking for a problem, since I can do mostly everything in C# anyway.
Sufficient_Duck_8051@reddit
C# is so polished and pure fun to use. You can literally build anything with it and the performance is always great
TechnicalAd9322@reddit (OP)
im still learning c#
grismar-net@reddit
My favourite language is Rust. Oh, "to use" - well I suppose if I'm honest it's Python.
Kidding of course, but only a bit - my favourite language to use is the best language for the job. If I'm writing a service or daemon, I like Rust. If I just need to process some data, or string some tools together, it's Python. Front end stuff, it's TypeScript and the flavour of the month framework that someone picked without asking me.
Between the three of those, I get most work done, but I write a bunch of PowerShell, Bash, Fortran, and R for cases where it's needed.
Python is the most pleasant though. The main downsides are speed and issues with deployment to users who don't code themselves. But it's easy to read, easy to write, and the available tooling and libraries are great
manvsmidi@reddit
I’ve coded in many languages. I used to love C, never transferred that love to C++, I love Perl, a little less love for Python even though it’s likely my most used language, Go fits a great niche, PHP had its time back in the day. All of that said, the majority of my projects nowadays are Rust/React TypeScript. I don’t really “know” either of the languages, but they are my goto for agentic coding depending on the problems I’m trying to solve and the majority of what I produce now are in either of those.
For me, this is what AI coding unlocks. I no longer have to master specific coding languages. I can pick languages based on the libraries and advantages they lend to my problem at hand. I can study the language from an architectural and theory standpoint and only dive into syntax when absolutely necessary.
For game development, it’s more to me about scaffolding. I used to love Godot but now am moving more towards Bevy. React with Phaser/etc. is nice too. I’m interested to see how AI progresses with its understanding of the graphics space and feedback there because closing that gap can really accelerate game dev.
no_regerts_bob@reddit
Perlmongers represent lol. Not that I actually use it anymore but my god that was the language that just worked the way I expected it to more than any other
Full-Silver196@reddit
out of all the languages i’ve used, for me it’s been C#. it’s like a much higher level of C++ and for me the syntax is just really clean.
TechnicalAd9322@reddit (OP)
do you think c# is better than c++? I'm only asking because I'm using c++ to create a 3D game...well originally a mobile game for Androids and iPhones
Full-Silver196@reddit
i haven’t really made many games but personally i’d use C#. C# has garbage collection so you won’t need to create destructors or handle memory leaks. also C# is honestly just easier to write in. C++ does however give you much more precise control over memory and can boost performance. but we live in 2026, using C# isn’t gonna tank your performance unless you are building something that requires a lot of optimization.
_Cyanidic_@reddit
Ive been doing some mobile dev work recently and dart is just great. It has all the features a modern programming language should have and the UI framework designed for it called flutter is a dream to work with as someone who has never liked html and css for front end.
doSmartEgg@reddit
I am going to be generic and say Python, even though Java was my first language I learned. But hey I only started down this path almost a year ago.
youarockandnothing@reddit
Kotlin, although being beholden to the JVM (unless you target native or JS) has its quirks and disadvantages. But when you don't run into weird Java-isms, Kotlin feels great to write code in
rjcarr@reddit
And I’ll add a vote for Java. I haven’t used Swift in a while, but it was pretty great at the time too (except for closures where the syntax was always confusing to me, again, at the time).
FluffusMaximus@reddit
My first loves were x86 Assembly and C. I still love them because you’re truly in control. I’m also a fan of C++ for its versatility and power. Lately I’ve really enjoyed Swift. I just have fun writing it.
TechnicalAd9322@reddit (OP)
Tell me more about the C++ part. Because when it comes to, that's where I'm having an issue with. A lot of times when you create a 2D or 3D game, you need some sort of math or physics...like kinmatic rotation for example.
FluffusMaximus@reddit
What’s your question?
huuaaang@reddit
My favorite to write is Ruby. I find it really embraces the "principle of least surprise." Even when I was new to it I didn't spend much time pouring through documentation. Things just generally work like you expect. And Ruby on Rails was just the shit when it came out (I got on the train around Rails 1.3).
That said, it's probably not the best language to use for most things if you plan to scale large. It's not terribly fast or memory efficient. It doesn't have static typing so a lot of bugs you won't hit until runtime.
Just FYI, don't go into this because you like playing video games. Playing video games and developing them are two VERY different things. The happiest programmers just enjoy the process, not the product.
But if you still thing you want to develop video games, you really should start with the game engine first and let that dictate the language you use. THere aren't a lot of options here. The big ones are:
There's others, but if you're serious about writing games you probably want to stick with tried and true engines so you can focus on your game and not the rendering/physics/math/input/etc
etherkiller@reddit
Straight C. Not C#, not C++. There's no more useful language on earth. Sure, for any given task, there's almost certainly an easier language to use, but C is as close to universal as it gets.
Prestigious-Bet-6534@reddit
For me it is D. Has the qualities of C++ without its quirks.
EliSka93@reddit
C# by a wide margin.
What you can do with interfaces and generics makes for just such incredibly nice code, it's hard to beat.
I'll work with anything, but if I get the choice? C# every time.
TechnicalAd9322@reddit (OP)
is it easier and more useful than c++?
EliSka93@reddit
"easier" is hard to judge. Ultimately that depends on you and how it "flows" with you.
It's not "more useful" - you can do basically everything you want to with either language.
How much you enjoy getting things done is mostly the metric I'd use. And I enjoy C# a hell lot more.
TechnicalAd9322@reddit (OP)
I'm currently studying C# to get a glimpse of what I'm dealing with when it comes to being a game developer.
kyzfrintin@reddit
Your Java knowledge will take you far. I've literally only been learning Java for about a year (IT degree), and just that was enough to carry me through learning the basics of C# in Godot.
TechnicalAd9322@reddit (OP)
have you built anything in java yet?
kyzfrintin@reddit
Nothing apart from my course exercises, lol.
nagmamantikang_bayag@reddit
What do you do with it? Imo, there’s a lot of boilerplate code for web dev using C#.
Other web frameworks/libraries are easier to learn. I also hate the Microsoft learn website. Screen has too many things going on.
EliSka93@reddit
Yeah that's very fair. It's a bit hard to learn, I admit.
Once you know it though, it's super awesome.
I most things with it. I use it where I can. Blazor in particular is extremely nice for web dev, allowing to basically use C# as a single language, with barely any JavaScript necessary. I love not having to context switch.
nagmamantikang_bayag@reddit
Where did you learn web dev with C#?
EliSka93@reddit
I did generally take some coding in school, but not really web dev.
My first job was building things with Asp.net, so I was kinda thrown in blind and learned on the job.
Still a good technology, but Blazor is better imo, so I thought myself that.
I recommend just start building with Blazor.
MrSnoman2@reddit
Have you seen the more recent minimal APIs in AspNetCore? It significantly cuts down on boilerplate.
TRFireKnight@reddit
Once you realize how much common sense philosophy went into golang that didnt go into other languages, youll start the question the industry as a whole. By far the best high-level language imo, avoids all major pitfalls of other languages. People complain about verbosity but imo that argument falls short.
aanzeijar@reddit
Absolutely zero common sense went into Golang. It works, but please do not pretend that this mess is well designed.
avocadorancher@reddit
I want to get into it more but every time I read Go code it’s so verbose and templated. Compared to other languages it just seems like a lot.
N_Sin@reddit
I love go!
themegainferno@reddit
I love Go, such a simple language and crazily powerful. No language is perfect and Go has some quirks, but yea if I can write go from here on out I wouldn't complain at all.
NewRengarIsBad@reddit
C++ for hobby, Java for work.
TechnicalAd9322@reddit (OP)
ok that seems fair.
SpliffMD@reddit
Rust!
syklemil@reddit
Though in the spirit of things you might want to say a bit about why.
Some of my reasons:
SpliffMD@reddit
Thread handling, process status checks, no garbage are some mentions. Rust is just next level.
N_Sin@reddit
Golang, try it and you will see why.
cyberbemon@reddit
I've been doing a lot of C lately and in really enjoying it. I also like Rust, especially like how the compiler tells you where and how you fucked up. It's one of my favorite things I like about rust.
TechnicalAd9322@reddit (OP)
is it more easier than Ruby?
jameyiguess@reddit
Not even close. Ruby is one of the easiest languages. Rust is one of the most difficult.
TechnicalAd9322@reddit (OP)
ohh, so you're more of the low-level programming language than the hig (easy) ones?
jameyiguess@reddit
Me personally? I use what I feel is the best tool for the job.
Usually it's python, because I don't have performance concerns at that level.
The game I'm currently working on uses C#, since performance is an issue.
If I want to write a simple CLI app, I might use Go or Python, Go just because it's so small and "native".
I use Rust for fun sometimes, or for the rare programs I write that NEED to be CORRECT at all times.
cyberbemon@reddit
I have not used Ruby, so I cant comment on that. Rust is a bit tricky, took me a good few attempts for it to click, I still have a long way to go before I consider myself a good rust programmer.
DonkeyAdmirable1926@reddit
I love 8086 and Z80, and like ARM64. I think my favourites are C and Rust. Also had fun with Pascal, dBase IV, COBOL, SQL. CL/400 was nice, Bash and PHP also. I used to enjoy TRS Basic, Sinclair Basic and GW Basic. Didn’t like qbasic, hated Visual Basic and Delphi. Hate Python with the power of a thousand suns.
Lotton@reddit
Whichever one I'm currently being paid to use. Most professionals are pretty flexible
Stefan474@reddit
For frontend I really like typescript in Vue, it just makes sense for making frontends.
For backend golang is my favorite because the verbosity makes it so much more readable and the structure it encourages is super good for learning.
I also loved gdscript in Godot for gamedev, super intuitive.
Morphon@reddit
Very unlikely to be useful for you doing game development... but the best experience I've had actually writing code has been in.... Smalltalk.
So expressive. Ultra-clean syntax. You can write it very declaratively, using mostly HoF patterns. I used to think the phrase "self-documenting" was stupid, but well-written Smalltalk actually is. I almost never read any comments because what the code does is right there.
Frolo_NA@reddit
smalltalk is the most productive environment and least annoying language i think
Ok_Spring_2384@reddit
I have been toying with Dolphin Smalltalk and Raylib. It is an interesting combination. I love Smalltalk and would have loved it to be much more mainstream because of the self documented nature of the code as well as the powerful IDE and debugging capabilities
Metaphysical-Dab-Rig@reddit
Python is supreme. All these performative programmers saying otherwise are nuts.
Correct_Car1985@reddit
I'll be honest with all y'all. I don't really like Python. I thought I would. I thought I'd be able to program at the speed of thought with it, but that never happened. My first language was Action Script 3.0 - and it's a lot like Java. I can't stand GoF Design Patterns implemented in Python. Languages I've used that I do like: JavaScript, C#, Java, C, Objective-C.
I'm wondering where everyone starts when they program games. I have animation books and game books for Action Script 3.0 and Java that gives me a code base to work with for different kinds of games: platform games, top down games, space invader games, but not FPS games. I just take that code and rewrite it in a new language.
Also, I make my own graphics using Photoshop, Adobe Illustrator (when I'm on a mac) or GIMP and Inkscape (when I'm on OpenBSD). I make my own explosions, my own ships, my own lasers, my own characters.
I wanted more from Python. Indeed, I expected more, but so many newbies go straight into Python and know nothing else, so there's a bunch of the same kind of people doing it.
JavaScript ( maybe TypeScript ) will be my new Action Script 3.0.
EliSka93@reddit
Python is fine. It's perfectly serviceable for most common use cases.
However suggesting it's superior to other languages in anything but community support and ease of use is delusional.
Don't get me wrong, those two things are incredibly important and will get you very far, it's just not everything. Sometimes they're just not what you need.
jameyiguess@reddit
Python is my goto language, but it doesn't solve the same problems as, for example, Go or Rust.
Frolo_NA@reddit
smalltalk. the syntax gets out of the way and lets you focus on the thing you want to build more than any other language i've used
Bitwizarding@reddit
I really like JavaScript. It's so easy to share projects with a link. I've been making little math games for my kids to play and it's easy to work on things on my work computer, laptop on the train, and desktop at home. I don't know if any other language lets you make a quick fix and you can tell someone to refresh their page and it's near instant results. Obviously, this ability is standing on the shoulders of servers and browsers.
I use Three.js a lot which uses WebGL and can make some pretty cool 3D graphics. It might not be the greatest for big quality games, but you can easily play with a lot of the fundamental concepts and you can debug things on the browser's console much easier than I've seen in other languages. It's so easy to knock out something on JS Fiddle or Notepad++ without installing anything.
robenroute@reddit
Smalltalk. It taught me proper OO thinking. In addition to that, it’s oh so elegant.
Designer-Flounder948@reddit
It really depends on what you want to build. For game dev, C# with Unity or C++ with Unreal is the most useful. Python and JavaScript are easier to learn but not ideal for performance heavy games.
TechnicalAd9322@reddit (OP)
i watched a guy creating a driving game in JavaScript. It's kinda frustrating watching more experienced developers getting the hang of this and still struggling on these programming.
B_bI_L@reddit
No one said language that literally aims at programmer happiness, so i will: Ruby. It also has compilled friend called Crystal.
But I have not explored it that much yet, so another one is Dart. It's like JS, but made to fix its quirks. JS+C#, but made by Google
TechnicalAd9322@reddit (OP)
ok i may have to try c# since everyone suggest that rather than C++
TechnicalAd9322@reddit (OP)
ok that makes sense. C++ looked easy at first, but it's getting to the point where I'm going nowhere with this lol.
B_bI_L@reddit
those 2 are different languages: - cpp is for designing low level apps/systems where speed is critical. really close to hardware - c# is slower and gives less control, but easier to write. it is basically java, but less boilerplate
overall, language is a tool, and those 2 have different applications (that said, i hate on cpp (c is simple, unified; cpp has too much, no unified style) and python (i hate more on django and other frameworks, that are too steep from python and overall have veird design choices))
naryset@reddit
If I’m building something for myself: whatever Lisp is best suited, usually Clojure but lately I’ve been drifting Schemeward. For toy problems: Haskell or sometimes Idris. If someone else is likely to work on it: TypeScript frontend, Java backend. For a long time I strongly preferred Scala but Java has gotten better and it’s much harder to justify Scala’s tooling mess. I appreciate C# and Rust but don’t often work where they’d be sensible choices.
AbbreviationsSalt193@reddit
Might get a lot but i enjoy cpp a lot. Language is lowkey a piece of shit at times but theres just something about writing cpp for me.
faulty-segment@reddit
Although I have been having to do a lot TypeScript lately, C++ is still my main and favourite language.
After some point [read as many years of struggle], one just starts appreciating it, you know?
The freedom you have is just mind-blowing. But yeah, I must say I deal with complex and difficult stuff while a different mindset: learning to me means completely fun.
I know many people who do things to find a job, or just want to move quickly, and so on. They'd probably prefer something like Python. In my case, however, the 'process' itself is what gives me the dopamine. The result is just an inevitable consequence, you know?
Good luck.
TechnicalAd9322@reddit (OP)
yeah that's understandable and Ima guy by the way lol. I think i need to go back to working on python
throckmeisterz@reddit
The only correct answer is whatever language I need to do the task at hand.
Leverkaas2516@reddit
I enjoy programming with Java and Python. Both allow me to say what I mean, with few gotchas, and have massive, useful, and easily available third-party libraries.
I also enjoy C, but with less enthusiasm. Less library support. It has ways to shoot yourself in the foot but I know how to avoid them.
I don't enjoy using C++, but it currently pays the bills.
Kindly_Radish_8594@reddit
Started to use Go for my private projects a couple of months ago. Very happy with it so far. Comming from C++ and C# I never got used to Pyhon like syntax but wanted to switch from C++ to something more modern and from C# to something more plattform independet.
So far I have the feeling to have found something that fills this gap.
For game development I don't think that it will get his place though.
FOXofTAILS@reddit
Gml was really fun when I was a teen pretty powerful for 2d games!
I'm making a game in bash right now which isn't really a programming language per se more of just a shell script but it's been fun
I'm not a dev though so not to credible
TechnicalAd9322@reddit (OP)
do you know a good language to create a 3D games?
FOXofTAILS@reddit
I love open source so I'd lean into whatever godots language is called
NationalOperations@reddit
Are you using something like EasyBashGUI or just doing all terminal?
jameyiguess@reddit
GDScript. Looks a lot like Python. It can take you pretty far, but if your game gets overly complex, C# with Godot Mono is probably the better choice.
WhisperGod@reddit
Currently Elixir. I like the way it is a functional programming language and how it's structured to make code very easily readable while still being very powerful. It is scalable and fault tolerant. I like the frequent usage of the pipe operator to compartmentalize code. Plus the pattern matching feature that most other programming languages do not use. Elixir isn't a popular language because it being a functional one and most people are familiar with object oriented languages, but it is highly underrated.