How do I get into coding? Where do I start? What's a good language to start with?

How do I get into coding? Where do I start? What's a good language to start with?

Other urls found in this thread:

cprogramming.com/tutorial/c-tutorial.html
learn-c.org/
learncpp.com/
cplusplus.com/doc/tutorial/
cprogramming.com/tutorial/c -tutorial.html
en.cppreference.com/
isocpp.org/faq
learnpython.org/
codecademy.com/en/tracks/python
wiki.installgentoo.com/index.php/Programming_resources
en.wikipedia.org/wiki/Fluid_and_crystallized_intelligence
twitter.com/NSFWRedditImage

Be 9 years old and start with Lisp.

Malbolge or go flip burgers.

English

Learn BASIC, then COBOL/PASCAL, then C. Then go for all the memes.

>Then go for all the memes
Rust? forth?
Perl?

Python.

Perl's ded, I'd recommend python or even php over it. Idk about Forth, but Rust seems hella meme, maybe I just don't _get_ it still. Mozilla pisses me off too much.

Also, there's a reason for the old languages I recommended. They do a good job ramping good noobs up, as far as cs history goes. If you jump into a modern language today without any history or context you'll end up trash.

The next generation will be so fucked up in about 10 years because of ycombinator, mozilla and nodejs. Mark my words.

bumping out of interest
is it bad to start with C?
how about assembly? where would that fall in your analogy?

gentoo

Its not horrible, but I'd at least study up older langs beforehand.

Assembly is essentially advanced/improved BASIC due to memory getting better. Its not bad either, but they taught BASIC in high schools in the 80s because it was friendlier iirc.

This is a troll. BASIC is dead, and COBOL will rot your brain. Starting with C is ideal, but otherwise a language like Python or Ruby will do if one wants to take things the easy way.

...

Age doesn't matter for programming, unless you're like 50+.

Haha well meme'd, stranger

It's not a troll, kys. If you recommend Ruby then swiftly kys. In fact, you might as well recommend Swift at this point because obviously you don't give a shit about someone properly grasping fundamentals of science vs being a pajeet.

It doesn't. You're underage if you think it does.

Install Gentoo.

>Says he's not a troll and yet in the very same sentence uses 'kys'

Yep troll confirmed.

God I want to fuck Raven so bad. Her half-demon ass is probably so warm and tight.

it's like playing an instrument.
most top guns of the field started at < 12 years old

Hey user, idgaf if in 5 years OP is flipping burgers or browsing Stack Overflow on his phone at work because of an obscure runtime error that he can't fix.

Faggots who continuously shill "easy" languages can literally kill themselves.

What I recommended is sane you butthurt nufag, and practical. Telling someone to ignore it is more of a troll to people who know what they're doing, you filthy casual.

Do you want a job? Do you hate yourself?
Learn JavaScript

If you're smart enough, it doesn't matter what age you start at. Bottom line.

>shill
>literally kill themselves.
>butthurt
>nufag
>filthy casual
You use all these words and have the audacity to propose that anything you have to say is "sane"?
Toplel

BASIC is very dead.
But I LOVE it.
It's so comfy to programm on my C64.

You just used toplel, so...

Anyway, if OP isn't a pajeet, ivan or Brad then he should go back and learn the real pre-udacity era meme languages first. Dedicate one month or more to each, and move on.

my first waifu

Then if you are smart enough, 50+ isn't an issue. It either matters or it doesn't. your shitty double think is cancerous.

Learn basic (freebasic preferably), then you fuck around and acquire the essential skill of picking the pieces you have and assembling a function or program that do what you want, then you challenge yourself to do bigger and bigger things.

Then you unlearn basic, and learn python to get rid of the bad coding practices you learned along with basic and finally go to C to finally be able to use an useful language.

BASED
A
S
E
D

So you want to learn programming?

Pick a starting language. For beginners, there are generally two recommended "programming families" that you can choose to start learning:
-Dynamically typed/interpreted programming languages, such as: Python, Perl, Ruby
-Statically typed/compiled programming languages, such as: C, C++, C#

These are amongst the most popular languages in use worldwide, including 4 from the top 5. Both approaches are perfectly fine, and well-documented.
-Dynamically typed programming may be a bit more flexible, convenient, and forgiving. It is more popular in academia.
-Statically typed programming is a bit more suited for making general applications. It is more popular in industries.

Cannot decide? Flip a coin.

If you choose statically typed/compiled programming, you may want to start with C, then pick up C++. C is very well documented, and teaches many universal programming concepts. C++ is based on C, and adds new concepts. Sources:
For C:
The C Programming Language (K&R)
C Primer Plus (Prata)
cprogramming.com/tutorial/c-tutorial.html
learn-c.org/

For C++:
learncpp.com/
cplusplus.com/doc/tutorial/
cprogramming.com/tutorial/c -tutorial.html
en.cppreference.com/
isocpp.org/faq

If you choose dynamically typed/interpreted programming, you may want to start with Python. It is very easy to pick up. Here are some good sources:
learnpython.org/
codecademy.com/en/tracks/python

>BUT I WANT MORE SOURCES!
Read: wiki.installgentoo.com/index.php/Programming_resources

>BUT I WANNA START WITH [language x] INSTEAD!
Sure, if you like. But the languages above are considered good for beginners.

>BUT I WANNA MAKE A COOL WEBSITE!
Learn HTML, CSS, and Javascript.

>BUT I WANNA MAKE iPHONE GAMES!
Learn Objective C and/or Swift.

>BUT I WANNA MAKE ANDROID GAMES!
Learn Java.

>BUT I WANNA MAKE PC GAMES!
Learn patience.

The problem with learning C first, is that it teaches you how it handles things, but doesn't actually teach you what the fuck is going on. Not saying its not amazing, but I don't know about recommending it for someone starting out who doesn't know about threads, memory etc. OOP languages are actually better for that.

