Jump to content

Which programming language should i start with as a 15 year old?

memz
Go to solution Solved by Sauron,
4 minutes ago, WolframaticAlpha said:

OH MY GOD!!!!!!!!!!!!!!

Wow, God forbid a 15 year old who has never programmed anything doesn't know what .NET is... maybe chill?

9 minutes ago, memz said:

my uncle was telling me to start with python but i dont know if it'll take me anywhere in the future as there will be many other python programmers to compete with 

Never think like this. Think of it as learning how to program, not learning a specific language. If you get your driver's license on a Honda Civic you're equally capable of driving a Jeep with a little practice - it's the same with programming. If you get good at it it won't matter what language you need to use. There's really no such thing as a programmer who only writes Python, though one may choose to specialize and get more experience writing in that language.

 

Python is a good language to start with because it removes a lot of obstacles and lets you focus on what you want the code to do. I suggest you worry less about what language to start with and more about actually starting 😉

On 5/17/2021 at 12:52 AM, memz said:

yeah i think c++ is where im going to be heading 

 

Start with C. If you start with C, you will have an easy grip over C++. And if you find C++ mind numbingly retarded, then you can always go back to the scaringly beautiful C. 

Link to comment
Share on other sites

Link to post
Share on other sites

On 5/16/2021 at 3:16 PM, WolframaticAlpha said:

A question. I started programming in BASIC and then moved on to C. While I am fairly proficient in programming, I seemingly hate Python. Am I a contrarian or has C blinded me?

Are you datguys 2nd account?

 

In any case, in many formal schools, it used to be java/c++ as intro programming languages but nowadays, they are increasingly replace by pythons and JavaScript. I think the popularity of node.js and many python frameworks for machine learning and backend web development has something to do with it. 

Sudo make me a sandwich 

Link to comment
Share on other sites

Link to post
Share on other sites

12 minutes ago, wasab said:

Are you datguys 2nd account?

 

In any case, in many formal schools, it used to be java/c++ as intro programming languages but nowadays, they are increasingly replace by pythons and JavaScript. I think the popularity of node.js and many python frameworks for machine learning and backend web development has something to do with it. 

No. 

 

I hate both of these languages. I hate C++ too. C++ inheritance and encapsulation is really annoying and the encapsulation stuff is extraordinarily inefficient, if you are adapting C code to C++.

 

 

Bjarne(Creator of cpp): "there lies a very beautiful language within C++, wanting to get it's voice out"

 

Memegod Torvalds: "Yeah, it's C"

Link to comment
Share on other sites

Link to post
Share on other sites

1 hour ago, WolframaticAlpha said:

Bjarne(Creator of cpp): "there lies a very beautiful language within C++, wanting to get it's voice out"

 

Memegod Torvalds: "Yeah, it's C"

C isn't any particularly beautiful. In fact, opposite. Have you seen how you are suppose to declare a function pointer? Total ugliness. 

 

 

Sudo make me a sandwich 

Link to comment
Share on other sites

Link to post
Share on other sites

Can I be the first one to say ... 'back in my day  ....' they didn't even have compilers,  just the BASIC interpreter built into the old TRS-80 model one.   You could do peek, and poke if you wanted to do some serious machine language stuff 🥵

 

.NET sort of limits you to MS Windows

C, Javascript, Python (and innumerable other languages) are pretty much cross-platform, ie: can apply to many different computers/devices/operating systems

 

You can actually do a bit of object-oriented stuff in Javascript ... create your own objects with their own properties and methods.  Everyone has their preferred language, ask 200 programmers which language is best and you'll get 200 different answers. 😇

 

It's only a decision you yourself can make,  but the very worst thing is to NOT make a decision.   Once you know one programming language well, most of the techniques will also apply to other programming languages.  You will find that you will pick up other languages pretty quickly if you so wish.

 

 

