Hey guys, I want to get into coding. I am a complete novice starting at 0

Hey guys, I want to get into coding. I am a complete novice starting at 0.

Heard in order to learn, it was most effective in this order:
>Python/Java
>C++
>C# and Unity

I just want to do it for the money but I do find it interesting. So Sup Forums, what do you recommend?

I know nothing about it.

Other urls found in this thread:

codecademy.com/learn
codecademy.com/learn/all
sololearn.com/
learncpp.com/
developer.mozilla.org/en-US/docs/Learn/JavaScript
youtube.com/watch?v=vZBCTc9zHtI
youtu.be/Fsn87nSY5kE
twitter.com/SFWRedditGifs

bumping with titties

bump

C++ isn't too bad tbh learned it in class for college so you might be able to go to a local community college and get a class there for cheap/ or buy a book and self teach , all other languages higher than c++ are easier , the newer the language the more ease you have using it (python being one of the easier languages on that list then java then c++ etc) my advice is that you avoid assembly language (which you shouldn't even have to learn unless you're and electrical engineering major, and also avoid regular C , those two languages are honestly cancer

A new language that a couple of my cs friends have been talkin about is raspberry pi, I personally haven't looked into it at all yet but in my opinion a good set of codes to know for coding are : java , javascript (this is not the same thing as java) and python and if you want more you can learn HTML . I am just thought about it more

I'm talking purely for making money. So since I know nothing, Java, Javascript, C++ and python?

Why do you want to learn coding... what do you want to achieve?

Learn a language, framework and techniques that match that.

Languages aren't good at everything.

>I just want to do it for the money

We'll in that case like earlier I'd reccomend java JavaScript and python to start off with c++ if you want but that's basically a lower form of java , look into the job market for coders and see what types of code they need to know

What order would be the most effective way of learning? C++ then java, javascript, python?

bump.

answer me you rancid swine

You guys are there reason why there is so much shitty unmaintainable codebases out there. And then you'll be the ones writing blog posts saying writing bad code is good because you get things done more quickly.

OP if you want to learn to code you have to learn the basics of how a computer works. And a good way for that is learning C. You don't have to master it, but you must be very clear with the basics (how does memory work, what are pointers...)
You don't have to learn assembly but you should know what it is.

And then you'll move on to a language where you'll learn OOP (probably Java or C++) . Now, the concept is simple, but I suggest you spend some time practicing it and understand how does it change the way you code.

Then you'll be able to quickly learn some other language of you're going to choose because it fits your project's needs. But don't forget to have a look at all the different concepts and paradigms of programming, and at least know what they are about.

Stay away from javascript while you're learning. The language is designed to let you do whatever you want, so if you learn with javascript you WILL end up doing shit (like described in my first paragraph).

If you do that and you do it well, you'll have as much (and probably more) programming skills than any CS engineer.

By the way, this guy hasn't any idea of what he's talking about.

codecademy.com/learn

Start here. You'll go through HTML first but it's a good place to start.

Thanks.

My advice
Go for web development first

Learn html, css, then fuck around with that.
Then learn bootstrap
then learn python basics
then learn Django basics
then learn jquery and javascript

boom, then you're a shitty web developer who can make a quick buck. combine all that together and start being creative. And by being creative I mean steal others templates and alter them.

Hint: Most private clinics have shitty websites, big budgets and want minimalistic white design.

Oh yeah, forgot to mention, use youtube and codeacademy. Furthermore if you want to have atleast some recognition you can enroll on some beginner python course. Those are always around

Doin gods work user

Thanks, I'll be doing both of these. Then that rancid swine will wish she was never born.

What's the best path for learning C?

Tbh I don't have any specific course that I know of in English.
As for general advices:
Go slowly. Don't mind spending a little extra time reading something twice, even if you think you got it the first time.
You have to be crystal clear about what each word you're typing does and mean.
Doing your own experiments is very important. Most of tutorials will have some small stuff to make you practice each point, but you will benefit a lot from setting up a little project so you can understand what all you're learning is about.
Try to do things in different ways, and see what are the differences. Programming is a lot about making trade-offs. Learn to know what are the pros and cons of each different way there is to make one thing.
Be curious! If you see something that you have no idea what it is, look it up.