"no"
en.wikipedia.org/wiki/Fluid_and_crystallized_intelligence

>implying anyone on this board is willing to put in the 80 hr weeks to be top of the field

I guess this is the most solid advice on the thread?

LOL
Retards actually think basic is ded
Look up VBA on Stackoverflow

C teaches variables, assignment, loops, conditionals, functions, and I/O. These are all universal concepts that a programming student needs to fully understand. Yes, C has more complicated stuff, but a student starts with the abc's, not the xyz's.

Why js is so shit
Ehh

OpenGl

>What's a good language to start with?
I'd recommend you html or linux

If you're smart enough, it doesn't matter when you start anything.

Don't be a dipshit.

start off by calling it programming and not coding

Alright, got it

Okay, your point? Pretty sure a 30, 35 year old with dedication and will can master things too. You're mental if you think otherwise.

>it's like playing an instrument.
>most top guns of the field started at < 12 years old
Ever heard of abstract thinking that kids lack when pre-teen? Only if you think of "Look daddy i just made a game in java looking at pajeet's tutorial on youtube on how to make a simple dialogue game using console.log xddddd", that's not even coding, I will tell you that perfect age for starting to code is 17+

Misquote again, fugg

JavaScript then Python. Read SICP.

Don't get meme'd into learning dead languages & frameworks that'll die in a few years.

C O P E

You don't, unless you're a kissless virgin. Evidently being a virgin extremely improves your overall performance.

>unless you're a kissless virgin
dude that's true for like every other poster chances are OP as well

Nah, there are plenty of normalshitters around.

Why is C more recommended than C++?

Sup Forums in general believes that one should learn how programs work at a low level and move up to high-level abstractions, rather than the opposite. A high-level abstraction is basically the computer doing work for the programmer, meaning it's harder to fuck up your program and make it crash, but it will make your program run slower. C++ has more high-level abstractions than C. C++ and C share some attributes, but C++ adds many many more high-level abstractions and features. So it's easy to transition from C to C++ if you want to learn it. The opposite isn't always true.

Also, the syntax of C is very very similar to many languages today, so if you know C you might be able to look at, for example, Java code and roughly be able to figure out what it does.

Thanks. I took a C++ course a few years ago and was thinking about getting back into coding so I wanted to get an idea if one would be better than the other for any reason. So it seems if I want more control I should stick to C but if I want to write up a fairly quick program, personal time wise, to use C++? In which situations would one be better than the other to use? Or are they so similar that isn't really the case?

C is a pure language. There is little syntax in C, and what exists is all regular and clear. C++ is a very large and bloated language, with many constructs that might be confusing. Having all these features might be useful when developing but is bad for the sake of learning. it's very easy to shoot yourself in the foot with C++ because of hidden behavior, while everything in C is plain and obvious.

You can get just as much control in C++, since almost all of C is valid C++. You can use abstract features or you can use low level features, the choice is yours
Unless you need speed or low-level access, you probably won't use either language.

>was thinking about getting back into coding
Meaning you want to try to get a job, or just for hobby projects?

>if I want more control I should stick to C but if I want to write up a fairly quick program, personal time wise, to use C++?
Despite the high-level abstractions, C++ is a low-level language compared to more modern languages like Python. If it's been a few years and you haven't used the knowledge in the meantime, there's likely a lot you've forgotten and would need to look up while working on a program. In general, C++ is slow to write, again, compared to more modern languages like Python. As far as getting things up and running quickly, both C and C++ are fairly slow to write, again compared to modern languages like Python, but you'd have a stronger grasp on the more general concepts of programming.

>In which situations would one be better than the other to use?
C++ is mainly used for performance-demanding applications like high-frequency trading and video games. C is slightly more performant than C++, but takes longer to write. C used to be used for everything, but these days, C is mainly used for embedded programming, for example a microcontroller in a microwave, or operating systems (the Linux kernel is written in C).

Read a book.
Make projects
Learn programming rather than a programming language.
Read documentation.

The programming language does not depend on prior experience, it depends on the field you want to go into.
Programming is a tool, not a field in itself.
You can describe the world we live in by using a lot of different ways, you can use biology, psychology, physics, mathematics, economy etc.
Programming languages also have different ways to describe the same problem, it doesn't mean you should learn them all at the same time

I guess hobby projects for now until I'm competent enough for a job.
I know a fair bit of python and would be interested in porting a lot of my projects over and doing some new ones like stock analysis and trading (math major so i want to try my hand). It has been about five years since I touched C++ last and even then it was just class projects mainly. I'm not worried about time taken to write programs at all.

>is it bad to start with C
lol
I wonder how many people have left this board in the past 2 years.

Look, maybe rather than obsessing over the "right" way to do something and spending months thinking about *maybe* starting programming, you just start. God forbid, right? Maybe you did something that some anonymous retard you know nothing about doesn't think is the best way to do it [SOMEONE CALL THE POLICE]. Seriously, everyone who has ever succeeded eventually just accepted that there is no perfect way to learn and just do it. Realize this: you will make mistakes. You will waste months on them. It does not matter. Just fucking pick a language that aligns with what you want to do and fucking do it. If you don't want to do anything, why are you trying to learn?

Holy shit the shitters in this thread recommending dead as FUCK languages. In college degrees they start you with C for a reason.

C is a cute little language.

And COBOL is like rearranging your furniture with only your butt. Hard but rewarding.

is it because they expect you to have encountered dead languages in your youth or something crazy like that

Python.
Pick up a starter book, e.g. Python Crash Course. It will tell you everything you need to start with

Are we gonna have this thread again.

Fucking hell. I honestly doubt OP will spend time learning a Language though.