{GoofyOne's 2c worth ..... reminiscing about the all singing, dancing TRS80 Model 2000 .. now that was a REAL machine!)

 

Link to comment
Share on other sites

Link to post
Share on other sites

==thread cleaned==

  • Ensure a friendly atmosphere to our visitors and forum members.
  • Encourage the freedom of expression and exchange of information in a mature and responsible manner.
  • "Don't be a dick" - Wil Wheaton.
  • "Be excellent to each other" - Bill and Ted.
  • Remember your audience; both present and future.

Good luck, Have fun, Build PC, and have a last gen console for use once a year. I should answer most of the time between 9 to 3 PST

NightHawk 3.0: R7 5700x @, B550A vision D, H105, 2x32gb Oloy 3600, Sapphire RX 6700XT  Nitro+, Corsair RM750X, 500 gb 850 evo, 2tb rocket and 5tb Toshiba x300, 2x 6TB WD Black W10 all in a 750D airflow.
GF PC: (nighthawk 2.0): R7 2700x, B450m vision D, 4x8gb Geli 2933, Strix GTX970, CX650M RGB, Obsidian 350D

Skunkworks: R5 3500U, 16gb, 500gb Adata XPG 6000 lite, Vega 8. HP probook G455R G6 Ubuntu 20. LTS

Condor (MC server): 6600K, z170m plus, 16gb corsair vengeance LPX, samsung 750 evo, EVGA BR 450.

Spirt  (NAS) ASUS Z9PR-D12, 2x E5 2620V2, 8x4gb, 24 3tb HDD. F80 800gb cache, trueNAS, 2x12disk raid Z3 stripped

PSU Tier List      Motherboard Tier List     SSD Tier List     How to get PC parts cheap    HP probook 445R G6 review

 

"Stupidity is like trying to find a limit of a constant. You are never truly smart in something, just less stupid."

Camera Gear: X-S10, 16-80 F4, 60D, 24-105 F4, 50mm F1.4, Helios44-m, 2 Cos-11D lavs

Link to comment
Share on other sites

Link to post
Share on other sites

Ignore the toxic culture about not knowing what stuff is. You'll never know everything and neither do these ppl.

Learn Python first. It's the most popular programming language in the world for a reason. Also, the most common implementation of Python is written in C, so you can actually start learning C w/ your Python if you really want. As a new programmer, you'll be able to see the fruits of your labor a lot faster in Python. You can make all sorts of stuff significantly faster in Python than in C. 

Link to comment
Share on other sites

Link to post
Share on other sites

You should supplement programming with some math subjects like Geometry and Algebra. If there are any math subjects to learn, at least those two. You can't mess with your x and y coordinates without those. As for the beginning language since you want to do both web dev and games programming it sounds like you are likely going to end up with WebGL down the road so you should start with C then proceed to C++ then JavaScript. Finally, pick your back end languages to handle your databases.

 

Most importantly, learn how to use flow charts so you can develop your ability to come up with algorithms. You can't program anything if you don't know how data is thrown around inside your program.

Link to comment
Share on other sites

Link to post
Share on other sites

13 hours ago, colemanaitor said:

Learn Python first. It's the most popular programming language in the world for a reason. Also, the most common implementation of Python is written in C, so you can actually start learning C w/ your Python if you really want. As a new programmer, you'll be able to see the fruits of your labor a lot faster in Python. You can make all sorts of stuff significantly faster in Python than in C. 

You can only program in weakly typed languages for so long until runtime errors and bugs drive you insane. 

Sudo make me a sandwich 

Link to comment
Share on other sites

Link to post
Share on other sites

I don’t want to discourage you, programming is awesome and has so many fields you can specialize in. I just want to add that game development might not be the dream you are thinking of. The jobs are oftentimes not as well paid as jobs in other software fields and work times can be rough (look at crunch times before releases).

I decided for myself that it’s not worth destroying my passion just to work in the gaming industry and instead went into other fields in the industry and am more than happy to have done so 

Link to comment
Share on other sites

Link to post
Share on other sites

  • 4 weeks later...
On 5/27/2021 at 6:29 AM, wasab said:

You can only program in weakly typed languages for so long until runtime errors and bugs drive you insane. 

 Python is strongly-typed. '1' + 1 will give you an error.

Link to comment
Share on other sites

Link to post
Share on other sites

5 hours ago, Alexeygridnev1993 said:

 Python is strongly-typed. '1' + 1 will give you an error.

I meant both dynamic typed and weakly typed. 

Sudo make me a sandwich 

Link to comment
Share on other sites

Link to post
Share on other sites

On 5/16/2021 at 1:33 PM, memz said:

I've recently got into programming using HTML and CSS. But now I've decide to take this seriously so I want to either learn JavaScript or Python i want to do both game development and web development ( im more interested in games though) so I'm need help and some advice.

 

Highly recommend Java. If you know that you really want to program, ease yourself into it. Don't jump in headfirst and scare yourself away. Take your time, work on projects of your own, and guide your own experience. Find something that you WANT to achieve, and then write a program for it. 

Link to comment
Share on other sites

Link to post
Share on other sites

On 5/16/2021 at 8:33 PM, memz said:

I've recently got into programming using HTML and CSS. But now I've decide to take this seriously so I want to either learn JavaScript or Python i want to do both game development and web development ( im more interested in games though) so I'm need help and some advice.

 

As a web developer that started with HTML and CSS at about your age I'd recommend you have a look of basic concepts in JavaScript (JS) and learn Lua for programming games. Because modern code editors and browsers are great for learning how to write code and debug as you go.

 

Visual Studio Code with Type checking for JS(using Typescript "engine" without any Typescript syntax) and a Linter is SUPERB combination for newcomers.

Python does have lots of tutorials and learning material but its usage in making games is limited after simple "homework assignments" and since you will be learning basic concepts like variables, functions and strings etc. from JS tutorials it makes Python tutorials kind of redundant.

 

A good thing to know is that browsers are actually programs written in C/C++ with "JS functionality" (programming and execution) added for the "end user" where a lot of details are abstracted away for easier usage.. which is exactly the same with game engines that use C/C++ and use Lua for the "end user", where the goal of the engine is to deal with OS and GPU instructions / pipeline and you only have to worry about your game logic in Lua. 

 

My case for Lua is that its simplicity makes it a better language to switch back and forth from other languages and game engines like Defold, Love2D, "Roblox" make it easy to experiment with game development without a dead end when you want to easily deploy/publish a game on modern devices/platforms like Android, iOS, Switch(Defold).. Mac, Windows and Linux are a given for most engines.

TLDR;

USE:

Html, css, js for web development, learning programming and simpler games(Gdevelop) 

Python if you don't want to learn the web stack (line above) and only want to learn/use one language (Pygame)

Lua if you want to develop & publish your game on multiple modern platforms (Defold) but don't want to write c/c++

Link to comment
Share on other sites

Link to post
Share on other sites

I would recommend anyone who seriously wants to learn programming to start with C, which has been stated by some people.

However, since you want to learn game development and web development, Javascript would make the most sense. For web, JS can be used for both frontend and backend development. I'm not a real game developer, so my opinion here might not be valuable, but I wouldn't recommend JS for game development, but can certainly be used.

 

If you are looking to take game development more seriously, C++ or C# would be my recommendations. C++ is generally used for game development and can be used in the Unreal engine and C# is the main language for Unity. Also C# is common language for web backend. However, whatever language you decide to use will probably have some library or framework for game development, logic and math skills are more important than anything.

 

Since you mentioned Python, I would definitely recommend learning it at some point, because it's an useful and easy language to learn. It's a decent way to learn programming.

 

In general, however, I think most efficient way to learn is to first have an idea or a project, and learn the appropriate language/tools to make that a reality. At the end of the day, you will probably have to learn multiple languages, tools and techniques and your best tool will be your ability to learn.

Link to comment
Share on other sites

Link to post
Share on other sites

I learned C++ in high school about your age.  Granted it was Boreland C++ at the time.  If I were teaching a kid today, I would probably go Python -> C++ -> Assembly -> Java/C#.  Once you get into college, if you go CS you will learn C -> Assembly -> C++ -> then Java or similar depending on department/etc.  I was CpE so I was a bit more hardware level, but ultimately after C++ it is the same salad with different dressings.

Link to comment
Share on other sites

Link to post
Share on other sites

I started off with HTML, CSS and Javascript. I think they are good languages to learn to start with and javascript might be the best but then again what kind of programming you want to do will dicate what you want to learn. Just go learn some language or another!

My Laptop: A MacBook Air 

My Desktop: Don’t have one 

My Phone: An Honor 8s (although I don’t recommend it)

My Favourite OS: Linux

My Console: A Regular PS4

My Tablet: A Huawei Mediapad m5 

Spoiler

 

 

 

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×