On a serious note, Java is fine. I like C# and PHP personally. It really depends on what you want to do. You want to make Minecraft mods/plugins? Learn Java.
Excluding Javascript because that's cheating, Java is the most popular language used. For most people, its uses seem obscure and few, but in reality the amount of backend/enterprise development that happens with Java (or at least the JVM) is staggering. Additionally, its uses in microprocessers is also abundant, but discrete. If you want something of ease to pick up on and is guaranteed to be very useful, then Java is your best bet. Other JVM languages like Scala and Kotlin should also prove useful (I personally REALLY love Kotlin).
Java/C#/Objective C if you wish to write mobile or desktop apps with GUI
PHP/Javascript/HTML(markup)/CSS if you intend to create websites/webapps
Bash for automation (works on new Windows too, usually bash was mostly used on Linux)
Perl/Python if you prefer a nice looking and simple to use language, mostly used for webapps
Goo (googles language) if you want to try something new or write apps with many cores
C++ if you want to make games
C/Assembler for embedded systems (Complex and hard to debug languages)
SQL if you wanna build databases
Those are the most common I believe, your choice mostly depends on what you wanna do. Also, when you know one programming language it's easier to learn the second. Focus more on syntax rather than actual function and library names, you'll soon learn the basic data types that exist in all languages and so on.
I find SQL to be particularly fun, as it just requires a very different mindset to program effectively.
Personally, if you're trying to self-train, I would recommend Visual Basic or C#. Microsoft has Visual Studio (which can handle either language) available for free, and they're both common enough to have very active programmer communities (very useful, as pretty much any problem you encounter has probably already been faced by someone before). Once you feel comfortable with one language, you can try others.
Rollback Post to RevisionRollBack
"Most plans are critically flawed by their own logic. A failure at any step will ruin everything after it. That's just basic cause and effect. It's easy for a good plan to fall apart. Therefore, a plan that has no attachment to logic cannot be stopped. The success or failure of any given step will have no impact on the macro level."
-Red Mage, 8-Bit Theater
"90% of the Internet's statistics are made-up, and 7/8 of its quotes are misattributed."
-Abraham Lincoln, 16th US President
"Most plans are critically flawed by their own logic. A failure at any step will ruin everything after it. That's just basic cause and effect. It's easy for a good plan to fall apart. Therefore, a plan that has no attachment to logic cannot be stopped. The success or failure of any given step will have no impact on the macro level."
-Red Mage, 8-Bit Theater
"90% of the Internet's statistics are made-up, and 7/8 of its quotes are misattributed."
-Abraham Lincoln, 16th US President
lua- mc mods use this and practally every mod there is uses this as it is a scripting language, Sethbling used this to build his nuro network
python
and you can find out why here, I use this website to choose languages also
Rollback Post to RevisionRollBack
Hello =), I'm a programmer in training. I am familiar with most of the language but not fully. I know my way around the android's full directory and numerous other things.
Status: Problems with the a certain staff and what warning they gave me, message me if you want to know more
I do some dev.. if you can, learn some SQL. I noticed not a lot of people talk about it.. but it's very useful complement for anything you may ever do. Also learn some basic admin.
Forget about what language should I learn. And focus on what do you want to build? Do you want to make a Minecraft Mod? Than learn Java. Do you want to build viruses? Might as well use C++, and etc...
But the whole point being, don't ask the community what is the best language to learn, because we all have different opinions. Focus in what you need to achieve. Don't give a false illusion, "I am going to make a game "LIKE" Minecraft". Or... I will be the best programmer, this will just give false impression that you're "a" good programmer.
I see a lot of kids here on Minecraft Forums claiming that they can program, and doesn't even know what is OOP abbreviates to... Sadly. However if you still insist, in "What is a good programming language to learn.". With zero programming experience. I would say Python.
Current version of Python is 3.6.
Pro
+ Clean syntax
+ High-level language (meaning is very readable)
+ Less thinking and more coding (you don't need to import any libraries to start programming)
+ No curly braces and semi-colons;
+ High demand in the current market (e.g.: Artificial Intellegence, Machine Learning, Neural Network, Big Data).
+ Used amongst Data Scientist
Cons
+ Heavily dependent on whitespaces (identition does matter! A single identation, can change your programming structure).
+ Does not enforce Object Oriented, which leads to bad design patterns for beginner programmers
+ Python Doc can be a bit difficult to learn at the beginning
+ Variables are defined dynamically. Can cause unexpected bug errors, since you are unsure what type of variable you declared.
Anyways, I am sure the community has something hateful to say... But that is my personal opnion, and people shouldn't take too personal.
Rollback Post to RevisionRollBack
I always wondered why did I learnt to code. But, I am too busy debugging.
I do some dev.. if you can, learn some SQL. I noticed not a lot of people talk about it.. but it's very useful complement for anything you may ever do. Also learn some basic admin.
SQL is nice. But I would also reccomened in learning NoSQL database (lookup on Google). But web development gets fun especially when you have a choice to use frameworks.
For data manipulation I tend to use AngularJS (big web applications) and VueJS for (small web applications). And if a company requests like a mobile phone, I just use Native React. This gives a lot of flexibility and dynamic. I also tend to use NodeJS as my backend, due to the fact they have a lot of libraries that is uploaded in npm.
Personal projects, I tend to stick with PHP. Especially the country where I live, their a bit behind with frameworks or they simply cannot upgrade their website due to complex infracture they have, which tends to cause problems in future; since the developers tend to shove code anywhere, without properly documenting their source code.
PHP7 (backend client) + MySQL (database) + VueJS (frontend client).
Rollback Post to RevisionRollBack
I always wondered why did I learnt to code. But, I am too busy debugging.
As I wrote 5 years ago specifically addressing this question being asked frequently on this very forum and a few others, there simply is no "best language to learn". What is more important is that you start.
If you have a specific thing you want to do, you'll want to find a language suited to that task. Don't learn C++ if you want to make a website, and don't learn Javascript if you want to make a desktop application. You can use either for both but some languages are better suited to particular tasks than others, which is largely why there are different programming languages.
At the same time, I've seen too many beginners bite off more than they can chew. One individual, who had no idea how to program, set out with the goal of creating "youtube, but better". You have to start small, a task that won't overwhelm you as you learn the intricacies of the language as well as programming concepts. One mistake is to learn programming through Java minecraft mods, as I find it brings with it a number of bad habits or misunderstandings about exactly what the copy-pasted boilerplate they need is doing.
Time spent deciding what language to learn is better spent learning a programming language. Unless you choose a very obscure language, the task of learning it is not going to be wasted regardless of what early projects you intend to tackle or how well suited they are, because language concepts aren't unique across languages; I think I put it well in the linked blog post/article I wrote when I said "it isn’t the syntax or structure of a given language that gives you the tools to coalesce those language elements into algorithms, and therefore solutions, but rather your understanding of base concepts."
Minecraft used to use Java (and now something else I can't remember) as far as I know. What's a good programming language to learn? Pros and Cons?
PS. I have 2 Teach Yourself books on Java and C++
RPG. Definitely RPG. Maybe COBOL or Fortran, lol
On a serious note, Java is fine. I like C# and PHP personally. It really depends on what you want to do. You want to make Minecraft mods/plugins? Learn Java.
Excluding Javascript because that's cheating, Java is the most popular language used. For most people, its uses seem obscure and few, but in reality the amount of backend/enterprise development that happens with Java (or at least the JVM) is staggering. Additionally, its uses in microprocessers is also abundant, but discrete. If you want something of ease to pick up on and is guaranteed to be very useful, then Java is your best bet. Other JVM languages like Scala and Kotlin should also prove useful (I personally REALLY love Kotlin).
I find SQL to be particularly fun, as it just requires a very different mindset to program effectively.
Personally, if you're trying to self-train, I would recommend Visual Basic or C#. Microsoft has Visual Studio (which can handle either language) available for free, and they're both common enough to have very active programmer communities (very useful, as pretty much any problem you encounter has probably already been faced by someone before). Once you feel comfortable with one language, you can try others.
"Most plans are critically flawed by their own logic. A failure at any step will ruin everything after it. That's just basic cause and effect. It's easy for a good plan to fall apart. Therefore, a plan that has no attachment to logic cannot be stopped. The success or failure of any given step will have no impact on the macro level."
-Red Mage, 8-Bit Theater
"90% of the Internet's statistics are made-up, and 7/8 of its quotes are misattributed."
-Abraham Lincoln, 16th US President
C++
Hello.
You should definitely learn C# if you are looking for great object-oriented language
You should learn Haskell if you to die
You should learn assembly for.... low-level stuff
You should learn C for... low-level stuff too
You should learn C++ for lots of purposes
Uhh...
Forget web development.
Stay awesome!
What do you mean by this?
"Most plans are critically flawed by their own logic. A failure at any step will ruin everything after it. That's just basic cause and effect. It's easy for a good plan to fall apart. Therefore, a plan that has no attachment to logic cannot be stopped. The success or failure of any given step will have no impact on the macro level."
-Red Mage, 8-Bit Theater
"90% of the Internet's statistics are made-up, and 7/8 of its quotes are misattributed."
-Abraham Lincoln, 16th US President
As a dev myself, I recommend these:
c++
java- mc mods use this
lua- mc mods use this and practally every mod there is uses this as it is a scripting language, Sethbling used this to build his nuro network
python
and you can find out why here, I use this website to choose languages also
Hello =), I'm a programmer in training. I am familiar with most of the language but not fully. I know my way around the android's full directory and numerous other things.
Status: Problems with the a certain staff and what warning they gave me, message me if you want to know more
I do some dev.. if you can, learn some SQL. I noticed not a lot of people talk about it.. but it's very useful complement for anything you may ever do. Also learn some basic admin.
Python is really easy to learn and use.
Forget about what language should I learn. And focus on what do you want to build? Do you want to make a Minecraft Mod? Than learn Java. Do you want to build viruses? Might as well use C++, and etc...
But the whole point being, don't ask the community what is the best language to learn, because we all have different opinions. Focus in what you need to achieve. Don't give a false illusion, "I am going to make a game "LIKE" Minecraft". Or... I will be the best programmer, this will just give false impression that you're "a" good programmer.
I see a lot of kids here on Minecraft Forums claiming that they can program, and doesn't even know what is OOP abbreviates to... Sadly. However if you still insist, in "What is a good programming language to learn.". With zero programming experience. I would say Python.
Current version of Python is 3.6.
Pro
+ Clean syntax
+ High-level language (meaning is very readable)
+ Less thinking and more coding (you don't need to import any libraries to start programming)
+ No curly braces and semi-colons;
+ High demand in the current market (e.g.: Artificial Intellegence, Machine Learning, Neural Network, Big Data).
+ Used amongst Data Scientist
Cons
+ Heavily dependent on whitespaces (identition does matter! A single identation, can change your programming structure).
+ Does not enforce Object Oriented, which leads to bad design patterns for beginner programmers
+ Python Doc can be a bit difficult to learn at the beginning
+ Variables are defined dynamically. Can cause unexpected bug errors, since you are unsure what type of variable you declared.
Anyways, I am sure the community has something hateful to say... But that is my personal opnion, and people shouldn't take too personal.
SQL is nice. But I would also reccomened in learning NoSQL database (lookup on Google). But web development gets fun especially when you have a choice to use frameworks.
For data manipulation I tend to use AngularJS (big web applications) and VueJS for (small web applications). And if a company requests like a mobile phone, I just use Native React. This gives a lot of flexibility and dynamic. I also tend to use NodeJS as my backend, due to the fact they have a lot of libraries that is uploaded in npm.
Personal projects, I tend to stick with PHP. Especially the country where I live, their a bit behind with frameworks or they simply cannot upgrade their website due to complex infracture they have, which tends to cause problems in future; since the developers tend to shove code anywhere, without properly documenting their source code.
PHP7 (backend client) + MySQL (database) + VueJS (frontend client).
Java because of minecraft and c++
As I wrote 5 years ago specifically addressing this question being asked frequently on this very forum and a few others, there simply is no "best language to learn". What is more important is that you start.
If you have a specific thing you want to do, you'll want to find a language suited to that task. Don't learn C++ if you want to make a website, and don't learn Javascript if you want to make a desktop application. You can use either for both but some languages are better suited to particular tasks than others, which is largely why there are different programming languages.
At the same time, I've seen too many beginners bite off more than they can chew. One individual, who had no idea how to program, set out with the goal of creating "youtube, but better". You have to start small, a task that won't overwhelm you as you learn the intricacies of the language as well as programming concepts. One mistake is to learn programming through Java minecraft mods, as I find it brings with it a number of bad habits or misunderstandings about exactly what the copy-pasted boilerplate they need is doing.
Time spent deciding what language to learn is better spent learning a programming language. Unless you choose a very obscure language, the task of learning it is not going to be wasted regardless of what early projects you intend to tackle or how well suited they are, because language concepts aren't unique across languages; I think I put it well in the linked blog post/article I wrote when I said "it isn’t the syntax or structure of a given language that gives you the tools to coalesce those language elements into algorithms, and therefore solutions, but rather your understanding of base concepts."