What Programming language is best for for total newbies ?

bethrezen0

Member
Jan 27, 2022
208
305
So what the title says, what do i start with, and if you are a gamedev, what did you started with and why ?
People i know recommended me learing Python, as this language is not very hard to learn, and is very useful even now, is it true ?
Is even learning an "easier" programming language helps learning others easier or should i just start learning C#/C++ from the start to use Unity/Unreal Engine ?
 

Greiya Archives

uwu
Game Developer
Aug 23, 2022
477
556
highly depends on what sort of games you want to make.

Most visual novels (here) are made wtih Renpy, it's very easy and straightforward to learn.
More complex features in it can be implemented with python.

You can actually make *anything* 2D in renpy, which means you can implement a wide variety of mechanics (but everything has to be done super manually). But it's specifically suited for Visual Novels, so if it's mostly a vn with some game mechanics, renpy is a good choice.


If you want to make unity or unreal games, they're very different from renpy games, and learning renpy first likely won't be very helpful in learning the others.


That said, for programming itself (not game engines, just programming), learning programming (in any language) takes quite a bit of time, but learning other programming languages after knowing the first is relatively easy and doesn't take long (relatively)
 

Beatrix Kiddo

Member
Donor
Aug 25, 2016
404
1,069
Look up which language is recommended for the enginge you aim to use (e.g. python for ren'py, C# for unity).
 

Chalker

Well-Known Member
Aug 8, 2018
1,418
5,999
Python and Java are considered "easy".
but as others said, it all depends on what you plan to do with your skills.
 
  • Like
Reactions: MoeMoeGames

bethrezen0

Member
Jan 27, 2022
208
305
highly depends on what sort of games you want to make.

Most visual novels (here) are made wtih Renpy, it's very easy and straightforward to learn.
More complex features in it can be implemented with python.

You can actually make *anything* 2D in renpy, which means you can implement a wide variety of mechanics (but everything has to be done super manually). But it's specifically suited for Visual Novels, so if it's mostly a vn with some game mechanics, renpy is a good choice.


If you want to make unity or unreal games, they're very different from renpy games, and learning renpy first likely won't be very helpful in learning the others.


That said, for programming itself (not game engines, just programming), learning programming (in any language) takes quite a bit of time, but learning other programming languages after knowing the first is relatively easy and doesn't take long (relatively)
Oh right... i really should have specified that, VNs are not really my thing, i want to make games that are gameplay focused, rather than story and writing.
Yes, the question is specifically about languages, not engines. I understand that learning it won't be fast, and i'm not really in a hurry, just want to know what first Programming language would be the easiest to learn for someone who have no experience with programming.
 
Last edited:

bethrezen0

Member
Jan 27, 2022
208
305
Look up which language is recommended for the enginge you aim to use (e.g. python for ren'py, C# for unity).
Python and Java are considered "easy".
but as others said, it all depends on what you plan to do with your skills.
End goal is to make a game of my own, unity probably one of the best for beginner developers as that is what most uses, but i also consider godot which also supports C# if i'm not wrong.
But primary goal right now is just to get into programming. As i don't have any experience with it, that's why i'm not sure if starting with C# is the best choice, or it's better to choose something more begginer friendly first.
 

Link11

New Member
Mar 29, 2020
9
1
Oh right... i really should have specified that, VNs are not really my thing, i want to make games that are gameplay focused, rather than story and writing.
Yes, the question is specifically about languages, not engines. I understand that learning it won't be fast, and i'm not really in a hurry, just wan't to know what first Programming language would be the easiest to learn for someone who have no experience with programming.
Python and Java are the easiest ones to start learning, but for someone who want to use it for making games i would recomend to start with C#, as it's the most adopted one for game dev on the majority of popular game engines.
 
  • Like
Reactions: bethrezen0

Penis Parker

Newbie
Feb 19, 2023
24
68
That's what i heard, but will it make it easier for me to learn and understand other popular languages like C# and C++ in the future ?
Yes. Because you will learn how to write algorithm, which is the logic for coding. After that, you can learn and adaptive yourself to other languages. My advice is if you wanna go with unity, start learning C#
 

bethrezen0

Member
Jan 27, 2022
208
305
Python and Java are the easiest ones to start learning, but for someone who want to use it for making games i would recomend to start with C#, as it's the most adopted one for game dev on the majority of popular game engines.
Yes. Because you will learn how to write algorithm, which is the logic for coding. After that, you can learn and adaptive yourself to other languages. My advice is if you wanna go with unity, start learning C#
Thanks for the advice, then i will try to start with a python then, and move to C# after that. Or Start with C# and if it's gonna be too much for me, revert to previous plan.
 

khumak

Engaged Member
Oct 2, 2017
3,829
3,863
I haven't tried any other game engines, but RenPy is nice for VNs because it does a lot of the work for you. If you're making a relatively simple game that focuses mostly on dialog choices then there's hardly any code that you need to learn. The GUI is already built for you. You can customize if it you want to but you don't have to. RenPy is basically Python with a bunch of predefined libraries and default code already in place specifically for games.

So you mostly just need to learn how to store a few values in a variable, specify which character is talking, show images and/or videos, play sounds, and allow branches and choices via if/then statements, menus, jump/call statements, etc. You will probably also want to learn how to use a random number generator if you're adding RPG elements. That's about it. There's a HUGE amount of extra stuff you can learn to customize further but you can allow yourself to add more features as your knowledge of renpy and/or python increases.

A language like C++ is much more generalized and won't have things like a game focused GUI built right into it. You'll have to build it yourself from scratch. If your day job is software developer then that might be trivial for you. If your day job has nothing to do with software development then that might be a lot tougher.

You can create a game that's playable in RenPy in a matter of seconds. It won't have much content but it will work.
 
Last edited:

Catapo

Member
Jun 14, 2018
257
463
This is just my personal opinion.

For game development I think the target should be: python and/or C#

Putting aside game development and thinking about the fundamentals of programming following the road:
Linear programming -> Procedural programming -> Object oriented programming
I would avoid starting with object oriented languages like Java or C#, not because they are bad but because you will have to deal with some "I have to do *this* but I don't understand what it is and why yet".
If that is not a concern then by all means go with C#

A better start for beginners IMO would be Python or C++
- Python is easy to learn but it will be a pain in the ass to transition to other languages.
- C++ is a pain in the ass to learn but it makes the transition to other languages easier.
 

Houtamelo

Member
Game Developer
Jul 25, 2017
239
263
If you're going for a VN just go for Ren'py with python. (though I don't recommend python if you want to become a good programmer on the long run)

If you're interested in general 2D games I recommend GDScript (for Godot).

Unity is also good for both 2D/3D and it uses C#, which is harder than python but definitely doable as your first language.

I would stay away from Unreal as your first engine unless you are completely sure you want to work with heavy 3D games.

And as some said, stay away from C++, beginners have a hard time with it.
 
  • Like
Reactions: bethrezen0

Greiya Archives

uwu
Game Developer
Aug 23, 2022
477
556
Thanks for the advice, then i will try to start with a python then, and move to C# after that. Or Start with C# and if it's gonna be too much for me, revert to previous plan.
Ik I said learning subsequent programming languages after the first is much easier than learning the first, but learning python just to make learning C# for unity easier is probably not very efficient.

and btw, this part is just my opinion, but you prolly wanna learn C# in conjunction with unity, except maybe just cover the basics first. Learning C# separately and then unity will likely be less efficient. Especially cause when learning programming for the first time, learning as-you-go while creating things is both more efficient and better than stacking up tons of theoretical knowledge and then trying to apply all of it.
 

bethrezen0

Member
Jan 27, 2022
208
305
Ik I said learning subsequent programming languages after the first is much easier than learning the first, but learning python just to make learning C# for unity easier is probably not very efficient.

and btw, this part is just my opinion, but you prolly wanna learn C# in conjunction with unity, except maybe just cover the basics first. Learning C# separately and then unity will likely be less efficient. Especially cause when learning programming for the first time, learning as-you-go while creating things is both more efficient and better than stacking up tons of theoretical knowledge and then trying to apply all of it.
Yes i agree, also learning unity is definitely sounds like a good idea.

This is just my personal opinion.

For game development I think the target should be: python and/or C#

Putting aside game development and thinking about the fundamentals of programming following the road:
Linear programming -> Procedural programming -> Object oriented programming
I would avoid starting with object oriented languages like Java or C#, not because they are bad but because you will have to deal with some "I have to do *this* but I don't understand what it is and why yet".
If that is not a concern then by all means go with C#

A better start for beginners IMO would be Python or C++
- Python is easy to learn but it will be a pain in the ass to transition to other languages.
- C++ is a pain in the ass to learn but it makes the transition to other languages easier.
The fundamentals really are something to think about, are they a necessity or more of a recommendation ? Not understanding what i need to do and why definitely sounds concerning.
Do i need to first understand what Linear programming is and then have some experience with Procedural programming(something like Pascal maybe) in order to understand what to do with C# ?
 

Icarus Media

F95 Comedian
Donor
Game Developer
Jun 19, 2019
8,454
32,212
In case anyone was wondering about my earlier comment, Brainfuck is the name of a programming language. Not some random word I said.