1

What Coding Language to Start With?

Punkamoar's Avatar Punkamoar9/27/16 10:50 am
9/27/2016 5:42 pm
Fureniku's Avatar Fureniku
I've been wanting to pick up a coding language such as C++ or something like that, but I don't know where to start.

First off, what language should I learn? I have a rudimentary knowledge of HTML, but that's all the coding knowledge I know. I don't know if I want to make a game, or just know basic coding for programs and such, but I do want to learn something.

Second, where should I learn? I don't want to spend any money on the learning process, so if there's someplace that gives free lessons (CodeAcademy?) or something, that'd be ideal.

Thanks!
Posted by Punkamoar's Avatar
Punkamoar
Retired Moderator
Level 55 : Grandmaster Musician
566

Create an account or sign in to comment.

18

1
09/27/2016 5:42 pm
Level 88 : Elite Modder
Fureniku
Fureniku's Avatar
Honestly, which you "start with" doesn't matter. Start which whichever is best suited to the first project you want to do. If you can't think of any projects you want to do, you don't need to learn any

But in a nutshell, most languages are quite similar in how they work. I started with Java personally, making MC mods - but because I learned it, I've picked up Lua, JavaScript, C# and C++ a LOT quicker than I would have done if they'd been a totally new thing.

The skills are highly transferable, and once you've mastered one language it's very easy to switch
1
09/27/2016 5:07 pm
Level 37 : Artisan Engineer
LukeSky5000
LukeSky5000's Avatar
What you said is true and probably a good idea to mention that but I'd said C# for mobile as it works well for cross platform so you don't need to reprogram everything.
That's all.
1
09/27/2016 4:45 pm
Level 71 : Legendary Unicorn
McHorse
McHorse's Avatar
LukeSky5000If you want to make a Minecraft mod/ plugin or your own program:
Languages: Java/ C#/ C++

Mobile App Dev:
Languages: C#


Sorry for being pedantic, good sir, but I think you're reply is a little bit misleading.

Technically, you can write a program in any programming languages (duh!). And for mobile app development, it's specifically depends on the platform and OS. However, C# is not the only language for mobile app dev.

You can use Objective-C/C++/C for iOS app development, however you can also write a game in Unity's C# and the game will still run on iOS. For Android, it's primarily Java, however I think with some hacks or third-party software, you could probably use C++ on Android. Unity and C# is still relevant. That's all I know about those platforms.

However, as I said before about Electron, there's also wrappers for mobile devices (PhoneGap). There are more technologies (like DragonFireSDK and Corona SDK) which allow developing mobile applications in other programming languages.

Sorry for being pedantic again
1
09/27/2016 3:58 pm
Level 37 : Artisan Engineer
LukeSky5000
LukeSky5000's Avatar
Java ( Not java Script) is one of the most used programming languages and one of the most important. However what you should learn depends on what you want to do.

If you want to make a webpage:
Languages: HTML / CSS / JavaScript
Resources: There are many good resources for this.

If you want to make a Minecraft mod/ plugin or your own program:
Languages: Java/ C#/ C++


Mobile App Dev:
Languages: C#

Please note:
Java was made from C++ and C# was made after Java.
This means if you learn one then in most cases you already know a lot ( especially the basics) for the others. However I'd recommend Java as its used more than C# but C# is still a good language to learn. C++ isn't nearly as needed as the others.
1
09/27/2016 3:33 pm
Level 39 : Artisan Modder
GamerBah
GamerBah's Avatar
Java is good for beginners, as it's very easy to learn. However, it's definitely not the best for making games.

I'd suggest either C++ or C#. C++ is a very easy language to learn as well, and you can create many things with it. If you'd ever want to make good Microsoft-based programs, use C#. Be careful going from a language like Java to C#, or vice versa. It can be very confusing (I would know from experience )
1
09/27/2016 3:10 pm
Level 71 : Legendary Unicorn
McHorse
McHorse's Avatar
I meant games for Steam and such, not flash games


You can wrap a HTML5 game in a web browser wrapper (Electron or wrap yourself via Qt or Cocoa). I'm not really sure if it's going to pass on steam, but technically this will make your game a separate application. Electron has partial support for some OS dependent features like window menu. I checked it last time half year ago, so they might've added more features.