If you actually enjoy doing good stuff, then you'll take pleasure in learning how to do it and how it works.

Yeah, just been dabbling with HTML to start and already it feels like something I could definitely enjoy doing. Making websites where I live is big money.

Java - usually used for android and web apps, quite useless if you're into machine or game programing

Python - slow language usually used for scripting, quite useless if you need big applications

C++ fastest language, can be used for anything

C# - amazing language can be used pretty much for anything excluding real time applications


Having this said, i recommend c# you will see results sooner!
C++ is pain in the ass even if you're not a beginner and you wont see results for a long time.
Java and python fags will tell you to java and python for obvious reasons. Java & python are shit languages.

Take it from someone who mastered c++

yeah, also what is describing is completly real. In fact this is the easiest whay to get quick money.
Web dev is easy to learn because it's easy to do something that "looks fine". But it doesn't mean you did learn about programming.
You can choose this path if you're fine with doing sutff aproximately for money, even if that mean you may get to a point where it'll be very difficult to progress because you're so used to do things badly and going through the basics again will be a pain in the ass.

Take the longer path if you're also interested in knowing what you're doing, and don't mind not having immediate results. Then you'll be able to do whatever you want in the field (and get money too).

Also there is no issue in learning HTML, just bear in mind that this is just a tool to get stuff displayed on your screen, which does not have much to do with programming.

guy here
I agree with you, but you can always make a quick buck and then direct your intrests elsewhere. For an example a nice way to learn c++ is messing around with raspberry pi. Since im also initerested in music, I've always wanted to build a midi/keyboard stuff which is managable with raspb. OP maybe you have some interests to tie your motivation of learning code with.
Aswell luckily I have just finished high school and gonna study informatics in uni, so I'm set I guess. Gonna learn the shit the correct way aswell.

But this might be the better way since you wont be studying shit for real.

But I still think that getting your dick wet with developing with a group and using git atleast on one project can inspire to learn some harder stuff without immediate returns. + with a nice web framework you can get an understanding of the field of work.
But at the end of the day, I'm a 19 y/o who is just interested without a real education. OP, take everything I say with a grain of salt, but I'd say im motivated to educate myself further.

Also nice thread, haven't seen any reasonable shit on Sup Forums for ages. Mostly porn these days..

HTML and CSS are not programming languages. I'd say they are rather designing languages.

Agreed. In the end I guess the important thing is to know what you're doing, why you're doing it, and where you're going.

raspb. guy here again.
OP if you want to make a quick buck, check out ethereum mining, trust me, this shit is cash atm. Just keep in mind that crypto mining isn't permanent and can make a U-turn any month.

My advice is to do what I did- find a simple open source video game that you enjoy, and contribute to coding.

There are lots of open source indie game projects you can do this with, games like Space Station 13, Dungeon Crawl Stone Soup, and other rogue likes.

This is a great way to start out because it generally means you are involved in a team of people, some of whom will be more than happy to answer your questions and freely help you to start learning, because it's a game you all have enthusiasm for and want to make better, which also means you can more easily stay motivated to learn, for reasons other than just wanting to learn how to code.

Regardless of the language it is coded in, the most important thing starting out is getting used to the logic of coding, and learning basic shit like syntax and terminogy.

After that it will be way more easy to focus your learning efforts on specific languages and for specific applications.

Personally, I began learning to code with MUDs, which were in LPC, an object oriented proprietary variant of C, and which was interpreted rather than complied, using a unix based operating system. This meant I could make changes in the live game as players played and as other coders taught me, and instantly see the effects.

It was invaluable for quickly teaching me the basics, along with the other coders who answered my questions as I went.

Order that you learn the languages matters a lot less than:

>Tools available to you
>Interest in learning
>Availability of feedback
>Amount of fore-knowledge necessary to use whatever frameworks / libraries you choose

