Hey Sup Forums, im a newfag and want to learn programming. Shit has always been interesting to me...

Hey Sup Forums, im a newfag and want to learn programming. Shit has always been interesting to me. What language would Sup Forums recommend?
>pic unrelated
>just a weapon to surpass metal gear

start with something simple like python or ruby. have a use case in mind, programming for programming's sake gets old quite quickly and it's always nice to actually make something useful, even if it's just useful to you. what sort of things are you looking to make?

What do you even want to do, dog.

desu I haven't the slightest idea, just wanted to get into it and see where it takes me. But now I think about it stuff like internet of things and Web Development seem like something I would do

imo internet of things is shit, at least consumer grade stuff is. Web dev is fine but it gets boring after a while. I'm bored and caffeinated so if you want a live programming tutorial i can fire up my twitch stream.

fuckin do it

twitch /fmdud

He actually did it, the madman

bumping this thread cos im still streaming how to program

don't fall for the C meme

C++ developer here.
Don't fall for the C meme. They're great languages later, but they inject too much unnecessary bullshit into the learning process and get in the way of just developing skills in constructing logical systems that make sense. Start with Python or something similar.

C is actually the best language to start with, teaches good habits.

...How could it possibly teach good habits when most the rest of programming is done in languages it shares no common ground with?

It can't teach good OOP habits because there isn't any. It can't teach about scoping and namespaces because it doesn't have any.

It can't teach good habits for any of that fancy new closures/contract/functional stuff because it doesn't have any.

It can't teach you about generics because again, it doesn't have them (okay there's a _Generic keyword in C11 but I suspect C devs will bitch at you for using it because it's so new and it still appears to require you to use the preprocessor to implement generics).

It's lessons in pointers and memory management aren't really helpful because most modern languages outright don't or rarely let you do that. It's lessons in preprocessing go the same way.

The habits it does each, passing shit in by pointer and returning integer error codes, aren't even applicable to it's sister C++ anymore, let alone the rest of the modern programming world.

C is good, great even, but claiming it teaches good habits is just plain bizarre.

>C is actually the best language to start with, teaches good habits.
c teaches good programming practice
the problem is that it's too difficult for a beginner to write anything useful in C. with other languages you can write fun, useful stuff very quickly and that's likely to keep you interested for longer.

getting someone into programming and having them enjoy it is different to learning good practice from the get go

i think a lot of good programmers say C because they generally got started hacking away in some terrible language, but you were hacking away to actually get something done. learning to love getting stuff done should come before learning how to code cleanly imo

shares a lot of ground with go
but other than than fair point

might start streaming a Project Euler marathon, different problems in different languages. Or whatever you guys want to see.

twitch /fmdud

Go I'll give you, never used it myself but it seems very similar. On that note though, exceptions are another thing it just won't even introduce you to.

What about java?

C# is more comfy if you don't care about your code only working on microsoft products (or linux with mono)

I have a personal vendetta against Java for being so restrictive and verbose but I'll try to put that aside.

It's okay. It has a little bit of the "Do this inexplicable bullshit to get started and we promise we'll explain it at some point" problem, but it's less obtuse than C and has a very powerful standard library that will let you quickly get started developing applications that actually do things. Also it has types and gives you a better introduction to that than Python will.

I would be tempted to suggest C# over it though, it's comparably popular and exceptionally similar except C# is less verbose and hideous.

This is kind of a meme imo. Even precompiled libraries work out of the box on Linux with Mono, I've never encountered issues with using C# on Linux. There could be something once you start doing more advanced stuff though, I don't use the language much.

bumping thread again.

at twitch /fmdud we are doing Project Euler problems from the top in random programming languages. Chat gets to choose the language.

Currently doing problem 2 in Forth.

How is that working out? Did i suggest a sufficiently annoying language?

i did it in forth you fuck
i compiled a fibonacci sequence i found in forth and then added the numbers together in google chrome calculator

basically a huge middle finger of a solution