Well, of course there's downside for this kind of approach:

1. Not native performance
2. Browser limitations
3. Additional weight of selected wrapper (for Electron, as I recall, that's extra ~80 MB)

My point is that it's not impossible to submit a HTML5 game to Steam, but anyway, this approach is abuse of technology (instead of learning more efficient way to complete a task, use something that you know).
1
09/27/2016 2:45 pm
Level 44 : Master Architect
tobbestark
tobbestark's Avatar
Scott
tobbestark...However I would not recommend scripting languages like Javascript or Visual Basic to make a game....


Javascript not for a game? Thats stupid, HTML5 games are all over the place now, all the .io craze. They are all JS.

And also, what else would you code it in - Flash? That's dead


I meant games for Steam and such, not flash games

Myra_
Minecraft is Java. 'Nuff said.

The lolz are extreme

PunkamoarRight now I'm thinking C++, but what's the difference between C++ and C#?

C++ is an implement of the older language C while C# is Microsoft implement of C++ and C
C# is good for raw Windows-supported programs, not necessarily games. But both works great for games, but I'd prefer C++ before C#.
1
09/27/2016 12:21 pm
Level 52 : Grandmaster Prince
Prince Oceanus
Prince Oceanus's Avatar
I'd also take a look at Scratch, it's really helpful in understanding coding. And, if you don't understand something, there's a rather helpful wiki for it, too.
1
09/27/2016 12:12 pm
Level 55 : Grandmaster Musician
Punkamoar
Punkamoar's Avatar
Alright, thanks for the input!

mino490ROCKSI would recommend starting with python such as I did , it is simple but not simple enough to feel effortless and you can make some great stuff out of it. It is easy and gets you into the understanding of coding, So choose it.

I'm intrigued by Python, but I'm not familiar with it. What is it primarily used for?

tobbestarkIt really depends on what you want to do with it.

What I really want to do is be able to make utility programs, and perhaps a game at some point. I have no plans for projects as of yet, but that could change fast.

tobbestark Often it's not just plug and play. As for Java, it needs the JRE to be able to run the code while things like C++ and Visual Basic can run straight off of the Windows platform. But for say, if you want to make a game, C++ or even C# is really great to learn and works fine most of the time.

Right now I'm thinking C++, but what's the difference between C++ and C#?

tobbestarkBut as you already know HTML, Javascript and PHP might be really useful if you want to make websites. However I would not recommend scripting languages like Javascript or Visual Basic to make a game or another really demanding programs.

I'd like to learn more advanced HTML, and knowing Javascript and PHP would definitely help if I ever wanted to do website building professionally, but that might be a later project.

tobbestarkMostly you can find tutorials on Youtube or different websites. I'd recommend TheNewBoston if you don't like to sit and read long paragraphs of text.

I'll check that channel out, thanks for the help!

ZitzabisUltimately, it really depends what you're wanting. Python is simple but limited. C++ is more powerful but complicated. C# is easy but time consuming.
I personally would suggest C++. You'll learn the correct way to do things which will help you if you learn other languages on top of that.

I'll probably end up starting with C++, since I will probably end up learning more languages as time progresses.

Thanks for the help guys! I'm still interested in hearing about places to learn this, any Youtube videos/channels you know of, etc
1
09/27/2016 12:02 pm
Level 46 : Master Button Pusher
Leeberator
Leeberator's Avatar
Python is a good beginner language, though Java isn't too hard to learn, either.
1
09/27/2016 11:57 am
Level 75 : Legendary Gent
Zitzabis
Zitzabis's Avatar
Considering what you seem to be hoping to do, I would avoid the scripting languages for sure.

I started with C++ and then learnt C# and I'm currently working on Python.
In the end, I've found that C++ is great for learning properly structured programming (that doesn't really mean it's always complicated) and has some of the best documentation out there. I use it to map out the logic of my program or write small tools since it's such an easy set up environment per project.

C# is my preferred platform if I want an actual GUI and can easily support a lot of the same code that I've written in C++. Only draw back is that creating a project can take a bit longer.

Python is good for messing around. Where you're not being too serious in what you're doing, or you want something that can easily process data. I'm currently using Python to do machine learning. But that's more on the advanced end.

Ultimately, it really depends what you're wanting. Python is simple but limited. C++ is more powerful but complicated. C# is easy but time consuming.
I personally would suggest C++. You'll learn the correct way to do things which will help you if you learn other languages on top of that.

Myra_
Scott
tobbestark...However I would not recommend scripting languages like Javascript or Visual Basic to make a game....


Javascript not for a game? Thats stupid, HTML5 games are all over the place now, all the .io craze. They are all JS.

Minecraft is Java. 'Nuff said.

Java is not Javascript.
"Java and Javascript are similar like Car and Carpet are similar."
1
09/27/2016 11:48 am
Level 64 : High Grandmaster Sweetheart
Myra_
Myra_'s Avatar
Scott
tobbestark...However I would not recommend scripting languages like Javascript or Visual Basic to make a game....


Javascript not for a game? Thats stupid, HTML5 games are all over the place now, all the .io craze. They are all JS.

Minecraft is Java. 'Nuff said.
1
09/27/2016 11:39 am
Level 39 : Artisan Droid
Scott
Scott's Avatar
tobbestark...However I would not recommend scripting languages like Javascript or Visual Basic to make a game....


Javascript not for a game? Thats stupid, HTML5 games are all over the place now, all the .io craze. They are all JS.

And also, what else would you code it in - Flash? That's dead
1
09/27/2016 11:38 am
Level 1 : New Miner
Buildception
Buildception's Avatar
The best thing to start I'd suggest is Phython, due to it being relatively easy, but also there is a lot of documentation and tutorials to help you along the way.

Something to help you early though is to decide where you want it to take you, I wasted a year on HTML and PHP intergration and what not, to then decide at the end of that year that I wasn't comfortable with it, and that I didn't like it.

Knowing where you want to go is also a motivation boost to learn the code, and to keep you excited and dedicated. If you just want to learn one for the sake of learning one, or looking into a new code, go for phython.
1
09/27/2016 11:31 am
Level 44 : Master Architect
tobbestark
tobbestark's Avatar
It really depends on what you want to do with it. Often it's not just plug and play. As for Java, it needs the JRE to be able to run the code while things like C++ and Visual Basic can run straight off of the Windows platform. But for say, if you want to make a game, C++ or even C# is really great to learn and works fine most of the time. But as you already know HTML, Javascript and PHP might be really useful if you want to make websites. However I would not recommend scripting languages like Javascript or Visual Basic to make a game or another really demanding programs. Mostly you can find tutorials on Youtube or different websites. I'd recommend TheNewBoston if you don't like to sit and read long paragraphs of text.
1
09/27/2016 11:21 am
Level 20 : Expert Button Pusher
MinoOtter
MinoOtter's Avatar
I would recommend starting with python such as I did , it is simple but not simple enough to feel effortless and you can make some great stuff out of it. It is easy and gets you into the understanding of coding, So choose it.
1
09/27/2016 10:59 am
Level 37 : Artisan Architect
The_Growl
The_Growl's Avatar
I'd recomend JavaScript. If you don't want to pay, or read loads of documentation, you could try some YT videos.
1
09/27/2016 12:38 pm
Level 71 : Legendary Unicorn
McHorse
McHorse's Avatar
Second this, but they are some limitations to it:

1. If you're going to make a game, you'll have to consider how much performance do you need to make your game run smoothly. If you're game as simple as 2048 or tetris, then JS is a great choice
2. You always will dependent on HTML and CSS boilerplate code if you're going to write a game.

JS is good for client web apps, and also gains lots of support for server environment like nodejs, so by learning JS, you'll be able, in future use it in as server side porgramming language.

However you need to note, if you're going to use JS, you rather start with understanding asynchronous programming (not really sure how it's called technically), because client and server side (nodejs, primarly) heavily inspired by (or based on) event listening. You'll write heavily nested code if you won't understand how it works. Also, functional programming is a thing in JS.

For games, I also recommend Lua (and LÖVE game engine, good engine) and Python (PyGame, although I didn't tried it out).
Planet Minecraft

Website

© 2010 - 2024
www.planetminecraft.com

Welcome