C# and Unity can be a difficult because there's a lot of design decisions involved in game making which you may not be familiar with, so there are hundreds of weird quirks you'd just be memorizing at first before you understood the reasoning. On the other hand, video games provide incredible instant visual feedback: if you fucked up your code, you can SEE it not working.

If money is no object, I recommend starting with something like Code Combat. It's a video game where instead of using the keyboard and mouse to move your character, you write scripts to move him. It starts out simple like "move to the right", then later gets complex like "perform a depth first search to explore the maze and if you see an enemy enter the 'combat' state. While in the 'combat' state, keep your shield up to block arrows until enemies get within X distance, then perform a power attack. If the enemy is still alive, run away until power attack recharges. When enemy is dead, return to 'search' state"

If you're on a budget, I recommend starting with web development. You start simple (just using HTML to make simple shit), then slowly get more advanced (styling, scripting), then you can use tools to automate tasks (minify scripts, concatenate style sheets), then you can learn frameworks (Angular, React), then you can learn back-end code (PHP, Perl), then you can dive into network protocols, HTTP, etc. It's also pretty much free.

C++ is an alright starting point if you learn fast (if you have Asperger's or something) but it can be overwhelming otherwise. It's usually used to weed out people who don't have a strong interest.

Python is often taught by universities because it's a favorite of academics and scientists due to the shorthand for matrix math, however it's a hackjob of a language that lacks some of the niceties and standard features seen in other programming languages. I don't like it personally, some people love it.

Java is like baby's C++. It's C++ but they do a lot of stuff for you and give you some standard tools, and it runs on any computer without needing to re-compile it thanks to the JVM. It's dying in popularity, though, and there are a lot of guides and tutorials for it that will only serve to confuse you since the Java community is more focused on purity of object oriented design than actual functioning code

My recommendation is to start with JavaScript. Using NodeJS (free) you can run it in an interpreter just like you would Python, PHP, or Perl. It can technically be compiled like Java or C++, but people never bother doing that. It's also growing rapidly in popularity and it's the only natively supported language for scripting browsers.

It's also based on the ECMAScript standard. While that may not matter much, it means if you learn JavaScript you automatically learn a few other languages like C# and ActionScript.

I just checked out codecombat, seems pretty cool

Learn c++ than for what ever reason you need c learn it'll be easier

Except c# can't be used for anything because its windows so you're better off with java or c++ anyday

underrated post

>If you do that and you do it well, you'll have as much (and probably more) programming skills than any CS engineer.

Hear this man.

Avoid high level languages until you know how to code. Only when you have an idea of what is really going on, not necessarily at hw level, but with a good grasp from algorithms pov, you can learn more advanced frameworks and the languages that seem more profitable.
If you learn directly with high level languages you will learn relying on crutches that hide to floor, and the transition to actual programming will be much harder.
The same as writing, everybody can learn to read and write, but very few people can write a good novel.

You'd be surprised how many companies run on C# + Entity Framework + Azure Services

Also C# is the preferred language for writing Unity scripts if you're into game development

I didn't actually look at that post until I saw you comment on it (I'm this fag) but I'll comment on it now

Shitty un-maintainable code bases have nothing to do with people's language preference or the choice of simple code and implicit design over explicit specifications. It has everything to do with poor over-all structure, which isn't taught in any classes -- much less a C++ class. It's something learned through experience.

Shitty an un-maintainable code isn't caused by people preferring Python over C++. It's caused by people refusing to keep learning after they graduate. Computer Science is a field where you're always learning. If you ever stop learning, you've shot yourself in the foot.

Also OOP isn't a magical golden bullet that organizes all code and solves all problems. Plenty of extremely well-maintained production software isn't built using OOP design principles. OpenGL and avcodec come to mind. OOP is one of several ways to organize your code, and solves a lot of problems of inter-dependency, but it's not like you should just read thousands of books on OOP and proclaim yourself a master of code. They're all just tools to be used when necessary. Saying a failure to use OOP is a failure to code is like saying since you didn't use a hammer when assembling your computer clearly you don't know shit about building.

Also, JavaScript isn't "designed to let you do anything". That's entirely false and probably something you believe because it's interpreted and not compiled. PHP pre-5.6 was designed to let you do anything. JavaScript is pretty well architected.

As I touched on here and here There's nothing wrong with starting with a high-level language. It's arguably better. You don't teach a child about negative numbers before you teach him subtraction, and you don't teach him about transcendental or irrational numbers even though they're technically necessary to complete the set of addition.

Similarly you should start by learning basic logic concepts (and, or, not, if, else, for, while) then move on to basic programming structures (functions, data types, classes) then move on to more advanced topics. If you start at the deep end you do nothing but drive people away from computer science.

You can always dive deeper. But if you drown on day one you'll never learn to swim.

haven't read every reply so this my be repeated information. i started coding around a year ago, but i've only dived into 3 or 4 languages. for me the easiest stuff to learn by far was HTML. it's to do with creating webpages, and it's really simple stuff. i learned through code academy and my college professor

Not OP but just to dumb it down, assuming:
>have a shitty windows computer
>no real money to learn so can be self taught or can be learned from free online courses / resources
>only have time to start with one language
>want to be able to create anything from very simple games to utilities etc. that will run on said shitty windows computer
>something that doesn't set up bad habits for learning other languages

What would the best language be?

asking Sup Forums for advice

>python
You know this isn't 2001 right

You've made a few false assumptions here.

First, you said "have a shitty windows computer", implying either "shitty" or "windows" are, in ANY way, limiters

Programming started in the 1940's and really took off in the 1970's. Almost every modern programming language can run on 4 KB of RAM if it needs to. There's no such thing as a computer too shitty to write code. Although it's possible to write a program that requires more than 4 KB of RAM, it's also possible to write programs that operate within it.

The only limitation you'll run into has to do not with your language, but with your environment. You can write C++ code in Notepad and compile it using a command-line tool, or you can write C++ code in Visual Studio. However Visual Studio requires 2-4 gigs of RAM to run.

As far as Windows, almost every programming language runs on every OS. A programming language isn't somehow tied to the OS, it's just a specification for what the program should do. What's tied to the OS are the programs you create with those languages. If you're using Windows then to open a file you have to use a Windows OS hook. If you're using Linux, you use a Linux OS hook. Then a program written for Windows will only run in Windows and a program written for Linux will only run in Linux.

You may be thinking about certain development tools or compilers designed for one OS. For instance, Objective-C is a language developed by Apple and the only "official" compiler for it is XCode, which only runs on Mac. However there are free Objective-C compilers for Windows. More importantly, using VirtualBox (free) you can install a virtual machine on your computer and run any operating system inside of Windows

I'm going to expand on the other points in another post. I'm getting verbose.

Just learn JavaScript. Do some stuff with NodeJS for a while and then once you're kinda comfortable with that do some front end stuff.

Source: I work at MSFT

Second, you said you have no money to learn. LEARNING is free. Being TAUGHT costs money. Humans naturally learn all the time. Put your hand on a hot stove eye and you'll learn really damn fast why not to do that, and that lesson didn't cost a dime.

Since learning is free, it can be done on your own. If you get a text editor and a compiler running then you can dick around until you figure out programming by accident. However DIRECTED learning can be much faster, and fortunately there are free resources for literally every single programming language ever created. Just google "how to write " and you'll find tons of them. Stack Overflow is also a great website for specific questions

Third, you said you'd only have time to learn one language. You're making the false assumption that languages correspond to time. It's the depth of knowledge you wish to gain that corresponds to time. Many people who learn web development learn HTML, CSS, and JS all in parallel, and the three languages complement one another. It's not like learning one takes away time they could be learning the other -- but by learning one you learn more about the other.

Not to mention many languages share a syntax, and all languages share common logic and math. So after you learn one language, the rest is just syntax. You should never feel like you "have" to learn one language because of some arbitrary and incorrect limitation you put on yourself. Learn whatever works for you and whatever you find easy. I started with Ti-BASIC because I could write code in my middle school math classes and the compiler was built into the text editor. I later learned Java, PHP, C++, Perl, Python, etc. Coding isn't about finding the "right language", it's about finding literally any language that you like and that you know how to work with.

Holy fuck guys, had to go for a few hours but thought for sure this thread is dead.

OP here. How would I got about learning C++ or C#. When I was on codeacademy for the basic shit I didn't see it on, obviously it's more advanced.

Thanks, that makes sense. Is writing in notepad the only free way to do it, or are any of these studios or tools available for free?

And to clarify, I'm not looking for a magical language that is better that the rest. Just one that I can see some results with (even simple ones) to stay motivated, vs. one where it's so slow going it'll put me off. (I have limited times with work, family, etc. or else I'd happily take the slower more well rounded route.)

Fourth, you mentioned that you wanted a language that could do "anything from very simple games to utilities etc". This implies that what you can do is a limitation of the language. While there's a limited degree to which this is true (ActionScript is run within the Flash Virtual Machine which doesn't grant it full hardware access so certain features aren't available) it can always be worked around (there are ActionScript compilers which allow you to include C libraries for OS hooks)

Saying you want to be able to code anything with your language is like saying you want to be able to play any genre of music with your instrument. There's nothing preventing you from playing country, western, classical, or jazz on a piano except for your ability to learn and grow as a performer. Similarly what prevents you from making utilities and games isn't the language, but your inexperience as a programmer which will fade away as you continue to learn

Last comment in another post. I went barely over the post limit

Learn JS and do freecodecamp. Everyone here telling you to use C# or C++ is either unemployed or doing something other than programming for a living

Finally, you suggested that learning a language will set up bad habits. This is the closest thing to correct you said in any of your assumptions, but it's still a tough sell to me. At the end of the day, what matters is that you can quickly create code that works, quickly improve upon existing code, and quickly diagnose issues in code. If all three of those criteria are met, then you don't have any bad habits.

There are some languages which lack the constructs utilized by computer scientists and software engineers to organize their code. For instance, if you lack variable scoping or namespaces then it's easy to write code which will have unintended side effects elsewhere in the app. However this will just give you an opportunity to learn how to work around those issues when given these limitations. At the end of the day hardware is really simple -- it's just an array of 0's and 1's. Everything we layer on top of it (classes, objects, stack pointers, function calls, etc) is just abstraction. Slowly as you develop you'll learn to peel away the layers of abstraction and understand the whole system.

SublimeText has an unlimited free trial. Atom is free. Cloud9 is an online tool with an unlimited free trial. Vim is a command line text editor that's popular among die-hard Linux faggots, and also free.

Just google "free IDE for " and see what you find

Eclipse is also free

As far as seeing results, I would recommend either game development or web development. Both of these are very visual -- you move a box, you change the shape or color of something, you pop up a window,... so you get a lot of feedback and it's very interactive. For game development I recommend Unity3D (using C# for scripting) or for web development your best bet is HTML+CSS+JS because those are natively supported by the browser. Anything else has to transpile to that.

I'm Honestly I don't hold a grudge on any language. I also agree that language and paradigm choice is not the cause of shitty codebases.

But this is relevant when you're already into programming. Here we're talking about the learning process.
My point is to learn good programming you have to do it step by step, by starting with languages that allow you to not be aware of the more complex things. The end goal is to focus at one thing at a time, and make sure that, for each thing you know, even if it's basic, you understand it very clearly.
The actual language you choose to do this doesn't matter. I cited C because that's the one I know and because it does very good as a first step (computer basics).
You will notice that in the end what I'm describing here is same as There is a lot of stuff I havn't talked about in my post, that's why I said to be curious and look at everything. Of course OOP isn't everything. It's just good for learning because it helps to structure your thoughts. I'm personally a big fan of functional programming, and as much as I will tell everyone to look at it, I won't force somebody to learn it. Especially at the beginning.

And also when I say Javascript is designed to let you do anything, what I mean is that it has no restrictions and does not push you toward any specific paradigm or code design. It doesn't mean that it's not well architected, on the contrary. It is in fact a powerful feature but it means that you should know what're doing. Wich is not the case when you're learning

I can look around for some beginner lessons for you. Just like with learning anything, you likely have some fore-knowledge and I'm 99% certain you already know basic logic and math (addition, subtraction, conditionals) so you'll likely find some of the early lessons boring or overly simple. It's because of this I always recommend learning by coming up with a project you want to build instead of following a tutorial mindlessly. Different people learn differently, though. My wife tried time and again with my approach but gave up when she hit her first road block, then started doing tutorials on Udemy (it's about $10-20 for lifetime access to a 6+ hour lesson plan) and she's taken to it really well.

OP here, since I'm looking for purely money purposes, I'll be going with what you recommended at first as well as taking on HTML/CSS + Javascript on the side. I'll have the time and they seem pretty basic to get the hang of.

Freaking good advice here

I don't mind taking the step by step approach even if it's boring at first, I understand you have to build from the bottom up no matter how tedious it is. I play 3 instruments and learned them all that way as well.

>Full stack developer here
Learn Python first, from there learn how the languages work and depending on what you understand go into C sharp or Java, If you don't like C sharp stick with Java otherwise move into C++
simple.

heads up, this shit isn't easy and C++ took me a year to get my head around before I could work with it as simply as I could work with Python.

Doing it for the money is like learning Japanese because you want to become a translator
>stupid end goal

My apologize, I honestly looked at who you responded to then skimmed your post. Not to be rude, I'm just having some trouble reading large blocks of text today. I had to put my dog down yesterday and I'm supposed to be at work right now but I'm skipping out. So I'm not mentally in a great place.

I saw you responding to "learn Python" and "learn HTML" with something roughly skimmed as:
>You guys are [trash]
>if you want to learn to code you have to learn the basics of how a computer works
>learn C
>then move on to OOP
>stay away from javascript

All of that I thoroughly disagree with. You can learn about memory and pointers after you learn about basic high-level concepts that utilize them (arrays and hash tables) and you won't suffer for it.

Also, I think javascript is a great language, for beginners and advanced coders alike. It starts out as simple procedural code and moves into functional programming.

Well, if you're able to do all that in the same time, you'll be the king. Just don't get mixed up and get plenty of sleep :)

Learn LOLCODE.
It's gonna be yuge.

example:
HAI 1.0
CAN HAS STDIO?
I HAS A VAR
IM IN YR LOOP
UP VAR!!1
VISIBLE VAR
IZ VAR BIGGER THAN 10? KTHX
IM OUTTA YR LOOP
KTHXBYE

>learn c++
>I took one whole class it's easy

>learning web in the dying web developer economy

...
He's le ultimate haxor knowing languages like raspberry pi and html.

Utter genius. This kid.

This shit is gold
XD

Who the fuck even does these gay bullshit anymore

I just need to find out where I can learn C++

>literally google

I prefer befunge. It's extremely visual and easy to wrap your mind around what's happening. Plus it looks cool.

Code Academy has some free lessons, then you pay to continue:
codecademy.com/learn/all

This claims it's free, but I haven't given it a try:
sololearn.com/

Some of the oldest free C++ lessons on the internet:
learncpp.com/

Mozilla (the guys who made Firefox) have a fairly difficult to read but thorough tutorial on web technologies:
developer.mozilla.org/en-US/docs/Learn/JavaScript

Finally, you can find tons of free tutorials and lessons on YouTube:
youtube.com/watch?v=vZBCTc9zHtI

Code word
youtu.be/Fsn87nSY5kE

Yeah, using codeacademy at the moment for HTML. So far so good, seems like what I was looking for. I'll just go one step at a time. Prob basic web design then C++ shortly after.

How long does it take to learn C++, approx?

OP seems retarded,
Asks board full of trolls the most basic questions that google could answer in minutes but he can't word right since he doesn't understand anything.
If I can find a specific gif by googling a string of words I'm sure you can find a tutorial on a basic language.

Web development is actually on the rise. Not for web sites, but for web APPS.

Web SITES have been automated like crazy. There are templates that look so good if you DON'T use them then your site looks like trash and everyone thinks you didn't spend any money, so you just grab one generic template complete with hero image, parallax, etc and upload your company logo and go.

But web APPS are the future of almost all modern technology. QuickBooks Online, TurboTax, Netflix, Amazon, Facebook, Twitter, Gmail,... Everything is online now.

If you want to learn web APPS, then once you've gotten a small grip on HTML+CSS+JS you want to learn jQuery only briefly (to get an understanding of libraries and the functionality they provide and how they save you time) then you want to jump into AngularJS, ReactJS, or VueJS (pick one) as these frameworks are the ground work for all modern apps.

You'll eventually want to learn any back-end language (C#, PHP, Java, Ruby, etc) so you can save shit to a database.

It takes a life time to learn. "Learning" to code is like "learning" art, or "learning" music. You never stop. You always improve.

I'd say in a few months you can make basic scripts. In a few years you can make simple apps. In a decade you can make full, well-architected solutions to business problems, and in a few decades you can start diving into theoretical shit and writing low-level libraries to fine-tune hardware performance. Of course it all depends on how much time you invest and what interest you. It's an infinite field with more to learn than any one human could ever do in their short time on earth.

He wasn't asking how to learn, at least not in the first post. The question seemed to be more about what languages to start with. That's asking for opinions, not lessons. Not an unreasonable question for someone who has never coded.

>OP seems retarded
>would end up searching a forum anyway
>interactive chat at his fingertips
>entertaining anyway in case it fails
>useful information appears anyway
>mfw I'm OP
>mfw I'm a faggot
>mfw I don't make faggot threads

...

>I can find a specific gif by googling a string of words
May you please tell us how?

Get into rust
Its more memory safe than those. Although it still has stack probing issues like with c :/

I started with c++ and moved to Java, learning c++ first gave me a good background on coding syntax in general and Java just made it easier.

Only thing that bothered me was moving from cin >> and cout

First you brush up on your basic math:
Arithmetic, a little geometry, elementary algebra, and some basic trig.

Next get a standard calculus text and dive in. You should also get a linear algebra and discrete math books as well; make sure the discrete text is proof based (I recommend A Transition to Advanced Mathematics by Smith).
Once you're a couple chapters in to your discrete book (you will want to have covered basic proposition and higher order logic, and basic proofs), you may begin learning programming and computer architecture. As a litmus test, if you don't know what this statement is

∀P((0∈P∧∀i(i∈P-->i+1∈P))-->∀n(n∈P))

you aren't ready to take the reins of a computer.

Now, forget what you do know about computer programming:

First, you learn boolean logic operations
then, you learn transistor logic
then, you learn how to build functional units from logic gates
then, you learn CPU design
then, and only then, you learn assembly language
then, after you have mastered assembly language (not dabbled, but mastered it), you learn C
then, after you have mastered C, you may learn the higher-level languages of your choice, but you will always use C and assembly as your primary languages because everything else is unnecessary bloat.

By this time you should be finished with your calculus (up to advanced integration techniques and vector basics), discrete, and linear algebra, and are ready for the next wave of math: abstract algebra, analysis, multivariate and vector calculus, and, after you have progressed a way in those, topology.

Finally, you become familiar with topoi, and study the internal logic of categories then familiarize yourself with (general) type theory, and its applications to programming. I also recommend studying how to reformulate mathematics in terms of globular categories for use in automatic theorem proving, because there is an inherent programming-like 'feel' to it.

OOP is life
>inb4 C++ is what Java should have been

Fuck java and fuck objects

Don't worry OP this is a gay post, most you'll really need to know is Discrete Math which can help you with algorithms and logic.

Just get a nice introductory textbook and maybe take a class at a community college and enjoy the ride.

Using key words based on what was in said gif.
Learning how a search engine works benefits how you use said search engine.

Guess I forgot to mention the Scanner class lol

So I am using The C Programming Language by Kernighan and Richie, and everything was going great until I got to the character input and output section. I have probably read it 5x now and still don't have a firm grasp of how it works. Is it ok to ask some more questions about it here or is it too general and would better belong on another board?

Many thanks. Here have something nice.

If you're asking for actual programming help, Stack overflow or a dedicated programming website for programming help may be of better help than Sup Forums.

Also my advice, keep doing the examples in the book until you understand, you have to practice coding yourself to actually understand what's happening.

>this is a gay post

In all honesty, this isn't too far from how I learned - except for evening and weekend dabbling in high-level languages to burn the candle from both ends.

I started as a mathematics and mechanical engineering dual degree then moved into computer engineering (not computer science) where I was taught how to build RAM and ALUs from logic circuits rather than taught how to write a for loop.

Meanwhile I was learning PHP and Java and constantly trying to connect the two in my head.

Still, I wouldn't recommend this. It's great when you're working alone or trying to optimize the shit out of some bottleneck in the code, but coding nowadays is 20% math and logic and 80% history. You need to know what libraries exist, what frameworks exist, what best practices the community has established, how people utilize common tools, and you need to know APIs and protocols. None of these are mathematics, and none of them have a "correct" answer. It's just memorizing decisions that people made (either alone or through consensus) over the years.

Knowing that for all P zero is an element of P and for all i that i is an element of P implies i+1 is also an element of P and therefore it implies all n are an element of P doesn't tell you why they chose to have separate HTTP methods for "PUT" and "POST".

>Literally this
Don't ask questions before looking for solutions otherwise you'll get publicly shamed.

Saved, thanks user

I hope you get pegged with the power of a thousand suns as karma for your good work here today

problem begins with their discussion of getchar() and putchar()

>The standard library provides several functions for reading or writing one character at a time, of which getchar
and putchar are the simplest. Each time it is called, getchar reads the next input character from a text stream and returns that as its value. That is, after
>c = getchar();
>the variable c contains the next character of input. The characters normally come from the keyboard; input from files is discussed in Chapter 7.

I think I understand putchar pretty well; it takes a char as its parameter and prints it on the screen when called. getchar is where I get confused. The statement

char c = getchar();

makes sense; we make a variable named c of the character type, and set it to equal what getchar() returns. Assuming the keyboard is the default for input for this function, when the statement is executed and getchar is called , the user is prompted to enter a string, which is then stored in memory as an array of chars. Is this correct so far?

A lot of my confusion came when I started playing around with the two functions. For example I would execute the getchar function (without assigning it to anything) then call it again in the very next statement but assign it to something, and it behaved not as I expected it to. I don't recall exactly what it did, or the other things I tried just playing around with the language, but if someone genuinely doesn't mind helping I will get on my PC and tell you precisely what I did and the output.

fucking nerd

Python is easy to read the code and learn some basic logic but it's more often used to show how a piece of code works and not for actual jobs that require performance.

Java is popular and well paid. It's easy to make something but it requires a lot of resources.

C++ is considered the holy grail by many. Extremely resource efficient and widely used.

C#/Unity About as easy as C++ and Java. Unity allows you to easily prototype ideas. Unity can be resource heavy but it depends on how well you program (don't use FindObjectOfType() in Update() for example).

Personally I reccomend you try everything, but saving Python for either last or halfway. Every language you mentioned uses similar syntax except for Python.

Start with Java. Once you get sick of that go to C++ and C#.

>A new language that a couple of my cs friends have been talkin about is raspberry pi

A Raspberry PI is a tiny computer, not a machine.
Javascript is shit for anything that's not Web Development. From the OP's post it seems he wants actuall programming languages, not scripting.

HTML isn't even "code". And who refers to programming languages as "a set of codes"?

I have already looked online. The text I'm using assumes I have experience with Unix and I/O, which I unfortunately do not (though I know what these things are, I have only ever really used Windows). Maybe i should get a different text

>C++ a lower form of Java

What the actual fuck? Reading your posts upsets me physically.

Money = Java, but literally every programming language has plenty of jobs, including the old as fuck ones. Java is simply easier to make shit in that's still not too resource heavy so there's more jobs for it.

>Using Codecademy to learn HTML as a start learning languages like Java, C# or C++

I hope you get cancer. I seriously do.
HTML isn't a programming language.

Want easy money and an easy language
Learn .Net

>that's a good joke
But seriously maybe this will actually help you since diving into C or Java is not a good idea.